Natural Computing

, Volume 10, Issue 2, pp 805–819 | Cite as

Algorithmic applications of XPCR

  • Giuditta Franco
  • Vincenzo Manca


An emerging trend in DNA computing consists of the algorithmic analysis of new molecular biology technologies, and in general of more effective tools to tackle computational biology problems. An algorithmic understanding of the interaction between DNA molecules becomes the focus of some research which was initially addressed to solve mathematical problems by processing data within biomolecules. In this paper a novel mechanism of DNA recombination is discussed, that turned out to be a good implementation key to develop new procedures for DNA manipulation (Franco et al., DNA extraction by cross pairing PCR, 2005; Franco et al., DNA recombination by XPCR, 2006; Manca and Franco, Math Biosci 211:282–298, 2008). It is called XPCR as it is a variant of the polymerase chain reaction (PCR), which was a revolution in molecular biology as a technique for cyclic amplification of DNA segments. A few DNA algorithms are proposed, that were experimentally proven in different contexts, such as, mutagenesis (Franco, Biomolecular computing—combinatorial algorithms and laboratory experiments, 2006), multiple concatenation, gene driven DNA extraction (Franco et al., DNA extraction by cross pairing PCR, 2005), and generation of DNA libraries (Franco et al., DNA recombination by XPCR, 2006), and some related ongoing work is outlined.


Algorithmic analysis DNA extraction DNA mutagenesis DNA recombination PCR Splicing 



