2021
DOI: 10.48550/arxiv.2111.05617
|View full text |Cite
Preprint
|
Sign up to set email alerts
|

Software Model-Checking as Cyclic-Proof Search

Abstract: This paper shows that a variety of software model-checking algorithms can be seen as proof-search strategies for a non-standard proof system, known as a cyclic proof system. Our use of the cyclic proof system as a logical foundation of software model checking enables us to compare different algorithms, to reconstruct well-known algorithms from a few simple principles, and to obtain soundness proofs of algorithms for free. Among others, we show the significance of a heuristics based on a notion that we call max… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1

Citation Types

0
2
0

Year Published

2021
2021
2024
2024

Publication Types

Select...
1
1

Relationship

0
2

Authors

Journals

citations
Cited by 2 publications
(2 citation statements)
references
References 61 publications
(94 reference statements)
0
2
0
Order By: Relevance
“…Specifically, a cyclic proof system for separation logic has been given that automatically verifies that a program terminates [8,50]. Cyclic proof systems have recently been shown to subsume generic modelchecking algorithms such as: lazy-abstraction with interpolants, property-directed reachability, and maximal conservativity for infinite game solving [51]. As with the generic cyclic theorem prover C…”
Section: Related Work and Conclusionmentioning
confidence: 99%
See 1 more Smart Citation
“…Specifically, a cyclic proof system for separation logic has been given that automatically verifies that a program terminates [8,50]. Cyclic proof systems have recently been shown to subsume generic modelchecking algorithms such as: lazy-abstraction with interpolants, property-directed reachability, and maximal conservativity for infinite game solving [51]. As with the generic cyclic theorem prover C…”
Section: Related Work and Conclusionmentioning
confidence: 99%
“…Since, in general, we cannot expect that there is any syntactical relationship between the node and its ancestor, the formation of cycles is closely related to the use of cuts in the proof. Indeed Tsukada and Unno [51] have demonstrated that many techniques developed for efficient software model checking can be viewed as methods for introducing cuts into a cyclic proof so as to promote the formation of cycles.…”
Section: Introductionmentioning
confidence: 99%