PML 2 : Integrated Program Verification in ML - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Conference Papers Year : 2018

PML 2 : Integrated Program Verification in ML


We present the PML 2 language, which provides a uniform environment for programming, and for proving properties of programs in an ML-like setting. The language is Curry-style and call-by-value, it provides a control operator (interpreted in terms of classical logic), it supports general recursion and a very general form of (implicit, non-coercive) subtyping. In the system, equational properties of programs are expressed using two new type formers, and they are proved by constructing terminating programs. Although proofs rely heavily on equational reasoning, equalities are exclusively managed by the type-checker. This means that the user only has to choose which equality to use, and not where to use it, as is usually done in mathematical proofs. In the system, writing proofs mostly amounts to applying lemmas (possibly recursive function calls), and to perform case analyses (pattern matchings).
Fichier principal
Vignette du fichier
lepigre_types2017 (1).pdf (546.29 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-01972000 , version 1 (07-01-2019)



Rodolphe Lepigre. PML 2 : Integrated Program Verification in ML. 23rd International Conference on Types for Proofs and Programs (TYPES 2017), Jul 2017, Budapest, Hungary. pp.27, ⟨10.4230/LIPIcs.TYPES.2017.5⟩. ⟨hal-01972000⟩
41 View
72 Download



Gmail Facebook Twitter LinkedIn More