Symbolic execution formally explained
The work
| Authors | Frank S. de Boer; Marcello M. Bonsangue |
|---|---|
| Editors | |
| Type | article |
| Year | 2021 |
| Citekey | boer2021symbolic |
Where it appeared
| Published in | Formal Aspects of Computing |
|---|---|
| Volume | 33 |
| Issue | 4 |
| Pages | 617--636 |
Identifiers
| DOI | 10.1007/s00165-020-00527-y |
|---|
Abstract
In this paper, we provide a formal explanation of symbolic execution in terms of a symbolic transition system and prove its correctness and completeness with respect to an operational semantics which models the execution on concrete values. We first introduce a formal model for a basic programming language with a statically fixed number of programming variables. This model is extended to a programming language with recursive procedures which are called by a call-by-value parameter mechanism. Finally, we present a more general formal framework for proving the soundness and completeness of the symbolic execution of a basic object-oriented language which features dynamically allocated variables.
A copy is held
pdf, 298.8 kB. Not published — it may be under copyright. The facts and links here are.
How it got here
| How it got here | agent via bibtex |
|---|---|
| Added | 2026-08-05 00:00 UTC |
| Approved by | a person 2026-08-16 15:45 UTC |
Filed under
Cite it as
@article{boer2021symbolic,
title = {Symbolic execution formally explained},
author = {Frank S. de Boer and Marcello M. Bonsangue},
year = {2021},
journal = {Formal Aspects of Computing},
volume = {33},
number = {4},
pages = {617--636},
doi = {10.1007/s00165-020-00527-y},
}
This record lives at https://refs.drheap.org/boer2021symbolic/ and will keep doing so.