Computability and Complexity Results for a Spatial Assertion Language for Data Structures
This paper studies a recently developed an approach to reasoning about mutable data structures, which uses an assertion language with spatial conjunction and implication connectives. We investigate computability and complexity properties of a subset of the language, which allows statements about the shape of pointer structures (such as “there is a link from x to y”) to be made, but not statements about the data held in cells (such as “x is a prime number”). We show that validity, even for this restricted language, is not r.e., but that the quantifierfree sublanguage is decidable. We then consider the complexity of model checking and validity for several fragments.
Unable to display preview. Download preview PDF.
- 1.M. Benedikt, T. Reps, and M. Sagiv. A decidable logic for describing linked data structures. In ESOP’ 99: European Symposium on Programming, pages 2–19. Lecture Notes in Computer Science, Vol. 1576, S.D. Swierstra (ed.), Springer-Verlag, New York, NY, 1999.Google Scholar
- 2.W. Charatonik, S. Dal Zilio, A. Gordon, S. Mukhopadhyay, and J.M. Talbot. The complexity of model checking mobile ambients. In FoSSaCS, April 2001.Google Scholar
- 3.H.-D. Ebbinghaus and J. Flum. Finite Model Theory. Springer-Verlag, 1995. ISBN 3-540-60149-X.Google Scholar
- 4.D. Galmiche and D. Méry. Proof-search and countermodel generation in propositional BI logic. In TACS, 2001. LNCS to appear.Google Scholar
- 5.S. Ishtiaq and P. O’Hearn. BI as an assertion language for mutable data structures. In Principles of Programming Languages, January 2001.Google Scholar
- 6.J. Jenson, M. Jorgensen, N. Klarkund, and M. Schwartzback. Automatic verification of pointer programs using monadic second-order logic. In Proceedings of the ACM SIGPLAN’97 Conference on Programming Language Design and Implementation, pages 225–236, 1997. SIGPLAN Notices 32(5).Google Scholar
- 7.P. O’Hearn, J. Reynolds, and H. Yang. Local reasoning about programs that alter data structures. In L. Fribourg, editor, Proceedings of 15th Annual Conference of the European Association for Computer Science Logic: CSL 2001, pages 1–19. Springer-Verlag, 2001. LNCS 2142.Google Scholar
- 9.J. C. Reynolds. Intuitionistic reasoning about shared mutable data structure. In Millennial Perspectives in Computer Science. Palgrave, 2000.Google Scholar