Separation logic is a program logic for reasoning about programs that manipulate pointer data structures. It has a strong form of modularity or locality built, in, and has led to simpler by-hand proofs of pointer algorithms than was possible in previous formalisms. It is natural to wonder whether, and in what way, its ideas might be used in program analysis. In this talk I will begin by describing the basics of separation logic, along the way connecting them to concepts from program analysis. I will then describe some initial, unsuccessful attempts at applying the formalism, This is done in an effort to convey that some of the first ideas at application do not work well, and also to help pin down what some of the central outstanding issues are. This will then lead on to, and partially justify, one way of organizing a program analysis, where the abstract domain is built from formulae in separation logic. Finally, I will survey some recent developments and speculate on further possibilities. © Springer-Verlag Berlin Heidelberg 2006.
CITATION STYLE
O’Hearn, P. W. (2006). Separation logic and program analysis. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 4134 LNCS, p. 181). Springer Verlag. https://doi.org/10.1007/11823230_12
Mendeley helps you to discover research relevant for your work.