2021
Backward Symbolic Execution with Loop Folding
CHALUPA, Marek a Jan STREJČEKZákladní údaje
Originální název
Backward Symbolic Execution with Loop Folding
Autoři
CHALUPA, Marek (203 Česká republika, garant, domácí) a Jan STREJČEK (203 Česká republika, domácí)
Vydání
Cham (Switzerland), Static Analysis - 28th International Symposium, SAS 2021, Chicago, IL, USA, October 17-19, 2021, Proceedings, od s. 49-76, 28 s. 2021
Nakladatel
Springer
Další údaje
Jazyk
angličtina
Typ výsledku
Stať ve sborníku
Obor
10200 1.2 Computer and information sciences
Stát vydavatele
Švýcarsko
Utajení
není předmětem státního či obchodního tajemství
Forma vydání
elektronická verze "online"
Odkazy
Impakt faktor
Impact factor: 0.402 v roce 2005
Kód RIV
RIV/00216224:14330/21:00122663
Organizační jednotka
Fakulta informatiky
ISBN
978-3-030-88805-3
ISSN
UT WoS
000720084200003
Klíčová slova anglicky
symbolic execution;k-induction;backward symbolic execution;inductive invariants;invariants
Příznaky
Mezinárodní význam, Recenzováno
Změněno: 23. 5. 2022 15:01, RNDr. Pavel Šmerk, Ph.D.
Anotace
V originále
Symbolic execution is an established program analysis tech- nique that aims to search all possible execution paths of the given pro- gram. Due to the so-called path explosion problem, symbolic execution is usually unable to analyze all execution paths and thus it is not convenient for program verification as a standalone method. This paper focuses on backward symbolic execution (BSE), which searches program paths backwards from the error location whose reachability should be proven or refuted. We show that this technique is equivalent to performing k-induction on control-flow paths. While standard BSE simply unwinds all program loops, we present an extension called loop folding that aims to derive loop invariants during BSE that are sufficient to prove the unreachability of the error location. The resulting technique is called backward symbolic execution with loop folding (BSELF). Our experiments show that BSELF performs better than BSE and other tools based on k-induction when non-trivial benchmarks are considered. Moreover, a sequential combination of symbolic execution and BSELF achieved very competitive results compared to state-of-the-art verification tools.
Návaznosti
MUNI/A/1108/2020, interní kód MU |
| ||
MUNI/A/1549/2020, interní kód MU |
|