Efficient Runtime Assertion Checking for Properties over Mathematical Numbers

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 verificat...

Full description

Saved in:
Bibliographic Details
Published inRuntime Verification Vol. 12399; pp. 310 - 322
Main Authors Kosmatov, Nikolai, Maurica, Fonenantsoa, Signoles, Julien
Format Book Chapter
LanguageEnglish
Published Switzerland Springer International Publishing AG 2020
Springer International Publishing
SeriesLecture Notes in Computer Science
Subjects
Online AccessGet full text
ISBN3030605078
9783030605070
ISSN0302-9743
1611-3349
DOI10.1007/978-3-030-60508-7_17

Cover

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.
AbstractList 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.
Author Maurica, Fonenantsoa
Signoles, Julien
Kosmatov, Nikolai
Author_xml – sequence: 1
  givenname: Nikolai
  orcidid: 0000-0003-1557-2813
  surname: Kosmatov
  fullname: Kosmatov, Nikolai
  email: nikolaikosmatov@gmail.com
– sequence: 2
  givenname: Fonenantsoa
  surname: Maurica
  fullname: Maurica, Fonenantsoa
– sequence: 3
  givenname: Julien
  surname: Signoles
  fullname: Signoles, Julien
BookMark eNpFkM1OwzAQhM2vaKFvwCEvYLC9dpwcq4o_qQWE4Gw59poG2qTYKc-PW5A47WpWs5r5xuS46zsk5JKzK86Yvq51RYEyYLRkilVUG64PyBiyshfKQzLiJecUQNZH_wddHZNR3gWttYRTMuaCSa6EkvqMTFL6YIwJKVQt1IgsbkJoXYvdULxsu6FdYzFNCePQ9l0xW6L7bLv3IvSxeI79ZqdjKvpvjMXCDktc26F1dlU8btcNxnRBToJdJZz8zXPydnvzOrun86e7h9l0TpcgYKAlVNZb5avKCxEgIGLDnVKouNO18qoKGCx6X0IjfBO4Q6-dV6oC6WWj4JyI379pE3M-jKbp-89kODM7dCajM2AyA7MnZXboskn-mjax_9piGgzuXC53j3bllnYz5AqmhLIupTACtMlp4Qd17HC6
ContentType Book Chapter
Copyright Springer Nature Switzerland AG 2020
Copyright_xml – notice: Springer Nature Switzerland AG 2020
DBID FFUUA
DOI 10.1007/978-3-030-60508-7_17
DatabaseName ProQuest Ebook Central - Book Chapters - Demo use only
DatabaseTitleList
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISBN 3030605086
9783030605087
EISSN 1611-3349
Editor Deshmukh, Jyotirmoy
Ničković, Dejan
Editor_xml – sequence: 1
  fullname: Ničković, Dejan
– sequence: 2
  fullname: Deshmukh, Jyotirmoy
EndPage 322
ExternalDocumentID EBC6369642_237_323
GroupedDBID 38.
AABBV
ACGCR
AEDXK
AEJLV
AEJNW
AEKFX
ALMA_UNASSIGNED_HOLDINGS
APEJL
AVCSZ
AZTDL
BBABE
CYNQG
CZZ
DACMV
ESBCR
FFUUA
I4C
IEZ
OAOFD
OPOMJ
SBO
TPJZQ
TSXQS
Z5O
Z7R
Z7S
Z7U
Z7W
Z7X
Z7Y
Z7Z
Z81
Z83
Z84
Z85
Z87
Z88
-DT
-GH
-~X
1SB
29L
2HA
2HV
5QI
875
AASHB
ABMNI
ACGFS
ADCXD
AEFIE
EJD
F5P
FEDTE
HVGLF
LAS
LDH
P2P
RIG
RNI
RSU
SVGTG
VI1
~02
ID FETCH-LOGICAL-h323t-638ada5d88d22f3feeeb1c55e51c795d58fefaedd63b2dbf1ced7cd55834d4b53
ISBN 3030605078
9783030605070
ISSN 0302-9743
IngestDate Tue Jul 29 20:36:12 EDT 2025
Wed May 28 23:37:01 EDT 2025
IsDoiOpenAccess false
IsOpenAccess true
IsPeerReviewed true
IsScholarly true
LCCallNum QA76.758
Language English
LinkModel OpenURL
MergedId FETCHMERGED-LOGICAL-h323t-638ada5d88d22f3feeeb1c55e51c795d58fefaedd63b2dbf1ced7cd55834d4b53
OCLC 1204152547
ORCID 0000-0003-1557-2813
OpenAccessLink https://cea.hal.science/cea-04469333
PQID EBC6369642_237_323
PageCount 13
ParticipantIDs springer_books_10_1007_978_3_030_60508_7_17
proquest_ebookcentralchapters_6369642_237_323
PublicationCentury 2000
PublicationDate 2020
PublicationDateYYYYMMDD 2020-01-01
PublicationDate_xml – year: 2020
  text: 2020
