Results 1 
8 of
8
Proofassistants using Dependent Type Systems
, 2001
"... this article we will not attempt to describe all the dierent possible choices of type theories. Instead we want to discuss the main underlying ideas, with a special focus on the use of type theory as the formalism for the description of theories including proofs ..."
Abstract

Cited by 47 (4 self)
 Add to MetaCart
this article we will not attempt to describe all the dierent possible choices of type theories. Instead we want to discuss the main underlying ideas, with a special focus on the use of type theory as the formalism for the description of theories including proofs
Internal Type Theory
 Lecture Notes in Computer Science
, 1996
"... . We introduce categories with families as a new notion of model for a basic framework of dependent types. This notion is close to ordinary syntax and yet has a clean categorical description. We also present categories with families as a generalized algebraic theory. Then we define categories with f ..."
Abstract

Cited by 36 (7 self)
 Add to MetaCart
. We introduce categories with families as a new notion of model for a basic framework of dependent types. This notion is close to ordinary syntax and yet has a clean categorical description. We also present categories with families as a generalized algebraic theory. Then we define categories with families formally in MartinLof's intensional intuitionistic type theory. Finally, we discuss the coherence problem for these internal categories with families. 1 Introduction In a previous paper [8] I introduced a general notion of simultaneous inductiverecursive definition in intuitionistic type theory. This notion subsumes various reflection principles and seems to pave the way for a natural development of what could be called "internal type theory", that is, the construction of models of (fragments of) type theory in type theory, and more generally, the formalization of the metatheory of type theory in type theory. The present paper is a first investigation of such an internal type theor...
Constructions, Inductive Types and Strong Normalization
, 1993
"... This thesis contains an investigation of Coquand's Calculus of Constructions, a basic impredicative Type Theory. We review syntactic properties of the calculus, in particular decidability of equality and typechecking, based on the equalityasjudgement presentation. We present a settheoretic notio ..."
Abstract

Cited by 31 (2 self)
 Add to MetaCart
This thesis contains an investigation of Coquand's Calculus of Constructions, a basic impredicative Type Theory. We review syntactic properties of the calculus, in particular decidability of equality and typechecking, based on the equalityasjudgement presentation. We present a settheoretic notion of model, CCstructures, and use this to give a new strong normalization proof based on a modification of the realizability interpretation. An extension of the core calculus by inductive types is investigated and we show, using the example of infinite trees, how the realizability semantics and the strong normalization argument can be extended to nonalgebraic inductive types. We emphasize that our interpretation is sound for large eliminations, e.g. allows the definition of sets by recursion. Finally we apply the extended calculus to a nontrivial problem: the formalization of the strong normalization argument for Girard's System F. This formal proof has been developed and checked using the...
Extracting a Proof of Coherence for Monoidal Categories from a Proof of Normalization for Monoids
 In TYPES
, 1995
"... . This paper studies the problem of coherence in category theory from a typetheoretic viewpoint. We first show how a CurryHoward interpretation of a formal proof of normalization for monoids almost directly yields a coherence proof for monoidal categories. Then we formalize this coherence proof in ..."
Abstract

Cited by 16 (3 self)
 Add to MetaCart
. This paper studies the problem of coherence in category theory from a typetheoretic viewpoint. We first show how a CurryHoward interpretation of a formal proof of normalization for monoids almost directly yields a coherence proof for monoidal categories. Then we formalize this coherence proof in intensional intuitionistic type theory and show how it relies on explicit reasoning about proof objects for intensional equality. This formalization has been checked in the proof assistant ALF. 1 Introduction Mac Lane [18, pp.161165] proved a coherence theorem for monoidal categories. A basic ingredient in his proof is the normalization of object expressions. But it is only one ingredient and several others are needed too. Here we show that almost a whole proof of this coherence theorem is hidden in a CurryHoward interpretation of a proof of normalization for monoids. The second point of the paper is to contribute to the development of constructive category theory in the sense of Huet a...
Programming interfaces and basic topology
 Annals of Pure and Applied Logic
