## Constraint Programming and Database Query Languages (1994)

Venue: | In Proc. 2nd Conference on Theoretical Aspects of Computer Software (TACS |

Citations: | 60 - 3 self |

### BibTeX

@INPROCEEDINGS{Kanellakis94constraintprogramming,

author = {Paris Kanellakis and Dina Q Goldin},

title = {Constraint Programming and Database Query Languages},

booktitle = {In Proc. 2nd Conference on Theoretical Aspects of Computer Software (TACS},

year = {1994},

pages = {96--120},

publisher = {Springer-Verlag}

}

### Years of Citing Articles

### OpenURL

### Abstract

. The declarative programming paradigms used in constraint languages can lead to powerful extensions of Codd's relational data model. The development of constraint database query languages from logical database query languages has many similarities with the development of constraint logic programming from logic programming, but with the additional requirements of data efficient, set-at-a-time, and bottomup evaluation. In this overview of constraint query languages (CQLs) we first present the framework of [41]. The principal idea is that: "the k-tuple (or record) data type can be generalized by a conjunction of quantifier-free constraints over k variables". The generalization must preserve various language properties of the relational data model, e.g., the calculus/algebra equivalence, and have time complexity polynomial in the size of the data. We next present an algebra for dense order constraints that is simpler to evaluate than the calculus described in [41], and we sharpen some of...

### Citations

1762 |
Computational Geometry: An Introduction
- Preparata, Shamos
- 1985
(Show Context)
Citation Context ...m. Example 2. Let us try to illustrate these points (1-3) with an example. A very common task from computational geometry and spatial databases is the problem of computing all rectangle intersections =-=[57, 63]-=-. The database consists of a set of rectangles in the plane (the four rectangles of Figure 1) and we want to compute all pairs of distinct intersecting rectangles. Note that the theory of constraints ... |

1174 |
The Design and Analysis of Spatial Data Structures
- Samet
- 1990
(Show Context)
Citation Context ...anguages. (2) The possible applications of constraint databases include both data processing and numerical processing of spatial data. (3) The implementation technology of spatial access methods (see =-=[62, 63]-=-) naturally matches the new formalism. Example 2. Let us try to illustrate these points (1-3) with an example. A very common task from computational geometry and spatial databases is the problem of co... |

1000 |
Consistency in networks of relations
- Mackworth
- 1977
(Show Context)
Citation Context ...cations. Pioneering work in constraint programming goes back to the early 1960's, e.g., Sutherland's SKETCHPAD [67]. The theme has been investigated since the 1970's, e.g., in artificial intelligence =-=[31, 54, 55, 66]-=-, in graphical-interfaces [10], and in logic programming languages [37, 22, 27]. The relevant literature and contributions are too large to attempt a survey. Instead we will limit our exposition to re... |

562 |
A Decision Method for Elementary Algebra and Geometry, University of California Press
- TARSKI
- 1951
(Show Context)
Citation Context ...ation of the k-tuple or record or ground fact. The technical tools for this integration were: data complexity [17, 73] from database theory, and quantifier elimination methods from mathematical logic =-=[28, 29, 68, 23, 8, 48, 60]-=-. More specifically, finite relations are generalized to finitely representable relations and appropriate algebras for their data manipulation can be developed in this framework. In many cases, the al... |

555 | The ubiquitous B-tree
- Comer
- 1979
(Show Context)
Citation Context ...or constant) use of secondary storage is an additional requirement, beyond low data complexity, whose satisfaction greatly contributes to relational technology. B-trees and their variants B + -trees, =-=[7, 24]-=-, are examples of important data structures for implementing relational databases. In particular, let each secondary memory access transmit B units of data, let r be a relation with N tuples, and let ... |

530 |
The complexity of relational query languages
- Vardi
- 1982
(Show Context)
Citation Context ...les, where k depends on the database schema and not the instance, is the correct generalization of the k-tuple or record or ground fact. The technical tools for this integration were: data complexity =-=[17, 73]-=- from database theory, and quantifier elimination methods from mathematical logic [28, 29, 68, 23, 8, 48, 60]. More specifically, finite relations are generalized to finitely representable relations a... |

526 | Sketchpad: A man-machine graphical communication system
- SUTHERLAND
- 1963
(Show Context)
Citation Context ...ealing because constraints are the normal language of discourse for many high-level applications. Pioneering work in constraint programming goes back to the early 1960's, e.g., Sutherland's SKETCHPAD =-=[67]-=-. The theme has been investigated since the 1970's, e.g., in artificial intelligence [31, 54, 55, 66], in graphical-interfaces [10], and in logic programming languages [37, 22, 27]. The relevant liter... |

423 |
Networks of constraints: fundamental properties and application to picture processing
- Montanari
- 1974
(Show Context)
Citation Context ...cations. Pioneering work in constraint programming goes back to the early 1960's, e.g., Sutherland's SKETCHPAD [67]. The theme has been investigated since the 1970's, e.g., in artificial intelligence =-=[31, 54, 55, 66]-=-, in graphical-interfaces [10], and in logic programming languages [37, 22, 27]. The relevant literature and contributions are too large to attempt a survey. Instead we will limit our exposition to re... |

373 |
Quantifier elimination for real closed fields by cylindrical algebraic decomposition, Quantifier elimination and cylindrical algebraic decomposition
- Collins
- 1993
(Show Context)
Citation Context ...ation of the k-tuple or record or ground fact. The technical tools for this integration were: data complexity [17, 73] from database theory, and quantifier elimination methods from mathematical logic =-=[28, 29, 68, 23, 8, 48, 60]-=-. More specifically, finite relations are generalized to finitely representable relations and appropriate algebras for their data manipulation can be developed in this framework. In many cases, the al... |

336 | Constraint query languages
- Kanellakis, Kuper, et al.
- 1995
(Show Context)
Citation Context ...ic programming, but with the additional requirements of data efficient, set-at-a-time, and bottomup evaluation. In this overview of constraint query languages (CQLs) we first present the framework of =-=[41]. The prin-=-cipal idea is that: "the k-tuple (or record) data type can be generalized by a conjunction of quantifier-free constraints over k variables". The generalization must preserve various language... |

331 |
A catalog of complexity classes
- Johnson
- 1990
(Show Context)
Citation Context ...ize and letting the database grow, one can prove that the evaluation can be performed in PTIME or in NC or in LOGSPACE, depending on the constraints considered (for the various complexity classes see =-=[38]-=-). 1.4 Languages, efficiency, efficiency, : : : In the remainder of this paper we explore CQLs with an emphasis on quantifying language efficiency. In Section 2, we present an algebra for dense order ... |

324 |
A relational model for large shared data banks
- Codd
- 1970
(Show Context)
Citation Context ...ring the last decade. The declarative style of database query languages is an important aspect of database systems, that has been at the core of the relational data model since Codd's pioneering work =-=[20]-=-. Indeed, having such a language for ad-hoc database querying is a requirement in today's commercial relational technology. Querying in Codd's relational calculus is a form of limited (but very succes... |

289 |
An introduction to Prolog III
- COLMERAUER
- 1990
(Show Context)
Citation Context ....g., Sutherland's SKETCHPAD [67]. The theme has been investigated since the 1970's, e.g., in artificial intelligence [31, 54, 55, 66], in graphical-interfaces [10], and in logic programming languages =-=[37, 22, 27]-=-. The relevant literature and contributions are too large to attempt a survey. Instead we will limit our exposition to recent applications in databases. ? Research was supported by ONR grant N00014-91... |

271 | Relational queries computable in polynomial time
- Immerman
- 1986
(Show Context)
Citation Context ... the database size is much larger than the query program size. It seems reasonable to limit computations to efficient ones, i.e., PTIME manipulations of the data. There are characterizations of PTIME =-=[36, 73] using Datalog : on -=-finite, ordered structures. So in terms of expressibility , Datalog : would suffice. However, various other CQLs allow for more "natural" and "flexible" expression of queries. 3.1 ... |

270 |
Principle of Database Systems
- Ullman
- 1982
(Show Context)
Citation Context ...15]. Example 1. Let us illustrate database querying and introduce some of its notation. The meaning and use is (or rather should be) intuitively obvious. For formal definitions we refer the reader to =-=[40, 69]-=-. To see that constraints should be part of any database query language consider an example from [41]. This is a query program with Expenses, Savings and Income input relations, Balanced output relati... |

