| M. Codish. Ecient Goal Directed Bottom-up Evaluation of Logic Programs. Journal of Logic Programming, 38(3):355-370, 1999. |
....computed as in section 4.1. Redundant clauses are removed from f using entailslite to give f , and thereby the join ha; fi. 5. 3 Fixpoint Algorithms The goal dependent analyser is driven by an induced magic based iteration strategy, re ning that used in [19] Induced magic was introduced in [5], where a meta interpreter for semi na ve, goal dependent, bottom up evaluation is presented. Simple optimisations can signi cantly impact on performance. In particular, as noted in [18] evaluations resulting from new calls should be performed before those resulting from new answers, and a call ....
M. Codish. Ecient Goal Directed Bottom-up Evaluation of Logic Programs. Journal of Logic Programming, 38(3):355-370, 1999.
....of duplicated facts, and the memoization of intermediate results. As examples, we have the transformations called Generalized Magis Sets [5, 12] Generalized Supplementary Magic Sets [5] Magic Templates [19] Alexander Templates [24] Counting Methods [23] and recently Induced Magic Sets [6]. Although bottom up evaluation based on magic sets has been studied in the context of logic programming, there are some approaches (for instance [13] which consider bottom up evaluation of constraint logic programs, showing a new research area in the application of the CLP scheme for databases ....
....information. In summary, the main aims of such works were to nd a bottom up evaluation method for restricted or general Horn logic programs which simulates top down evaluation, that is, a goal directed and ecient evaluation method (in terms of intermediates facts (subgoals) that are generated [24, 6]) which retains the advantages of avoiding in nite loops and set at a time computations. They also study semantic models and magic transformations for deductive database languages with negation [12] Thus, we may say that the bottom up evaluation is better than top down one w.r.t. positive goals: ....
[Article contains additional citation context not shown here]
M. Codish. Ecient Goal Directed Bottom-up Evaluation of Logic Programs. In Proc. of ICLP'97. pp. 422-439. MIT Press.
....of intermediate results. As examples, we have the transformations called Generalized Magis Sets [RSS90, BR91, RSS92, Bra95, KSS95] Generalized Supplementary Magic Sets [BR91] Magic Templates [Ram91] Alexander Templates [Sek89] Counting Methods [SZ88] and recently Induced Magic Sets [Cod97] Although bottom up evaluation based on magic sets has been studied in the context of logic programming, there are some approaches (for instance [Tom95, KS96] which consider bottom up evaluation of constraint logic programs, showing a new research area in the application of the CLP scheme for ....
.... main aims of such works were to nd a bottom up evaluation method for restricted or general Horn logic programs which simulates top down evaluation [Bra95, Tom95] that is, a goal directed and ecient evaluation method (in terms of intermediates facts (subgoals) that are generated [Sek89, RSS90, Cod97] which retains the advantages of avoiding in nite loops and set at a time computations. They also study semantic models and magic transformations for deductive database languages with negation [KSS95, KSS92, KSS91] Thus, we may say that the bottom up evaluation is better than top down one ....
[Article contains additional citation context not shown here]
M. Codish. Ecient Goal Directed Bottom-up Evaluation of Logic Programs. In Proc. of ICLP, pages 422-439. MIT Press, 1997.
....analysis we used query answer transformations, related to magic set transformations, to achieve a goal dependent analysis in a bottom up semantic framework [11, 15, 19] This is a fairly crude but easily implemented technique for goal directed analysis. Techniques such as induced magic [10] would doubtless improve performance. 9 Variable Based Argument Based Program Clauses Preds Transitions Time (secs) Transitions Time (secs) cs r 109 37 782 0.81 316 0.24 disj r 71 34 371 0.51 212 0.16 gabriel 45 20 267 0.29 118 0.08 kalah 88 45 541 0.53 249 0.19 peep 227 22 1666 2.96 321 ....
M. Codish. Ecient goal directed bottom-up evaluation of logic programs. Journal of Logic Programming, 38(3):355-370, 1999.
....ground term then sh X ( f;g n f;g = sh X ( Thus sh X (and hence sh X ) cannot distinguish between a set of ground substitutions and the empty set. In practice, the empty set only arises when a computation fails and this would normally be agged elsewhere in the analyser [9]. Example 4. Let X = fx; y; zg and consider abstracting h a x = f(y; z) h b where at program point h a , no variable in X is ground or shares with any other element of X . The bindings on X , for example, could be a or # a as given below. Then the bindings at h b would be b or # b , ....
....for a cautious compiler vendor. 7 Experimental work To investigate whether a quadratic meet, meet rescheduling and widening are enough to obtain an ecient and scalable dependency analysis, we have implemented an analyser in Prolog as a simple meta interpreter that uses induced magic sets [9] and eager evaluation [27] to perform goal dependent bottom up evaluation. Induced magic is a re nement of the magic set transformation, avoiding much of the re computation that arises because of the repetition of literals in the bodies of magic ed clauses [9] It also avoids the overhead of ....
[Article contains additional citation context not shown here]
M. Codish. Ecient Goal Directed Bottom-up Evaluation of Logic Programs. J. of Logic Programming (to appear), 1999.
....analysis. The implementation is based on a simple bottomup meta interpreter enhanced by ACI1 uni cation. For goal independent analyses we use a seminaive interpreter otimized for strongly connected components. For goal dependent analyses we use an interpreter which applies induced magic sets [5] and eager evaluation [22] This is basically the same analysis engine used in [19] and [18] The implementation e ort itself involved a small e ort given the analysers described in [8] and in [7] The main di erence is in the simpli cations made in the uni cation algorithm and in the normal form ....
M. Codish. Ecient goal directed bottom-up evaluation of logic programs. Journal of Logic Programming, 38(3):354-370, 1999.
....] iff(true, true xs] iff(true,xs) iff(false,xs) member(false,xs) FIGURE 1. Corresponding concrete and abstract programs. The concrete (bottom up) semantics of a logic program (with a nite minimal model) is easily computed using simple meta interpreters such as those described in [4, 6]. The basic idea is to perform iterations in which we solve clause bodies using the facts derived so far to derive new instances of clause heads. The last iteration is the rst one in which no new head instances are derived. Applying this approach to the abstract rotate program from Figure 1 gives ....
....naive scheme described above provides the basis for various more ecient implementations based on semi naive evaluation, strongly connected components, and other optimisation techniques. For further details and examples of meta interpreters in Prolog which perform this type of evaluation see [4, 6]. The ineciency of the above strategy stems both from the representation, as well as from the evaluation mechanism. Consider a single clause h b 1 ; b n in an iteration of the evaluation. Each call in the body might match a number of atoms (corresponding to disjuncts in a disjunctive ....
[Article contains additional citation context not shown here]
M. Codish. Ecient Goal Directed Bottom-up Evaluation of Logic Programs. The Journal of Logic Programming, 38(3):354-370, 1999. 13
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC