Challenges and Experiences in Managing Large-Scale Proofs

  • Timothy Bourke
  • Matthias Daum
  • Gerwin Klein
  • Rafal Kolanski
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7362)

Abstract

Large-scale verification projects pose particular challenges. Issues include proof exploration, efficiency of the edit-check cycle, and proof refactoring for documentation and maintainability. We draw on insights from two large-scale verification projects, L4.verified and Verisoft, that both used the Isabelle/HOL prover. We identify the main challenges in large-scale proofs, propose possible solutions, and discuss the Levity tool, which we developed to automatically move lemmas to appropriate theories, as an example of the kind of tool required by such proofs.

Keywords

Large-scale proof Isabelle/HOL Interactive theorem proving 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Alkassar, E., Hillebrand, M., Leinenbach, D., Schirmer, N., Starostin, A.: The Verisoft Approach to Systems Verification. In: Shankar, N., Woodcock, J. (eds.) VSTTE 2008. LNCS, vol. 5295, pp. 209–224. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  2. 2.
    Alkassar, E., Hillebrand, M., Leinenbach, D., Schirmer, N., Starostin, A., Tsyban, A.: Balancing the load — leveraging a semantics stack for systems verification. JAR: Special Issue Operat. Syst. Verification 42(2-4), 389–454 (2009)MATHGoogle Scholar
  3. 3.
    Appel, K., Haken, W.: Every map is four colourable. Bulletin of the American Mathematical Society, 711–712 (1976)Google Scholar
  4. 4.
    Bertot, Y., Castéran, P.: Interactive Theorem Proving and Program Development. Coq’Art: The Calculus of Inductive Constructions. Texts in Theoretical Computer Science. An EATCS Series. Springer (2004)Google Scholar
  5. 5.
    Böhme, S., Nipkow, T.: Sledgehammer: Judgement Day. In: Giesl, J., Hähnle, R. (eds.) IJCAR 2010. LNCS, vol. 6173, pp. 107–121. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  6. 6.
    Cock, D., Klein, G., Sewell, T.: Secure Microkernels, State Monads and Scalable Refinement. In: Mohamed, O.A., Muñoz, C., Tahar, S. (eds.) TPHOLs 2008. LNCS, vol. 5170, pp. 167–182. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  7. 7.
    Gonthier, G.: A computer-checked proof of the four colour theorem (2005), http://research.microsoft.com/en-us/people/gonthier/4colproof.pdf
  8. 8.
    Gonthier, G.: Formal proof — the four-color theorem. Notices of the American Mathematical Society 55(11), 1382–1393 (2008)MathSciNetMATHGoogle Scholar
  9. 9.
    Gordon, M.J.C., Milner, R., Wadsworth, C.P.: Edinburgh LCF. LNCS, vol. 78. Springer, Heidelberg (1979)MATHCrossRefGoogle Scholar
  10. 10.
    Hunt, A., Thomas, D.: The Pragmatic Programmer: From Journeyman to Master. Addison-Wesley, Reading (2000)Google Scholar
  11. 11.
    Klein, G., Elphinstone, K., Heiser, G., Andronick, J., Cock, D., Derrin, P., Elkaduwe, D., Engelhardt, K., Kolanski, R., Norrish, M., Sewell, T., Tuch, H., Winwood, S.: seL4: Formal verification of an OS kernel. In: 22nd SOSP, Big Sky, MT, USA, pp. 207–220. ACM (October 2009)Google Scholar
  12. 12.
    Klein, G., Nipkow, T., Paulson, L.: The archive of formal proofs (2012), http://afp.sf.net
  13. 13.
    Leroy, X.: Formal certification of a compiler back-end, or: Programming a compiler with a proof assistant. In: Morrisett, J.G., Jones, S.L.P. (eds.) 33rd POPL, Charleston, SC, USA, pp. 42–54. ACM (2006)Google Scholar
  14. 14.
    Nipkow, T., Paulson, L., Wenzel, M.: Isabelle/HOL — A Proof Assistant for Higher-Order Logic. LNCS, vol. 2283. Springer, Heidelberg (2002)MATHGoogle Scholar
  15. 15.
    Rudnicki, P.: An overview of the MIZAR project. In: Workshop on Types for Proofs and Programs, pp. 311–332. Chalmers University of Technology, Bastad (1992)Google Scholar
  16. 16.
    Ruegenberg, M.: Semi-automatic proof refactoring for Isabelle. Undergraduate thesis, Technische Universität München (2011)Google Scholar
  17. 17.
    Schirmer, N.: Verification of Sequential Imperative Programs in Isabelle/HOL. PhD thesis, Technische Universität München (2006)Google Scholar
  18. 18.
    Slind, K., Norrish, M.: A Brief Overview of HOL4. In: Mohamed, O.A., Muñoz, C., Tahar, S. (eds.) TPHOLs 2008. LNCS, vol. 5170, pp. 28–32. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  19. 19.
    Wenzel, M.: Isabelle/Isar—a versatile environment for human-readable formal proof documents. PhD thesis, Technische Universität München (2002)Google Scholar
  20. 20.
    Wenzel, M.: Isabelle as Document-Oriented Proof Assistant. In: Davenport, J.H., Farmer, W.M., Urban, J., Rabe, F. (eds.) MKM 2011 and Calculemus 2011. LNCS, vol. 6824, pp. 244–259. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  21. 21.
    Whiteside, I., Aspinall, D., Dixon, L., Grov, G.: Towards Formal Proof Script Refactoring. In: Davenport, J.H., Farmer, W.M., Urban, J., Rabe, F. (eds.) MKM 2011 and Calculemus 2011. LNCS, vol. 6824, pp. 260–275. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  22. 22.
    Winwood, S., Klein, G., Sewell, T., Andronick, J., Cock, D., Norrish, M.: Mind the Gap: A Verification Framework for Low-Level. In: Berghofer, S., Nipkow, T., Urban, C., Wenzel, M. (eds.) TPHOLs 2009. LNCS, vol. 5674, pp. 500–515. Springer, Heidelberg (2009)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Timothy Bourke
    • 1
  • Matthias Daum
    • 1
    • 2
  • Gerwin Klein
    • 1
    • 2
  • Rafal Kolanski
    • 1
    • 2
  1. 1.NICTASydneyAustralia
  2. 2.The University of NSWSydneyAustralia

Personalised recommendations