Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2503887.2503890acmconferencesArticle/Chapter ViewAbstractPublication PageslfmtpConference Proceedingsconference-collections
research-article

Explicit convertibility proofs in pure type systems

Published: 23 September 2013 Publication History

Abstract

We define type theory with explicit conversions. When type checking a term in normal type theory, the system searches for convertibility paths between types. The results of these searches are not stored in the term, and need to be reconstructed every time again. In our system, this information is also represented in the term. The system we define has the property that the type derivation of a term has exactly the same structure as the term itself. This has the consequence that there exists a natural LF encoding of such a system in which the encoded type is a dependent parameter of the type of the encoded term.
For every Pure Type System we define a system in our style. We show that such a system is always equivalent to the normal system without explicit conversions (even for non-functional systems), in the sense that the typability relation can be lifted. This proof has been fully formalised in the Coq system, building on a formalisation by Vincent Siles.
In our system, explicit conversions are not allowed to be removed when checking for convertibility. This means that all terms in convertibility proofs are well typed, even in the sense of our system.

Supplementary Material

ZIP File (lfmtp02.zip)
This is the formalisation of the master's thesis "Explicit convertibility proofs in Pure Type Systems" written by Floris van Doorn and of the paper with the same name written by Floris van Doorn, Herman Geuvers and Freek Wiedijk. The formalisation is made with the Coq Proof Assistant, version 8.4pl1, using CoqIDE. Coq and CoqIDE can be downloaded here: http://coq.inria.fr/ - The formalisation and the thesis can be downloaded here: http://www.cs.ru.nl/~freek/ptsf/

References

[1]
M. Abadi, L. Cardelli, P.-L. Curien, and J.-J. LÈvy. Explicit substitutions, 1996.
[2]
R. Adams. Pure type systems with judgemental equality. phJournal of Functional Programming, 16 (2): 219--246, Mar. 2006.
[3]
H. Barendregt. Introduction to generalized type systems. phJournal of Functional Programming, 1 (2): 125--154, 1991.
[4]
H. Barendregt. Lambda calculi with types. In phHandbook of Logic in Computer Science, pages 117--309. Oxford University Press, 1992.
[5]
N. G. de Bruijn. Lambda calculus notation with nameless dummies, a tool for automatic formula manipulation, with application to the church-rosser theorem. phINDAG. MATH, 34: 381--392, 1972.
[6]
N. G. de Bruijn. A plea for weaker frameworks. In G. Huet and G. Plotkin, editors, phLogical frameworks, pages 40--67. Cambridge University Press, New York, NY, USA, 1991. ISBN 0--521--41300--1. URL http://dl.acm.org/citation.cfm?id=120477.120479.
[7]
F. v. Doorn. Explicit Convertibility Proofs in Pure Type Systems. Master's thesis, Utrecht University, 2013. .
[8]
H. Geuvers and F. Wiedijk. A logical framework with explicit conversions. phElectronic Notes in Theoretical Computer Science, 199 (0): 33 -- 47, 2008.
[9]
H. Geuvers, F. Wiedijk, and J. Zwanenburg. Equational reasoning via partial reflection. In M. Aagaard and J. Harrison, editors, phTPHOLs, volume 1869 of phLecture Notes in Computer Science, pages 162--178. Springer, 2000. ISBN 3--540--67863--8.
[10]
R. Harper, F. Honsell, and G. Plotkin. A framework for defining logics. phJ. ACM, 40 (1): 143--184, Jan. 1993.
[11]
G. Huet. Constructive computation theory. phCourse notes on lambda calculus, University of Bordeaux I, 2011. URL http://pauillac.inria.fr/ huet/CCT/.
[12]
012)}Coq:manual\mboxThe Coq development team. phThe Coq proof assistant reference manual. LogiCal Project, 2012. URL http://coq.inria.fr. Version 8.4.
[13]
C. McBride. Elimination with a motive. In phTypes for Proofs and Programs (Proceedings of the International Workshop, TYPES00), volume 2277 of LNCS, pages 197--216. Springer-Verlag, 2002.
[14]
M. Oostdijk and H. Geuvers. Proof by computation in the coq system. phTheor. Comput. Sci., 272 (1--2): 293--314, 2002.
[15]
R. Pollack. phThe Theory of LEGO - A Proof Checker for the Extended Calculus of Constructions. PhD thesis, University of Edinburgh, 1994.
[16]
V. Siles and H. Herbelin. Pure type system conversion is always typable. phJournal of Functional Programming, 22 (2): 153 -- 180, May 2012.
[17]
M. Takahashi. Parallel reductions in $łambda$-calculus. phInformation and Computation, 118 (1): 120 -- 127, 1995.
[18]
S. Weirich, J. Hsu, and R. A. Eisenberg. Towards dependently typed GHC: System FC with kind equality. Accepted for ICFP 2013, 2013.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
LFMTP '13: Proceedings of the Eighth ACM SIGPLAN international workshop on Logical frameworks & meta-languages: theory & practice
September 2013
74 pages
ISBN:9781450323826
DOI:10.1145/2503887
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 23 September 2013

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. conversion rule
  2. convertibility proofs
  3. coq
  4. formalisation
  5. pure type systems
  6. type theory

Qualifiers

  • Research-article

Conference

ICFP'13
Sponsor:

Acceptance Rates

LFMTP '13 Paper Acceptance Rate 5 of 7 submissions, 71%;
Overall Acceptance Rate 11 of 20 submissions, 55%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)4
  • Downloads (Last 6 weeks)2
Reflects downloads up to 25 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2019)Eliminating reflection from type theoryProceedings of the 8th ACM SIGPLAN International Conference on Certified Programs and Proofs10.1145/3293880.3294095(91-103)Online publication date: 14-Jan-2019
  • (2019)Pure iso-type systemsJournal of Functional Programming10.1017/S095679681900010829Online publication date: 17-Sep-2019
  • (2019)System F in Agda, for Fun and ProfitMathematics of Program Construction10.1007/978-3-030-33636-3_10(255-297)Online publication date: 20-Oct-2019
  • (2017)Unifying typing and subtypingProceedings of the ACM on Programming Languages10.1145/31338711:OOPSLA(1-26)Online publication date: 12-Oct-2017
  • (2017)A specification for dependent types in HaskellProceedings of the ACM on Programming Languages10.1145/31102751:ICFP(1-29)Online publication date: 29-Aug-2017
  • (2016)Unified Syntax with Iso-typesProgramming Languages and Systems10.1007/978-3-319-47958-3_14(251-270)Online publication date: 9-Oct-2016
  • (2013)System FC with explicit kind equalityACM SIGPLAN Notices10.1145/2544174.250059948:9(275-286)Online publication date: 25-Sep-2013

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media