Abstract
We propose a characterization of provability in BI’s Pointer Logic (PL) that is based on semantic structures called resource graphs. This logic has been defined for reasoning about mutable data structures and results about models and verification have been already provided. Here, we define resource graphs that capture PL models by considering heaps as resources and by using a labelling process. We study provability in PL from a new calculus that builds such graphs from which proofs or countermodels can be generated. Properties of soundness and completeness are proved and the countermodel generation is studied.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Cardelli, L., Gardner, P., Ghelli, G.: A spatial logic for querying graphs. In: Widmayer, P., Triguero, F., Morales, R., Hennessy, M., Eidenbenz, S., Conejo, R. (eds.) ICALP 2002. LNCS, vol. 2380, pp. 597–610. Springer, Heidelberg (2002)
Fitting, M.: First-Order Logic and Automated Theorem Proving. In: Texts and Monographs in Computer Science. Springer, Heidelberg (1990)
Galmiche, D., Méry, D.: Connection-based proof search in propositional BI logic. In: Voronkov, A. (ed.) CADE 2002. LNCS (LNAI), vol. 2392, pp. 111–128. Springer, Heidelberg (2002)
Galmiche, D., Méry, D.: Semantic labelled tableaux for propositional BI without bottom. Journal of Logic and Computation 13(5), 707–753 (2003)
Galmiche, D., Méry, D.: Resource graphs and countermodels in resource logics. Electronic Notes in Theoretical Computer Science 125(3), 117–135 (2005)
Ishtiaq, S., O’Hearn, P.: BI as an assertion language for mutable data structures. In: 28th ACM Symposium on Principles of Programming Languages, POPL 2001, London, UK, pp. 14–26 (2001)
Jenson, J., Jorgensen, M., Klarkund, N., Schwartzback, M.: Automatic verification of pointer programs using monadic second-order logic. In: Conf. on Programming Language Design and Implementation, PLDI 1997, pp. 225–236 (1997)
Mehta, F., Nipkow, T.: Proving pointer programs in higher-order logic. In: Baader, F. (ed.) CADE 2003. LNCS (LNAI), vol. 2741, pp. 121–135. Springer, Heidelberg (2003)
O’Hearn, P., Reynolds, J., Yang, H.: Local reasoning about programs that alter data structures. In: Fribourg, L. (ed.) CSL 2001 and EACSL 2001. LNCS, vol. 2142, pp. 1–19. Springer, Heidelberg (2001)
O’Hearn, P.W., Pym, D.: The Logic of Bunched Implications. Bulletin of Symbolic Logic 5(2), 215–244 (1999)
Ranise, S., Deharbe, D.: Applying light-weight theorem proving to debugging and verifying pointer programs. Electronic Notes in Theoretical Computer Science 86(1) (2003)
Reynolds, J.: Separation logic: A logic for shared mutable data structures. In: IEEE Symposium on Logic in Computer Science, Copenhagen, Danemark, July 2002, pp. 55–74 (2002)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Galmiche, D., Méry, D. (2005). Characterizing Provability in BI’s Pointer Logic Through Resource Graphs. In: Sutcliffe, G., Voronkov, A. (eds) Logic for Programming, Artificial Intelligence, and Reasoning. LPAR 2005. Lecture Notes in Computer Science(), vol 3835. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11591191_32
Download citation
DOI: https://doi.org/10.1007/11591191_32
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-30553-8
Online ISBN: 978-3-540-31650-3
eBook Packages: Computer ScienceComputer Science (R0)