Skip to main content

Into the Infinite - Theory Exploration for Coinduction

  • Conference paper
  • First Online:
Artificial Intelligence and Symbolic Computation (AISC 2018)

Abstract

Theory exploration is a technique for automating the discovery of lemmas in formalizations of mathematical theories, using testing and automated proof techniques. Automated theory exploration has previously been successfully applied to discover lemmas for inductive theories, about recursive datatypes and functions. We present an extension of theory exploration to coinductive theories, allowing us to explore the dual notions of corecursive datatypes and functions. This required development of new methods for testing infinite values, and for proof automation. Our work has been implemented in the Hipster system, a theory exploration tool for the proof assistant Isabelle/HOL.

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 EPUB and 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

Notes

  1. 1.

    https://github.com/moajohansson/IsaHipster.

  2. 2.

    https://github.com/moajohansson/IsaHipster/tree/master/benchmark/AISC18.

  3. 3.

    https://www.isa-afp.org/.

  4. 4.

    http://isabelle.in.tum.de/library/HOL/HOL-Library/Extended_Nat.html.

References

  1. Abel, A., Pientka, B.: Well-founded recursion with copatterns and sized types. J. Funct. Program. 26, e2 (2016)

    Article  MathSciNet  Google Scholar 

  2. Bird, R.: Introduction to Functional Programming, 2nd edn. Pearson Education, London (1998)

    Google Scholar 

  3. Bird, R., Wadler, P.: An Introduction to Functional Programming. Prentice Hall International (UK) Ltd., Hertfordshire (1988)

    Google Scholar 

  4. Blanchette, J.C., Bouzy, A., Lochbihler, A., Popescu, A., Traytel, D.: Friends with benefits. In: Yang, H. (ed.) ESOP 2017. LNCS, vol. 10201, pp. 111–140. Springer, Heidelberg (2017). https://doi.org/10.1007/978-3-662-54434-1_5

    Chapter  Google Scholar 

  5. Blanchette, J.C., Hölzl, J., Lochbihler, A., Panny, L., Popescu, A., Traytel, D.: Truly modular (Co)datatypes for Isabelle/HOL. In: Klein, G., Gamboa, R. (eds.) ITP 2014. LNCS, vol. 8558, pp. 93–110. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-08970-6_7

    Chapter  Google Scholar 

  6. Blanchette, J.C., Meier, F., Popescu, A., Traytel, D.: Foundational nonuniform (co)datatypes for higher-order logic. In: 2017 32nd Annual ACM/IEEE Symposium on Logic in Computer Science (LICS), pp. 1–12, June 2017

    Google Scholar 

  7. Buchberger, B.: Theory exploration with Theorema. Analele Universitatii Din Timisoara, ser. Matematica-Informatica 38(2), 9–32 (2000)

    MathSciNet  MATH  Google Scholar 

  8. Claessen, K., Hughes, J.: QuickCheck: a lightweight tool for random testing of Haskell programs. In: Proceedings of ICFP, pp. 268–279 (2000)

    Google Scholar 

  9. Claessen, K., Johansson, M., Rosén, D., Smallbone, N.: Automating inductive proofs using theory exploration. In: Bonacina, M.P. (ed.) CADE 2013. LNCS (LNAI), vol. 7898, pp. 392–406. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-38574-2_27

    Chapter  Google Scholar 

  10. Fu, P., Komendantskaya, E., Schrijvers, T., Pond, A.: Proof relevant corecursive resolution. In: Kiselyov, O., King, A. (eds.) FLOPS 2016. LNCS, vol. 9613, pp. 126–143. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-29604-3_9

    Chapter  Google Scholar 

  11. Hinze, R.: Concrete stream calculus: an extended study. J. Funct. Program. 20(5–6), 463–535 (2010)

    Article  MathSciNet  Google Scholar 

  12. Hutton, G., Gibbons, J.: The generic approximation lemma. Inf. Proces. Lett. 79, 2001 (2001)

    Article  MathSciNet  Google Scholar 

  13. Jacobs, B., Rutten, J.: A tutorial on (co)algebras and (co)induction. EATCS Bull. 62, 222–259 (1997)

    MATH  Google Scholar 

  14. Johansson, M.: Automated theory exploration for interactive theorem proving. In: Ayala-Rincón, M., Muñoz, C.A. (eds.) ITP 2017. LNCS, vol. 10499, pp. 1–11. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-66107-0_1

    Chapter  MATH  Google Scholar 

  15. Johansson, M., Dixon, L., Bundy, A.: Conjecture synthesis for inductive theories. J. Autom. Reason. 47(3), 251–289 (2011)

    Article  MathSciNet  Google Scholar 

  16. Johansson, M., Rosén, D., Smallbone, N., Claessen, K.: Hipster: integrating theory exploration in a proof assistant. In: Watt, S.M., Davenport, J.H., Sexton, A.P., Sojka, P., Urban, J. (eds.) CICM 2014. LNCS (LNAI), vol. 8543, pp. 108–122. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-08434-3_9

    Chapter  Google Scholar 

  17. Leino, R., Moskal, M.: Co-induction simply: automatic co-inductive proofs in a program verifier. Technical report, Microsoft Research, July 2013

    Google Scholar 

  18. Lochbihler, A.: Coinductive. Archive of Formal Proofs, February 2010. http://isa-afp.org/entries/Coinductive.html. Formal proof development

  19. Lucanu, D., Goriac, E.-I., Caltais, G., Roşu, G.: CIRC: a behavioral verification tool based on circular coinduction. In: Kurz, A., Lenisa, M., Tarlecki, A. (eds.) CALCO 2009. LNCS, vol. 5728, pp. 433–442. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-03741-2_30

    Chapter  Google Scholar 

  20. McCasland, R.L., Bundy, A., Smith, P.F.: MATHsAiD: automated mathematical theory exploration. Appl. Intell. 47, 585–606 (2017)

    Article  Google Scholar 

  21. Milner, R.: Communication and Concurrency. Prentice-Hall Inc., Upper Saddle River (1989)

    MATH  Google Scholar 

  22. Montano-Rivas, O., McCasland, R., Dixon, L., Bundy, A.: Scheme-based theorem discovery and concept invention. Expert Syst. Appl. 39(2), 1637–1646 (2012)

    Article  Google Scholar 

  23. Nakata, K., Uustalu, T.: A Hoare logic for the coinductive trace-based big-step semantics of while. In: Gordon, A.D. (ed.) ESOP 2010. LNCS, vol. 6012, pp. 488–506. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-11957-6_26

    Chapter  Google Scholar 

  24. Nipkow, T., Paulson, L.C., Wenzel, M.: Isabelle/HOL. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45949-9. http://isabelle.in.tum.de/dist/Isabelle2017/doc/tutorial.pdf

    Book  MATH  Google Scholar 

  25. Paulson, L.C., Blanchette, J.C.: Three years of experience with Sledgehammer, a practical link between automatic and interactive theorem provers. In: Proceedings of IWIL-2010 (2010)

    Google Scholar 

  26. Pous, D.: Coinduction all the way up. In: Proceedings of LICS, pp. 307–316. ACM, New York (2016)

    Google Scholar 

  27. Sangiorgi, D.: Introduction to Bisimulation and Coinduction. Cambridge University Press, New York (2011)

    MATH  Google Scholar 

  28. Smallbone, N., Johansson, M., Claessen, K., Algehed, M.: Quick specifications for the busy programmer. J. Funct. Program. 27, e18 (2017)

    Article  MathSciNet  Google Scholar 

  29. Turner, D.A.: Total functional programming. J. UCS 10(7), 751–768 (2004)

    MathSciNet  Google Scholar 

Download references

Acknowledgements

The authors would like to thank Nicholas Smallbone for technical assistance with QuickSpec. The first author was partially supported by the GRACeFUL project, grant agreement No. 640954, which has received funding from the European Union’s Horizon 2020 research and innovation program.

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Sólrún Halla Einarsdóttir , Moa Johansson or Johannes Åman Pohjola .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Einarsdóttir, S.H., Johansson, M., Åman Pohjola, J. (2018). Into the Infinite - Theory Exploration for Coinduction. In: Fleuriot, J., Wang, D., Calmet, J. (eds) Artificial Intelligence and Symbolic Computation. AISC 2018. Lecture Notes in Computer Science(), vol 11110. Springer, Cham. https://doi.org/10.1007/978-3-319-99957-9_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-99957-9_5

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-99956-2

  • Online ISBN: 978-3-319-99957-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics