A Primal-Dual Perspective on Program Verification Algorithms
Takeshi Tsukada, Hiroshi Unno, Oded Padon, Sharon Shoham
Abstract
Many algorithms in verification and automated reasoning leverage some form of duality between proofs and refutations or counterexamples. In most cases, duality is only used as an intuition that helps in understanding the algorithms and is not formalized. In other cases, duality is used explicitly, but in a specially tailored way that does not generalize to other problems.
In this paper we propose a unified primal-dual framework for designing verification algorithms that leverage duality. To that end, we generalize the concept of a Lagrangian that is commonly used in linear programming and optimization to capture the domains considered in verification problems, which are usually discrete, e.g., powersets of states, predicates, ranking functions, etc. A Lagrangian then induces a primal problem and a dual problem. We devise an abstract primal-dual procedure that simultaneously searches for a primal solution and a dual solution, where the two searches guide each other. We provide sufficient conditions that ensure that the procedure makes progress under certain monotonicity assumptions on the Lagrangian.
We show that many existing algorithms in program analysis, verification, and automated reasoning can be derived from our algorithmic framework with a suitable choice of Lagrangian. The Lagrangian-based formulation sheds new light on various characteristics of these algorithms, such as the ingredients they use to ensure monotonicity and guarantee progress. We further use our framework to develop a new validity checking algorithm for fixpoint logic over quantified linear arithmetic. Our prototype achieves promising results and in some cases solves instances that are not solved by state-of-the-art techniques.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 5eafbf75-245e-4ed0-9600-74125df64e59Cited by top-tier papers1
Ask how each one uses itBuilds on9
- Constraint-Based Relational VerificationHiroshi Unno, Tachio Terauchi, Eric KoskinenCAV 2021 · 47 citations
- Global Guidance for Local Generalization in Model CheckingHari Govind Vediramana Krishnan, Yuting Chen, Sharon Shoham, Arie GurfinkelCAV 2020 · 26 citations
- Modular Primal-Dual Fixpoint Logic Solving for Temporal VerificationHiroshi Unno, Tachio Terauchi, Yu Gu, Eric KoskinenPOPL 2023 · 23 citations
- Solving Infinite-State Games via AccelerationPhilippe Heim, Rayna DimitrovaPOPL 2024 · 14 citations
- Induction duality: primal-dual search for invariantsOded Padon, James R. Wilcox, Jason R. Koenig, Kenneth L. McMillan et al.POPL 2022 · 14 citations
Related papers
- Primal-Dual Neural Algorithmic ReasoningYu He, Ellen VitercikICML 2025
- Towards a unified proof framework for automated fixpoint reasoning using matching logicXiaohong Chen, Minh-Thai Trinh, Nishant Rodrigues, Lucas Peña et al.OOPSLA 2020 · 7 citations
- Verifying Solutions to Semantics-Guided Synthesis ProblemsCharlie Murphy, Keith J. C. Johnson, Thomas Reps, Loris D'AntoniPLDI 2025
- Zonotope Domains for Lagrangian Neural Network VerificationMatt Jordan, Jonathan Hayase, Alex Dimakis, Sewoong OhNeurIPS 2022 · 6 citations
- Algebraic Reasoning Meets Automata in Solving Linear Integer ArithmeticPeter Habermehl, Vojtech Havlena, Michal Hecko, Lukás Holík et al.CAV 2024 · 4 citations
