### Are subsets necessary in Martin-Löf type theory? [chapter]

Simon Thompson
Lecture Notes in Computer Science
Introduction Martin-L of's theory of types, expounded in 5, 6] and discussed at greater length in 8, 1 4 ] is a theory of types and functions or alternatively of propositions and proofs which has attracted much recent i n terest in the computing science community. There seems to have emerged a consensus that the system provides a good foundation for integrated program development and proof, but that for the system to be usable in practical projects a number of additions need to be made to it.
more » ... e-eminent among these is the proposal to add a subset construction to the system, so that members of the type f x:A j B g are those members of A with the property B. T h i s i s i n c o n trast to the representation of such a t ype by (9x:A) : B whose members consist of pairs (a p) w i t h a : A and p : B a=x] a proof of or witness to the fact that the property B is true of a. This latter representation is faithful to the principle of complete presentation which requires that it should be evident from any object that it has the type asserted of it. The witness is a proof of this fact. In this paper after presenting an overview of the two important subset constructions we examine the reasons given for the addition of the subset type and argue that we c a n a c hieve the desired results without complicating the system by such an augmentation. The rst reason for adding a subset ty p e i s t h a t i t a l l o ws for the separation of the computational information in an object from the proof theoretic information it might contain { this we examine in sections 3 and 4 where we argue that this separation is better achieved by naming the appropriate portions of an object, using the axiom of choice where necessary to identify these portions. Note that we t a k e the axiom of choice as valid { this is the case for all Martin-L of's systems, and is a simple consequence of the strong elimination rule for the existential quanti er, which allows the second projection from a pair to have dependent t ype. We should also observe that for most constructivists the axiom of choice is unexceptionable { given the interpretation of the quanti ers, a c hoice function can be read o in the obvious way. The other reason advanced for the subset ty p e i s t h a t i t c a n c o n tribute to the e ciency of evaluation, since by suppressing the proof-theoretic portion of an expression, any e v aluation in this portion will no longer be necessary. W e argue in section 5 that exactly the same e ect is achieved if we u s e lazy evaluation to implement the system. It is therefore evident t h a t w e can achieve the e ects required without adding to and therefore complicating the system of type theory, as expounded in Martin-L of's original papers, as long as we are prepared to work in a lazy implementation of the theory. Lazy implementations used to have the reputation of being slow, but recent w ork (see, for example, 10]) has shown that this need not be the case.