245 |
Synthesizing Constraint Expressions
- Freuder
- 1978
(Show Context)
Citation Context ...cations. Pioneering work in constraint programming goes back to the early 1960's, e.g., Sutherland's SKETCHPAD [67]. The theme has been investigated since the 1970's, e.g., in artificial intelligence =-=[31, 54, 55, 66]-=-, in graphical-interfaces [10], and in logic programming languages [37, 22, 27]. The relevant literature and contributions are too large to attempt a survey. Instead we will limit our exposition to re... |

244 | Structure and complexity of relational queries
- Chandra, Harel
- 1982
(Show Context)
Citation Context ...les, where k depends on the database schema and not the instance, is the correct generalization of the k-tuple or record or ground fact. The technical tools for this integration were: data complexity =-=[17, 73]-=- from database theory, and quantifier elimination methods from mathematical logic [28, 29, 68, 23, 8, 48, 60]. More specifically, finite relations are generalized to finitely representable relations a... |

195 |
The progamming language aspects of ThingLab, a constraint-oriented simulation laboratory
- Borning
- 1986
(Show Context)
Citation Context ...gramming goes back to the early 1960's, e.g., Sutherland's SKETCHPAD [67]. The theme has been investigated since the 1970's, e.g., in artificial intelligence [31, 54, 55, 66], in graphical-interfaces =-=[10]-=-, and in logic programming languages [37, 22, 27]. The relevant literature and contributions are too large to attempt a survey. Instead we will limit our exposition to recent applications in databases... |

190 |
Concurrent Constraint Programming Languages
- Saraswat
- 1989
(Show Context)
Citation Context ...gramming paradigms are currently attracting a great deal of attention in languages for operations research applications [72] and have also impacted the field of concurrent programming language design =-=[64]-=-. The use of constraints for operations research and for concurrency is sometimes semantically different from their use here. For example: Constraints can be used to represent the many possible states... |

176 |
Priority Search Trees
- McCreight
- 1985
(Show Context)
Citation Context ...This is a well-known problem with many elegant solutions from computational geometry [57]. It is a special case of 2-dimensional searching in relational databases, called 1.5-dimensional searching in =-=[53]-=-. For example, the priority search trees of [53] are a linear space data structure with logarithmic-time update and search algorithms for in-core processing. Grid-files, R-trees, quad-trees etc, have ... |

174 |
On the computational complexity and geometry of the first-order theory of the reals
- Renegar
- 1992
(Show Context)
Citation Context ...ation of the k-tuple or record or ground fact. The technical tools for this integration were: data complexity [17, 73] from database theory, and quantifier elimination methods from mathematical logic =-=[28, 29, 68, 23, 8, 48, 60]-=-. More specifically, finite relations are generalized to finitely representable relations and appropriate algebras for their data manipulation can be developed in this framework. In many cases, the al... |

152 |
Datalog extensions for database queries and updates
- Abiteboul, Vianu
- 1991
(Show Context)
Citation Context ... 23, 8, 48, 60]; Relational calculus [20] + the theory of real (or Presburger) addition [29, 30, 9, 15]; Relational calculus [20] + the theory of discrete order with constants. Inflationary Datalog : =-=[3, 32, 47]-=- + the theory of dense order with constants[28]; Inflationary Datalog : + the theory of equality on an infinite domain with constants. (4) The semantics of a CQL is based on that of the decidable logi... |

