Abductive, Inductive and Deductive Reasoning about Resources

  • Peter W. O’Hearn
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6247)


We describe a method for reasoning about programs that uses a mixture of abductive, inductive and deductive inference. It allows us to synthesize a pre/post spec for a program procedure, without requiring any information about the procedure’s calling context. The method can be used to obtain partial specifications for portions of large code bases in the millions of lines of code.


  1. 1.
    Calcagno, C., Distefano, D., O’Hearn, P.W., Yang, H.: Footprint analysis: A shape analysis that discovers preconditions. In: Riis Nielson, H., Filé, G. (eds.) SAS 2007. LNCS, vol. 4634, pp. 402–418. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  2. 2.
    Calcagno, C., Distefano, D., O’Hearn, P.W., Yang, H.: Compositional shape analysis by means of bi-abduction. In: 36th POPL, pp. 289–300 (2009)Google Scholar
  3. 3.
    Distefano, D.: Attacking large industrial code with bi-abductive inference. In: Alpuente, M. (ed.) FMICS 2009. LNCS, vol. 5825, pp. 1–8. Springer, Heidelberg (2009) (invited paper)Google Scholar
  4. 4.
    O’Hearn, P.W., Reynolds, J.C., 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) (invited paper)CrossRefGoogle Scholar
  5. 5.
    Peirce, C.S.: Collected papers of Charles Sanders Peirce. Harvard Univ. Press, Cambridge (1958)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Peter W. O’Hearn
    • 1
  1. 1.Queen Mary University of London 

Personalised recommendations