Logical Characterizations of Heap Abstractions
Abstract
Shape analysis concerns the problem of determining "shape invariants" for programs that perform destructive updating on dynamically allocated storage. In recent work, we have shown how shape analysis can be performed, using an abstract interpretation based on 3-valued first-order logic. In that work, concrete stores are finite 2-valued logical structures, and the sets of stores that can possibly arise during execution are represented (conservatively) using a certain family of finite 3-valued logical structures. In this paper, we show how 3-valued structures that arise in shape analysis can be characterized using formulas in first-order logic with transitive closure. We also define a non-standard ("supervaluational") semantics for 3-valued first-order logic that is more precise than a conventional 3-valued semantics, and demonstrate that the supervaluational semantics can be effectively implemented using existing theorem provers.
- Publication:
-
arXiv e-prints
- Pub Date:
- December 2003
- DOI:
- 10.48550/arXiv.cs/0312014
- arXiv:
- arXiv:cs/0312014
- Bibcode:
- 2003cs.......12014Y
- Keywords:
-
- Logic in Computer Science;
- D.2.4