Term rewriting and all that
Termination of term rewriting using dependency pairs
Theoretical Computer Science - Trees in algebra and programming
Proving termination with multiset orderings
Communications of the ACM
The size-change principle for program termination
POPL '01 Proceedings of the 28th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
LICS '04 Proceedings of the 19th Annual IEEE Symposium on Logic in Computer Science
The size-change principle and dependency pairs for termination of term rewriting
Applicable Algebra in Engineering, Communication and Computing
Program termination analysis in polynomial time
ACM Transactions on Programming Languages and Systems (TOPLAS)
Mechanizing and Improving Dependency Pairs
Journal of Automated Reasoning
Matrix Interpretations for Proving Termination of Term Rewriting
Journal of Automated Reasoning
Proving Termination Using Recursive Path Orders and SAT Solving
FroCoS '07 Proceedings of the 6th international symposium on Frontiers of Combining Systems
Ranking functions for size-change termination
ACM Transactions on Programming Languages and Systems (TOPLAS)
Journal of Automated Reasoning
Automated termination proofs for logic programs by term rewriting
ACM Transactions on Computational Logic (TOCL)
Automating the dependency pair method
Information and Computation - Special issue: 19th international conference on automated deduction (CADE-19)
SAT solving for termination analysis with polynomial interpretations
SAT'07 Proceedings of the 10th international conference on Theory and applications of satisfiability testing
A SAT-based approach to size change termination with global ranking functions
TACAS'08/ETAPS'08 Proceedings of the Theory and practice of software, 14th international conference on Tools and algorithms for the construction and analysis of systems
Automated termination proofs for haskell by term rewriting
ACM Transactions on Programming Languages and Systems (TOPLAS)
Polytool: Polynomial interpretations as a basis for termination analysis of logic programs
Theory and Practice of Logic Programming
SAT solving for argument filterings
LPAR'06 Proceedings of the 13th international conference on Logic for Programming, Artificial Intelligence, and Reasoning
Termination analysis of higher-order functional programs
APLAS'05 Proceedings of the Third Asian conference on Programming Languages and Systems
Size-Change termination and bound analysis
FLOPS'06 Proceedings of the 8th international conference on Functional and Logic Programming
AProVE 1.2: automatic termination proofs in the dependency pair framework
IJCAR'06 Proceedings of the Third international joint conference on Automated Reasoning
Hi-index | 0.03 |
Size-change termination is a widely used means of proving termination where source programs are first abstracted to size-change graphs which are then analyzed to determine if they satisfy the size-change termination property. Here, the choice of the abstraction is crucial to the success of the method, and it is an open problem how to choose an abstraction such that no critical loss of precision occurs. This paper shows how to couple the search for a suitable abstraction and the test for size-change termination via an encoding to a single SAT instance. In this way, the problem of choosing the right abstraction is solved en passant by a SAT solver. We show that for the setting of term rewriting, the integration of this approach into the dependency pair framework works smoothly and gives rise to a new class of size-change reduction pairs. We implemented size-change reduction pairs in the termination prover AProVE and evaluated their usefulness in extensive experiments.