Journal of Automated Reasoning

, Volume 58, Issue 1, pp 149–179

Soundness and Completeness Proofs by Coinductive Methods

  • Jasmin Christian Blanchette
  • Andrei Popescu
  • Dmitriy Traytel

DOI: 10.1007/s10817-016-9391-3

Cite this article as:
Blanchette, J.C., Popescu, A. & Traytel, D. J Autom Reasoning (2017) 58: 149. doi:10.1007/s10817-016-9391-3


We show how codatatypes can be employed to produce compact, high-level proofs of key results in logic: the soundness and completeness of proof systems for variations of first-order logic. For the classical completeness result, we first establish an abstract property of possibly infinite derivation trees. The abstract proof can be instantiated for a wide range of Gentzen and tableau systems for various flavors of first-order logic. Soundness becomes interesting as soon as one allows infinite proofs of first-order formulas. This forms the subject of several cyclic proof systems for first-order logic augmented with inductive predicate definitions studied in the literature. All the discussed results are formalized using Isabelle/HOL’s recently introduced support for codatatypes and corecursion. The development illustrates some unique features of Isabelle/HOL’s new coinductive specification language such as nesting through non-free types and mixed recursion–corecursion.


Codatatypes Lazy evaluation First-order logic Soundness Completeness Gentian systems Proof assistants Isabelle/HOL 

Copyright information

© Springer Science+Business Media Dordrecht 2016

Authors and Affiliations

  1. 1.Inria Nancy and LORIAVillers-lès-NancyFrance
  2. 2.Max-Planck-Institut für InformatikSaarbrückenGermany
  3. 3.Department of Computer Science, School of Science and TechnologyMiddlesex UniversityLondonUK
  4. 4.Institute of Information Security, Department of Computer ScienceETH ZurichZurichSwitzerland
  5. 5.Institute of Mathematics Simion Stoilow of the Romanian AcademyBucharestRomania