142 |
Equivalence of relational algebra and relational calculus query languages having aggregate functions
- Klug
- 1982
(Show Context)
Citation Context ...elations represented. There are however some subtle issues that should be researched further. Aggregates: The first important extension involves aggregate operations (e.g., maximum, average etc), see =-=[45]-=-. Introducing aggregates in a CQL is identical with the relational data model if an attribute ranges over a finite set. Many aggregate primitives have low data complexity [5]. Introducing aggregates i... |

137 |
On conjunctive queries containing inequalities
- Klug
- 1988
(Show Context)
Citation Context ...ork of [41] provided a unified view of some previous database research: for example, on the power of constraints for the implicit specification of temporal data [19], for extending relational algebra =-=[33, 46]-=-, for magic set evaluation [58], and for logic program analysis [13]. CQLs also extend the approach to safe queries of [4, 35, 44, 58]. The example CQLs of [41] are applicable to spatial databases, wh... |

124 | editors. Constraint Databases
- Kuper, Libkin, et al.
- 2000
(Show Context)
Citation Context ...itives have low data complexity [5]. Introducing aggregates in a CQL for attributes ranging over an infinite set is harder, since it typically involves integration, and is a topic of current research =-=[50]-=-. Complex Objects: The second extension involves complex objects. As described in [1, 2] complex objects are built using tuple and finite-set data type constructors. Generalized tuples are tuple const... |

122 | On the power of languages for the manipulation of complex objects
- Abiteboul, Been
- 1988
(Show Context)
Citation Context ...nging over an infinite set is harder, since it typically involves integration, and is a topic of current research [50]. Complex Objects: The second extension involves complex objects. As described in =-=[1, 2]-=- complex objects are built using tuple and finite-set data type constructors. Generalized tuples are tuple constructors, but they also have some of the properties of finite-set constructors. This subt... |

118 |
The complexity of elementary algebra and geometry
- Ben-Or, Kozen, et al.
- 1986
(Show Context)
Citation Context |

117 | Magic templates: a spellbinding approach to logic programs
- Ramakrishnan
- 1991
(Show Context)
Citation Context ... of some previous database research: for example, on the power of constraints for the implicit specification of temporal data [19], for extending relational algebra [33, 46], for magic set evaluation =-=[58]-=-, and for logic program analysis [13]. CQLs also extend the approach to safe queries of [4, 35, 44, 58]. The example CQLs of [41] are applicable to spatial databases, where dense order is present. Tem... |

114 | Indexing for data models with constraints and classes
- Kanellakis, Ramaswamy, et al.
- 1993
(Show Context)
Citation Context ...agement and 2-dimensional range searching 4.3 Optimal Static Indexing for Constraints The first I/O optimal solution for the problem of static interval management in secondary memory was published in =-=[43]-=-. Optimal in-core dynamic interval management is one of the basic tools of computational geometry. However, I/O optimal solutions are non-trivial, even for the static case. Let us describe the relatio... |

108 |
Elements of relational database theory
- Kanellakis
- 1989
(Show Context)
Citation Context ...15]. Example 1. Let us illustrate database querying and introduce some of its notation. The meaning and use is (or rather should be) intuitively obvious. For formal definitions we refer the reader to =-=[40, 69]-=-. To see that constraints should be part of any database query language consider an example from [41]. This is a query program with Expenses, Savings and Income input relations, Balanced output relati... |

93 | Constraint Logic Programming Languages - COHEN - 1990 |

80 |
Fixed-point extensions of first-order logic
- Gurevich, Shelah
- 1986
(Show Context)
Citation Context ... 23, 8, 48, 60]; Relational calculus [20] + the theory of real (or Presburger) addition [29, 30, 9, 15]; Relational calculus [20] + the theory of discrete order with constants. Inflationary Datalog : =-=[3, 32, 47]-=- + the theory of dense order with constants[28]; Inflationary Datalog : + the theory of equality on an infinite domain with constants. (4) The semantics of a CQL is based on that of the decidable logi... |

