Skip to main content

Ours Is to Reason Why

  • Chapter

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 8051))

Abstract

It is now widely understood how to write formal specifications so as to be able to justify designs (and thus implementations) against such specifications. In many formal approaches, a “posit and prove” approach allows a designer to record an engineering design decision from which a collection of “proof obligations” are generated; their discharge justifies the design step. Modern theorem proving tools greatly simplify the discharge of such proof obligations. In typical industrial applications, however, there remain sufficiently many proof obligations that require manual intervention that an engineer finds them a hurdle to the deployment of formal proofs. This problem is exacerbated by the need to repeat proofs when changes are made to specifications or designs. This paper outlines how a key additional resource can be brought to bear on the discharge of proof obligations: the central idea is to “learn” new ways of discharging families of proof obligations by tracking one interactive proof performed by an expert. Since what blocks any fixed set of heuristics from automatically discharging proof obligations is issues around data structures and/or functions, it is expected that what the system can learn from one interactive proof will facilitate the discharge of significant “families” of recalcitrant proof tasks.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abrial, J.-R.: The Event-B Book. Cambridge University Press, Cambridge (2010)

    MATH  Google Scholar 

  2. Barringer, H., Cheng, J.H., Jones, C.B.: A logic covering undefinedness in program proofs. Acta Informatica 21, 251–269 (1984)

    Article  MathSciNet  MATH  Google Scholar 

  3. Bundy, A., Basin, D., Hutter, D., Ireland, A.: Rippling: Meta-level Guidance for Mathematical Reasoning. Cambridge Tracts in Theoretical Computer Science, vol. 56. Cambridge University Press (2005)

    Google Scholar 

  4. Bundy, A., Grov, G., Jones, C.B.: Learning from experts to aid the automation of proof search. In: O’Reilly, L., Roggenbach, M. (eds.) AVoCS 2009 – PreProceedings of the Ninth International Workshop on Automated Verification of Critical Systems, CSR-2-2009, pp. 229–232. Swansea University (2009)

    Google Scholar 

  5. Bundy, A., Grov, G., Jones, C.B.: An outline of a proposed system that learns from experts how to discharge proof obligations automatically. In: Abrial, J.-R., Butler, M., Joshi, R., Troubitsyna, E., Woodcock, J.C.P. (eds.) Dagstuhl 09381: Refinement Based Methods for the Construction of Dependable Systems, pp. 38–42 (2009)

    Google Scholar 

  6. Freitas, L., Jones, C.B.: Learning from an expert’s proof: AI4FM. In: Ball, T., Zuck, L., Shankar, N. (eds.) UV 2010 (Usable Verification) (November 2010)

    Google Scholar 

  7. Guttag, J.V., Horning, J.J., Garl, W.J., Jones, K.D., Modet, A., Wing, J.M.: Larch: languages and tools for formal specification. Springer (1993)

    Google Scholar 

  8. Jackson, M.: Problem Frames: Analyzing and structuring software development problems. Addison-Wesley (2000)

    Google Scholar 

  9. Jones, C.B.: Software Development: A Rigorous Approach. Prentice Hall International (1980)

    Google Scholar 

  10. Jones, C.B.: Systematic Software Development using VDM, 2nd edn. Prentice Hall International (1990)

    Google Scholar 

  11. Jones, C.B., Jones, K.D., Lindsay, P.A., Moore, R.: mural: A Formal Development Support System. Springer (1991)

    Google Scholar 

  12. Jones, C.B., Shaw, R.C.F. (eds.): Case Studies in Systematic Software Development. Prentice Hall International (1990)

    Google Scholar 

  13. Jones, C.B., Grov, G., Bundy, A.: Ideas for a high-level proof strategy language. In: Dutertre, B., Saidi, H. (eds.) AFM 2010 (Automated Formal Methods) (July 2010)

    Google Scholar 

  14. Jones, C.B., Hayes, I.J., Jackson, M.A.: Deriving specifications for systems that are connected to the physical world. In: Jones, C.B., Liu, Z., Woodcock, J. (eds.) Formal Methods and Hybrid Real-Time Systems. LNCS, vol. 4700, pp. 364–390. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  15. Kaufmann, M., Manolios, P., Strother Moore, J.: ACL2 Computer-Aided Reasoning: An Approach. University of Austin Texas (2009)

    Google Scholar 

  16. Nipkow, T., Paulson, L.C., Wenzel, M.T.: Isabelle/HOL. LNCS, vol. 2283. Springer, Heidelberg (2002)

    MATH  Google Scholar 

  17. Paulson, L.C.: Isabelle. LNCS, vol. 828. Springer, Heidelberg (1994)

    Book  MATH  Google Scholar 

  18. Rodin: The Rodin Tools can be downloaded from SourceForge (2008), http://www.sourceforge.net/projects/rodin-b-sharp

  19. Romanovsky, A., Thomas, M. (eds.): Industrial Deployment of System Engineering Methods. Springer (2013)

    Google Scholar 

  20. Schmalz, M.: Formalising the Logic of Event-B. PhD thesis, ETH, Zuerich (2012)

    Google Scholar 

  21. Velykis, A.: Isabelle/Eclipse (2013), http://andriusvelykis.github.io/isabelle-eclipse

  22. Velykis, A., Freitas, L., Jones, C.B., Whiteside, I.: How to say why (in AI4FM). Technical Report CS-TR-1376, Newcastle University (March 2013)

    Google Scholar 

  23. WWW. AI4FM (February 2013), http://www.ai4fm.org

  24. WWW. Deploy project web site (February 2013), http://www.ncl.ac.uk/computing/research/project/3625

  25. WWW. Overture (March 2013) http://www.overturetool.org

  26. WWW. The ProB animator and model checker (February 2013), http://www.stups.uni-duesseldorf.de/ProB

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Jones, C.B., Freitas, L., Velykis, A. (2013). Ours Is to Reason Why. In: Liu, Z., Woodcock, J., Zhu, H. (eds) Theories of Programming and Formal Methods. Lecture Notes in Computer Science, vol 8051. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-39698-4_14

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-39698-4_14

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-39697-7

  • Online ISBN: 978-3-642-39698-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics