45 citations found. Retrieving documents...
Dietrich, S. W. Extension tables: memo relations in logic programming. In Proceedings of the Fourth Symposium on Logic Programming, (1987) 264--272.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents

Caching and Lemmaizing in Model Elimination - Theorem Provers Owen   (Correct)

....must be retrieved from the cache store. Our cache di#ers in use from the cache described in [28] in which the cache may be used even when it is not complete. It is similar to an unimplemented modification developed for iterative deepening of the ET # algorithm for Datalog programs outlined in [11]. When caching is used, the modifications indicated in Figure 3 are made to the search routine of Figure 2. added before line 4 in Figure 2 [3.1] #G,m,mS##template corresponding to more than one template may be applicable if template subsumption is being used [3.2] if m n ....

....closely related and involves an iterative deepening search of Datalog programs. As database optimizations, these methods concentrate on reducing redundancy when all solutions to a goal are desired; in a theorem proving context we (usually) only search for one proof. Extension tables as used in [11] are closely related to the OLDT procedure. Although an outline of an iterative deepening prover is given there, no empirical data is given and it appears that the method has not yet been implemented. Plaisted [29] has implemented a theorem prover in which solved goals are stored although no ....

S. W. Dietrich. Extension tables: Memo Relations in Logic Programming. In IEEE Symposium on Logic Programming, pages 264--272, 1987.


Non-Determinism in Deductive Databases - Giannotti, Pedreschi (1991)   (15 citations)  (Correct)

....of the above algorithm does not actually compute the diffChoice relation, but simply records the chosen tuples as they are generated in order to discard or not the future candidates. Therefore, choice can be implemented, as it is done in [Chi90] by simply memoing old values of chosen [Die87]. The behavior of the procedure is illustrated by the following two examples. Consider first the student course example of Section 3. takes(St,Crs) chosen(Crs,St) takes(St,Crs) di#Choice(Crs,St) St. takes(andy,engl) takes(ann, math) takes(mark,engl) takes(mark,math) Let M ....

....choices restrict the generation of new inferred facts, and the scope for future choices. Furthermore, it should be clear that the DCF approach is particularly suitable to the bottom up framework of deductive databases inasmuch as DCF can simply be implemented via simple memoing check operations [Die87]. As a further example, consider again Example 2 for computing nodes reachable from a given node a and their distance. By interpreting such a program with DCF we obtain a set of pairs (x, n) where n is the length of the minimum path from a to x, for each node x reachable from a in the graph. ....

Dietrich, S.W., "Extension Tables: Memo Relations in Logic Programming", Fourth IEEE Symposium on Logic Programming, MIT Press, pp. 264-272, 1987.


Reasoning with Probabilities, Time And Space - Dekhtyar (1999)   (Correct)

....[9] The main idea behind the so called OLD Resolution for logic programs is that while a query is evaluated, keeping track of the subqueries that have already succeeded can speed up the resolution process. OLD Resolution and related techniques have been extensively studied, among other works, in [8, 15, 52]. All these works are done for classic Logic Programming. In this section we describe how tabulation techniques can be applied to the proof procedure in HPLP setting. Before we proceed with our description of the tabulation model, we state one key difference between classic Logic Programs and ....

S. Dietrich and D.S. Warren. (1986) Extension Tables: Memo Relations in Logic Programming, SUNY Stonybrook Tech. Report 86/18.


Magic Templates: A Spellbinding Approach to Logic Programs - Ramakrishnan (1988)   (87 citations)  (Correct)

....in some way that goes beyond sideways information passing, and are less generally applicable. However, our definition is sufficiently broad to include a large number of proposed strategies. These include Prolog, versions of top down evaluation with memoing such as QSQ [Vi86] and Extension Tables [DW87], Static and Dynamic Filtering [KL86a, KL86b] and several parallel evaluation strategies proposed in the logic programming literature including those in [Ka87, VG86] A strategy may generate additional queries, or facts, in addition to those that must be generated by conditions (1) and (2) and ....

S.W. Dietrich and D.S. Warren, "Extension Tables: Memo Relations in Logic Programming," Proc. Symposium on Logic Programming, 1987.


Optimizations of Bottom-Up Evaluation with Non-Ground Terms.. - Sundarshan, al.   (Correct)

....(to all subgoals) it may generate non ground subgoals; correspondingly, non ground query facts would be generated if either Magic Templates or MTTR rewriting is used. 1 The problems described above (or equivalent ones) also occur with other memoization techniques such as Extension Tables [4], or OLDT resolution [19] In this extended abstract we present an efficient bottom up query evaluation mechanism, Opt NGBU query evaluation, for programs that generate non ground facts. This technique is a combination of an extended rewriting technique, MGU MTTR rewriting (Section 3) and an ....

.... of rule application, and are essentially independent of the control strategy used during evaluation such as those described in [10, 18] 9 They can be applied to other memoing evaluation schemes such as QSQR [21] and Alexander [13, 16] Persistent versioning can be used with Extension Tables [4], or OLDT resolution [19] Our optimization of answer return unification is not useful in the context of Extension Tables. However, with Extension Tables variables in rules would have to be versioned. In Opt NGBU evaluation, we can avoid versioning rule variables in most cases, and for programs ....

S. W. Dietrich. Extension tables: Memo relations in logic programming. In Procs. of the Symposium on Logic Programming, pages 264--272, 1987.


The Underlying Search for Magic Templates and Tabulation - Bol (1993)   (16 citations)  (Correct)

....as a query language for relational databases. Secondly, we are currently extending the framework to incorporate negation, aiming at soundness (and where possible completeness) w.r.t. the well founded model semantics [8, 15] In order to be prepared for the incorporation of constructive negation [3, 7] into our framework, we treat positive and negative literals symmetrically. This means that we do not impose a positivistic computation rule [14, 17] i.e. one that always prefers positive literals) Moreover, in contrast to extensions of OLDT resolution for stratified programs [9, 19] we ....

S. W. Dietrich. Extension tables: Memo relations in logic programming. In Proc. of the 1987 Symposium on Logic Programming, pages 264-- 273, San Francisco, August - September 1987. IEEE, Computer Society Press.


Global Flow Analysis as a Practical Compilation Tool - Hermenegildo, Warren, DEBRAY (1992)   (38 citations)  (Correct)

....if executed directly by a top down interpreter. Thus, additional machinery is needed to force every computation path in the program to be explored and to ensure termination once a fixpoint has been reached. We address both these issues by evaluating the approximate program using extension tables [12]: this involves augmenting the approximate program with code to maintain and manipulate such extension tables. The practical benefit of this approach is that since the flow information is obtained by executing the transformed program directly, instead of having the underlying system execute the ....

....two alternatives: program assert overhead and perhaps slow analysis (dependent on the implementation of assert) vs. I O and program compilation overhead but with a lower analysis time. 2. 2 Implementation of Extension Tables An important component of a flow analysis system is the extension table [12], which is a memo structure that records dataflow information during analysis. A central issue in the design of the program transformation system, discussed in the previous section, is the implementation of this table: while the extension table module may appear to be a rather small component of ....

S. W. Dietrich. Extension Tables: Memo Relations in Logic Programming. In Fourth IEEE Symposium on Logic Programming, pages 264--272, September 1987.


Amalgamating Knowledge Bases, II: Algorithms, Data.. - Sibel Adali Subrahmanian   (Correct)

....solved goals over and over again. OLDT resolution, due to Tamaki and Sato [34] is a technique which caches previously derived solutions in a table. The theory and implementation of OLDT has been studied extensively by several researchers including Seki [28, 27] and Warren and his colleagues [9, 10]. Furthermore, it is known that OLDT and magic set computations [5, 6, 26] are essentially equivalent, though they differ in many (relatively minor) details. We will use the OLDT technique as our starting point, and extend it as follows: 1) Multiple Databases: As different databases may provide ....

