Skip to main content
Go to the home page of the European Commission (opens in new window)
English English
CORDIS - EU research results
CORDIS

Certified Refinement Types

Periodic Reporting for period 1 - CRETE (Certified Refinement Types)

Reporting period: 2022-07-01 to 2024-12-31

The CRETE project aims to develop the foundations of refinement types and apply them to verify real world applications.
Refinement types is a static verification technique that is designed to be practical, meaning to get integrated in mainstream programming. As such, it was designed to be automated by SMTs and easily extend existing programming languages, but did not have the foundations required by a formal verifier. The objective of this project is to both set the theoretical foundations of refinement types (by proving the technology correct and by developing a translation to existing correct theories) and to apply them to prove sophisticated properties.
Up to now, founded by this project there are three main results.
First, we have started the mechanization of the core calculus of refinement types in the Liquid Haskell refinement type checker (as presented at POPL'24).
Second, we have started the translation of refinement types to the Coq theorem prover. Early stages of this work were presented at TYPES'23 and this project is currently led by the PhD student of the PI.
Finally, we are using refinement types to prove sophisticated theorems of web security under the existence of dynamic policies.
The translation of refinement types to Coq is a very challenging open project. It has attracted interest from the Coq community as well. Notably, Yanick Forster, a Coq developer, has joined the project aiming to use the translation of the other direction, so that Coq formalized programs are translated to Haskell verified code.
Other than this, the PI has been invited to teach verification via refinement types at a master course at Complutense University of Madrid, has joined two IFIP working groups (WG 2.8 and WG 2.6) has invited to give the keynote of ICFP'24, and as an invited speaker at LambdaWord and Munihac.
My booklet 0 0