74 |
Why not negation by fixpoint
- Kolaitis, Papadimitriou
- 1988
(Show Context)
Citation Context ... 23, 8, 48, 60]; Relational calculus [20] + the theory of real (or Presburger) addition [29, 30, 9, 15]; Relational calculus [20] + the theory of discrete order with constants. Inflationary Datalog : =-=[3, 32, 47]-=- + the theory of dense order with constants[28]; Inflationary Datalog : + the theory of equality on an infinite domain with constants. (4) The semantics of a CQL is based on that of the decidable logi... |

69 |
The Definition and Implementation of a Computer Programming Language Based on Constraints
- Steele
- 1980
(Show Context)
Citation Context |

64 | P.: Handling infinite temporal data
- Kabanza, Stevenne, et al.
- 1995
(Show Context)
Citation Context ... CQLs of [41] are applicable to spatial databases, where dense order is present. Temporal databases require the development of analogous frameworks for the theory of discrete order with constants see =-=[39]-=-. Complete vs Partial Information: The key concept in CQL, illustrated in the next subsection is that constraints describe point-sets, such that all their points are in the database. With the appropri... |

52 | Path caching: A technique for optimal external searching
- RAMASWAMY, SUBRAMANIAN
- 1994
(Show Context)
Citation Context ...B N )=B) amortized I/O time; it is fairly involved and does not allow data points to be deleted. Space-time tradeoffs for this and other related 2-dimensional range searching problems are examined in =-=[59]-=-. In this paper it is shown that many elegant data structures like the priority search tree, segment tree and the interval tree---all of which have been used for interval management in-core ---can be ... |

49 | Pushing Constraint Selections
- Srivastava, Ramakrishnan
- 1992
(Show Context)
Citation Context ... selection propagation, join ordering and other algebraic transformations, magic sets etc) combine with CQLs? This would involve extending [58]. For some recent research in this direction we refer to =-=[34, 52, 56, 65, 12]-=-. Constraint use for database logic program analysis is also relevant here, e.g., [13, 14, 70, 71]. (3) We have addressed the spatial applications of CQLs. Constraints offer useful approaches to tempo... |

49 |
der Meyden. The Complexity of Querying Indefinite Data about Linearly Ordered Domains
- van
- 1997
(Show Context)
Citation Context ...h CQLs? This would involve extending [58]. For some recent research in this direction we refer to [34, 52, 56, 65, 12]. Constraint use for database logic program analysis is also relevant here, e.g., =-=[13, 14, 70, 71]-=-. (3) We have addressed the spatial applications of CQLs. Constraints offer useful approaches to temporal databases as well. For recent developments in temporal databases we refer to [6, 18, 61]. The ... |

47 |
A closed form for datalog queries with integer order
- Revesz
- 1990
(Show Context)
Citation Context ...functions. One implication is that there are qualitatively multiple ways of encoding computations in CLP (e.g., [26]. Sufficient conditions that allow closure under recursion are an interesting topic =-=[61]-=-. Note that, non-closure is very easy to show: Letsbe the query program that consists of the rules S(x; y) :--- R(x; y) and S(x; y) :--- R(x; z); S(z; y) (i.e., S is the transitive closure of R). If t... |

45 |
A decision procedure for the first order theory of real addition with order
- Ferrante, Rackoff
- 1975
(Show Context)
Citation Context |

41 | P.: On the representation of infinite temporal data and queries
- Baudinet, Niezette, et al.
- 1991
(Show Context)
Citation Context ... [13, 14, 70, 71]. (3) We have addressed the spatial applications of CQLs. Constraints offer useful approaches to temporal databases as well. For recent developments in temporal databases we refer to =-=[6, 18, 61]-=-. The subject of temporal constraints has also been addressed extensively in the artificial intelligence literature (which we unfortunately do not have the space or expertise to survey here). For some... |

36 |
Deriving constraints among argument sizes in logic programs
- Gelder
- 1991
(Show Context)
Citation Context ...h CQLs? This would involve extending [58]. For some recent research in this direction we refer to [34, 52, 56, 65, 12]. Constraint use for database logic program analysis is also relevant here, e.g., =-=[13, 14, 70, 71]-=-. (3) We have addressed the spatial applications of CQLs. Constraints offer useful approaches to temporal databases as well. For recent developments in temporal databases we refer to [6, 18, 61]. The ... |

35 |
Organization of large ordered indexes
- Bayer, McCreight
- 1972
(Show Context)
Citation Context ...or constant) use of secondary storage is an additional requirement, beyond low data complexity, whose satisfaction greatly contributes to relational technology. B-trees and their variants B + -trees, =-=[7, 24]-=-, are examples of important data structures for implementing relational databases. In particular, let each secondary memory access transmit B units of data, let r be a relation with N tuples, and let ... |

