Journal of Symbolic Computation
Task granularity analysis in logic programs
PLDI '90 Proceedings of the ACM SIGPLAN 1990 conference on Programming language design and implementation
Determinacy analysis for full Prolog
PEPM '91 Proceedings of the 1991 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Cost analysis of logic programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
From logic programming to Prolog
From logic programming to Prolog
Lower-bound time-complexity analysis of logic programs
ILPS '97 Proceedings of the 1997 international symposium on Logic programming
Lower bound cost estimation for logic programs
ILPS '97 Proceedings of the 1997 international symposium on Logic programming
Term rewriting and all that
A Semantics-Based Determinacy Analysis for Prolog with Cut
Proceedings of the Second International Andrei Ershov Memorial Conference on Perspectives of System Informatics
Efficient groundness analysis in Prolog
Theory and Practice of Logic Programming
Science of Computer Programming - Special issue: Static analysis symposium (SAS 2003)
Mechanizing and Improving Dependency Pairs
Journal of Automated Reasoning
Automated Implicit Computational Complexity Analysis (System Description)
IJCAR '08 Proceedings of the 4th international joint conference on Automated Reasoning
Automated Complexity Analysis Based on the Dependency Pair Method
IJCAR '08 Proceedings of the 4th international joint conference on Automated Reasoning
Termination Analysis of Logic Programs Based on Dependency Graphs
Logic-Based Program Synthesis and Transformation
Proving Termination of Integer Term Rewriting
RTA '09 Proceedings of the 20th International Conference on Rewriting Techniques and Applications
Dependency Pairs and Polynomial Path Orders
RTA '09 Proceedings of the 20th International Conference on Rewriting Techniques and Applications
Automated termination proofs for logic programs by term rewriting
ACM Transactions on Computational Logic (TOCL)
User-definable resource bounds analysis for logic programs
ICLP'07 Proceedings of the 23rd international conference on Logic programming
Automated termination analysis for logic programs with cut*
Theory and Practice of Logic Programming
Automated termination proofs for haskell by term rewriting
ACM Transactions on Programming Languages and Systems (TOPLAS)
Dependency triples for improving termination analysis of logic programs with cut
LOPSTR'10 Proceedings of the 20th international conference on Logic-based program synthesis and transformation
A dependency pair framework for innermost complexity analysis of term rewrite systems
CADE'11 Proceedings of the 23rd international conference on Automated deduction
Detecting determinacy in prolog programs
ICLP'06 Proceedings of the 22nd international conference on Logic Programming
The dependency triple framework for termination of logic programs
LOPSTR'09 Proceedings of the 19th international conference on Logic-Based Program Synthesis and Transformation
AProVE 1.2: automatic termination proofs in the dependency pair framework
IJCAR'06 Proceedings of the Third international joint conference on Automated Reasoning
An overview of ciao and its design philosophy
Theory and Practice of Logic Programming - Prolog Systems
Mutual exclusion by interpolation
FLOPS'12 Proceedings of the 11th international conference on Functional and Logic Programming
Automated termination proofs for Java programs with cyclic data
CAV'12 Proceedings of the 24th international conference on Computer Aided Verification
A linear operational semantics for termination and complexity analysis of ISO prolog
LOPSTR'11 Proceedings of the 21st international conference on Logic-Based Program Synthesis and Transformation
Automated detection of non-termination and nullpointerexceptions for Java Bytecode
FoVeOOS'11 Proceedings of the 2011 international conference on Formal Verification of Object-Oriented Software
Hi-index | 0.00 |
There exist many powerful techniques to analyze termination and complexity of term rewrite systems (TRSs). Our goal is to use these techniques for the analysis of other programming languages as well. For instance, approaches to prove termination of definite logic programs by a transformation to TRSs have been studied for decades. However, a challenge is to handle languages with more complex evaluation strategies (such as Prolog, where predicates like the cut influence the control flow). In this paper, we present a general methodology for the analysis of such programs. Here, the logic program is first transformed into a symbolic evaluation graph which represents all possible evaluations in a finite way. Afterwards, different analyses can be performed on these graphs. In particular, one can generate TRSs from such graphs and apply existing tools for termination or complexity analysis of TRSs to infer information on the termination or complexity of the original logic program.