# Programming in Martin-Löf's Type Theory

@inproceedings{Nordstrm1990ProgrammingIM, title={Programming in Martin-L{\"o}f's Type Theory}, author={Bengt Nordstr{\"o}m and Kent Petersson and Jan M. Smith}, year={1990} }

data type, 179 abstraction, 14 Abstraction rule, 143 absurdity, 43 append, 68 application, 13 Application rule, 143 apply, 48, 148 arity of an expression, 18 Assumption rule, 123, 142 AUTOMATH, 8 axiom of choice, 115 Bishop, 6 Bool, 44 Bool rules, 44–45 Boolean, 44–45 Calculus of Constructions, 8 canonical expression, 26 cartesian product of a family of sets, 47–55, 148 case{i1,...,in}, 41 case, 151 Church, 17 combination, 15 combined expression, 17 conjunction, 74 cons, 67, 152 Constable, 6…

## Figures from this paper

## 538 Citations

### A short and flexible proof of Strong Normalization for the Calculus of Constructions

- Computer ScienceTYPES
- 1994

This chapter discusses the design and analysis of Dynamic Leader Election Protocols in Broadcast Networks, and a taxomomy of finite automata construction algorithms in process algebra.

### New Foundations for Fixpoint Computations: FIX-Hyperdoctrines and the FIX-Logic

- Computer ScienceInf. Comput.
- 1992

### Propositional Equality, Identity Types, and Computational Paths

- Mathematics
- 2017

In proof theory the notion of canonical proof is rather basic, and it is usually taken for granted that a canonical proof of a sentence must be unique up to certain minor syntactical details (such…

### Propositional equality, identity types, and direct computational paths

- MathematicsArXiv
- 2011

The intention here is to show that, by considering as sequences of rewrites and substitution, it comes a rather natural fact that two (or more) distinct proofs may be yet canonical and are none to be preferred over one another.

### Semantic Consistency Proofs for Systems of Illative Combinatory Logic

- Philosophy
- 2015

Illative systems of combinatory logic or lambda-calculus consist of type-free combinatory logic or lambda-calculus extended with additional constants intended to represent logical notions. In fact,…

### Structural recursion with locally scoped names

- Computer ScienceJ. Funct. Program.
- 2011

A new recursion principle for inductively defined data modulo α-equivalence of bound names that makes use of Odersky-style local names when recursing over bound names is introduced.

### Some Normalization Properties of Martin-Löf's Type Theory, and Applications

- MathematicsTACS
- 1991

It is shown that for Martin-Lof's type theory, and a large class of extensions of it, a sufficient kind of normalization property does in fact hold in certain well-behaved subtheories.

### Defunctionalizing Focusing Proofs

- Computer Science
- 2009

A view of pattern-based focusing proofs as façons de parler is explored, describing how to compile them down to first-order derivations through defunctionalization, Reynolds’ program transformation, arriving at a proof representation with surprisingly little bureaucracy.

### Set theory for verification. II: Induction and recursion

- Computer ScienceJournal of Automated Reasoning
- 2004

A theory of recursive definitions has been mechanized in Isabelle's Zermelo-Fraenkel (ZF) set theory to support the formalization of particular recursive definitions for use in verification, semantics proofs, and other computational reasoning.

### Labelled Natural Deduction

- Philosophy
- 1999

The functional interpretation of logical connectives is concerned with a certain harmony between, on the one hand, a indexfunctional! calculus functional calculus on the expressions built up from the…

## References

SHOWING 1-10 OF 93 REFERENCES

### The Constructive Engine

- Computer ScienceA Perspective in Theoretical Computer Science
- 1989

An implementation in CAML of a proof-checker for the Calculus of Constructions proceeds by operating an abstract machine, called the constructive engine, which is close in spirit to the inference system described in section 10.2 of [13].

### Programming in Constructive Set Theory: Some examples

- Computer ScienceFPCA '81
- 1981

The similarity (or rather: identity) between a mathematical proof of a given proposition and a program for a given task suggests that programming should be similar to the mathematicians activity of finding proofs.

### The independence of Peano's fourth axiom from Martin-Löf's type theory without universes

- Philosophy, MathematicsJournal of Symbolic Logic
- 1988

This work uses the method of Hilbert and Ackermann on Martin-Lof's type theory without universes to show that ¬Eq( A, a, b ) cannot be derived without universes for any type A and any objects a and b of type A .

### On a Nonconstructive Type Theory and Program Derivation

- Computer Science
- 1987

Not considering philosophical arguments, the main motive for using constructive reasoning when constructing programs is that constructive proofs have computational content and it is then quite possible to use classical logic.

### Induction Principles Formalized in the Calculus of Constructions

- Computer ScienceTAPSOFT, Vol.1
- 1987

How to define inductive concepts in the calculus is shown, which is a foundation for the design of programming environments where programs are developed consistently with formal specifications.

### Combinatory logic

- MathematicsJournal of Symbolic Logic
- 1977

the equations derivable from the axioms of the theory. When this two-step algebraization has been carried out it is possible to reduce problems of validity in a first-order language to questions…

### A Machine-Oriented Logic Based on the Resolution Principle

- MathematicsJACM
- 1965

The paper concludes with a discussion of several principles which are applicable to the design of efficient proof-procedures employing resolution as the basle logical process.

### Computational uses of the manipulation of formal proofs

- Computer Science
- 1980

This thesis concerns computational uses of the additional information contained in proofs, and efficient methods for the representation and transformation of proofs.