35 |
Constraint programming languages
- Leler
- 1988
(Show Context)
Citation Context ...t of Constraint Logic Programming (CLP) as a general-purpose framework for computations, e.g., in CLP(!) [37], in Prolog III [22], and in CHIP [27, 72]. For more information on CLP see the surveys in =-=[21, 51]-=-, the proceedings of logic programming conferences and of recent workshops on the subject, e.g., [42]. In particular, the advances in CLP are very relevant for database applications (which brings us t... |

32 |
Inference of monotonicity constraints in Datalog programs
- Brodsky, Sagiv
- 1989
(Show Context)
Citation Context ...for example, on the power of constraints for the implicit specification of temporal data [19], for extending relational algebra [33, 46], for magic set evaluation [58], and for logic program analysis =-=[13]-=-. CQLs also extend the approach to safe queries of [4, 35, 44, 58]. The example CQLs of [41] are applicable to spatial databases, where dense order is present. Temporal databases require the developme... |

29 |
The Boolean formula value problem is
- Buss
- 1987
(Show Context)
Citation Context ...ry Datalog : with dense linear order expresses exactly PTIME (this is the = in the table above). It is possible to strengthen the LOGSPACE bounds to uniform AC 0 , using random-access Alternating TMs =-=[5, 16]-=- with a fixed number of alternations and a logarithmic time bound. The same applies to relational calculus (Inflationary Datalog : ) with equality constraints over an infinite domain. Let us now look ... |

25 |
Relational specifications of infinite query answers
- Chomicki, Imielinski
- 1993
(Show Context)
Citation Context ...aintenance algorithms. 2 The CQL framework of [41] provided a unified view of some previous database research: for example, on the power of constraints for the implicit specification of temporal data =-=[19]-=-, for extending relational algebra [33, 46], for magic set evaluation [58], and for logic program analysis [13]. CQLs also extend the approach to safe queries of [4, 35, 44, 58]. The example CQLs of [... |

21 |
Reduction of a relational model with infinite domains to the finite-domain case
- Ailamazyan, Gilula, et al.
- 1986
(Show Context)
Citation Context ...it specification of temporal data [19], for extending relational algebra [33, 46], for magic set evaluation [58], and for logic program analysis [13]. CQLs also extend the approach to safe queries of =-=[4, 35, 44, 58]-=-. The example CQLs of [41] are applicable to spatial databases, where dense order is present. Temporal databases require the development of analogous frameworks for the theory of discrete order with c... |

21 | Domain independence and the relational calculus
- Hull, Su
- 1994
(Show Context)
Citation Context ...it specification of temporal data [19], for extending relational algebra [33, 46], for magic set evaluation [58], and for logic program analysis [13]. CQLs also extend the approach to safe queries of =-=[4, 35, 44, 58]-=-. The example CQLs of [41] are applicable to spatial databases, where dense order is present. Temporal databases require the development of analogous frameworks for the theory of discrete order with c... |

18 |
Database Theory Column: Query Languages for Complex Object Databases
- Abiteboul, Kanellakis
- 1990
(Show Context)
Citation Context ...nging over an infinite set is harder, since it typically involves integration, and is a topic of current research [50]. Complex Objects: The second extension involves complex objects. As described in =-=[1, 2]-=- complex objects are built using tuple and finite-set data type constructors. Generalized tuples are tuple constructors, but they also have some of the properties of finite-set constructors. This subt... |