Skip to Main content Skip to Navigation
New interface
Conference papers

An Algorithm Inspired by Constraint Solvers to Infer Inductive Invariants in Numeric Programs

Abstract : This paper addresses the problem of proving a given invari-ance property ϕ of a loop in a numeric program, by inferring automatically a stronger inductive invariant ψ. The algorithm we present is based on both abstract interpretation and constraint solving. As in abstract interpretation, it computes the effect of a loop using a numeric abstract domain. As in constraint satisfaction, it works from " above " — interactively splitting and tightening a collection of abstract elements until an inductive invariant is found. Our experiments show that the algorithm can find non-linear inductive invariants that cannot normally be obtained using intervals (or octagons), even when classic techniques for increasing abstract-interpretation precision are employed—such as increasing and decreasing iterations with extrapolation, partitioning, and disjunctive completion. The advantage of our work is that because the algorithm uses standard abstract domains, it sidesteps the need to develop complex, non-standard domains specialized for solving a particular problem.
Document type :
Conference papers
Complete list of metadata

Cited literature [32 references]  Display  Hide  Download
Contributor : Antoine Miné Connect in order to contact the contributor
Submitted on : Thursday, May 5, 2016 - 10:39:28 AM
Last modification on : Sunday, June 26, 2022 - 9:47:52 AM
Long-term archiving on: : Tuesday, November 15, 2016 - 8:51:49 PM


Files produced by the author(s)



Antoine Miné, Jason Breck, Thomas Reps. An Algorithm Inspired by Constraint Solvers to Infer Inductive Invariants in Numeric Programs. 25th European Symposium on Programming, ESOP 2016, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2016, Apr 2016, Eindhoven, Netherlands. pp.560-588, ⟨10.1007/978-3-662-49498-1_22⟩. ⟨hal-01312250⟩



Record views


Files downloads