A query language for list-based complex objects

We present a language for querying list-based complex objects. The language is shown to express precisely the polynomial-time generic list-object functions. The iteration mechanism of the language is based on a new approach wherein, in addition to the list over which the iteration is performed, a second list is used to control the number of iteration steps. During the iteration, the intermediate results can be moved to the output list as well as reinserted into the list being iterated over. A simple syntactic constraint allows the growth rate of the intermediate results to be tightly controlled which, in turn, restricts the expressiveness of the language to PTIME.

[1]  Stephen A. Cook,et al.  A new recursion-theoretic characterization of the polytime functions (extended abstract) , 1992, STOC '92.

[2]  Marc Gyssens,et al.  The powerset algebra as a result of adding programming constructs to the nested relational algebra , 1988, SIGMOD '88.

[3]  Dan Suciu,et al.  Fixpoints and Bounded Fixpoints for Complex Objects , 1993 .

[4]  Daniel Leivant,et al.  Lambda Calculus Characterizations of Poly-Time , 1993, Fundam. Informaticae.

[5]  Neil Immerman,et al.  Relational Queries Computable in Polynomial Time , 1986, Inf. Control..

[6]  Serge Abiteboul,et al.  Generic Computation and its complexity , 1991, STOC '91.

[7]  Jianwen Su,et al.  On the expressive power of database queries with intermediate types , 1988, PODS '88.

[8]  Victor Vianu,et al.  Procedural Languages for Database Queries and Updates , 1990, J. Comput. Syst. Sci..

[9]  David Harel,et al.  Structure and complexity of relational queries , 1980, 21st Annual Symposium on Foundations of Computer Science (sfcs 1980).

[10]  Neil Immerman,et al.  The expressiveness of a family of finite set languages , 1991, PODS '91.

[11]  Harry G. Mairson,et al.  Database Query Languages Embedded in the Typed Lambda Calculus , 1996, Inf. Comput..

[12]  Gabriel M. Kuper,et al.  On the Complexity of Queries in the Logical Data Model , 1993, Theor. Comput. Sci..

[13]  Tova Milo,et al.  Towards tractable algebras for bags , 1993, PODS '93.

[14]  Ashok K. Chandra Programming primitives for database languages , 1981, POPL '81.

[15]  Catriel Beeri,et al.  On the power of languages for manipulation of complex objects , 1987, VLDB 1987.

[16]  Philip W. Trinder,et al.  Comprehensions, a Query Notation for DBPLs , 1992, DBPL.

[17]  Moshe Y. Vardi The complexity of relational query languages (Extended Abstract) , 1982, STOC '82.

[18]  David Harel,et al.  Computable Queries for Relational Data Bases , 1980, J. Comput. Syst. Sci..

[19]  Dan Suciu Bounded Fixpoints for Complex Objects , 1993 .

[20]  Peter Buneman,et al.  Structural Recursion as a Query Language , 1992, DBPL.

[21]  David Maier,et al.  A call to order , 1993, PODS '93.

[22]  Jianwen Su,et al.  On the Expressive Power of Database Queries with Intermediate Types , 1991, J. Comput. Syst. Sci..

[23]  Patrick Valduriez,et al.  SVP: A Model Capturing Sets, Lists, Streams, and Parallelism , 1992, Very Large Data Bases Conference.

[24]  Jianwen Su,et al.  Algebraic and Calculus Query Languages for Recursively Typed Complex Objects , 1993, J. Comput. Syst. Sci..

[25]  Limsoon Wong,et al.  Naturally Embedded Query Languages , 1992, ICDT.

[26]  Dirk Van Gucht,et al.  Concepts for Modeling and Querying List-Structured Data , 1994, Inf. Process. Manag..

[27]  Jianwen Su,et al.  Untyped sets, invention, and computable queries , 1989, PODS '89.

[28]  Seymour Ginsburg,et al.  Pattern matching by Rs-operations: towards a unified approach to querying sequenced data , 1992, PODS '92.

[29]  Limsoon Wong,et al.  Some Properties of Query Languages for Bags , 1993, DBPL.