Certification of Termination Proofs using CeTA
René Thiemann and Christian SternagelProceedings of the 22nd International Conference on Theorem Proving in Higher-Order Logics (TPHOLs 2009), Lecture Notes in Computer Science 5674, pp. 452 – 468, 2009.
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.
BibTeX
@inproceedings{RTCS-TPHOLs09, author = "Ren{\'e} Thiemann and Christian Sternagel", title = "Certification of Termination Proofs using \textsf{C\kern-0.2exe\kern-0.5exT\kern-0.5exA}", booktitle = "Proceedings of the 22nd International Conference on Theorem Proving in Higher-Order Logics", series = "Lecture Notes in Computer Science", publisher = "Springer-Verlag", volume = 5674, pages = "452--468", year = 2009 }