Well-Defined NRC Queries Can Be Typed

(Extended Abstract)
  • Jan Van den Bussche
  • Stijn Vansummeren
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8000)


We study the expressive power of the static type system of the Nested Relational Calculus \(\mathcal{NRC}\) and show that on so-called homogeneous input and output types, the \(\mathcal{NRC}\) type system is expressively complete: every untyped but homogeneously well-defined \(\mathcal{NRC}\) expression can be equivalently expressed by a well-typed expression. The \(\mathcal{NRC}\) static type system hence does not limit the expressive power of the query writer.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Barendregt, H.: The Lambda Calculus: its Syntax and Semantics. North-Holland (1984)Google Scholar
  2. 2.
    Buneman, P., Davidson, S., Watters, A.: A semantics for complex objects and approximate answers. J. Comput. Syst. Sci. 43(1), 170–218 (1991)MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    Buneman, P., Frankel, R., Nikhil, R.: An implementation technique for database query languages. ACM Trans. Database Syst. 7(2), 164–186 (1982)CrossRefGoogle Scholar
  4. 4.
    Buneman, P., Naqvi, S.A., Tannen, V., Wong, L.: Principles of programming with complex objects and collection types. Theor. Comput. Sci. 149(1), 3–48 (1995)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Buneman, P., Pierce, B.: Union types for semistructured data. In: Connor, R., Mendelzon, A. (eds.) DBPL 1999. LNCS, vol. 1949, pp. 184–207. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  6. 6.
    Kahrs, S.: Limits of ML-definability. In: Kuchen, H., Swierstra, S.D. (eds.) PLILP 1996. LNCS, vol. 1140, pp. 17–31. Springer, Heidelberg (1996)CrossRefGoogle Scholar
  7. 7.
    Kahrs, S.: Well-going programs can be typed. In: Hofmann, M.O. (ed.) TLCA 2003. LNCS, vol. 2701, pp. 167–179. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  8. 8.
    Ohori, A., Buneman, P.: Polymorphism and type inference in database programming. ACM Trans. Database Syst. 21(1), 30–76 (1996)CrossRefGoogle Scholar
  9. 9.
    Ohori, A., Buneman, P., Breazu-Tannen, V.: Database programming in Machiavelli—a polymorphic language with static type inference. In: Clifford, J., Lindsay, B., Maier, D. (eds.) Proceedings of the 1989 ACM SIGMOD International Conference on the Management of Data. SIGMOD Record, vol. 18(2), pp. 46–57. ACM Press (1989)Google Scholar
  10. 10.
    Schwichtenberg, H.: Definierbare funktionen in λ-kalkül mit typen. Archiv für Mathematische Logik und Grundlagenforschung 174, 113–114 (1976)Google Scholar
  11. 11.
    Van den Bussche, J., Van Gucht, D., Vansummeren, S.: A crash course on database queries. In: Proceedings of the Twenty-Sixth ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems (PODS), pp. 143–154. ACM (2007)Google Scholar
  12. 12.
    Van den Bussche, J., Van Gucht, D., Vansummeren, S.: Well-definedness and semantic type-checking for the nested relational calculus. Theor. Comput. Sci. 371(3), 183–199 (2007)CrossRefzbMATHGoogle Scholar
  13. 13.
    Wong, L.: Querying Nested Collections. PhD thesis, University of Pennsylvania (1994)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Jan Van den Bussche
    • 1
    • 2
  • Stijn Vansummeren
    • 3
  1. 1.Hasselt UniversityBelgium
  2. 2.Transnational University of LimburgBelgium
  3. 3.Université Libre de BruxellesBelgium

Personalised recommendations