Results 1 - 10
of
16
Two Classes of Boolean Functions for Dependency Analysis
- SCIENCE OF COMPUTER PROGRAMMING
, 1994
"... Many static analyses for declarative programming/database languages use Boolean functions to express dependencies among variables or argument positions. Examples include groundness analysis, arguably the most important analysis for logic programs, finiteness analysis and functional dependency analys ..."
Abstract
-
Cited by 55 (4 self)
- Add to MetaCart
Many static analyses for declarative programming/database languages use Boolean functions to express dependencies among variables or argument positions. Examples include groundness analysis, arguably the most important analysis for logic programs, finiteness analysis and functional dependency analysis for databases. We identify two classes of Boolean functions that have been used: positive and definite functions, and we systematically investigate these classes and their efficient implementation for dependency analyses. On the theoretical side we provide syntactic characterizations and study the expressiveness and algebraic properties of the classes. In particular, we show that both are closed under existential quantification. On the practical side we investigate various representations for the classes based on reduced ordered binary decision diagrams (ROBDDs), disjunctive normal form, conjunctive normal form, Blake canonical form, dual Blake canonical form, and two forms specific to de...
Finite Representation of Infinite Query Answers
, 1992
"... : We define here a formal notion of finite representation of infinite query answers in logic programs. We apply this notion to Datalog nS (Datalog with n successors): an extension of Datalog capable of representing infinite phenomena like flow of time or plan construction. Predicates in Datalog nS ..."
Abstract
-
Cited by 27 (5 self)
- Add to MetaCart
: We define here a formal notion of finite representation of infinite query answers in logic programs. We apply this notion to Datalog nS (Datalog with n successors): an extension of Datalog capable of representing infinite phenomena like flow of time or plan construction. Predicates in Datalog nS can have arbitrary unary and limited n-ary function symbols in one fixed position. This class of logic programs is known to be decidable. However, least Herbrand models of Datalog nS programs may be infinite and consequently queries may have infinite answers. We present a method to finitely represent infinite least Herbrand models of Datalog nS programs as relational specifications. A relational specification consists of a finite set of facts and a finitely specified congruence relation. A relational specification has the following desirable properties. First, it is explicit in the sense that once it is computed, the original Datalog nS program (and its underlying computational engine) can ...
Safe Constraint Queries
- SIAM J. Comput
, 1998
"... ing with credit is permitted. To copy otherwise, to republish, to post on servers, or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from Publications Dept, ACM Inc., fax +1 (212) 869-0481, or permissions@acm.org. Safe Constraint Queries Michael Be ..."
Abstract
-
Cited by 27 (7 self)
- Add to MetaCart
ing with credit is permitted. To copy otherwise, to republish, to post on servers, or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from Publications Dept, ACM Inc., fax +1 (212) 869-0481, or permissions@acm.org. Safe Constraint Queries Michael Benedikt Bell Laboratories 1000 E Warrenville Rd Naperville, IL 60566 E-mail: benedikt@research.bell-labs.com Leonid Libkin Bell Laboratories 600 Mountain Avenue Murray Hill, NJ 07974 E-mail: libkin@research.bell-labs.com Abstract We extend some of the classical characterization theorems of the relational theory --- particularly those related to query safety --- to the context where database elements come with fixed interpreted structure, and where formulae over elements of that structure can be used in queries. We show that the addition of common interpreted functions such as real addition and multiplication to the relational calculus preserves important characterization theorems ...
Reasoning about Strings in Databases
- In Thirteenth ACM SIGMOD Intern. Symposium on Principles of Database Systems (PODS'94
, 1994
"... In order to enable the database programmer to reason about relations over strings of arbitrary length, we introduce Alignment Calculus, a modal extension of relational calculus. In addition to relations, a state in the model consists of a two-dimensional array where the strings are aligned on top of ..."
Abstract
-
Cited by 23 (3 self)
- Add to MetaCart
In order to enable the database programmer to reason about relations over strings of arbitrary length, we introduce Alignment Calculus, a modal extension of relational calculus. In addition to relations, a state in the model consists of a two-dimensional array where the strings are aligned on top of each other. The basic modality in the language (a transpose, or "slide") rearranges this alignment, and more complex formulae can be formed using a syntax reminiscent of regular expressions, in addition to the usual connectives and quantifiers. It turns out that the computational counterpart of the string-based portion of the logic is the class of multitape two-way finite state automata, which are devices particularly well suited for the implementation of string matching. A computational counterpart of the full logic is obtained from relational algebra by performing selection with these devices. Safety of formulae in Alignment Calculus implies that new strings generated from old ones have t...
Database Programming with Delayed Updates
- IN INTL. WORKSHOP ON DATABASE PROGRAMMING LANGUAGES
, 1991
"... There are a variety of advanced database features which require the ability to manipulate "virtual" database states along with the actual stored state; examples of this include rule-based triggers in active databases, support for hypothetical reasoning, and some concurrent transaction processing s ..."
Abstract
-
Cited by 15 (8 self)
- Add to MetaCart
There are a variety of advanced database features which require the ability to manipulate "virtual" database states along with the actual stored state; examples of this include rule-based triggers in active databases, support for hypothetical reasoning, and some concurrent transaction processing systems. This paper
Depth-Bounded Bottom-Up Evaluation Of Logic Programs
, 1993
"... this paper we address the issue of termination of bottom-up evaluation of finiteanswer queries in the context of Datalog nS , a class of logic programs with limited function symbols [8, 10, 11, 12]. In Datalog nS programs the type and the occurrences of function symbols are restricted in the followi ..."
Abstract
-
Cited by 13 (2 self)
- Add to MetaCart
this paper we address the issue of termination of bottom-up evaluation of finiteanswer queries in the context of Datalog nS , a class of logic programs with limited function symbols [8, 10, 11, 12]. In Datalog nS programs the type and the occurrences of function symbols are restricted in the following way: function symbols can only be unary or limited n-ary (having a single distinguished argument), and they can appear in a single distinguished argument of predicates. In addition to Datalog nS
Constrained Dependencies
- Theoretical Computer Science
, 1995
"... We extend the notions of functional and finiteness dependencies to apply to subsets of a relation that are specified by constraints. These dependencies have many applications. We are able to characterize those constraint domains which admit a polynomial time solution of the implication problem (assu ..."
Abstract
-
Cited by 12 (0 self)
- Add to MetaCart
We extend the notions of functional and finiteness dependencies to apply to subsets of a relation that are specified by constraints. These dependencies have many applications. We are able to characterize those constraint domains which admit a polynomial time solution of the implication problem (assuming P/=NP) and give an efficient algorithm for these cases, modulo the cost of constraint manipulation. For other cases we offer approximate algorithms. Finally, we outline some applications of these dependencies to the analysis and optimization of CLP programs and database queries.
Proving Termination for Logic Programs by the Query-Mapping Pairs Approach
- PROGRAM DEVELOPMENT IN COMPUTATIONAL LOGIC
, 2004
"... This paper describes a method for proving termination of queries to logic programs based on abstract interpretation. The method uses query-mapping pairs to abstract the relation between calls in the LD-tree associated with the program and query. Any well founded partial order for terms can be used ..."
Abstract
-
Cited by 8 (0 self)
- Add to MetaCart
This paper describes a method for proving termination of queries to logic programs based on abstract interpretation. The method uses query-mapping pairs to abstract the relation between calls in the LD-tree associated with the program and query. Any well founded partial order for terms can be used to prove the termination. The ideas of the query-mapping pairs approach have been implemented in SICStus Prolog in a system called TermiLog, which is available on the web. Given a program and query pattern the system either answers that the query terminates or that there may be non-termination. The advantages of the method are its conceptual simplicity and the fact that it does not impose any restrictions on the programs.
Safe Database Queries with Arithmetic Relations
- Proc. 14th Australian Computer Science Conf
, 1991
"... We consider the theory of database queries on a relational data model that includes a set of fixed relations used to model arithmetic comparisons and operations. We describe how to extend several natural query languages such as first-order logic, Datalog, and stratified Datalog to apply to databases ..."
Abstract
-
Cited by 7 (1 self)
- Add to MetaCart
We consider the theory of database queries on a relational data model that includes a set of fixed relations used to model arithmetic comparisons and operations. We describe how to extend several natural query languages such as first-order logic, Datalog, and stratified Datalog to apply to databases in this model, and show that their relative expressive power is the same as it is for the standard relational model. We also show how properties such as domain independence and finiteness can be defined for queries in this data model, and show how the relationship between these properties varies from that in the standard model. As these properties are undecidable in general, we introduce a natural syntactic class of safe queries, that includes previous such classes, and study the extent to which it implies domain independence and finiteness. Finally, we give a simple procedure for translating safe first-order queries into relational algebra expressions as a basis for evaluating safe queries...
Optimizing bottom-up evaluation of constraint queries
, 1996
"... We consider a class of constraint logic programs including negation that can be executed bottom up without constraint solving, by replacing constraints with tests and assignments. We show how to optimize the bottom-up evaluation of queries for such programs using transformations based on analysis ob ..."
Abstract
-
Cited by 6 (0 self)
- Add to MetaCart
We consider a class of constraint logic programs including negation that can be executed bottom up without constraint solving, by replacing constraints with tests and assignments. We show how to optimize the bottom-up evaluation of queries for such programs using transformations based on analysis obtained using abstract interpretation. Although the paper concentrates on a class of efficiently executable programs the optimizations we describe are correct and applicable for arbitrary constraint programs. Our approach generalizes earlier work on constraint propagation.