....Q , the KB should be able to respond with an answer of the form: I m not done yet, but at this point I can tell you that Q is true with certainty 87 or more. 4) Table Management: Relatively little work has been done on the development of data structures for managing OLDT tables (cf. Warren [9, 10]) When a single database with neither uncertainty nor time is considered, the structure of the OLDT table can be relatively simple. However, when multiple database operations, uncertainty estimates (that are constantly being revised) and temporal reasoning are being performed simultaneously, the ....

[Article contains additional citation context not shown here]

S. Dietrich and D.S. Warren. (1986) Extension Tables: Memo Relations in Logic Programming, SUNY Stonybrook Tech. Report 86/18.


Generalized Horn Clause Programs - Debray, Ramakrishnan (1994)   (7 citations)  (Correct)

....that record all generated facts and goals are recorded (with the effect that b Phi is treated as set union) Now, can be applied as a final step to compute the answers. OLDT resolution [41] provides a formal basis for such computation methods, and methods such as QSQR [45] and Extension Tables [12, 48] represent specific algorithms that are based upon OLDT resolution. It is well known (see e.g. 7] that there is a close correspondence between bottom up evaluation of programs rewritten using the Magic Templates transformation [32] and QSQR. Both methods generate and record the same sets of ....

S. W. Dietrich, "Extension tables: Memo relations in logic programming", Proc. Symposium on Logic Programming, pages 264--272, 1987.


Using Automatic Memoization as a Software Engineering Tool .. - Mayfield, Hall, Finin (1994)   (1 citation)  (Correct)

....infer which functions should be memoized. These two approaches to automatic memoization are not incompatible, although as Mostow and Cohen point out, the latter approach is not a practical tool. The principle of memoization and examples of its use in areas as varied as logic programming [17, 7, 3], functional programming [5] and natural language parsing [12] have been described in the literature. In all of the cases that we have reviewed, the use of memoization was either built into in a special purpose computing engine (e.g. for rule based deduction, or CFG parsing) or treated in a ....

S.W. Dietrich. Extension tables: Memo relations in logic programming. In Fourth International Symposium on Logic Programming, pages 264--273, 1987.


Using Automatic Memoization as a Software Engineering Tool .. - Mayfield, Finin, Hall (1995)   (1 citation)  (Correct)

....package to convert the elegant but inefficient recursive algorithm into a useful one. This is attractive, of course, only if such a package can address the practical problems faced in real application. The principle of memoizationand examples of its use in areas as varied as logic programming [16, 7, 3], functional programming [5] and natural language parsing [11] have been described in the literature. In all of the cases that we have reviewed, the use of memoization was either built into in a special purpose computing engine (e.g. for rule based deduction, or CFG parsing) or treated in a ....

S.W. Dietrich. Extension tables: Memo relations in logic programming. In Fourth International Symposium on Logic Programming, pages 264-- 273, 1987.


Automatic Mode Inference for Logic Programs - Debray, Warren (1988)   (44 citations)  (Correct)

....the fixpoints being computed are finite, there are finite computations that will obtain the sets we 21 seek. This problem has been investigated extensively by database researchers (see, for example, 1] We compute these fixpoints iteratively, in a bottom up manner, using an extension table [12] to avoid repetitions of the same computation. The essential idea here is to maintain a table of langle Call, Return rangle pairs, where Return is the set of solutions corresponding to the call Call, so that these need not be recomputed, but can be returned by looking up the table. The amount of ....

....calling pattern, records this pattern in its table, evaluates the propagator clauses if necessary, and returns the least upper bound, with respect to le , of the resulting success patterns. An example of the mode interpreter (excluding the extension table manager, details of which may be found in [12], and the various alias bits) for the quicksort predicate, defined below, is given in Figure 4. qsort( M L ] R) part(M,L,U1,U2) qsort(U1,V1) qsort(U2,V2) append(V1, M V2 ] R) qsort( The discussion so far has not concerned itself with clauses that contain disjunctions ....

S. W. Dietrich, Extension Tables: Memo Relations in Logic Programming, in Proc. Fourth IEEE Symposium on Logic Programming, San Francisco, CA, Sep. 1987, pp. 264272.


Profiling Prolog Programs - Debray (1983)   (1 citation)  (Correct)

....finds students who are taking two courses from the same teacher, with both courses meeting in the same room: ############################# 1 This problem was pointed out to us by David S. Warren. It is not unique to profiling, but is also encountered in the context of goal caching in Prolog [7]. 11 student(john, cs453) teacher(binkley, cs453) student(john, cs520) teacher(binkley, cs342) student(john, cs455) teacher(opus, cs455) student(john, ma561) teacher(dallas, cs520) student(tom, cs342) teacher(dallas, ma561) student(tom, cs453) student(mary, cs455) course(cs453, ....

....of the clause C. Thus, any call to foo is directed, via C, to the system predicate ############################# 3 This problem is not unique to profiling, but is also encountered in other contexts that require call interception, e.g. in the tracing and goal caching tools supported by SB Prolog [7]. 16 profile, which carries out the appropriate bookkeeping activities and eventually calls its argument, prof foo, with the same arguments as in the original call to foo. Since the entry point of prof foo is the original entry point for foo, this results in the code for foo being executed. ....

S. W. Dietrich, Extension Tables: Memo Relations in Logic Programming, in Proc. Fourth IEEE Symposium on Logic Programming, San Francisco, CA, Sep. 1987, pp. 264-272.


Static Inference of Modes and Data Dependencies in Logic Programs - Debray (1989)   (72 citations)  (Correct)

....patterns can be found for p corresponding to the calling pattern cp, this indicates a circularity where no possibility for a successful execution of p can be established. In this case, the set of success patterns returned is . This strategy is essentially that of maintaining an extension table [12, 24], which is used to remember the success patterns computed for each calling pattern. It can be shown that the use of extension tables leads to an execution strategy that is complete for finite domains, i.e. that all answers are found for any computation [12] in our case, this implies that all ....

....of maintaining an extension table [12, 24] which is used to remember the success patterns computed for each calling pattern. It can be shown that the use of extension tables leads to an execution strategy that is complete for finite domains, i.e. that all answers are found for any computation [12]; in our case, this implies that all success patterns corresponding to any given calling pattern for a predicate can be computed in finite time. Once a set of success patterns has been computed for a given calling pattern for a predicate, it can be retrieved for future invocations with 16 the ....

[Article contains additional citation context not shown here]

S. W. Dietrich, Extension Tables: Memo Relations in Logic Programming, in Proc. Fourth IEEE Symposium on Logic Programming, San Francisco, CA, Sep. 1987, pp. 264-272.


Flow Analysis of Dynamic Logic Programs - Debray (1989)   (6 citations)  (Correct)

....the last literal in the body. This is repeated until no new calling or success patterns can be obtained for any predicate, at which point the analysis terminates. In order to avoid repeatedly computing the success patterns of a predicate for a given calling pattern, an extension table can be used [8, 13]. This is a memo structure that maintains, for each predicate, a set of pairs Call, RetVals where Call is a tuple of arguments in a call and RetVals is a list of solutions that have been found for that (or a more general) call to that predicate. At the time of a call, the extension ....

S. W. Dietrich, Extension Tables: Memo Relations in Logic Programming, in Proc. Fourth IEEE Symposium on Logic Programming, San Francisco, CA, Sep. 1987, pp. 264-272.


Integrity and Recursion: Two Key Issues for Deductive Databases - Manthey (1990)   (Correct)

....approach ( BMSU86] RLK86] BR87] and the QSQ approach ( Vie86] Vie89] LV89] can be very elegantly explained as two different implementations of a more general principle. Those solutions for the recursion problem that have been proposed in a logic programming framework such as [TS86] or [Die87] find a natural explanation in Bry s framework, too. In spite of this unified view, which has significantly contributed to a better understanding of rule handling in general and recursion in particular, the matter remains intricate and difficult to present. In the following we will therefore ....

S.W. Dietrich, "Extension tables: memo relations in logic programming", in: Proc. Symp. on Logic Programming (SLP), San Francisco, 1987


Foundations of Deductive Object-Oriented Database Systems - Dobbie (1996)   (3 citations)  (Correct)

.... foundation of relational databases and, using this well understood foundation, much work has been done on their application to problems involving recursive or cyclic data [16, 52, 102] on the semantics of databases with increasingly complex combinations of recursion, negation and aggregates [41, 61, 75, 98, 104, 106], on query optimization [17, 15, 59, 103, 106] and on integrity constraint maintenance [26, 78] However deductive databases fail to significantly improve the data modeling capabilities of the relational model. For example, it is not possible to encapsulate rules with the data to which they ....

....to make the goal true. SLD resolution is a common top down evaluation procedure for definite programs [77] Optimization techniques make these procedures viable in practice. In particular magic sets [17] focus the procedure on the data relevant to the query for bottom up procedures and tabling [41] eliminates infinite loops when there is recursion in programs for the top down procedures. The correctness of a procedure can be measured with respect to the model theoretic semantics. Suppose S is the well founded model of a program [105] A procedure is sound if whenever the answer to the goal ....

S. W. Dietrich. Extension Tables: Memo Relations in Logic Programming. In Proc. 3rd Symposium on Logic Programming, pages 264--272, San Francisco, California, 1987. BIBLIOGRAPHY 118


Tabled Evaluation with Delaying for General Logic Programs - Weidong Chen Computer (1996)   (109 citations)  Self-citation (Warren)   (Correct)

....subgoals may result in unacceptable performance. Partial solutions have been proposed to improve the termination properties of top down computation and to avoid redundant evaluation of subgoals. Several extensions of SLD resolution with memoing have been studied, including extension tables [16], OLDT resolution [43] and QSQR [48] The main idea is to keep a global table of subgoals and their answers that have been computed. If a subgoal is identical to or subsumed by a previous one, instead of being solved using rules in a program, it is solved using answers computed for the previous ....

S.W. Dietrich and D.S. Warren. Extension tables: Memo relations in logic programming. Technical Report 86/18, Department of Computer Science, SUNY at Stony Brook, 1986.


Bottom-up Evaluation and Query Optimization of Well-Founded - Models David Kemp (1995)   (19 citations)  (Correct)

No context found.

Dietrich, S. W. Extension tables: memo relations in logic programming. In Proceedings of the Fourth Symposium on Logic Programming, (1987) 264--272.


Compile-Time Derivation of Variable Dependency Using Abstract .. - Muthukumar, al. (1992)   (78 citations)  (Correct)

No context found.

S. W. Dietrich. Extension Tables: Memo Relations in Logic Programming. In Fourth IEEE Symposium on Logic Programming, pages 264--272, September 1987.


MCC Technical Report Number: - Act-Dc- Deriving Fixpoint   (Correct)

No context found.

S. W. Dietrich. Extension Tables: Memo Relations in Logic Programming. In Fourth IEEE Symposium on Logic Programming, pages 264--272, September 1987.


Attack Generation for NIDS Testing Using Natural Deduction - Shai Rubin Somesh   (Correct)

No context found.

DIETRICH, S. W. Extension tables: Memo relations in logic programming. In The Fifth International Conference and Symposium on Logic Programming (San Francisco, Aug. - Sept. 1987).


Proof Procedures for Hybrid Probabilistic Programs - Dekhtyar, Subrahmanian   (Correct)

No context found.

S. Dietrich and D.S. Warren. (1986) Extension Tables: Memo Relations in Logic Programming, SUNY Stonybrook Tech. Report 86/18.


Efficient Dataflow Analysis of Logic Programs - Debray (1992)   (24 citations)  (Correct)

No context found.

S. W. Dietrich, "Extension Tables: Memo Relations in Logic Programming", Proc. Fourth IEEE Symposium on Logic Programming, San Francisco, CA, Sept. 1987, pp. 264-272.


Improving Execution Models of Logic Programs by Two-phase.. - Chang, al. (1995)   (Correct)

No context found.

S.W. Dietrich and D. S. Warren, "Extension tables: memo relations in logic programming," In Proceedings of the 4th IEEE Symposiumon Logic Programming, Washington : IEEE Comp. Soc. Press, 1987, pp. 264--273.

First 50 documents

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