Advertisement

ProofScript: Proof Scripting for the Masses

  • Steven Obua
  • Phil Scott
  • Jacques Fleuriot
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9965)

Abstract

The goal of the ProofPeer project is to make collaborative theorem proving a reality. An important part of our plan to make this happen is ProofScript, a language designed to be the main user interface of ProofPeer. Of foremost importance in the design of ProofScript is its fit within a collaborative theorem proving environment. By this we mean that it needs to fit into an environment where peers who are not necessarily part of the current theorem proving and programming language communities work independently from but collaboratively with each other to produce formal definitions and proofs. All aspects of ProofScript are shaped by this design principle. In this paper we will discuss ProofScript’s most important aspect of being an integrated language both for interactive proof and for proof scripting.

Keywords

Current Context Functional Programming Type Inference Context Tree Interactive Theorem Prove 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

References

  1. 1.
  2. 2.
    Obua, S., Fleuriot, J., Scott, P., Aspinall, D.: ProofPeer: Collaborative Theorem Proving. arXiv: 1404.6186 (2013)
  3. 3.
  4. 4.
    Obua, S., Scott, P., Fleuriot, J.: Local Lexing. http://proofpeer.net/papers/locallexing
  5. 5.
    Scott, P., Obua, S., Fleuriot, J.: Bootstrapping LCF Declarative Proofs. http://proofpeer.net/papers/bootstrapping
  6. 6.
    Wenzel, M.: Isar — a generic interpretative approach to readable formal proof documents. In: Bertot, Y., Dowek, G., Théry, L., Hirschowitz, A., Paulin, C. (eds.) TPHOLs 1999. LNCS, vol. 1690, pp. 167–183. Springer, Heidelberg (1999). doi: 10.1007/3-540-48256-3_12 CrossRefGoogle Scholar
  7. 7.
    Agerholm, S., Gordon, M.: Experiments with ZF set theory in HOL and Isabelle. In: Thomas Schubert, E., Windley, P.J., Alves-Foss, J. (eds.) TPHOLs 1995. LNCS, vol. 971, pp. 32–45. Springer, Heidelberg (1995). doi: 10.1007/3-540-60275-5_55 CrossRefGoogle Scholar
  8. 8.
  9. 9.
    Matichuk, D., Wenzel, M., Murray, T.: An Isabelle proof method language. In: Klein, G., Gamboa, R. (eds.) ITP 2014. LNCS, vol. 8558, pp. 390–405. Springer, Heidelberg (2014). doi: 10.1007/978-3-319-08970-6_25 Google Scholar
  10. 10.
    Gordon, M., Milner, A., Wadsworth, C.: Edinburgh LCF. LNCS, vol. 78. Springer, Heidelberg (1979). doi: 10.1007/3-540-09724-4 zbMATHGoogle Scholar
  11. 11.
    Obua, S.: Purely Functional Structured Programming. arXiv:1007.3023 (2010)
  12. 12.
    Okasaki, C.: In praise of mandatory indentation for novice programmers, February 2008. http://okasaki.blogspot.co.uk/2008/02/in-praise-of-mandatory-indentation-for.html
  13. 13.
    Landin, P.: The Next 700 Programming Languages (1966). doi: 10.1145/365230.365257
  14. 14.
    Paulson, L.: Set theory for verification: I. From foundations to functions. J. Autom. Reason. 11(3), 353–389 (1993). doi: 10.1007/BF00881873 MathSciNetCrossRefzbMATHGoogle Scholar
  15. 15.
    Paulson, L.: Set theory for verification: II. Induction and recursion. J. Autom. Reason. 15, 167–215 (1995). doi: 10.1007/BF00881916 MathSciNetCrossRefzbMATHGoogle Scholar
  16. 16.
    Obua, S.: Partizan games in Isabelle/HOLZF. In: Barkaoui, K., Cavalcanti, A., Cerone, A. (eds.) ICTAC 2006. LNCS, vol. 4281, pp. 272–286. Springer, Heidelberg (2006). doi: 10.1007/11921240_19 CrossRefGoogle Scholar
  17. 17.
    Obua, S., Fleuriot, J., Scott, P., Aspinall, D.: Type inference for ZFH. In: Kerber, M., Carette, J., Kaliszyk, C., Rabe, F., Sorge, V. (eds.) CICM 2015. LNCS (LNAI), vol. 9150, pp. 87–101. Springer, Heidelberg (2015). doi: 10.1007/978-3-319-20615-8_6 CrossRefGoogle Scholar
  18. 18.
    Miller, D.: A logic programming language with lambda-abstraction, function variables, and simple unification. In: Schroeder-Heister, P. (ed.) ELP 1989. LNCS, vol. 475, pp. 253–281. Springer, Heidelberg (1991). doi: 10.1007/BFb0038698 CrossRefGoogle Scholar
  19. 19.
    Nipkow, T.: Functional Unification of Higher-Order Patterns (1993). doi: 10.1109/LICS.1993.287599

Copyright information

© Springer International Publishing AG 2016

Authors and Affiliations

  1. 1.School of InformaticsEdinburgh UniversityEdinburghScotland, UK

Personalised recommendations