The Complex(ity) Landscape of Checking Infinite Descent

Liron Cohen, Adham Jabarin, Andrei Popescu, Reuben N.S. Rowe

Research output: Contribution to journalArticlepeer-review

Abstract

Cyclic proof systems, in which induction is managed implicitly, are a promising approach to automatic verification. The soundness of cyclic proof graphs is ensured by checking them against a trace-based Infinite Descent property. Although the problem of checking Infinite Descent is known to be PSPACE-complete, this leaves much room for variation in practice. Indeed, a number of different approaches are employed across the various cyclic proof systems described in the literature. In this paper, we study criteria for Infinite Descent in an abstract, logic-independent setting. We look at criteria based on Büchi automata encodings and relational abstractions, and determine their parameterized time complexities in terms of natural dimensions of cyclic proofs: the numbers of vertices of the proof-tree graphs, and the vertex width - an upper bound on the number of components (e.g., formulas) of a sequent that can be simultaneously tracked for descent. We identify novel algorithms that improve upon the parameterised complexity of the existing algorithms. We implement the studied criteria and compare their performance on various benchmarks.

Original languageAmerican English
Article number46
JournalProceedings of the ACM on Programming Languages
Volume8
DOIs
StatePublished - 5 Jan 2024

Keywords

  • Büchi automata
  • algorithms
  • complexity
  • cyclic proof
  • infinite descent
  • size-change termination

All Science Journal Classification (ASJC) codes

  • Software
  • Safety, Risk, Reliability and Quality

Cite this