|
ABSTRACT
Interpolation based automatic abstraction is a powerful and robust technique for the automated analysis of hardware and software systems. Its use has however been limited to control-dominated applications because of a lack of algorithms for computing interpolants for data structures used in software programs. We present efficient procedures to construct interpolants for the theories of arrays, sets, and multisets using the reduction approach for obtaining decision procedures for complex data structures. The approach taken is that of reducing the theories of such data structures to the theories of equality and linear arithmetic for which efficient interpolating decision procedures exist. This enables interpolation based techniques to be applied to proving properties of programs that manipulate these data structures.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
W. Ackermann. Solvable Cases of the Decision Problem. North-Holland, 1954.
|
 |
2
|
|
| |
3
|
|
| |
4
|
|
| |
5
|
|
| |
6
|
W. Craig. Linear reasoning: A new form of the Herbrand-Gentzen theorem. J. Symbolic Logic, 22(3):250--268, 1957.
|
 |
7
|
|
| |
8
|
P.J. Downey. Undeciability of Presburger arithmetic with a single monadic predicate letter. Technical Report 18-72, Havard University, 1972.
|
| |
9
|
|
 |
10
|
Cormac Flanagan , K. Rustan M. Leino , Mark Lillibridge , Greg Nelson , James B. Saxe , Raymie Stata, Extended static checking for Java, Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation, June 17-19, 2002, Berlin, Germany
|
| |
11
|
|
| |
12
|
Y. Gurevich. The decision problem for standard classes. J. Symbolic Logic, 41(2), 1976.
|
| |
13
|
|
 |
14
|
Thomas A. Henzinger , Ranjit Jhala , Rupak Majumdar , Kenneth L. McMillan, Abstractions from proofs, Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.232-244, January 14-16, 2004, Venice, Italy
|
 |
15
|
Thomas A. Henzinger , Ranjit Jhala , Rupak Majumdar , Grégoire Sutre, Lazy abstraction, Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.58-70, January 16-18, 2002, Portland, Oregon
|
| |
16
|
C.A.R. Hoare. Proof of correctness of data representations. Acta Inf., 1:271--281, 1972.
|
| |
17
|
R. Jhala and K.L. McMillan. Interpolant-based transition relation approximation. In CAV 05, LNCS 3576, pages 39--51. Springer, 2005.
|
| |
18
|
R. Jhala and K.L. McMillan. A practical and complete approach to predicate abstraction. In TACAS 06. Springer, 2006.
|
| |
19
|
D. Kapur and H. Zhang. An overview of rewrite rule laboratory (RRL). J. Computer and Mathematics with applications, 14(2):91--114, 1995.
|
| |
20
|
Deepak Kapur and Calogero G. Zarba. A reduction approach to decision procedures. 2005.
|
| |
21
|
V. Kuncak and M. Rinard. The first-order theory of sets with cardinality constraints is decidable. Technical Report CSAIL 958, MIT, 2004.
|
| |
22
|
P. Lam, V. Kuncak, and M.C. Rinard. Hob: A tool for verifying data structure consistency. In CC 05, pages 237--241, 2005.
|
 |
23
|
|
| |
24
|
A. Mal'cev. Axiomatizable classes of locally free algebras of certain types. Sibirsk. Mat. Zh., 3:729--743, 1962.
|
| |
25
|
K.L. McMillan. Interpolation and SAT-based model checking In CAV 03, LNCS 2725, pages 1--13. Springer, 2003.
|
| |
26
|
|
| |
27
|
S. McPeak and G.C. Necula. Data structure specifications via local equality axioms. In CAV 05, LNCS 3576, pages 476--490. Springer, 2005.
|
 |
28
|
|
 |
29
|
|
 |
30
|
|
| |
31
|
|
| |
32
|
M. Presburger. Über die Vollständigkeit eines gewissen Systems der Arithmetik ganzer Zahlen, in welchen die Addition als einzige Operation hervortritt. In Comptes Rendus du Premier Congrès des Mathématicienes des Pays Slaves, pages 92--101, 1929.
|
 |
33
|
|
| |
34
|
|
| |
35
|
|
| |
36
|
G. Takeuti. Proof Theory. North-Holland, 1987.
|
| |
37
|
A. Tarski. A Decision Method for Elementary Algebra and Geometry. University of California Press, 1951.
|
| |
38
|
A. M. Turing. On computable numbers, with an application to the Entscheidungsproblem. Proc. London Math. Society, 42:230--265, 1936.
|
| |
39
|
|
| |
40
|
|
| |
41
|
C.G. Zarba. A quantifier elimination algorithm for a fragment of set theory involving the cardinality operator. In International Workshop on Unification, 2004.
|
|