The experimental research reported in this paper was funded by the Italian National Research Project FIRB 2003, RBA01PHZS. The experiments were performed at the laboratories of the Department of General Pathology at University of Verona, and the authors wish to thank Cinzia Giagulli and Carlo Laudanna for their technical support. They are also grateful for very helpful comments and suggestions of anonymous referees. The first author is thankful for the interesting discussions with Susannah Gal and Tony Macula (from SUNY Binghamton University, USA) about experimental and combinatorial analyses of XPCR protocol.


  1. Adleman LM (1994) Molecular computation of solutions to combinatorial problems. Science 266:1021–1024CrossRefGoogle Scholar
  2. Arrighi P (2003) Quantum computation explained to my mother. Bull EATCS 80:134–142MathSciNetMATHGoogle Scholar
  3. Braich RS, Chelyapov N, Johnson C, Rothemund PWK, Adleman L (2002) Solution of a 20-variable 3-SAT problem on a DNA computer. Science 296:499–502CrossRefGoogle Scholar
  4. Chen JH, Seeman NC (1991) Synthesis from DNA of a molecule with the connectivity of a cube. Nature 350:631–633CrossRefGoogle Scholar
  5. Conrad M (1985) On design principles for a molecular computer. Commun ACM 28:464–480CrossRefGoogle Scholar
  6. Ehrenfeucht A, Hoogeboom HJ, Rozenberg G, van Vugt N (2000) Forbidding and enforcing. In: Winfree E et al (eds) DNA based computers V, DIMACS Series AMS, vol 54. pp 195–206Google Scholar
  7. Ehrenfeucht A, Prescott DM, Rozenberg G (2001) Computational aspects of gene (un)scrambling in ciliates. In: Landweber LF et al. (eds) Evolution as computation. Springer, Berlin, pp 216–256Google Scholar
  8. Franco G (2005) A polymerase based algorithm for SAT. In: Coppo M et al (eds) Proceedings ICTCS 2005, LNCS 3701. Springer-Verlag, pp 237–250Google Scholar
  9. Franco G (2006) Biomolecular computing—combinatorial algorithms and laboratory experiments. PhD Thesis, University of Verona, ItalyGoogle Scholar
  10. Franco G, Giagulli C, Laudanna C, Manca V (2005) DNA extraction by cross pairing PCR. In: Ferretti C et al. (eds) Revised selected papers from DNA 10, LNCS 3384. Springer-Verlag, pp 106–114Google Scholar
  11. Franco G, Jonoska N (2005) Forbidding—enforcing conditions in DNA self-assembly. In: Chen J, Jonoska N et al. (eds) Nanotechnology, science and computation, pp 105–118Google Scholar
  12. Franco G, Manca V (2005) An algorithmic analysis of DNA structure. Soft Comput 9(10):761–768MATHCrossRefGoogle Scholar
  13. Franco G, Manca V, Giagulli C, Laudanna C (2006) DNA recombination by XPCR. In: Carbone A et al (eds) Revised Selected Papers from DNA 11, LNCS 3892. Springer-Verlag, pp 55–66Google Scholar
  14. Franco G, Margenstern M (2008) A DNA computing inspired computational model. TCS 404:88–96MathSciNetMATHCrossRefGoogle Scholar
  15. Gal S, Monteith N, Macula AJ (2008) Successful preparation and analysis of a 5-site 2-variable DNA library. Nat Comput 8(2):333–347MathSciNetCrossRefGoogle Scholar
  16. Goel A, Simmel FC, Sosik P (eds) (2008) In: Preliminary proceedings of the 14th international meeting on DNA computing, Prague, Czech RepublicGoogle Scholar
  17. Gong Z, Zhang H, Gabos S, Li XF (2004) Rapid and efficient polymerase chain reaction-based strategies for one-site and two-site mutagenesis. Anal Biochem 331:404–406CrossRefGoogle Scholar
  18. Head T (1987) Formal language theory and DNA: an analysis of the generative capacity of specific recombinant behaviors. Bull Math Biol 49:737–759MathSciNetMATHGoogle Scholar
  19. Hussini S, Kari L, Konstantinidis S (2002) Coding properties of DNA languages. In: Jonoska N et al (eds) Revised selected papers from DNA 7, LNCS 2340, Springer-Verlag. pp 57–69Google Scholar
  20. Jonoska N, Sa-Ardyen P, Seeman NC (2003) Computation by self-assembly of DNA graphs. J Genet Progr Evolvable Mach 4(2):123–137CrossRefGoogle Scholar
  21. Kari L, Rozenberg G (2008) The many facets of natural computing. Commun ACM 51(10): 72–83CrossRefGoogle Scholar
  22. Lee JY, Lim HW, Yoo S-I, Zhang BT, Park TH (2005) Efficient initial pool generation for weighted graph problems using parallel overlap assembly. In: Ferretti C et al (eds) Revised selected papers from DNA 10, LNCS 3384. Springer-Verlag, pp 215–223Google Scholar
  23. Lipton RJ (1995) DNA solutions of hard computational problems. Science 268:542–544CrossRefGoogle Scholar
  24. Manca V (2005) On the logic and geometry of bilinear forms. Fundamenta Informaticae 64:261–273MathSciNetMATHGoogle Scholar
  25. Manca V (2002) On the logic of DNA bilinearity. In: Hagiya M et al (eds) Preliminary proceedings of DNA 8, pp 330Google Scholar
  26. Manca V, Franco G (2008) Computing by polymerase chain reaction. Math Biosci 211:282–298MathSciNetMATHCrossRefGoogle Scholar
  27. Manca V, Franco G, Lampis S, Vallini G (2008) The phenomenon of sampling and growing in bio-populations. In: Extended abstract in proceedings of the 14th international meeting on DNA computing, Prague, Czech RepublicGoogle Scholar
  28. Manca V, Zandron C (2002) A clause string DNA algorithm for SAT. In: Jonoska N et al (eds) Revised selected papers from DNA 7, LNCS 2340. Springer-Verlag, pp 172–181Google Scholar
  29. Mao C, Sun W, Seeman NC (1999) Designed two-dimensional holliday junction arrays visualized by atomic force microscopy. J Am Chem Soc 121:5437–5443CrossRefGoogle Scholar
  30. Kari L, Thierrin G (1996) Contextual insertions/deletions and computability. Inf Comput 131(1):47–61MathSciNetMATHCrossRefGoogle Scholar
  31. Pachuk CJ, Samuel M, Zurawski JA, Snyder L, Phillips P, Satishchandran C (2000) Chain reaction cloning: a one-step method for directional ligation of multiple DNA fragments. Gene 243:19–25CrossRefGoogle Scholar
  32. Penchovsky R, Ackermann J (2003) DNA library design for molecular computation. J Comput Biol 10(2):215–230CrossRefGoogle Scholar
  33. Păun Gh, Rozenberg G, Salomaa A (1998) DNA computing. New computing paradigms. Springer, BerlinMATHGoogle Scholar
  34. Reif JH, LaBean TH, Pirrung M, Rana VS, Guo B, Kingsford C, Wickham GS (2002) Experimental construction of very large scale DNA databases with associative search capability. In: Jonoska N et al (eds) Revised selected papers from DNA 7, LNCS 2340, Springer-Verlag, pp 231–247Google Scholar
  35. Rothemund PWK (1996) A DNA and restriction enzyme implementation of turing machines. In: Lipton RJ et al (eds) DNA based computers. Proceedings of a DIMACS 27. Princeton University, American Mathematical Society, pp 75–119Google Scholar
  36. Rothemund P (2006) Folding DNA to create nanoscale shapes and patterns. Nature 440:297–302CrossRefGoogle Scholar
  37. Rozenberg G, Salomaa A (1997) Handbook of formal languages, vol 3. Springer-Verlag, BerlinMATHGoogle Scholar
  38. Rozenberg G, Spaink H (2003) DNA computing by blocking. Theoret Comput Sci 292:653–665MathSciNetMATHCrossRefGoogle Scholar
  39. Sakamoto K, Kiga D, Komiya K, Gouzu H, Yokoyama S, Ikeda S, Sugiyama H, Hagiya M (1999) State transitions by molecules. In: Kari L et al (eds) Bio systems—special issue. Proceedings of The fourth international meeting on DNA based computers, vol 52, pp 81–91Google Scholar
  40. Yurke B, Turberfield A, Mills A, Simmel F, Neumann J (2000) A DNA-fuelled molecular machine made of DNA. Nature 406:605–608CrossRefGoogle Scholar
  41. Winfree E, Eng T, Rozenberg G (2001) String tile models for DNA computing by self-assembly. In: Condon A et al (eds) Revised selected papers from DNA 6, LNCS 2054, Springer, pp 63–88Google Scholar
  42. Zhang Y, Seeman NC (1994) The construction of a DNA truncated octahedron. J Am Chem Soc 116:1661–1669CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media B.V. 2010

Authors and Affiliations

  1. 1.Department of Computer ScienceUniversity of VeronaVeronaItaly

Personalised recommendations