Skip to main content

Tactics and Certificates in Meta Dedukti

  • Conference paper
  • First Online:
Interactive Theorem Proving (ITP 2018)

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

Included in the following conference series:

Abstract

Tactics are often featured in proof assistants to simplify the interactive development of proofs by allowing domain-specific automation. Moreover, tactics are also helpful to check the output of automatic theorem provers because they can rebuild details that the provers omit.

We use meta-programming to define a tactic language for the Dedukti logical framework which can be used both for checking certificates produced by automatic provers and for developing proofs interactively.

More precisely, we propose a dependently-typed tactic language for first-order logic in Meta Dedukti and an untyped tactic language built on top of the typed one. We show the expressivity of these languages on two applications: a transfer tactic and a resolution certificate checker.

This work has been supported in part by the VECOLIB project of the French national research organization ANR (grant ANR-14-CE28-0018).

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 79.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 99.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

Notes

  1. 1.

    By ā€œuntypedā€ we do not mean that no type is assigned to the Dedukti terms of the language but that typing is trivial: all the tactics have the same type (tactic).

References

  1. Assaf, A.: A framework for defining computational higher-order logics. Ph.D. thesis, Ɖcole Polytechnique (2015). https://tel.archives-ouvertes.fr/tel-01235303

  2. Assaf, A., Burel, G.: Translating HOL to Dedukti. In: Kaliszyk, C., Paskevich, A. (eds.) Proceedings Fourth Workshop on Proof eXchange for Theorem Proving, Berlin, Germany, 2ā€“3 August 2015. Electronic Proceedings in Theoretical Computer Science, vol. 186, pp. 74ā€“88. Open Publishing Association, Berlin, August 2015. https://doi.org/10.4204/EPTCS.186.8

  3. Barrett, C., Fontaine, P., Tinelli, C.: The Satisfiability Modulo Theories Library (SMT-LIB) (2016). http://smtlib.cs.uiowa.edu

  4. Blanchette, J.C., Bulwahn, L., Nipkow, T.: Automatic proof and disproof in Isabelle/HOL. In: Tinelli, C., Sofronie-Stokkermans, V. (eds.) FroCoS 2011. LNCS (LNAI), vol. 6989, pp. 12ā€“27. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-24364-6_2

    ChapterĀ  Google ScholarĀ 

  5. Blanchette, J.C., Paskevich, A.: TFF1: the TPTP typed first-order form with rank-1 polymorphism. In: Bonacina, M.P. (ed.) CADE 2013. LNCS (LNAI), vol. 7898, pp. 414ā€“420. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-38574-2_29

    ChapterĀ  Google ScholarĀ 

  6. Blanco, R., Chihani, Z., Miller, D.: Translating between implicit and explicit versions of proof. In: de Moura, L. (ed.) CADE 2017. LNCS (LNAI), vol. 10395, pp. 255ā€“273. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-63046-5_16

    ChapterĀ  Google ScholarĀ 

  7. Boespflug, M., Carbonneaux, Q., Hermant, O.: The \(\lambda \varPi \)-calculus modulo as a universal proof language. In: David Pichardie, T.W. (ed.) The Second International Workshop on Proof Exchange for Theorem Proving (PxTP 2012), Manchester, vol. 878, pp. 28ā€“43, June 2012. https://hal-mines-paristech.archives-ouvertes.fr/hal-00917845

  8. Brady, E.: Idris, a general-purpose dependently typed programming language: design and implementation. J. Funct. Program. 23(5), 552ā€“593 (2013). https://doi.org/10.1017/S095679681300018X

    ArticleĀ  MathSciNetĀ  MATHĀ  Google ScholarĀ 

  9. Burel, G.: A shallow embedding of resolution and superposition proofs into the \(\lambda \varPi \)-calculus modulo. In: Blanchette, J.C., Urban, J. (eds.) Third International Workshop on Proof Exchange for Theorem Proving, PxTP 2013, Lake Placid, NY, USA, 9ā€“10 June 2013. EPiC Series in Computing, vol. 14, pp. 43ā€“57. EasyChair, Lake Placid, June 2013. http://www.easychair.org/publications/paper/141241

  10. Cauderlier, R., Dubois, C.: ML pattern-matching, recursion, and rewriting: from FoCaLiZe to Dedukti. In: Sampaio, A., Wang, F. (eds.) ICTAC 2016. LNCS, vol. 9965, pp. 459ā€“468. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-46750-4_26

    ChapterĀ  Google ScholarĀ 

  11. Cauderlier, R., Dubois, C.: FoCaLiZe and Dedukti to the rescue for proof interoperability. In: Ayala-RincĆ³n, M., MuƱoz, C.A. (eds.) ITP 2017. LNCS, vol. 10499, pp. 131ā€“147. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-66107-0_9

    ChapterĀ  Google ScholarĀ 

  12. Cauderlier, R., Halmagrand, P.: Checking Zenon Modulo proofs in Dedukti. In: Kaliszyk, C., Paskevich, A. (eds.) Proceedings 4th Workshop on Proof eXchange for Theorem Proving, Berlin, Germany, 2ā€“3 August 2015. Electronic Proceedings in Theoretical Computer Science, vol. 186, pp. 57ā€“73. Open Publishing Association, Berlin, August 2015. https://doi.org/10.4204/EPTCS.186.7

  13. Cauderlier, R., ThirƩ, F.: Meta Dedukti. http://deducteam.gforge.inria.fr/metadedukti/

  14. Dorra, A.: Ɖquivalence Curry-Howard entre le lambda-Pi-calcul et la logique intuitionniste (2010). Undergrad research intership report

    Google ScholarĀ 

  15. Ebner, G., Ullrich, S., Roesch, J., Avigad, J., de Moura, L.: A metaprogramming framework for formal verification. PACMPL 1(ICFP), 34:1ā€“34:29 (2017). https://doi.org/10.1145/3110278

    ArticleĀ  Google ScholarĀ 

  16. Gilbert, F.: Proof certificates in PVS. In: Ayala-RincĆ³n, M., MuƱoz, C.A. (eds.) ITP 2017. LNCS, vol. 10499, pp. 262ā€“268. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-66107-0_17

    ChapterĀ  Google ScholarĀ 

  17. Huffman, B., Kunčar, O.: Lifting and transfer: a modular design for quotients in Isabelle/HOL. In: Gonthier, G., Norrish, M. (eds.) CPP 2013. LNCS, vol. 8307, pp. 131ā€“146. Springer, Cham (2013). https://doi.org/10.1007/978-3-319-03545-1_9

    ChapterĀ  MATHĀ  Google ScholarĀ 

  18. Hurd, J.: First-order proof tactics in higher-order logic theorem provers. In: Archer, M., Vito, B.D., MuƱoz, C. (eds.) Design and Application of Strategies/Tactics in Higher Order Logics (STRATA 2003), pp. 56ā€“68. No. NASA/CP-2003-212448 in NASA Technical Reports, September 2003. http://www.gilith.com/papers

  19. Kaiser, J.O., Ziliani, B., Krebbers, R., RĆ©gis-Gianas, Y., Dreyer, D.: Mtac2: Typed tactics for backward reasoning in Coq (2018, submitted for publication)

    Google ScholarĀ 

  20. McCune, W.: Prover9 and Mace4 (2005ā€“2010). http://www.cs.unm.edu/~mccune/prover9/

  21. Miller, D.: A logic programming language with lambda-abstraction, function variables, and simple unification. J. Log. Comput. 1(4), 497ā€“536 (1991). https://doi.org/10.1093/logcom/1.4.497

    ArticleĀ  MathSciNetĀ  MATHĀ  Google ScholarĀ 

  22. Robinson, J.A.: A machine-oriented logic based on the resolution principle. J. ACM 12(1), 23ā€“41 (1965). https://doi.org/10.1145/321250.321253

    ArticleĀ  MathSciNetĀ  MATHĀ  Google ScholarĀ 

  23. Saillard, R.: Type checking in the Lambda-Pi-Calculus Modulo: theory and practice. Ph.D. thesis, MINES Paritech (2015). https://pastel.archives-ouvertes.fr/tel-01299180

  24. Sutcliffe, G.: The TPTP problem library and associated infrastructure. J. Autom. Reasoning 43(4), 337ā€“362 (2009). https://doi.org/10.1007/s10817-009-9143-8

    ArticleĀ  MathSciNetĀ  MATHĀ  Google ScholarĀ 

  25. Ziliani, B., Dreyer, D., Krishnaswami, N.R., Nanevski, A., Vafeiadis, V.: Mtac: a monad for typed tactic programming in Coq. J. Funct. Program. 25 (2015). https://doi.org/10.1017/S0956796815000118

  26. Zimmermann, T., Herbelin, H.: Automatic and Transparent Transfer of Theorems along Isomorphisms in the Coq Proof Assistant. CoRR abs/1505.05028 (2015). http://arxiv.org/abs/1505.05028

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Raphaƫl Cauderlier .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

Ā© 2018 Springer International Publishing AG, part of Springer Nature

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Cauderlier, R. (2018). Tactics and Certificates in Meta Dedukti. In: Avigad, J., Mahboubi, A. (eds) Interactive Theorem Proving. ITP 2018. Lecture Notes in Computer Science(), vol 10895. Springer, Cham. https://doi.org/10.1007/978-3-319-94821-8_9

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-94821-8_9

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-94820-1

  • Online ISBN: 978-3-319-94821-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics