Skip to main content

Introduction to PAF!, a Proof Assistant for ML Programs Verification

  • Conference paper
Types for Proofs and Programs (TYPES 2003)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 3085))

Included in the following conference series:

Abstract

We present here a proof assistant dedicated to the proof of ML programs. This document is oriented from a user’s point of view. We introduce the system progressively, describing its features as they become useful, and justifying our choices all along.

Our system intends to provide a usual predicate calculus to express and prove properties of functional ML terms including higher order functions with polymorphic types. To achieve this goal, functional expressions are embedded in the logic as first class terms, with their usual syntax and evaluation rules.

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

Access this chapter

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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Baro, S.: Conception et implémentation d’un système d’aide à la spécification et à la preuve de programmes ML. PhD Université Denis Diderot (2003)

    Google Scholar 

  2. Baro, S., Manoury, P.: Un système X. Raisonner formellement sur les programmes ML. Journées Francophones des Langages Applicatifs, INRIA (2003)

    Google Scholar 

  3. Boyer, R., Strother Moore, J.: A Computational Logic. Academic Press, London (1979)

    MATH  Google Scholar 

  4. Clément, D., Despeyroux, J., Despeyroux, T., Kahn, G.: A Simple Applicative Language: Mini-ML. In: Proceedings of ACM Symposium on LISP and Functional Programming (1986)

    Google Scholar 

  5. Catarina Coquand. Agda, 2000. http://www.cs.chalmers.se/~catarina/agda/

  6. Filliâtre, J.-C.: Why: a multi-language multi-prover verification tool. Submitted to FME 2003 (March 2003)

    Google Scholar 

  7. Gordon, M.J., Milner, R., Wadsworth, C.P.: Edinburgh LCF. LNCS, vol. 78. Springer, Heidelberg (1979)

    Google Scholar 

  8. Hallgren, T.: Alfa (2001), http://www.cs.chalmers.se/~hallgren/Alfa/

  9. Kaufmann, M., Moore, J.S.: A Precise Description of the ACL2 Logic. Technical report, Computational Logic, Inc. (1997)

    Google Scholar 

  10. Krivine, J.-L.: Lambda-Calculus, Types and Models. Ellis and Horwood (1993)

    Google Scholar 

  11. Legrandgérard, Y.: Proof Engine Protocol, version 2 specification (manuscript)

    Google Scholar 

  12. Leivant, D.: Reasoning about functional programs and complexity classes associated with type discipline. Foundations of Computer Science (1983)

    Google Scholar 

  13. Martin-Löf, P.: Intuitionistic Type Theory. Studies in Proof Theory. Bibliopolis (1984)

    Google Scholar 

  14. Owre, S., Shankar, N., Rushby, J.M., Stringer-Calvert, D.W.J.: PVS System Guide. SRI International, v2.4 edition (2001), http://pvs.csl.sri.com

  15. Parent, C.: Developing certified programs in the system Coq - the Program tactic. In: Barendregt, H., Nipkow, T. (eds.) TYPES 1993. LNCS, vol. 806, Springer, Heidelberg (1994)

    Google Scholar 

  16. Parigot, M.: Recursive programming with proofs. Theoretical Computer Science, 335–356 (1992)

    Google Scholar 

  17. Parigot, M.: Church-Rosser property in classical free deduction. In: Huet, G., Plotkin, G. (eds.) Logical Environments (1993)

    Google Scholar 

  18. LogiCal Project The Coq Development Team. The Coq Proof Assistant Reference Manual. INRIA, 1999-2001. v7.2, http://coq.inria.fr

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Baro, S. (2004). Introduction to PAF!, a Proof Assistant for ML Programs Verification. In: Berardi, S., Coppo, M., Damiani, F. (eds) Types for Proofs and Programs. TYPES 2003. Lecture Notes in Computer Science, vol 3085. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-24849-1_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-24849-1_4

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-22164-7

  • Online ISBN: 978-3-540-24849-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics