COOKIES: By using this website you agree that we can place Google Analytics Cookies on your device for performance monitoring. |
University of Cambridge > Talks.cam > Semantics Lunch (Computer Laboratory) > Dependent types and program equivalence
Dependent types and program equivalenceAdd to your list(s) Download to your calendar using vCal
If you have a question about this talk, please contact Sam Staton. The definition of type equivalence is one of the most important design issues for any typed language. In dependently-typed languages, because terms appear in types, this definition must rely on a definition of term equivalence. In that case, decidability of type checking requires decidability for the term equivalence relation. Almost all dependently-typed languages require this term equivalence relation to be decidable. Some, such as Coq, Epigram or Agda, do so by employing analyses to force all programs to terminate. Conversely, others, such as DML , ATS, Omega, or Haskell, allow nonterminating computation, but do not allow those terms to appear in types. In both cases, decidable type checking comes at a cost, in terms of complexity and expressiveness. Conversely, the benefits to be gained by decidable type checking are modest. Termination analyses allow dependently typed programs to verify total correctness properties. However, decidable type checking is not a prerequisite for type safety—and, in this context, type safety implies a weak form of correctness. Furthermore, decidability does not imply tractability. A decidable approximation of program equivalence may still not be useful in practice. Therefore, we take a different approach: instead of a fixed, decidable, notion for term equivalence, we parameterize our type system with an abstract relation that is not necessarily decidable. We then design a novel set of typing rules that require only weak properties of this abstract relation in the proof of the preservation and progress lemmas. This design provides flexibility: we compare valid instantiations of term equivalence which range from beta-equivalence, to contextual equivalence, to some exotic equivalences. This is joint work with Joint work with Limin Jia, Zianzhou Zhao, and Vilhelm Sjoberg. This talk is part of the Semantics Lunch (Computer Laboratory) series. This talk is included in these lists:
Note that ex-directory lists are not shown. |
Other listsCollaboration Events CU Explorer's Society Artificial Intelligence: Disrupting Sustainability ConferenceOther talks'Honouring Giulio Regeni: a plea for research in risky environments' Babraham Lecture - Understanding how the p53 onco-suppressor gene works: hints from the P2X7 ATP receptor CANCELLED: The cognitive neuroscience of antidepressant drug action Sacred Mountains as Flood Refuge Sites in Northwest North America 'Cambridge University, Past and Present' PTPmesh: Data Center Network Latency Measurements Using PTP The frequency of ‘America’ in America Cambridge-Lausanne Workshop 2018 - Day 2 Single Cell Seminars (November) CPGJ Reading Group "Space, Borders, Power" |