## Implementation Of Subset Logic Programs (0)

Citations: | 4 - 0 self |

### BibTeX

@TECHREPORT{Jayaraman_implementationof,

author = {Bharat Jayaraman and Kyonghee Moon},

title = {Implementation Of Subset Logic Programs},

institution = {},

year = {}

}

### OpenURL

### Abstract

Subset-logic programs are built up of three kinds of program clauses: subset, equational, and relational clauses. Using these clauses, we can program solutions to a broad range of problems of interest in logic programming and deductive databases. In an earlier paper [Jay92], we discussed the implementation of subset and equational program clauses. This paper substantially extends that work, and focuses on the more expressive paradigm of subset and relational clauses. This paradigm supports setof operations, transitive closures, monotonic aggregation as well as incremental and lazy eager enumeration of sets. Although the subset-logic paradigm differs substantially from that of Prolog, we show that few additional changes are needed to the WAM [War83] to implement the paradigm and that these changes blend well with the overall machinery of the WAM. A central feature in the implementation of subset-logic programs is that of a "monotonic memo-table," i.e., a memo-table who entries can monot...

### Citations

1883 |
Foundations of Logic Programming
- Lloyd
- 1987
(Show Context)
Citation Context ...cation condition [Prz88], and, as before, all function calls must obey the generalized local stratification condition stated at the end of section 2.1.2. We treat negated goals by negation as failure =-=[Llo87]-=-. When new variables appear in condition, i.e., those that are not on the left-hand side of :-, then the goals in condition should be processed in such an order so that all negated goals and function ... |

251 |
Warren’s Abstract Machine: A Tutorial Reconstruction
- Aı̈t-Kaci
- 1991
(Show Context)
Citation Context ...e modification from the previous one. Finally, we note that whenever these instructions match a read-only variable, they initiate lazy-backtracking. 4 This instruction set is similar to that given in =-=[Ait91]-=-. 24 ffl The procedural instructions of the WAM are augmented with four set enumeration instructions:scall one, call all, call lazy, and execute lazy. We also introduce two instructions for memoized c... |

68 |
On the declarative semantics of stratified deductive databases and logic programs
- Przymusinski
- 1988
(Show Context)
Citation Context ... upon one another through subset-monotonic functions, i.e., monotonic with respect to the subset ordering. (Note that this definition is more liberal than the usual definition of local stratification =-=[Prz88]-=-). We illustrate such programs in section 2. A more formal account of the theory of subset-logic programming can be found in [Jan94, OJ93]. Subset clauses can be used in combination with both equation... |

44 | A rule-based language with functions and sets - Abiteboul, Grumbach - 1991 |

41 |
The well-founded semantics of aggregation
- Gelder
- 1992
(Show Context)
Citation Context ...idering the problems with various semantic approaches, Van Gelder notes that, for many applications in which the use of aggregates has been proposed, the concept of subset is what is really necessary =-=[Van92]-=-. Moreover, for many problems requiring aggregate operations to be performed, the concept of monotonic functions is necessary [RS92]. We have recently shown that the subset-logic paradigm and its gene... |

31 | G.: {log}: A logic programming language with finite sets - Dovier, Omodeo, et al. - 1991 |

18 | Extending the Well-Founded and Valid Semantics for Aggregation - Sudarshan, Srivastava, et al. - 1993 |

13 | Partial order programming (revisited - Jayaraman, Osorio, et al. |

11 |
Recursive programming through table look-up
- Friedman, Wise, et al.
- 1976
(Show Context)
Citation Context ...logic programs differs from the way it is used in both functional and logic programming languages: In functional programming, memoization is traditionally used to detect dynamic common subexpressions =-=[FWW76]-=-, and serves as a way to obtain an efficient implementation of dynamic programming algorithms. In addition to the above motivation, memoization in logic programs is used in order to detect circular lo... |

9 | Functional Programming with Sets - Jayaraman, Plaisted - 1987 |

8 | Dynamic programming optimization for logic queries with aggregates - Greco, Sacca, et al. - 1993 |

8 | The SuRE programming framework - Jayaraman, Moon - 1995 |

7 | Set Constructors, Finite Sets, and Logical Semantics - Jayaraman, Devashis - 1999 |

6 | A WAM-based implementation of a logic language with sets
- Dovier, Pontelli
- 1993
(Show Context)
Citation Context ...ng and setunification is a central implementation problem. The implementation of both these operations has been treated in earlier papers---set-matching is described in [Jay92] and set-unification in =-=[DP93]-=----and therefore we discuss them only briefly here. Both operations can in general result in multiple maximally general matches/unifiers, and hence may cause additional branching in the search process... |

5 |
Plaisted: Programming with Equations
- Jayaraman, A
- 1989
(Show Context)
Citation Context ...f = g constructor for constructing or inserting elements into a set. The use of conditional subset clauses to specify setof operations was one of the original motivations for introducing this feature =-=[JP89]-=-. For example, assuming the usual definition of the append/3 predicate, the Prolog goal ---?- setof(pair(X,Y), append(X, Y, [1,2,3]), Answer) for defining different partitions of the list [1,2,3] may ... |

4 | Memoing for Logic Progams - Warren - 1992 |

3 | Semantics of Subset-Logic Languages - Jana - 1994 |

3 |
An Abstract Instruction Set for
- Warren
- 1983
(Show Context)
Citation Context ...tion as well as incremental and lazy eager enumeration of sets. Although the subset-logic paradigm differs substantially from that of Prolog, we show that few additional changes are needed to the WAM =-=[War83] to i-=-mplement the paradigm and that these changes blend well with the overall machinery of the WAM. A central feature in the implementation of subset-logic programs is that of a "monotonic memo-table,... |

2 |
Analysis of SLG-WAM Evaluation of Definite Clause Programs
- Swift, Warren
- 1994
(Show Context)
Citation Context ...down execution model has no inherent disadvantages. On the contrary, recent work indicates that a WAM model with memoization shows an order of magnitude performance improvement over bottom-up methods =-=[SW94]-=- for the class of definite clause (relational) programs. This improvement is attributed to the efficient data-structure representation and backtracking of the WAM. Due to the presence of sets in the l... |

1 | Subset Assertions and Negation-as-Failure, Proc. ILPS 93, poster paper - Osorio, Jayaraman - 1993 |