FoCaLiZe: Inside an F-IDE
Fran\c{c}ois Pessaux (ENSTA ParisTech)

TL;DR
This paper explores FoCaLiZe, a formal IDE that integrates specification, code, and proofs in a single environment, enabling incremental development and code reuse for safety-critical software.
Contribution
It presents the implementation and compilation scheme of FoCaLiZe, combining specification, code, and proofs in one language with dependencies and incremental development.
Findings
Produces runnable OCaml code from proofs and specifications.
Supports incremental development and code reuse.
Addresses implementation challenges of a unified formal IDE.
Abstract
For years, Integrated Development Environments have demonstrated their usefulness in order to ease the development of software. High-level security or safety systems require proofs of compliance to standards, based on analyses such as code review and, increasingly nowadays, formal proofs of conformance to specifications. This implies mixing computational and logical aspects all along the development, which naturally raises the need for a notion of Formal IDE. This paper examines the FoCaLiZe environment and explores the implementation issues raised by the decision to provide a single language to express specification properties, source code and machine-checked proofs while allowing incremental development and code reusability. Such features create strong dependencies between functions, properties and proofs, and impose an particular compilation scheme, which is described here. The…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
