Efficient Runtime Assertion Checking for Properties over Mathematical Numbers

Nikolai Kosmatov, Fonenantsoa Maurica, Julien Signoles

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

Abstract

Runtime assertion checking is the discipline of detecting at runtime violations of program properties written as formal code annotations. These properties often include numerical properties, which may rely on either (bounded) machine representations or (unbounded) mathematical numbers. The verification of the former is easier to implement and more efficient at runtime, while the latter are more expressive and often more adequate for writing specifications. This short paper explains how the runtime assertion checker E-ACSL reconciles both approaches by presenting a type system that allows the tool to generate efficient machine-number based code when it is safe to do so, while generating arbitrary-precision code when it is necessary. This type system and the code generator not only handle integers but also rational arithmetics. As far as we know, it is the first runtime verification tool that supports the verification of properties over rational numbers.

Original languageEnglish
Title of host publicationRuntime Verification - 20th International Conference, RV 2020, Proceedings
EditorsJyotirmoy Deshmukh, Dejan Nickovic
PublisherSpringer Science and Business Media Deutschland GmbH
Pages310-322
Number of pages13
ISBN (Print)9783030605070
DOIs
Publication statusPublished - 1 Jan 2020
Externally publishedYes
Event20th International Conference on Runtime Verification, RV 2020 - Los Angeles, United States
Duration: 6 Oct 20209 Oct 2020

Publication series

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

Conference

Conference20th International Conference on Runtime Verification, RV 2020
Country/TerritoryUnited States
CityLos Angeles
Period6/10/209/10/20

Keywords

  • Numerical properties
  • Optimized code generation
  • Rational numbers
  • Runtime assertion checking
  • Typing

Fingerprint

Dive into the research topics of 'Efficient Runtime Assertion Checking for Properties over Mathematical Numbers'. Together they form a unique fingerprint.

Cite this