Abstract
This paper describes the symbolic execution of programs. Instead of supplying the normal inputs to a program (e.g. numbers) one supplies symbols representing arbitrary values. The execution proceeds as in a normal execution except that values may be symbolic formulas over the input symbols. The difficult, yet interesting issues arise during the symbolic execution of conditional branch type statements. A particular system called EFFIGY which provides symbolic execution for program testing and debugging is also described. It interpretively executes programs written in a simple PL/I style programming language. It includes many standard debugging features, the ability to manage and to prove things about symbolic expressions, a simple program testing manager, and a program verifier. A brief discussion of the relationship between symbolic execution and program proving is also included. © 1976, ACM. All rights reserved.
Author supplied keywords
Cite
CITATION STYLE
King, J. C. (1976). Symbolic Execution and Program Testing. Communications of the ACM, 19(7), 385–394. https://doi.org/10.1145/360248.360252
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.