Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Automated termination proofs for logic programs by term rewriting
Schneider-Kamp P., Giesl J., Serebrenik A., Thiemann R. ACM Transactions on Computational Logic11 (1):1-52,2009.Type:Article
Date Reviewed: Jan 29 2010

Analyzing the termination of programs is perhaps one of the most active research topics in most declarative programming languages. Within the logic programming paradigm, one can find two different types of approaches to analyze termination: direct approaches that deal with logic programs without any preprocessing, and transformational approaches that first transform them to term rewriting systems, and then analyze the termination of these systems. The transformational approach is particularly interesting, because it allows one to reuse the huge body of techniques and tools for analyzing the termination of term rewriting systems, perhaps the one setting where a lot of effort has been devoted to this kind of research.

In this paper, the authors follow the transformational approach. In contrast to previous approaches in the literature, they impose no restrictions on the logic programs to be analyzed. In addition, the analysis of the transformed term rewriting systems can easily be automated using existing techniques and tools, such as the system AProVE [1], one of the most successful termination provers for term rewriting systems.

A key idea in this paper is the discovery that variables in a logic programming language can be seen as infinite terms in the term rewriting framework. This idea is then combined with the use of argument filtering to get rid of these infinite terms, so that the analysis essentially boils down to an ordinary termination analysis for term rewriting systems over finite terms.

In conclusion, this is a must-read paper for anyone who is interested in the termination analysis of logic programming languages.

Reviewer:  German Vidal Review #: CR137685 (1006-0602)
1) Giesl, J.; Thiemann, R.; Schneider-Kamp, P.; Falke, S. Rewriting techniques and applications (LNCS 3901). Springer, New York, NY, 2004.
Bookmark and Share
  Featured Reviewer  
 
Mechanical Verification (F.3.1 ... )
 
 
Automatic Analysis Of Algorithms (I.2.2 ... )
 
 
Logic Programming (I.2.3 ... )
 
 
Automatic Programming (I.2.2 )
 
 
Deduction And Theorem Proving (I.2.3 )
 
 
Logic Programming (D.1.6 )
 
Would you recommend this review?
yes
no
Other reviews under "Mechanical Verification": Date
Fast automatic liveness analysis of hierarchical parallel systems
Rohrich J.  Programming Languages and System Design (, Dresden, East Germany,271983. Type: Proceedings
Feb 1 1985
Mechanical proofs about computer programs
Good D.  Mathematical logic and programming languages (, London, UK,751985. Type: Proceedings
Feb 1 1986
The characterization problem for Hoare logics
Clarke E.  Mathematical logic and programming languages (, London, UK,1061985. Type: Proceedings
Jun 1 1986
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy