Learn More
We survey a substantial body of knowledge about lambda calculus and Pure Type Systems, formally developed in a constructive type theory using the LEGO proof system. On lambda calculus, we work up to an abstract, simpliied, proof of standardization for beta reduction, that does not mention redex positions or residuals. Then we outline the meta theory of Pure(More)
Language designers have in recent years proposed a wealth of richer type systems for programming which seek to extend the range of statically enforced guarantees on data and code. Most such proposals have been evolutionary extensions of ML or Haskell, offering programmers a balanced compromise between expressive strength and existing well-understood(More)
This paper is about our hobby. For us, machine-checked mathematics is a passion, and constructive type theory (in the broadest sense) is the way to this objective. Efficient and correct type-checking programs are necessary, so a formal theory of type systems leading to verified type synthesis algorithms is a natural goal. For over a year the second author(More)
This paper gives a reduction-preserving translation from Co-quand's dependent pattern matching [4] into a traditional type theory [11] with universes, inductive types and relations and the axiom K [22]. This translation serves as a proof of termination for structurally recur-sive pattern matching programs, provides an implementable compilation technique in(More)