Academia.eduAcademia.edu

Outline

A3PAT, an approach for certified automated termination proofs

2010, Proceedings of the 2010 ACM SIGPLAN workshop on Partial evaluation and program manipulation

https://doi.org/10.1145/1706356.1706370

Abstract

Software engineering, automated reasoning, rule-based programming or specifications often use rewriting systems for which termination, among other properties, may have to be ensured. This paper presents the approach developed in Project A3PAT to discover and moreover certify, with full automation, termination proofs for term rewriting systems. It consists of two developments: the COCCINELLE library formalises numerous rewriting techniques and termination criteria for the COQ proof assistant; the CiME3 rewriting tool translates termination proofs (discovered by itself or other tools) into traces that are certified by COQ assisted by COCCINELLE. The abstraction level of our formalisation allowed us to weaken premises of some theorems known in the literature, thus yielding new termination criteria, such as an extension of the powerful subterm criterion (for which we propose the first full COQ formalisation). Techniques employed in CiME3 also improve on previous works on formalisation and analysis of dependency graphs.

References (40)

  1. B. Alarcón, R. Gutiérrez, and S. Lucas. Context-Sensitive Dependency Pairs. In S. Arun-Kumar and N. Garg, editors, FST&TCS'06, volume 4337 of LNCS, pages 297-308, Kolkata, India, 2006. Springer-Verlag.
  2. P. Schneider-Kamp, R. Thiemann, E. Annov, M. Codish, and J. Giesl. Proving Termination using Recursive Path Orders and SAT Solving. In B. Konev and F. Wolter, editors, FroCos'07, volume 4720 of LNAI, pages 267-282, Liverpool, UK, Sept. 2007. Springer-Verlag.
  3. T. Arts and J. Giesl. Termination of term rewriting using dependency pairs. TCS, 236:133-178, 2000.
  4. T. Arts and J. Giesl. Automatically Proving Termination Where Simplification Orderings Fail. In M. Bidoit and M. Dauchet, editors, Theory and Practice of Software Development, volume 1214 of LNCS, Lille, France, Apr. 1997. Springer-Verlag.
  5. F. Baader and T. Nipkow. Term Rewriting and All That. Cambridge University Press, 1998.
  6. M. Bezem, D. Hendriks, and H. de Nivelle. Automated proof construc- tion in type theory using resolution. JAR, 29(3-4):253-275, 2002.
  7. F. Blanqui, S. Coupet-Grimal, W. Delobel, S. Hinderer, and A. Ko- prowski. Color, a Coq library on rewriting and termination. In Geser and Sondergaard [24].
  8. É. Contejean. The Coccinelle library for rewriting. URL http: //www.lri.fr/~contejea/Coccinelle/coccinelle.html.
  9. É. Contejean. A certified AC matching algorithm. In V. van Oost- rom, editor, RTA'04, volume 3091 of LNCS, pages 70-84, Aachen, Germany, June 2004. Springer-Verlag.
  10. E. Contejean and C. Marché. CiME: Completion Modulo E. In Ganzinger [23], pages 416-419. URL http://cime.lri.fr/.
  11. É. Contejean, C. Marché, B. Monate, and X. Urbain. Proving termi- nation of rewriting with CiME. In A. Rubio, editor, WST'03, pages 71-73, June 2003. URL http://cime.lri.fr. Technical Report DSIC II/15/03, Univ. Politécnica de Valencia, Spain.
  12. É. Contejean, C. Marché, A. P. Tomás, and X. Urbain. Mechanically proving termination using polynomial interpretations. JAR, 34(4): 325-363, 2005.
  13. É. Contejean, P. Courtieu, J. Forest, O. Pons, and X. Urbain. Certifi- cation of automated termination proofs. In B. Konev and F. Wolter, editors, FroCos'07, volume 4720 of LNAI, pages 148-162, Liverpool, UK, Sept. 2007. Springer-Verlag.
  14. T. Coquand and C. Paulin-Mohring. Inductively defined types. In P. Martin-Löf and G. Mints, editors, Proceedings of Colog'88, volume 417 of LNCS, Tallinn, USSR, 1988. Springer-Verlag.
  15. P. Courtieu, J. Forest, and X. Urbain. Certifying a Termination Cri- terion Based on Graphs, Without Graphs. In C. Muñoz and O. Ait Mohamed, editors, TPHOLs'08, volume 5170 of LNCS, pages 183- 198, Montréal, Canada, Aug. 2008. Springer-Verlag.
  16. P. Courtieu, G. Gbedo, and O. Pons. Improved matrix interpretations. In J. van Leeuwen et al., editor, SOFSEM'10, LNCS, Špindleruv Mlýn, Czech Republic, Jan. 2010. Springer-Verlag. To appear.
  17. N. Dershowitz. Orderings for term rewriting systems. TCS, 17(3): 279-301, Mar. 1982.
  18. N. Dershowitz and J.-P. Jouannaud. Rewrite systems. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, vol- ume B, pages 243-320. North-Holland, 1990.
  19. D. Doligez. Zenon. URL http://focal.inria.fr/zenon/.
  20. J. Endrullis. Jambox. URL http://joerg.endrullis.de/index. html.
  21. J. Endrullis, J. Waldmann, and H. Zantema. Matrix interpretations for proving termination of term rewriting. JAR, 40(2-3):195-220, 2008.
  22. C. Fuhs, A. Middeldorp, P. Schneider-Kamp, and H. Zankl. SAT solving for termination analysis with polynomial interpretations. In SAT'07, volume 4501 of LNCS, pages 340-354, Lisbon, Portugal, May 2007. Springer-Verlag.
  23. H. Ganzinger, editor. RTA'96, volume 1103 of LNCS, New Brunswick, USA, July 1996. Springer-Verlag.
  24. A. Geser and H. Sondergaard, editors. WST'06, Aug. 2006.
  25. J. Giesl, T. Arts, and E. Ohlebusch. Modular Termination Proofs for Rewriting Using Dependency Pairs. JSC, 34:21-58, 2002. doi:10.1006/jsco.2002.0541.
  26. J. Giesl, R. Thiemann, P. Schneider-Kamp, and S. Falke. Improving Dependency Pairs. In LPAR'03, volume 2850 of LNAI, pages 165- 179, Almaty, Kazakhstan, Sep. 2003. Springer-Verlag.
  27. J. Giesl, P. Schneider-Kamp, and R. Thiemann. AProVE 1.2: Auto- matic termination proofs in the dependency pair framework. In U. Fur- bach and N. Shankar, editors, IJCAR'06, volume 4130 of LNCS, Seat- tle, USA, Aug. 2006. Springer-Verlag.
  28. B. Gramlich. On proving termination by innermost termination. In Ganzinger [23], pages 93-107.
  29. N. Hirokawa and A. Middeldorp. Tyrolean Termination Tool: Tech- niques and Features. IC, 205(4):474 -511, 2007.
  30. A. Koprowski. TPA: Termination Proved Automatically, In F. Pfen- ning, editor, RTA'06, volume 4098 of LNCS, pages 257 -266, Seattle, USA, Aug. 2006. Springer-Verlag.
  31. M. Korp, C. Sternagel, H. Zankl, and A. Middeldorp. Tyrolean Termi- nation Tool 2. In R. Treinen, editor, RTA'09, volume 5595 of LNCS, pages 295-304, Brasília, Brazil, July 2009. Springer-Verlag.
  32. K. Kusakari, M. Nakamura, and Y. Toyama. Argument filtering trans- formation. In G. Nadathur, editor, PPDP'99, volume 1702 of LNCS, pages 47-61, Paris, France, 1999. Springer-Verlag.
  33. D. S. Lankford. On proving term rewriting systems are Noethe- rian. Technical Report MTP-3, Mathematics Department, Louisiana Tech. Univ., 1979. URL http://perso.ens-lyon.fr/pierre. lescanne/not_accessible.html.
  34. C. Marché and H. Zantema. The termination competition 2006. In Geser and Sondergaard [24]. URL http://www.lri.fr/~marche/ termination-competition/.
  35. Q. H. Nguyen, C. Kirchner, and H. Kirchner. External rewriting for skeptical proof assistants. JAR, 29(3-4):309-336, 2002.
  36. T. Nipkow, L. C. Paulson, and M. Wenzel. Isabelle/HOL -A Proof Assistant for Higher-Order Logic. Volume 2283 of LNCS, 2002. Springer-Verlag.
  37. The Coq Development Team. The Coq Proof Assistant Documentation -Version V8.2, June 2008. URL http://coq.inria.fr/refman/.
  38. R. Thiemann and C. Sternagel. Certification of Termination Proofs using CeTA. In T. Nipkow and C. Urban, editors, TPHOLs'09, vol- ume 5674 of LNCS, pages 452-468, Munich, Germany, Aug. 2009. Springer-Verlag.
  39. R. Thiemann, J. Giesl, and P. Schneider-Kamp. Improved modular termination proofs using dependency pairs. In IJCAR'04, volume 3097 of LNAI, pages 75-90, Cork, Ireland, 2004. Springer-Verlag.
  40. X. Urbain. Modular and incremental automated termination proofs. JAR, 32(4):315-355, 2004.