TY - GEN
T1 - Counterexample- and Simulation-Guided Floating-Point Loop Invariant Synthesis
AU - Izycheva, Anastasiia
AU - Darulova, Eva
AU - Seidl, Helmut
N1 - Publisher Copyright:
© 2020, The Author(s).
PY - 2020
Y1 - 2020
N2 - We present an automated procedure for synthesizing sound inductive invariants for floating-point numerical loops. Our procedure generates invariants of the form of a convex polynomial inequality that tightly bounds the values of loop variables. Such invariants are a prerequisite for reasoning about the safety and roundoff errors of floating-point programs. Unlike previous approaches that rely on policy iteration, linear algebra or semi-definite programming, we propose a heuristic procedure based on simulation and counterexample-guided refinement. We observe that this combination is remarkably effective and general and can handle both linear and nonlinear loop bodies, nondeterministic values as well as conditional statements. Our evaluation shows that our approach can efficiently synthesize loop invariants for existing benchmarks from literature, but that it is also able to find invariants for nonlinear loops that today’s tools cannot handle.
AB - We present an automated procedure for synthesizing sound inductive invariants for floating-point numerical loops. Our procedure generates invariants of the form of a convex polynomial inequality that tightly bounds the values of loop variables. Such invariants are a prerequisite for reasoning about the safety and roundoff errors of floating-point programs. Unlike previous approaches that rely on policy iteration, linear algebra or semi-definite programming, we propose a heuristic procedure based on simulation and counterexample-guided refinement. We observe that this combination is remarkably effective and general and can handle both linear and nonlinear loop bodies, nondeterministic values as well as conditional statements. Our evaluation shows that our approach can efficiently synthesize loop invariants for existing benchmarks from literature, but that it is also able to find invariants for nonlinear loops that today’s tools cannot handle.
KW - CEGIS
KW - Floating-point arithmetic
KW - Invariant synthesis
KW - Simulation
UR - http://www.scopus.com/inward/record.url?scp=85101400855&partnerID=8YFLogxK
U2 - 10.1007/978-3-030-65474-0_8
DO - 10.1007/978-3-030-65474-0_8
M3 - Conference contribution
AN - SCOPUS:85101400855
SN - 9783030654733
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 156
EP - 177
BT - Static Analysis - 27th International Symposium, SAS 2020, Proceedings
A2 - Pichardie, David
A2 - Sighireanu, Mihaela
PB - Springer Science and Business Media Deutschland GmbH
T2 - 27th International Symposium on Static Analysis, SAS 2020
Y2 - 18 November 2020 through 20 November 2020
ER -