A Type System for DNAQL

  • Robert Brijder
  • Joris J. M. Gillis
  • Jan Van den Bussche
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7433)


Recently we have introduced a formal graph-based data model for DNA complexes geared towards database applications. The model is accompanied by the programming language DNAQL for querying databases in DNA. Due to natural restrictions on the implementability and termination of operations on DNA, programs in DNAQL are not always well defined on all possible inputs. Indeed, a problem left open by our previous work has been to devise a type system for DNAQL, with a soundness property to the effect that well-typed programs are well defined on all inputs adhering to given input types. The contribution of the present paper is to propose such a type system and to establish soundness. Moreover, we show that the type system is flexible enough so that any database manipulation expressible in the relational algebra is also expressible in DNAQL in a well-typed manner.


Type System Relational Algebra Weak Type Output Type Input Type 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abiteboul, S., Hull, R., Vianu, V.: Foundations of Databases. Addison-Wesley (1995)Google Scholar
  2. 2.
    Adleman, L.: Molecular computation of solutions to combinatorial problems. Science 226, 1021–1024 (1994)CrossRefGoogle Scholar
  3. 3.
    Amos, M.: Theoretical and Experimental DNA Computation. Springer (2005)Google Scholar
  4. 4.
    Arita, M., Hagiya, M., Suyama, A.: Joining and rotating data with molecules. In: ICEC 1997 (1997)Google Scholar
  5. 5.
    Brijder, R., Gillis, J.J.M., Van den Bussche, J.: Graph-Theoretic Formalization of Hybridization in DNA Sticker Complexes. In: Cardelli, L., Shih, W. (eds.) DNA 17 2011. LNCS, vol. 6937, pp. 49–63. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  6. 6.
    Van den Bussche, J., Van Gucht, D., Vansummeren, S.: A crash course in database queries. In: PODS 2007 (2007)Google Scholar
  7. 7.
    Chen, J., Deaton, R., Wang, Y.Z.: A DNA-based memory with in vitro learning and associative recall. Natural Computing 4(2), 83–101 (2005)MathSciNetCrossRefGoogle Scholar
  8. 8.
    Condon, A., Corn, R., Marathe, A.: On combinatorial DNA word design. Journal of Computational Biology 8(3), 201–220 (2001)CrossRefGoogle Scholar
  9. 9.
    Date, C.: An Introduction to Database Systems. Addison-Wesley (2004)Google Scholar
  10. 10.
    Diatchenko, L., Lau, Y., et al.: Suppression subtractive hybridization: a method for generating differentially regulated or tissue-specific cDNA probes and libraries. PNAS 93(12), 6025–6030 (1996)CrossRefGoogle Scholar
  11. 11.
    Dirks, R., Pierce, N.: Triggered amplification by hybridization chain reaction. PNAS 101(43), 15275–15278 (2004)CrossRefGoogle Scholar
  12. 12.
    Garcia-Molina, H., Ullman, J., Widom, J.: Database Systems: The Complete Book. Prentice Hall (2009)Google Scholar
  13. 13.
    Gillis, J.J.M., Van den Bussche, J.: A Formal Model for Databases in DNA. In: Horimoto, K., Nakatsui, M., Popov, N. (eds.) ANB 2010. LNCS, vol. 6479, pp. 18–37. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  14. 14.
    Gunter, C., Mitchell, J. (eds.): Theoretical Aspects of Object-Oriented Programming. MIT Press (1994)Google Scholar
  15. 15.
    Jonoska, N., McColm, G., Staninska, A.: On stoichiometry for the assembly of flexible tile DNA complexes. Natural Computing 10(3), 1121–1141 (2011)MathSciNetCrossRefGoogle Scholar
  16. 16.
    Paun, G., Rozenberg, G., Salomaa, A.: DNA Computing. Springer (1998)Google Scholar
  17. 17.
    Pierce, B.: Types and Programming Languages. MIT Press (2002)Google Scholar
  18. 18.
    Qian, L., Soloveichik, D., Winfree, E.: Efficient Turing-Universal Computation with DNA Polymers. In: Sakakibara, Y., Mi, Y. (eds.) DNA 16 2010. LNCS, vol. 6518, pp. 123–140. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  19. 19.
    Reif, J.: Parallel biomolecular computation: models and simulations. Algorithmica 25(2-3), 142–175 (1999)MathSciNetzbMATHCrossRefGoogle Scholar
  20. 20.
    Reif, J.H., LaBean, T.H., Pirrung, M., Rana, V.S., Guo, B., Kingsford, C., Wickham, G.S.: Experimental Construction of Very Large Scale DNA Databases with Associative Search Capability. In: Jonoska, N., Seeman, N.C. (eds.) DNA 7. LNCS, vol. 2340, pp. 231–247. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  21. 21.
    Rozenberg, G., Spaink, H.: DNA computing by blocking. TCS 292, 653–665 (2003)MathSciNetzbMATHCrossRefGoogle Scholar
  22. 22.
    Sager, J., Stefanovic, D.: Designing Nucleotide Sequences for Computation: A Survey of Constraints. In: Carbone, A., Pierce, N.A. (eds.) DNA 11. LNCS, vol. 3892, pp. 275–289. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  23. 23.
    Shortreed, M., et al.: A thermodynamic approach to designing structure-free combinatorial DNA word sets. Nucleic Acids Research 33(15), 4965–4977 (2005)CrossRefGoogle Scholar
  24. 24.
    Soloveichik, D., Seelig, G., Winfree, E.: DNA as a universal substrate for chemical kinetics. PNAS online (2010)Google Scholar
  25. 25.
    Yamamoto, M., Kita, Y., Kashiwamura, S., Kameda, A., Ohuchi, A.: Development of DNA Relational Database and Data Manipulation Experiments. In: Mao, C., Yokomori, T. (eds.) DNA12. LNCS, vol. 4287, pp. 418–427. Springer, Heidelberg (2006)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Robert Brijder
    • 1
  • Joris J. M. Gillis
    • 1
  • Jan Van den Bussche
    • 1
  1. 1.Hasselt University and transnational University of LimburgBelgium

Personalised recommendations