Counterexample- and Simulation-Guided Floating-Point Loop Invariant Synthesis

Anastasiia Izycheva, Eva Darulova, Helmut Seidl

Publikation: Beitrag in Buch/Bericht/KonferenzbandKonferenzbeitragBegutachtung

Abstract

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.

OriginalspracheEnglisch
TitelStatic Analysis - 27th International Symposium, SAS 2020, Proceedings
Redakteure/-innenDavid Pichardie, Mihaela Sighireanu
Herausgeber (Verlag)Springer Science and Business Media Deutschland GmbH
Seiten156-177
Seitenumfang22
ISBN (Print)9783030654733
DOIs
PublikationsstatusVeröffentlicht - 2020
Veranstaltung27th International Symposium on Static Analysis, SAS 2020 - Virtual, Online
Dauer: 18 Nov. 202020 Nov. 2020

Publikationsreihe

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Band12389 LNCS
ISSN (Print)0302-9743
ISSN (elektronisch)1611-3349

Konferenz

Konferenz27th International Symposium on Static Analysis, SAS 2020
OrtVirtual, Online
Zeitraum18/11/2020/11/20

Fingerprint

Untersuchen Sie die Forschungsthemen von „Counterexample- and Simulation-Guided Floating-Point Loop Invariant Synthesis“. Zusammen bilden sie einen einzigartigen Fingerprint.

Dieses zitieren