Publication Details

Template-Based Verification of Array-Manipulating Programs

MALÍK Viktor, SCHRAMMEL Peter and VOJNAR Tomáš. Template-Based Verification of Array-Manipulating Programs. In: Taming the Infinities of Concurrency . Lecture Notes in Computer Science, vol. 14660. Cham: Springer Nature Switzerland AG, 2024, pp. 206-224. ISBN 978-3-031-56221-1. Available from: https://link.springer.com/chapter/10.1007/978-3-031-56222-8_12
Czech title
Verifikace programů nad poli založená na šablonách
Type
conference paper
Language
english
Authors
Malík Viktor, Ing. (DITS FIT BUT)
Schrammel Peter, Dr. (US)
Vojnar Tomáš, prof. Ing., Ph.D. (DITS FIT BUT)
URL
Keywords

program analysis, formal verification, invariant inference, loop invariants, abstract interpretation, k-induction, loop unwinding, array abstract domain, array contents analysis

Abstract

This work deals with the 2LS program verification framework that combines several verification techniques-namely, abstract domains, templated invariants, k-induction, bounded model checking, and SAT/SMT solving. A distinguishing feature of the approach used by 2LS is that it allows for seamless combinations of various program abstractions. In this work, we introduce a novel abstract template domain allowing 2LS to reason about arrays, using an arbitrary abstract domain to describe values that are stored inside the arrays (including nested arrays and dynamic linked data structures), and with the arrays possibly nested inside other structures. The approach uses array index expressions to split each array into multiple contiguous, non-overlapping segments and computes a different invariant for each of them. We illustrate the approach on a program dealing with a list of arrays and subsequently present how the new domain allowed 2LS to improve in the international software verification competition SV-COMP.

Published
2024
Pages
206-224
Proceedings
Taming the Infinities of Concurrency
Series
Lecture Notes in Computer Science
Volume
14660
Conference
European Joint Conferences on Theory and Practice of Software -- ETAPS'24 (TACAS'24), Centre for Security, Reliability and Trust (SnT), University of Luxembourg., LU
ISBN
978-3-031-56221-1
Publisher
Springer Nature Switzerland AG
Place
Cham, CH
DOI
UT WoS
001215137000011
EID Scopus
BibTeX
@INPROCEEDINGS{FITPUB13332,
   author = "Viktor Mal\'{i}k and Peter Schrammel and Tom\'{a}\v{s} Vojnar",
   title = "Template-Based Verification of Array-Manipulating Programs",
   pages = "206--224",
   booktitle = "Taming the Infinities of Concurrency ",
   series = "Lecture Notes in Computer Science",
   volume = 14660,
   year = 2024,
   location = "Cham, CH",
   publisher = "Springer Nature Switzerland AG",
   ISBN = "978-3-031-56221-1",
   doi = "10.1007/978-3-031-56222-8\_12",
   language = "english",
   url = "https://www.fit.vut.cz/research/publication/13332"
}
Back to top