The principality of OCaml’s GADT type inference relies on the concept of ambivalence, which allows to reject programs whose typing is ambiguous. Yet, ambivalence itself requires to use a graph view of types, making inductive reasoning more difficult. In this talk, we present our ongoing work on mechanizing the metatheory of a core language for modern OCaml and formally proving soundness and principality for this core language. Our core language supports structural polymorphism, recursive types, and type-level equality witnesses, which are the defining features of OCaml type inference as of version 4.12. We have now proved subject reduction for a meaningful subset of the reduction rules.
Slides (gadt-coq-show.pdf) | 222KiB |
Thu 26 AugDisplayed time zone: Seoul change
Thu 26 Aug
Displayed time zone: Seoul change
20:00 - 21:30 | |||
20:00 30mTalk | Formalizing OCaml GADT typing in Coq ML Pre-print File Attached | ||
20:30 30mTalk | Demo Paper : Coqlex, an approach to generate verified lexers ML Wendlasida Ouedraogo Siemens Mobility & Inria Saclay, Danko Ilik Siemens Mobility, Lutz Strassburger Inria Saclay & LIX, Ecole Polytechnique Media Attached File Attached | ||
21:00 30mTalk | Code Extraction from Coq to ML-like languages ML Danil Annenkov Concordium Blockchain Research Center, Aarhus University, Mikkel Milo Concordium Blockchain Research Center, Aarhus University, Bas Spitters Aarhus University Link to publication File Attached |