We present a type theory with some proof-irrelevance built into the conversion rule. We argue that this feature is useful when type theory is used as the logical formalism underlying a theorem prover. We also show a close relation with the subset types of the theory of PVS. We show that in these theories, because of the additional extentionality, the axiom of choice implies the decidability of equality, that is, almost classical logic. Finally we describe a simple set-theoretic semantics.
CCCreative Commons 2 B. WERNER was more an external feature of implemented proof systems 1 : programs certified by extraction are no longer objects of the formalism and cannot be used to assert facts like in the point above. Some related formalisms only build on some of the points above. For example PVS implements a theory whose objects are functional programs, but where proofs are not objects of the formalism.An important remark about (2) is that the more terms are identified by the conversion rule, the more powerful this rule is. In order to identify more terms it thus is tempting to combine points (2) and (3) by integrating program extraction into the formalism so that the conversion rule does not require the computationally irrelevant parts of terms to be convertible.In what follows, we present and argue in favor of a type-theory along this line. More precisely, we claim that such a feature is useful in at least two respects. For one, it gives a more comfortable type theory, especially in the way it handles equality. Furthermore it is a good starting point to build a platform for programming with dependent types, that is to use the theorem prover also as a programming environment. Finally, on a more theoretical level, we will also see that by making the theory more extensional, proof-irrelevance brings type theory closer to set-theory regarding the consequences of the axiom of choice.The central idea of this work is certainly simple enough to be adjusted to various kinds of type theories, whether they are predicative or not, with various kinds of inductive types, more refined mechanisms to distinguish the computational parts of the proofs etc. . . . In what follows we illustrate it by using a marking of the computational content which is as simple as possible. The extraction function we use is quite close to Letouzey's [21,22], except that we discard the inclusion rule Prop ⊂ Type, which would complicate the definition of the type theory and the semantics (see [29] for the last point).Related work Almost surprisingly, proof-irrelevant type theories do not seem to enjoy wide use yet. In the literature, they are often not studied for themselves, but as means for proving properties of other systems. This is the case for the work of Altenkirch [3] and Barthe [6]. One very interesting work is Pfenning's modal type theory which involves proofirrelevance and a sophisticated way to pinpoint which definitional equality is to be used for each part of a term; in comparision we here stick to much simpler extraction mechanism. The NuPRL ...