, 2005
"... A pattern of interaction that arises again and again in programming, is a “handshake”, in which two agents exchange data. The exchange is thought of as provision of a service. Each interaction is initiated by a specific agent —the client or Angel, and concluded by the other —the server or Demon. We ..."
Abstract

Cited by 7 (0 self)
 Add to MetaCart
A pattern of interaction that arises again and again in programming, is a “handshake”, in which two agents exchange data. The exchange is thought of as provision of a service. Each interaction is initiated by a specific agent —the client or Angel, and concluded by the other —the server or Demon. We present a category in which the objects —called interaction structures in the paper — serve as descriptions of services provided across such handshaken interfaces. The morphisms —called (general) simulations— model components that provide one such service, relying on another. The morphisms are relations between the underlying sets of the interaction structures. The proof that a relation is a simulation can serve (in principle) as an executable program, whose specification is that it provides the service described by its domain, given an implementation of the service described by its codomain.
Implementing a Category of Sets in ALF
, 1994
"... Peter Aczel [1] and Gerard Huet [8] have implemented the category of sets in LEGO and Coq respectively. Here we show an implementation of the category of sets in ALF [2], a proof assistant based on MartinLöf's logical framework (or theory of logical types) [10]. We used WINDOW ALF. This system all ..."
Abstract

Cited by 4 (1 self)
 Add to MetaCart
Peter Aczel [1] and Gerard Huet [8] have implemented the category of sets in LEGO and Coq respectively. Here we show an implementation of the category of sets in ALF [2], a proof assistant based on MartinLöf's logical framework (or theory of logical types) [10]. We used WINDOW ALF. This system allows one to manipulate the proof term in order to refine it until it is complete. Some facilities are provided which show the term in a readable way (special symbols for constants, infix use of symbols, hiding of arguments, etc). What is presented below is, unfortunately, not what is shown on the screen, but the source code for the type checker and the window interface. Thus, for instance, no arguments are hidden and lambda is used instead of . We refer to the introduction to the ALF chapter of the library for further information. We have essentially followed Peter Aczel's development. But we ha
Quotients in Simple Type Theory
 Manuscript, Math. Inst
, 1994
"... Introduction Quotients are used throughout mathematics for constructing new objects from old, by collapsing part of the structure, see for example any textbook on algebra or topology. Here we give a completely general description of such quotients in a type theoretic language. We assume a simple ty ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
Introduction Quotients are used throughout mathematics for constructing new objects from old, by collapsing part of the structure, see for example any textbook on algebra or topology. Here we give a completely general description of such quotients in a type theoretic language. We assume a simple type theory, together with a predicate logic to reason about types and terms. Then quotients can be described as a left adjoint to a certain equalitypredicate functor. This gives us all the rules we need: formation, introduction, elimination and (fi) and (j)conversions for quotients. These will be described in the next section below. Subsequently, the new syntax is put to use in constructing Z from N, a poset from a preorder, the abelianization of a group, and tensor products\Omega and sums \Phi of abelian groups. All these constructions involve taking a suitable quotient. They will be de
Author manuscript, published in "Annals of Pure and Applied Logic 137, 13 (2006) 189239" Programming Interfaces and Basic Topology
, 2009
"... A pattern of interaction that arises again and again in programming, is a “handshake”, in which two agents exchange data. The exchange is thought of as provision of a service. Each interaction is initiated by a specific agent —the client or Angel, and concluded by the other —the server or Demon. We ..."
Abstract
 Add to MetaCart
A pattern of interaction that arises again and again in programming, is a “handshake”, in which two agents exchange data. The exchange is thought of as provision of a service. Each interaction is initiated by a specific agent —the client or Angel, and concluded by the other —the server or Demon. We present a category in which the objects —called interaction structures in the paper — serve as descriptions of services provided across such handshaken interfaces. The morphisms —called (general) simulations— model components that provide one such service, relying on another. The morphisms are relations between the underlying sets of the interaction structures. The proof that a relation is a simulation can serve (in principle) as an executable program, whose specification is that it provides the service described by its domain, given an implementation of the service described by its codomain.