2012
DOI: 10.1007/978-3-642-31424-7_54
|View full text |Cite
|
Sign up to set email alerts
|

SYMDIFF: A Language-Agnostic Semantic Diff Tool for Imperative Programs

Abstract: In this paper, we describe SymDiff, a language-agnostic tool for equivalence checking and displaying semantic (behavioral) differences over imperative programs. The tool operates on an intermediate verification language Boogie, for which translations exist from various source languages such as C, C# and x86. We discuss the tool and the front-end interface to target various source languages. Finally, we provide a brief description of the front-end for C programs.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
104
0

Year Published

2013
2013
2020
2020

Publication Types

Select...
6
1
1

Relationship

0
8

Authors

Journals

citations
Cited by 162 publications
(104 citation statements)
references
References 8 publications
0
104
0
Order By: Relevance
“…Lahiri et al [13] propose a tool for equivalence checking and displaying behavioral differences. The tool translates the program into an intermediate language, and, for each pair of methods (before and after the change), checks equivalence by using a program verifier.…”
Section: Methodsmentioning
confidence: 99%
“…Lahiri et al [13] propose a tool for equivalence checking and displaying behavioral differences. The tool translates the program into an intermediate language, and, for each pair of methods (before and after the change), checks equivalence by using a program verifier.…”
Section: Methodsmentioning
confidence: 99%
“…There are also approaches that attempt to show equivalence of the original and the upgraded software [14,10,7]. The SymDiff tool [10] decides conditional partial equivalence, i.e., equivalence under certain input constraints.…”
Section: Related Workmentioning
confidence: 99%
“…The SymDiff tool [10] decides conditional partial equivalence, i.e., equivalence under certain input constraints. Moreover, SymDiff also allows automated extraction of the constraints and reports them to the user.…”
Section: Related Workmentioning
confidence: 99%
“…1, item 1) by checking that initeq ≡ x∈Vars(P ) x = x implies the relation of states at the initial blocks of P and P (Alg. 2, line [18] [4]), and if so, returns its input library condition C and input state relation sym (Alg. 2, line [4]).…”
Section: A Sound Algorithm For Abductive Equivalencementioning
confidence: 99%
“…The SymDiff project [16][17][18] shares our goal of determining under what conditions two programs are correct. Existing work in SymDiff takes a concurrent program, constructs a sequential version of the program, and treats the sequential version as a reference implementation, searching the concurrent program only for bugs triggered by inputs that cause no error in the sequential program [16].…”
Section: Related Workmentioning
confidence: 99%