Interactive Simplifier Tracing and Debugging in Isabelle

  • Lars Hupel
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8543)

Abstract

The Isabelle proof assistant comes equipped with a very powerful tactic for term simplification. While tremendously useful, the results of simplifying a term do not always match the user’s expectation: sometimes, the resulting term is not in the form the user expected, or the simplifier fails to apply a rule. We describe a new, interactive tracing facility which offers insight into the hierarchical structure of the simplification with user-defined filtering, memoization and search. The new simplifier trace is integrated into the Isabelle/jEdit Prover IDE.

Keywords

Isabelle simplifier term rewriting tracing debugging 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Alpuente, M., Ballis, D., Frechina, F., Sapiña, J.: Slicing-Based Trace Analysis of Rewriting Logic Specifications with iJulienne. In: Felleisen, M., Gardner, P. (eds.) ESOP 2013. LNCS, vol. 7792, pp. 121–124. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  2. 2.
    Aspinall, D.: Proof General: A generic tool for proof development. In: Graf, S. (ed.) TACAS 2000. LNCS, vol. 1785, pp. 38–43. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  3. 3.
    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)CrossRefGoogle Scholar
  4. 4.
    Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J., Talcott, C.: Maude manual (version 2.6)Google Scholar
  5. 5.
    Clavel, M., Eker, S., Lincoln, P., Meseguer, J.: Principles of Maude. In: Meseguer, J. (ed.) Electronic Notes in Theoretical Computer Science, vol. 4. Elsevier Science Publishers (1996)Google Scholar
  6. 6.
    Clocksin, W.F., Mellish, C.S.: Programming in Prolog: Using the ISO standard. Springer (2003)Google Scholar
  7. 7.
    Ducassé, M., Noyé, J.: Logic programming environments: Dynamic program analysis and debugging. The Journal of Logic Programming 19-20(suppl. 1), 351–384 (1994)MathSciNetCrossRefGoogle Scholar
  8. 8.
    Fruehwirth, T., Wielemaker, J., De Koninck, L.: SWI Prolog Reference Manual 6.2.2. Books on Demand (2012)Google Scholar
  9. 9.
    Matthews, D.C., Wenzel, M.: Efficient parallel programming in Poly/ML and Isabelle/ML. In: Proceedings of the 5th ACM SIGPLAN Workshop on Declarative Aspects of Multicore Programming, pp. 53–62. ACM (2010)Google Scholar
  10. 10.
    Nipkow, T., Paulson, L.C., Wenzel, M.T.: Isabelle/HOL. LNCS, vol. 2283. Springer, Heidelberg (2002)MATHGoogle Scholar
  11. 11.
    Sterling, L., Shapiro, E.Y.: The Art of Prolog: Advanced Programming Techniques. MIT Press, Cambridge (1994)MATHGoogle Scholar
  12. 12.
    The GNU Project: GDB: The GNU Project Debugger, https://www.gnu.org/software/gdb/
  13. 13.
    Wenzel, M.: Parallel proof checking in Isabelle/Isar. In: Proceedings of the ACM SIGSAM 2009 International Workshop on Programming Languages for Mechanized Mathematics Systems, pp. 13–29. ACM (2009)Google Scholar
  14. 14.
    Wenzel, M.: Asynchronous proof processing with Isabelle/Scala and Isabelle/jEdit. Electronic Notes in Theoretical Computer Science 285, 101–114 (2012)CrossRefMATHGoogle Scholar
  15. 15.
    Wenzel, M.: Isabelle/jEdit – A Prover IDE within the PIDE framework. In: Jeuring, J., Campbell, J.A., Carette, J., Dos Reis, G., Sojka, P., Wenzel, M., Sorge, V. (eds.) CICM 2012. LNCS (LNAI), vol. 7362, pp. 468–471. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  16. 16.
    Wenzel, M.: The Isabelle/Isar Reference Manual (2013)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Lars Hupel
    • 1
  1. 1.Technische Universität MünchenGermany

Personalised recommendations