Termination proofs for recursive functions in FoCaLiZe

Catherine Dubois, François Pessaux

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

FoCaLiZe is a development environment allowing the writing of specifications, implementations and correctness proofs. It generates both OCaml (executable) and Coq code (for verification needs). This paper extends the language and the compiler to handle termination proofs relying on well-founded relations or measures. We propose an approach where the user’s burden is lightened as much as possible, leaving glue code to the compiler. Proofs are written using the declarative proof language provided by FoCaLiZe, and the automatic theorem prover Zenon. When compiling to Coq we rely on the Coq construct Function.

Original languageEnglish
Title of host publicationTrends in Functional Programming - 16th International Symposium, TFP 2015, Revised Selected Papers
EditorsManuel Serrano, Jurriaan Hage
PublisherSpringer Verlag
Pages136-156
Number of pages21
ISBN (Print)9783319391090
DOIs
Publication statusPublished - 1 Jan 2016
Externally publishedYes
Event16th International Symposium on Trends in Functional Programming, TFP 2015 - Sophia Antipolis, France
Duration: 3 Jun 20155 Jun 2015

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume9547
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference16th International Symposium on Trends in Functional Programming, TFP 2015
Country/TerritoryFrance
CitySophia Antipolis
Period3/06/155/06/15

Keywords

  • Coq
  • FoCaLiZe
  • Formal proof
  • Functional programming
  • Recursion
  • Termination

Fingerprint

Dive into the research topics of 'Termination proofs for recursive functions in FoCaLiZe'. Together they form a unique fingerprint.

Cite this