Abstract
Verification of programs requires reasoning about sets of program states. In case of programs manipulating pointers, program states are pointer graphs. Verification of such programs involves reasoning about unbounded sets of graphs.
Three-valued shape analysis (Sagiv et. al.) is an approach based on explicit manipulation of 3-valued shape graphs, which abstract sets of pointer graphs. Other approaches use symbolic representations, e.g. by describing (sets of) graphs as logical formulas. Unfortunately, many resulting logics are either undecidable or cannot express crucial properties like reachability and separation.
In this paper, we investigate an alternative approach. We study well-known description logics as a framework for symbolic shape analysis. We propose a predicate abstraction based shape analysis, parameterized by description logics to represent the abstraction predicates. Depending on the particular logic chosen sharing, reachability and separation in pointer data structures are
expressible.
Three-valued shape analysis (Sagiv et. al.) is an approach based on explicit manipulation of 3-valued shape graphs, which abstract sets of pointer graphs. Other approaches use symbolic representations, e.g. by describing (sets of) graphs as logical formulas. Unfortunately, many resulting logics are either undecidable or cannot express crucial properties like reachability and separation.
In this paper, we investigate an alternative approach. We study well-known description logics as a framework for symbolic shape analysis. We propose a predicate abstraction based shape analysis, parameterized by description logics to represent the abstraction predicates. Depending on the particular logic chosen sharing, reachability and separation in pointer data structures are
expressible.
Original language | English |
---|---|
Title of host publication | 3rd IEEE International Conference on Software Engineering and Formal Methods |
Subtitle of host publication | SEFM 2005; Koblenz, Germany, September 7-9, 2005; Proceedings |
Publisher | IEEE |
Pages | 321-330 |
Number of pages | 10 |
DOIs | |
Publication status | Published - Sept 2005 |
Event | 3rd IEEE International Conference on Software Engineering and Formal Methods - Koblenz, Germany Duration: 7 Sept 2005 → 9 Sept 2005 |
Conference
Conference | 3rd IEEE International Conference on Software Engineering and Formal Methods |
---|---|
Country/Territory | Germany |
City | Koblenz |
Period | 7/09/05 → 9/09/05 |
Keywords
- description logics
- shape analysis
- program analysis
- pointer programs