Results 1  10
of
16
Principles of Programming with Complex Objects and Collection Types
 Theoretical Computer Science
, 1995
"... We present a new principle for the development of database query languages that the primitive operations should be organized around types. Viewing a relational database as consisting of sets of records, this principle dictates that we should investigate separately operations for records and sets. Th ..."
Abstract

Cited by 127 (28 self)
 Add to MetaCart
We present a new principle for the development of database query languages that the primitive operations should be organized around types. Viewing a relational database as consisting of sets of records, this principle dictates that we should investigate separately operations for records and sets. There are two immediate advantages of this approach, which is partly inspired by basic ideas from category theory. First, it provides a language for structures in which record and set types may be freely combined: nested relations or complex objects. Second, the fundamental operations for sets are closely related to those for other "collection types" such as bags or lists, and this suggests how database languages may be uniformly extended to these new types. The most general operation on sets, that of structural recursion, is one in which not all programs are welldefined. In looking for limited forms of this operation that always give rise to welldefined operations, we find a number of close ...
On the Complexity of Nonrecursive XQuery and Functional Query Languages on Complex Values
 In Proc. PODS’05
"... This article studies the complexity of evaluating functional query languages for complex values such as monad algebra and the recursionfree fragment of XQuery. We show that monad algebra with equality restricted to atomic values is complete for the class TA[2O(n) , O(n)] of problems solvable in lin ..."
Abstract

Cited by 40 (1 self)
 Add to MetaCart
This article studies the complexity of evaluating functional query languages for complex values such as monad algebra and the recursionfree fragment of XQuery. We show that monad algebra with equality restricted to atomic values is complete for the class TA[2O(n) , O(n)] of problems solvable in linear exponential time with a linear number of alternations. The monotone fragment of monad algebra with atomic value equality but without negation is complete for nondeterministic exponential time. For monad algebra with deep equality, we establish TA[2O(n) , O(n)] lower and exponentialspace upper bounds. We also study a fragment of XQuery, Core XQuery, that seems to incorporate all the features of a query language on complex values that are traditionally deemed essential. A close connection between monad algebra on lists and Core XQuery (with “child ” as the only axis) is exhibited, and it is shown that these languages are expressively equivalent up to representation issues. We show that Core XQuery is just as hard as monad algebra w.r.t. query and combined complexity, and that it is in TC0 if the query is assumed fixed. As Core XQuery is NEXPTIMEhard, it is commonly believed that any algorithm for evaluating Core XQuery has to require exponential amounts of working memory and doubly exponential time in the worst case. We present a property of queries – the lack of a certain form of composition – that virtually all realworld XQueries have and that allows for query evaluation in singly exponential time and polynomial space. Still, we are able to show for an important special case – Core XQuery with equality testing restricted to atomic values – that the compositionfree language is just as expressive as the language with composition. Thus, under widelyheld complexitytheoretic assumptions, the compositionfree language is an exponentially less succinct version of the language with composition.
On Two Forms of Structural Recursion
 in "LNCS 893: Proceedings of 5th International Conference on Database Theory," 111124
, 1995
"... . We investigate and compare two forms of recursion on sets for querying nested collections. The first one is called sri and it corresponds to sequential processing of data. The second one is called sru and it corresponds to dataparallel processing. A uniform firstorder translation from sru into s ..."
Abstract

Cited by 19 (13 self)
 Add to MetaCart
. We investigate and compare two forms of recursion on sets for querying nested collections. The first one is called sri and it corresponds to sequential processing of data. The second one is called sru and it corresponds to dataparallel processing. A uniform firstorder translation from sru into sri was known from previous work. The converse translation is by necessity more difficult and we have obtained three main results concerning it. First, we exhibit a uniform translation of sri queries into sru queries over the nested relational algebra. We observe that this translation maps PTIME algorithms into exponentialspace queries. The second result proves that any uniform translation of sri queries into sru queries over the nested relational algebra must map some PTIME queries into exponentialspace ones. In fact, in the presence of certain external functions, we provide a PTIME sri query for which any equivalent sru query requires exponential space. Thus, as a mechanism for implemen...
Efficient Compilation of HighLevel Data Parallel Algorithms
 In Proceedings of the ACM Symposium on Parallel Algorithms and Architectures
