2011-08: A Linear Operational Semantics for Termination and Complexity Analysis of ISO Prolog
The following technical report is available from http://aib.informatik.rwth-aachen.de: A Linear Operational Semantics for Termination and Complexity Analysis of ISO Prolog Thomas Ströder, Fabian Emmes, Peter Schneider-Kamp, Jürgen Giesl, Carsten Fuhs AIB 2011-08 We present a new operational semantics for Prolog which covers all constructs in the corresponding ISO standard (including "non-logical" concepts like cuts, meta-programming, "all solution" predicates, dynamic predicates, and exception handling). In contrast to the classical operational semantics for logic programming, our semantics is linear and not based on search trees. This has the advantage that it is particularly suitable for automated program analyses such as termination and complexity analysis. We prove that our new semantics is equivalent to the ISO Prolog semantics, i.e., it computes the same answer substitutions and the derivations in both semantics have essentially the same length.
participants (1)
-
Carsten Fuhs