PublicationDecade 2020
PublicationPlace Switzerland
PublicationPlace_xml – name: Switzerland
– name: Cham
PublicationSeriesSubtitle Programming and Software Engineering
PublicationSeriesTitle Lecture Notes in Computer Science
PublicationSeriesTitleAlternate Lect.Notes Computer
PublicationSubtitle 20th International Conference, RV 2020, Los Angeles, CA, USA, October 6-9, 2020, Proceedings
PublicationTitle Runtime Verification
PublicationYear 2020
Publisher Springer International Publishing AG
Springer International Publishing
Publisher_xml – name: Springer International Publishing AG
– name: Springer International Publishing
RelatedPersons Hartmanis, Juris
Gao, Wen
Bertino, Elisa
Woeginger, Gerhard
Goos, Gerhard
Steffen, Bernhard
Yung, Moti
RelatedPersons_xml – sequence: 1
  givenname: Gerhard
  surname: Goos
  fullname: Goos, Gerhard
– sequence: 2
  givenname: Juris
  surname: Hartmanis
  fullname: Hartmanis, Juris
– sequence: 3
  givenname: Elisa
  surname: Bertino
  fullname: Bertino, Elisa
– sequence: 4
  givenname: Wen
  surname: Gao
  fullname: Gao, Wen
– sequence: 5
  givenname: Bernhard
  orcidid: 0000-0001-9619-1558
  surname: Steffen
  fullname: Steffen, Bernhard
– sequence: 6
  givenname: Gerhard
  orcidid: 0000-0001-8816-2693
  surname: Woeginger
  fullname: Woeginger, Gerhard
– sequence: 7
  givenname: Moti
  surname: Yung
  fullname: Yung, Moti
SSID ssj0002425925
ssj0002792
Score 2.234155
Snippet Runtime assertion checking is the discipline of detecting at runtime violations of program properties written as formal code annotations. These properties...
SourceID springer
proquest
SourceType Publisher
StartPage 310
SubjectTerms Numerical properties
Optimized code generation
Rational numbers
Runtime assertion checking
Typing
Title Efficient Runtime Assertion Checking for Properties over Mathematical Numbers
URI http://ebookcentral.proquest.com/lib/SITE_ID/reader.action?docID=6369642&ppg=323
http://link.springer.com/10.1007/978-3-030-60508-7_17
Volume 12399
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
link http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV1La9wwEBab7aX00DdNX-jQm1GxJctWDj2EkBBCdik0CbkJ25KbELKGrNNDT_3pndHD9m5zSS9mMUbSzidGM6OZbwj5UqbIUi4Vq-A4ZXmhBFNKtszwVJTcNmlaYTXyYlkcn-cnl_JyNvszyVq67-uvze8H60r-B1V4B7hilewjkB0GhRfwG_CFJyAMzy3jdzPM6iliscnDrU0uYKY2RN4G9dmtwRLtfnmsb8B9vR5Dz8gj5EzGo25lXR5MN-jmH9c_V11og42l07FQLITuHd8EZg_EyffdbT5uoYMr29zEtMzvGOK_Q67WBFNEk8VADgs7YumakHhbHsVk199Ow03GsutdglgSm01E3TMNTvB0KzgRg5Nb4c0xwrbhzQr0X1IwUNOJEhSgscHn8UrQeiVdIPWi8FSnQfGKkBzrz3Dha53_OR6mGSEwMsPZFCt1Vu6QnVLlc_Jk__Dk9GKI0qFDNmFvTJFu0d9L-VVhtVBctfJ8TuO_mFRqPjTlhk-zdQ3vrJuzF-QZVrxQLEUB-b0kM7t6RZ5HCGiA4DVZDPjTgD8d8KcRfwr40xF_ivjTKf404P-GnB8dnh0cs9COg10JLnoGmroylTRKGc5b0VoL53wjpZVZU-5JI1Vr28oaU4iam7rNGmvKxkipRG7yWoq3ZL6Cjf2O0KyoVCsaXrbC5jwr9nhleWbBWoURVW52CYui0S5pIGQqN14Qa11gG8qcay5KDYvbJUmUn8bP1zqycYPgtdAgeO0Er1Hw7x_19QfydNzZH8m8v7u3n8AQ7evPYbf8BWmNgxQ
linkProvider Library Specific Holdings
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.title=Runtime+Verification&rft.au=Kosmatov%2C+Nikolai&rft.au=Maurica%2C+Fonenantsoa&rft.au=Signoles%2C+Julien&rft.atitle=Efficient+Runtime+Assertion+Checking+for+Properties+over+Mathematical+Numbers&rft.series=Lecture+Notes+in+Computer+Science&rft.date=2020-01-01&rft.pub=Springer+International+Publishing&rft.isbn=9783030605070&rft.issn=0302-9743&rft.eissn=1611-3349&rft.spage=310&rft.epage=322&rft_id=info:doi/10.1007%2F978-3-030-60508-7_17
thumbnail_s http://utb.summon.serialssolutions.com/2.0.0/image/custom?url=https%3A%2F%2Febookcentral.proquest.com%2Fcovers%2F6369642-l.jpg