• Keine Ergebnisse gefunden

Analyzing Logic Programs (Abstract)

N/A
N/A
Protected

Academic year: 2021

Aktie "Analyzing Logic Programs (Abstract)"

Copied!
1
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Symbolic Evaluation Graphs and Term Rewriting — A General Methodology for

Analyzing Logic Programs (Abstract)

?

J¨urgen Giesl1, Thomas Str¨oder1, Peter Schneider-Kamp2, Fabian Emmes1, and Carsten Fuhs3

1 LuFG Informatik 2, RWTH Aachen University, Germany

2 Dept. of Mathematics and Computer Science, University of Southern Denmark

3 Dept. of Computer Science, University College London, UK

There exist many powerful techniques to analyzeterminationandcomplexity ofterm rewrite systems (TRSs). Our goal is to use these techniques for the anal- ysis 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 com- plex evaluation strategies (such asProlog, where predicates like thecut influence the control flow).

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.

More information can be found in the full paper [1].

References

1. J. Giesl, T. Str¨oder, P. Schneider-Kamp, F. Emmes, and C. Fuhs. Symbolic eval- uation graphs and term rewriting — a general methodology for analyzing logic programs. InProc. PPDP ’12, pages 1–12. ACM Press, 2012.

?Supported by the DFG under grant GI 274/5-3, the DFG Research Training Group 1298 (AlgoSyn), and the Danish Council for Independent Research, Natural Sciences.

Referenzen

ÄHNLICHE DOKUMENTE

implemented in AProVE and evaluated on collection of 216 jbc -programs (including the Termination Problem Data Base). Success Failure

To analyze termination of a set S of desired initial (concrete) program states, we first represent this set by a suitable abstract state.. This abstract state is the starting node

We present an automated approach to prove termination of Java Bytecode (JBC) programs by automatically transforming them to term rewrite systems (TRSs).. In this way, the

prove termination of the resulting TRS (using existing techniques & tools). implemented

We introduce a novel pre-processing method which automatically transforms Prolog programs into logic pro- grams without cuts, where termination of the cut-free program

The reason is that in the Eval rule one does not take into account that no concretization of the current abstract goal would unify with any head of a program clause (since

We show how to combine the two most powerful approaches for automated termination analysis of logic programs (LPs): the direct approach which operates directly on LPs and

Since arbitrary techniques can be applied to search for reduction pairs required in the function exist(G, O), an obvious option is to use polynomial interpre- tations, one of the