MPI-INF Logo
Campus Event Calendar

Event Entry

New for: D1, D2, D3, D4, D5

What and Who

Optimizing Clause Resolution

IV Ramakrishnan
State University of New York at Stony Brook
Logik-Seminar
AG 1, AG 2, AG 3, AG 4, AG 5, SWS  
AG Audience

Date, Time and Location

Thursday, 29 August 96
14:15
-- Not specified --
MPII/46.1
024
Saarbrücken

Abstract

The efficiency of resolution-based logic programming languages,
such as Prolog, depends critically on selecting and executing sets
of applicable clause heads to resolve against subgoals. Traditional
approaches to this problem have focused on using indexing to
determine the smallest possible applicable set. Despite their
usefulness, these approaches ignore the non-determinism inherent
in many logic programming languages to the extent that they do not
attempt to optimize execution after the applicable set has been
determined.


Unification factoring addresses this problem by regarding the
indexing and unification phases of clause resolution as a single
process in which unification operations common to two or more clauses
are shared. This process is formalized through the construction of
factoring automata, an abstract model of the indexing/unification
process that accurately captures its cost. From a theoretical
standpoint, the challenging problem is the design of optimal
unification factoring, i.e., the construction of automata that
minimize the overall cost of unifying applicable clause heads with
any goal. We present complexity results for the construction of
optimal automata under a variety of conditions. On the practical
side, unification factoring is implemented through a source code
transformation that preserves the full semantics of Prolog. Using
this transformation, programs show performance improvements of up
to 300% across three widely used logic programming systems.
In addition, we show how factoring extends to the optimization
of tabled evaluation, which tightly integrates deductive database
and non-monotonic reasoning capabilities within a single logic
programming framework. The factoring automaton model is naturally
extended to account for the additional costs associated with tabled
evaluation. As with the basic factoring model, we show complexity
results for optimal factoring for tabled evaluation. Heuristics are
given for the cases in which optimal factoring is computationally
difficult, and the effectiveness of these heuristics is demonstrated
by performance improvements on a set of deductive database
benchmarks.

Contact

--email hidden
passcode not visible
logged in users only

Tags, Category, Keywords and additional notes

Vortragswuensche fuer das Logikseminar bitte an Uwe Waldmann, MPI,
Tel.: (0681) 9325-227, uni-intern: 92227

Uwe Brahm, 04/12/2007 12:49 -- Created document.