ACM Home Page
Please provide us with feedback. Feedback
Observational equality, now!
Full text PdfPdf (300 KB)
Source
International Conference on Functional Programming archive
Proceedings of the 2007 workshop on Programming languages meets program verification table of contents
Freiburg, Germany
PANEL SESSION: Equality, panel table of contents
Pages: 57 - 68  
Year of Publication: 2007
ISBN:978-1-59593-677-6
Authors
Thorsten Altenkirch  University of Nottingham, Nottingham, United Kingdom
Conor McBride  University of Nottingham, Nottingham, United Kingdom
Wouter Swierstra  University of Nottingham, Nottingham, United Kingdom
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 5,   Downloads (12 Months): 80,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
Save this Article to a Binder    Display Formats: BibTex  EndNote ACM Ref   
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1292597.1292608
What is a DOI?

ABSTRACT

This paper has something new and positive to say about propositional equality in programming and proof systems based on the Curry-Howard correspondence between propositions and types. We have found a way to present a propositional equality type

  • which is substitutive, allowing us to reason by replacing equal for equal in propositions;
  • which reflects the observable behaviour of values rather than their construction: in particular, we have extensionality-- functions are equal if they take equal inputs to equal outputs;
  • which retains strong normalisation, decidable typechecking and canonicity--the property that closed normal forms inhabiting datatypes have canonical constructors;
  • which allows inductive data structures to be expressed in terms of a standard characterisation of well-founded trees;
  • which is presented syntactically--you can implement it directly, and we are doing so this approach stands at the core of Epigram 2;
  • which you can play with now: we have simulated our system by a shallow embedding in Agda 2, shipping as part of the standard examples package for that system [21].
.

Until now, it has always been necessary to sacrifice some of these aspects. The closest attempt in the literature is Altenkirch's construction of a setoid-model for a system with canonicity and extensionality on top of an intensional type theory with proof-irrelevant propositions [4]. Our new proposal simplifies Altenkirch's construction by adopting McBride's heterogeneous approach to equality [19].


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
Andreas Abel. A Polymorphic Lambda-Calculus with Sized Higher-Order Types. PhD thesis, Ludwig-Maximilians-Universität München, 2006.
 
3
 
4
5
 
6
Alexandre Buisse and Peter Dybjer. Formalizing categorical models of type theory in type theory. In International Workshop on Logical Frameworks and Meta-Languages: Theory and Practice, 2007.
 
7
 
8
Thierry Coquand. Pattern matching with dependent types. In BNordström, KPettersson, and GPlotkin, editors, Informal Proceedings Workshop on Types for Proofs and Programs, Båstad, Sweden, 8--12 June 1992, pages 71--84. Dept. of Computing Science, Chalmers Univ. of Technology and Göteborg Univ., 1992.
 
9
 
10
 
11
Conor McBride et al. Epigram, 2004. http://www.e-pig.org.
 
12
Healfdene Goguen, Conor McBride, and James McKinna. Eliminating dependent pattern matching. In Kokichi Futatsugi, Jean-Pierre Jouannaud, and José Meseguer, editors, Essays Dedicated to Joseph A. Goguen, volume 4060 of Lecture Notes in Computer Science, pages 521--540. Springer, 2006.
 
13
 
14
Martin Hofmann. Extensional concepts in intensional type theory. PhD thesis, Laboratory for Foundations of Computer Science, University of Edinburgh, 1995. Available from http://www.lfcs.informatics.ed.ac.uk/reports/95/ECS-LFCS-95-327/.
 
15
Martin Hofmann and Thomas Streicher. A groupoid model refutes uniqueness of identity proofs. In LICS 94, pages 208--212, 1994.
 
16
GHuet and ASaïbi. Constructive Category Theory. MIT Press, 1998.
 
17
 
18
Conor McBride. Dependently Typed Functional Programs and their Proofs. PhD thesis, University of Edinburgh, 1999. Available from http://www.lfcs.informatics.ed.ac.uk/reports/00/ECS-LFCS-00-419/.
 
19
 
20
 
21
Ulf Norell. Agda 2. http://appserv.cs.chalmers.se/users/ulfn/wiki/agda.php.
 
22
Nicolas Oury. Extensionality in the calculus of constructions. In TPHOL 05, pages 278--293, 2005.
23
24
25
26
 
27
David A. Turner. A new formulation of constructive type theory. In Peter Dybjer et al., editor, Proceedings of the Workshop on Programming Logic. Programming Methodology Group, University of Gothenburg and Chalmers University of Technology, 1989.
 
28
B. Werner. Une Théorie des Constructions Inductives. PhD thesis, Université Paris 7, 1994.
 
29

Collaborative Colleagues:
Thorsten Altenkirch: colleagues
Conor McBride: colleagues
Wouter Swierstra: colleagues