Runtime Abstract Interpretation for Numerical Accuracy and Robustness

Franck Védrine, Maxime Jacquemin, Nikolai Kosmatov, Julien Signoles

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Verification of numerical accuracy properties in modern software remains an important and challenging task. One of its difficulties is related to unstable tests, where the execution can take different branches for real and floating-point numbers. This paper presents a new verification technique for numerical properties, named Runtime Abstract Interpretation (RAI), that, given an annotated source code, embeds into it an abstract analyzer in order to analyze the program behavior at runtime. RAI is a hybrid technique combining abstract interpretation and runtime verification that aims at being sound as the former while taking benefit from the concrete run to gain greater precision from the latter when necessary. It solves the problem of unstable tests by surrounding an unstable test by two carefully defined program points, forming a so-called split-merge section, for which it separately analyzes different executions and merges the computed domains at the end of the section. Our implementation of this technique in a toolchain called FLDBox relies on two basic tools, FLDCompiler, that performs a source-to-source transformation of the given program and defines the split-merge sections, and an instrumentation library FLDLib that provides necessary primitives to explore relevant (partial) executions of each section and propagate accuracy properties. Initial experiments show that the proposed technique can efficiently and soundly analyze numerical accuracy for industrial programs on thin numerical scenarios.

Original languageEnglish
Title of host publicationVerification, Model Checking, and Abstract Interpretation - 22nd International Conference, VMCAI 2021, Proceedings
EditorsFritz Henglein, Sharon Shoham, Yakir Vizel
PublisherSpringer Science and Business Media Deutschland GmbH
Pages243-266
Number of pages24
ISBN (Print)9783030670665
DOIs
Publication statusPublished - 1 Jan 2021
Externally publishedYes
Event22nd International Conference on Verification, Model Checking, and Abstract Interpretation, VMCAI 2021 - Copenhagen, Denmark
Duration: 17 Jan 202119 Jan 2021

Publication series

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

Conference

Conference22nd International Conference on Verification, Model Checking, and Abstract Interpretation, VMCAI 2021
Country/TerritoryDenmark
CityCopenhagen
Period17/01/2119/01/21

Fingerprint

Dive into the research topics of 'Runtime Abstract Interpretation for Numerical Accuracy and Robustness'. Together they form a unique fingerprint.

Cite this