Certification of Termination Proofs Using CeTA

  • Authors:
  • René Thiemann;Christian Sternagel

  • Affiliations:
  • Institute of Computer Science, University of Innsbruck, Austria;Institute of Computer Science, University of Innsbruck, Austria

  • Venue:
  • TPHOLs '09 Proceedings of the 22nd International Conference on Theorem Proving in Higher Order Logics
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

There are many automatic tools to prove termination of term rewrite systems, nowadays. Most of these tools use a combination of many complex termination criteria. Hence generated proofs may be of tremendous size, which makes it very tedious (if not impossible) for humans to check those proofs for correctness. In this paper we use the theorem prover Isabelle/HOL to automatically certify termination proofs. To this end, we first formalized the required theory of term rewriting including three major termination criteria: dependency pairs, dependency graphs, and reduction pairs. Second, for each of these techniques we developed an executable check which guarantees the correct application of that technique as it occurs in the generated proofs. Moreover, if a proof is not accepted, a readable error message is displayed. Finally, we used Isabelle's code generation facilities to generate a highly efficient and certified Haskell program, CeTA, which can be used to certify termination proofs without even having Isabelle installed.