Proceedings of the 14th Workshop on Formal Techniques for Java-Like Programs 2012
DOI: 10.1145/2318202.2318209
|View full text |Cite
|
Sign up to set email alerts
|

Verifying backwards compatibility of object-oriented libraries using Boogie

Abstract: Proving that a library is backwards compatible to an older version can be challenging, as the internal representation of the libraries might completely differ and the clients of the library are usually unknown. This is especially difficult in the setting of object-oriented programs with complex heaps and callbacks. Mechanical verification is a key success factor to make such proofs practicable.In this paper, we present a technique to verify the backwards compatibility or equivalence of class libraries in the s… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
8
0

Year Published

2014
2014
2019
2019

Publication Types

Select...
5
2

Relationship

0
7

Authors

Journals

citations
Cited by 10 publications
(8 citation statements)
references
References 27 publications
0
8
0
Order By: Relevance
“…Fortunately, (2) also implies the desired equivalence for the toplevel call (1) with s = 0. Indeed, if one knows or guesses the formula (2), then the fact that it is a valid coupling predicate and that it implies equivalence can be proved automatically with existing verification technology (cf., e.g., [9,22,32]). …”
Section: Illustrationmentioning
confidence: 99%
See 2 more Smart Citations
“…Fortunately, (2) also implies the desired equivalence for the toplevel call (1) with s = 0. Indeed, if one knows or guesses the formula (2), then the fact that it is a valid coupling predicate and that it implies equivalence can be proved automatically with existing verification technology (cf., e.g., [9,22,32]). …”
Section: Illustrationmentioning
confidence: 99%
“…Loops are encoded as recursion. The BCVerifier tool for proving backwards compatibility of Java class libraries by Welsch and Poetzsch-Heffter [32] has a similar pragmatics.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…In earlier work [11], we presented an automated approach to regression verification based on invariant generation using Horn clauses. Many other approaches [2,16,31,32,39] exist to regression verification for imperative programming languages.…”
Section: Related Workmentioning
confidence: 99%
“…This concept is implemented in the equivalence checker SymDiff, where the user supplies the mutual summary, and the verification conditions are discharged by Boogie. The BCVerifier tool of Welsch and Poetzsch-Heffter allows to prove the backwards compatibility of Java class libraries [23]. Felsing et al [8] present a method for proving the equivalence of two related imperative integer programs, implemented in the ReVe tool.…”
Section: Related Workmentioning
confidence: 99%