KIT | KIT-Bibliothek | Impressum | Datenschutz

Deductive Verification of Floating-Point Java Programs in KeY

Abbasi, Rosa; Schiffl, Jonas; Darulova, Eva; Ulbrich, Mattias; Ahrendt, Wolfgang

Abstract (englisch):
Deductive verification has been successful in verifying interesting properties of real-world programs. One notable gap is the limited support for floating-point reasoning. This is unfortunate, as floating-point arithmetic is particularly unintuitive to reason about due to rounding as well as the presence of the special values infinity and `Not a Number' (NaN). In this paper, we present the first floating-point support in a deductive verification tool for the Java programming language. Our support in the KeY verifier handles arithmetic via floating-point decision procedures inside SMT solvers and transcendental functions via axiomatization. We evaluate this integration on new benchmarks, and show that this approach is powerful enough to prove the absence of floating-point special values---often a prerequisite for further reasoning about numerical computations---as well as certain functional properties for realistic benchmarks.


Postprint §
DOI: 10.5445/IR/1000139607
Veröffentlicht am 04.11.2021
Originalveröffentlichung
DOI: 10.1007/978-3-030-72013-1_13
Cover der Publikation
Zugehörige Institution(en) am KIT Institut für Informationssicherheit und Verlässlichkeit (KASTEL)
Publikationstyp Proceedingsbeitrag
Publikationsjahr 2021
Sprache Englisch
Identifikator ISBN: 978-3-030-72013-1
KITopen-ID: 1000139607
HGF-Programm 46.23.01 (POF IV, LK 01) Methods for Engineering Secure Systems
Erschienen in Tools and Algorithms for the Construction and Analysis of Systems : 27th International Conference, TACAS 2021, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2021, Luxembourg City, Luxembourg, March 27 – April 1, 2021, Proceedings, Part II. Ed.: J. F. Groote
Veranstaltung 27th Tools and Algorithms for the Construction and Analysis of Systems. International Conference held as Part of the European Joint Conferences on Theory and Practice of Software (TACAS /ETAPS 2021), Online, 27.03.2021 – 01.04.2021
Auflage 1. ed.
Verlag Springer International Publishing
Seiten 242–261
Serie Theoretical Computer Science and General Issues ; 12652
Bemerkung zur Veröffentlichung Computer Science (SpringerNature-11645)
Vorab online veröffentlicht am 23.03.2021
KIT – Die Forschungsuniversität in der Helmholtz-Gemeinschaft
KITopen Landing Page