Implementing mathematics with the Nuprl proof development system
Implementing mathematics with the Nuprl proof development system
Formal Aspects of Computing
Equality in lazy computation systems
Proceedings of the Fourth Annual Symposium on Logic in computer science
Higher-Order Abstract Syntax with Induction in Coq
LPAR '94 Proceedings of the 5th International Conference on Logic Programming and Automated Reasoning
Primitive Recursion for Higher-Order Abstract Syntax
TLCA '97 Proceedings of the Third International Conference on Typed Lambda Calculi and Applications
Sequent Schema for Derived Rules
TPHOLs '02 Proceedings of the 15th International Conference on Theorem Proving in Higher Order Logics
Quotient Types: A Modular Approach
TPHOLs '02 Proceedings of the 15th International Conference on Theorem Proving in Higher Order Logics
A non-type-theoretic semantics for type-theoretic language
A non-type-theoretic semantics for type-theoretic language
The metaprl logical programming environment
The metaprl logical programming environment
A computational approach to reflective meta-reasoning about languages with bindings
Proceedings of the 3rd ACM SIGPLAN workshop on Mechanized reasoning about languages with variable binding
Mechanized meta-reasoning using a hybrid HOAS/de bruijn representation and reflection
Proceedings of the eleventh ACM SIGPLAN international conference on Functional programming
On the strength of proof-irrelevant type theories
IJCAR'06 Proceedings of the Third international joint conference on Automated Reasoning
Hi-index | 0.00 |
In this paper we introduce a new approach to formalizing certain type operations in type theory. Traditionally, many type constructors in type theory are independently axiomatized and the correctness of these axioms is argued semantically. In this paper we introduce a notion of an ''image'' of a given type under a mapping that captures the spirit of many of such semantical arguments. This allows us to use the new ''image'' type to formalize within the type theory a large range of type constructors that were traditionally formalized via postulated axioms. We demonstrate the ability of the ''image'' constructor to express ''forgetful'' types by using it to formalize the ''squash'' and ''set'' type constructors. We also demonstrate its ability to handle types with non-trivial equality relations by using it to formalize the union type operator. We demonstrate the ability of the ''image'' constructor to express certain inductive types by showing how the type of lists and a higher-order abstract syntax type can be naturally formalized using the new type constructor. The work presented in this paper have been implemented in the MetaPRL proof assistant and all the derivations checked by MetaPRL.