Challenges in Decomposing Encodings of Verification Problems
Peter Schrammel (University of Oxford)

TL;DR
This paper discusses the challenges of decomposing logical encodings in program verification to improve scalability, highlighting the trade-offs between efficiency gains and potential loss of precision.
Contribution
It analyzes the complexities and interdependencies involved in decomposing verification problem encodings, especially in the context of termination analysis.
Findings
Decomposition can improve solving efficiency for large verification problems.
Abstractions introduced during decomposition may reduce analysis precision.
Challenges include managing interdependencies between decomposition and solving processes.
Abstract
Modern program verifiers use logic-based encodings of the verification problem that are discharged by a back end reasoning engine. However, instances of such encodings for large programs can quickly overwhelm these back end solvers. Hence, we need techniques to make the solving process scale to large systems, such as partitioning (divide-and-conquer) and abstraction. In recent work, we showed how decomposing the formula encoding of a termination analysis can significantly increase efficiency. The analysis generates a sequence of logical formulas with existentially quantified predicates that are solved by a synthesis-based program analysis engine. However, decomposition introduces abstractions in addition to those required for finding the unknown predicates in the formula, and can hence deteriorate precision. We discuss the challenges associated with such decompositions and their…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
