title: Molecular implementation of simple logic programs.
abstract: Autonomous programmable computing devices made of biomolecules could interact with a biological environment and be used in future biological and medical applications. Biomolecular implementations of finite automata and logic gates have already been developed. Here, we report an autonomous programmable molecular system based on the manipulation of DNA strands that is capable of performing simple logical deductions. Using molecular representations of facts such as Man(Socrates) and rules such as Mortal(X) <-- Man(X) (Every Man is Mortal), the system can answer molecular queries such as Mortal(Socrates)? (Is Socrates Mortal?) and Mortal(X)? (Who is Mortal?). This biomolecular computing system compares favourably with previous approaches in terms of expressive power, performance and precision. A compiler translates facts, rules and queries into their molecular representations and subsequently operates a robotic system that assembles the logical deductions and delivers the result. This prototype is the first simple programming language with a molecular-scale implementation.
authors.affiliation: Department of Computer Science and Applied Mathematics, Weizmann Institute of Science, Rehovot 76100, Israel.
authors.forename: Tom
authors.initials: T
authors.lastname: Ran
authors.forename: Shai
authors.initials: S
authors.lastname: Kaplan
authors.forename: Ehud
authors.initials: E
authors.lastname: Shapiro
mesh_terms: D019295:Computational Biology; D004247:DNA / Q000737:chemistry*; D008128:Logic
chemical_list: D004247:DNA