, 1994
"... We present a highlevel parallel calculus for nested sequences, NSC, offered as a possible theoretical "core" of an entire class of collectionoriented parallel languages. NSC is based on whileloops as opposed to general recursion. A formal, machine independent definition of the parallel time comp ..."
Abstract

Cited by 15 (2 self)
 Add to MetaCart
We present a highlevel parallel calculus for nested sequences, NSC, offered as a possible theoretical "core" of an entire class of collectionoriented parallel languages. NSC is based on whileloops as opposed to general recursion. A formal, machine independent definition of the parallel time complexity and the work complexity of programs in NSC is given. Our main results are: (1) We give a translation method for a particular form of recursion, called maprecursion, into NSC, that preserves the time complexity and adds an arbitrarily small overhead to the work complexity, and (2) We give a compilation method for NSC into a very simple vector parallel machine, which preserves the time complexity and again adds an arbitrarily small overhead to the work complexity. 1 Introduction There are many advantages to programming in a highlevel language. However, while sequential algorithms are most of the time designed and evaluated in reasonably highlevel terms, the situation with parallel ...
DomainIndependent Queries on Databases with External Functions
 in "LNCS 893: Proceedings of 5th International Conference on Database Theory," 177190
, 1995
"... We investigate queries in the presence of external functions with arbitrary inputs and outputs (atomic values, sets, nested sets etc). We propose a new notion of domain independence for queries with external functions which, in contrast to previous work, can also be applied to query languages with f ..."
Abstract

Cited by 13 (2 self)
 Add to MetaCart
We investigate queries in the presence of external functions with arbitrary inputs and outputs (atomic values, sets, nested sets etc). We propose a new notion of domain independence for queries with external functions which, in contrast to previous work, can also be applied to query languages with fixpoints or other kinds of iterators. Next, we define two new notions of computable queries with external functions, and prove that they are equivalent, under the assumption that the external functions are total. Thus, our definition of computable queries with external functions is robust. Finally, based on the equivalence result, we give examples of complete query languages with external functions. A byproduct of the equivalence result is the fact that Relational Machines are complete for complex objects: it was known that they are not complete over flat relations. 1 Introduction Database functionalities are important both for practical and for theoretical purposes. E.g. the system O 2 of ...
Any Algorithm in the Complex Object Algebra with Powerset Needs Exponential Space to Compute Transitive Closure
 in "Proceedings of 13th ACM Symposium on Principles of Database Systems," 201209
, 1994
"... The Abiteboul and Beeri algebra for complex objects can express a query whose meaning is transitive closure, but the algorithm naturally associated to this query needs exponential space. We show that any other query in the algebra which expresses transitive closure needs exponential space. This prov ..."
Abstract

Cited by 12 (0 self)
 Add to MetaCart
The Abiteboul and Beeri algebra for complex objects can express a query whose meaning is transitive closure, but the algorithm naturally associated to this query needs exponential space. We show that any other query in the algebra which expresses transitive closure needs exponential space. This proves that in general the powerset is an intractable operator for implementing fixpoint queries. 1 Introduction Abiteboul and Beeri in [AB88] have shown that powerset can express transitive closure (tc), in a language for complex objects without fixpoints or any other form of iterations. But the obvious way of doing that is by a query whose naturally associated algorithm requires exponential space (and time). We prove here that in order to express tc with powerset, exponential space (and time) is indeed needed. This result is of a different nature than classical inexpressibility results (like transitive closure is not expressible in FO [AU79] or even is not expressible in FO+LFP), because it...
CoPa: a Parallel Programming Language for Collections
 University of Pennsylvania, Institute for
, 1998
"... In this paper we propose a new framework for parallel processing of collections. We define a highlevel language called CoPa for processing nested sets, bags, and sequences (a generalization of arrays and lists). CoPa includes most features found in query languages for objectoriented or objectrela ..."
Abstract

Cited by 8 (1 self)
 Add to MetaCart
In this paper we propose a new framework for parallel processing of collections. We define a highlevel language called CoPa for processing nested sets, bags, and sequences (a generalization of arrays and lists). CoPa includes most features found in query languages for objectoriented or objectrelational databases, and has, in addition, a powerful form of recursion not found in query languages. CoPa has a formal declarative definition of parallel complexity, as part of its specification. We prove the existence of a complexitypreserving compilation for CoPa, i.e. one which offers upperbound guarantees for the parallel complexity of the compiled code. The majority of the compilation process is architectureindependent, using a parallel vector machine model (BVRAM). The BVRAM instructions form a sequencealgebra which is of independent interest, and have been carefully chosen to reconcile two conflicting demands: supporting the complexitypreserving compilation of CoPa's highlevel con...
The Complexity of the Evaluation of Complex Algebra Expressions
 Journal of Computer and System Sciences
, 1997
"... The Abiteboul and Beeri algebra for complex objects can express a query whose meaning is transitive closure, but the algorithm naturally associated to this query needs exponential space. We show that any other query in the algebra which expresses transitive closure needs exponential space, under a " ..."
Abstract

Cited by 5 (1 self)
 Add to MetaCart
The Abiteboul and Beeri algebra for complex objects can express a query whose meaning is transitive closure, but the algorithm naturally associated to this query needs exponential space. We show that any other query in the algebra which expresses transitive closure needs exponential space, under a "call by value" evaluation strategy. This proves that in general the powerset is an intractable operator for implementing fixpoint queries. 1 Introduction Abiteboul and Beeri in [AB88] have shown that powerset can express transitive closure (tc), in a language for complex objects without fixpoints or any other form of iterations. But the obvious way of doing that is by a query whose naturally associated algorithm requires exponential space (and time). We prove here that in order to express tc with powerset, exponential space (and time) is indeed needed, under a "call by value" evaluation strategy. This result is of a different nature than classical inexpressibility results (like transitive c...
Tractable Iteration Mechanisms for Bag Languages
 in F. N. Afrati & P. Kolaitis, eds, `Database Theory  ICDT '97, 6th International Conference, Delphi
, 1997
"... . The goal of this paper is to study tractable iteration mechanisms for bags. The presence of duplicates in bags prevents iteration mechanisms developed in the context of sets to be directly applied to bags without losing tractability. We study two constructs for controlling tractability of iter ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
. The goal of this paper is to study tractable iteration mechanisms for bags. The presence of duplicates in bags prevents iteration mechanisms developed in the context of sets to be directly applied to bags without losing tractability. We study two constructs for controlling tractability of iteration over bags. The deflationary fixpoint construct keeps removing elements from a bag until a fixpoint is reached. The bounded fixpoint construct is an inflationary iteration mechanism that never exceeds some predefined bounding bag. We study these constructs in the context of a standard (nested) bag algebra. We show that the deflationary and bounded inflationary fixpoint constructs are equally expressive and strictly more expressive than their setbased counterparts. We also show that, unlike in the set case, the bag algebra with bounded fixpoint fails to capture all PTIME queries over databases with ordered domains. We then show that adding just one construct, which can be used...
Database Theory Column
"... Most database theory focused on investigating databases containing sets of tuples. In practice databases often implement relations using bags, i.e. sets with duplicates. In this paper we study how database query languages are affected by the use of duplicates. We consider query languages that are ..."
Abstract
 Add to MetaCart
Most database theory focused on investigating databases containing sets of tuples. In practice databases often implement relations using bags, i.e. sets with duplicates. In this paper we study how database query languages are affected by the use of duplicates. We consider query languages that are simple extensions of the (nested) relational algebra, and investigate their resulting expressive power and complexity. 1 Introduction In the standard approach to database modeling, relations are assumed to be sets, and no duplicates are allowed. For real applications, many systems relax this restriction [Fis87, HM81] and support bags in their data model, often to save the cost of duplicate elimination. Efforts have been made for providing a theoretical framework for such systems. Algebras for manipulating bags were developed by extending the relational algebra [Alb91, Klu82, OOM87], and optimization techniques for these algebras were studied [BK90, Mum90, Alb91]. Computational aspects of...