1 DNA Based Self-Assembly and Nano-Device: Theory and Practice Peng Yin Committee Prof. Reif (Advisor), Prof. Agarwal, Prof. Hartemink Prof. LaBean, Prof. Turberfield, Prof. Yan 2 There's Plenty of Room at the Bottom Richard P. Feynman, 1959 • “…a field, in which little has been done, but in which an enormous amount can be done in principle” Nanoworld (1 m = 109 nm) Nanofabrication Nanorobotics Nanocomputation Nanoelectronics Nanodiagnostics/ therapeutics 3 There's Plenty of Room at the Bottom Nanoworld (1 m = 109 nm) ? 4 There's Plenty of Room at the Bottom Nanoworld (1 m = 109 nm) How to build things? How to make things move (and do work)? How to compute? 5 DNA 101: DNA – Not merely secret to life • • Information encoding: bases: A, T, C, G Complementarity of bases: A – T; C – G Complementary single strands 3.4 nm Duplex Self-Assembly ! 2 nm 6 DNA 101: Self-assembly Single strand DNA as Smart glues (Excerpted from Seeman 03) 7 DNA Based Self-Assembly & Nano-Device: Theory & Practice DNA Based How to build? Self-Assembly How to move? How to compute? Nano-Device Theory & Practice Theoretical Design Mathematical Analysis Computer Modeling Biochem. Lab Fabrication Complexity - Error Correction – Nanorobotics - Nanocomputing Roadmap: DNA Based Self-Assembly & Nano-Device • Complexity of Self-Assembly • Error Resilient Self-Assembly • Nanorobotics Device • Nanocomputing Device 8 Complexity - Error Correction – Nanorobotics - Nanocomputing Roadmap: DNA Based Self-Assembly & Nano-Device • Complexity of Self-Assembly • Error Resilient Self-Assembly • Nanorobotics Device • Nanocomputing Device 9 Complexity - Error Correction – Nanorobotics - Nanocomputing Self-Assembly Complexity of Graph Self-Assembly in Accretive Systems and Self-Destructible Systems Joint with Reif, Sahu Reif, Sahu, & Yin (2005) Submitted to FNANO 2005 10 Complexity - Error Correction – Nanorobotics - Nanocomputing Accretive Graph Assembly System Seed vertex Graph Temperature: τ=2 Seed vertex Temperature Weight function Sequentially constructible? 11 Complexity - Error Correction – Nanorobotics - Nanocomputing Problems, Results, & Contributions Problems • Accretive Graph Assembly Problem • Self-Destructible Graph Assembly Prob. Results • AGAP is NP-complete • Planar AGAP is NP-complete • #AGAP/Stochastic AGAP is #P-complete • DGAP is PSPACE-complete Contributions • Cooperative effects of attraction and repulsion • General setting of graphs • Dynamic self-destructible behavior in DGAP model 12 Complexity - Error Correction – Nanorobotics – Nanocomputing Roadmap: DNA Based Self-Assembly & Nano-Device • Complexity of Self-Assembly • Error Resilient Self-Assembly • Nanorobotics Device • Nanocomputing Device 13 Complexity - Error Correction – Nanorobotics – Nanocomputing Self-Assembly Compact Error Resilient Computational DNA Tilings Joint with Reif, Sahu Reif, Sahu, & Yin (2004) DNA 10 14 Complexity - Error Correction – Nanorobotics – Nanocomputing 15 Computational Tilings Tile (Excerpted from Yan et al 03) Computational tiles (Winfree) Pad Output 2 Output 1 Input 2 Input 1 Output 1 = Input 1 XOR Input 2 Output 2 = Input 1 AND Input 2 Complexity - Error Correction – Nanorobotics – Nanocomputing Binary counter Binary counter Computational tiles Seed tile Frame tiles 16 Complexity - Error Correction – Nanorobotics – Nanocomputing Error in Assembly Binary counter Computational tiles Seed tile Error! Frame tiles 17 Complexity - Error Correction – Nanorobotics – Nanocomputing Error Resilient Tilings by Winfree Original tiles: Error resilient tiles: (Excerpted from Winfree 03) • Error rate 2 • Assembly size increased by 4 18 Complexity - Error Correction – Nanorobotics – Nanocomputing Compact Error Resilient Computational Tiles Original tiles: Error resilient tiles: X Y XY Z YZ 19 Complexity - Error Correction – Nanorobotics – Nanocomputing Compact Error Resilient Computational Tiles Original tiles: Error resilient tiles: X Y XY Z YZ 20 Complexity - Error Correction – Nanorobotics – Nanocomputing Compact Error Resilient Computational Tiles Original tiles: Error resilient tiles: X Y XY Z YZ Error checking pads • Assembly size not increased • Two way overlay: error rate (5%) 2 (0.25%) • Three way overlay: error rate (5%) 3 (0.0125%) 21 Complexity - Error Correction – Nanorobotics – Nanocomputing Computer Simulation (Xgrow, Winfree) Three way overlay Winfree 3x3 construction Winfree 2x2 construction Two way overlay No error correction 22 Complexity - Error Correction – Nanorobotics - Nanocomputing Roadmap: DNA Based Self-Assembly & Nano-Device • Complexity of Self-Assembly • Error Resilient Self-Assembly • Nanorobotics Device • Nanocomputing Device 23 Complexity - Error Correction – Nanorobotics - Nanocomputing Nano-Device (R. Cross Lab) An Autonomous Unidirectional DNA Walker Joint with Yan, Daniell, Turberfield, Reif Yin, Yan, Daniell, Turberfield, & Reif (2004) Angew. Chem. Intl. Ed. Yin, Turberfield, & Reif (2004) DNA 10 24 Complexity - Error Correction – Nanorobotics - Nanocomputing 25 Autonomous Unidirectional DNA Walker: Design Restriction enzymes PflM I Walker Anchorage A* B Track C BstAP I D A Complexity - Error Correction – Nanorobotics - Nanocomputing DNA 101: Enzyme Ligation, Restriction Sticky ends DNA ligase DNA restriction enzyme 26 Complexity - Error Correction – Nanorobotics - Nanocomputing DNA Walker: Operation • Valid hybridization: A* + B = A + B* A*B C* + D = C + D* C*D • Valid cut: A*B A + B* C*D C + D* Walker B*CB + C* D*AD + A* Anchorage A* B Track B* + C = B + C* B*C D* + A = D + A* D*A C D A 27 Complexity - Error Correction – Nanorobotics - Nanocomputing DNA Walker: Operation • Valid hybridization: A* + B = A + B* A*B C* + D = C + D* C*D • Valid cut: A*B A + B* C*D C + D* A*B C B* + C = B + C* B*C D* + A = D + A* D*A B*CB + C* D*AD + A* D A 28 Complexity - Error Correction – Nanorobotics - Nanocomputing DNA Walker: Operation • Valid hybridization: A* + B = A + B* A*B C* + D = C + D* C*D • Valid cut: A*B A + B* C*D C + D* C A*B B* + C = B + C* B*C D* + A = D + A* D*A B*CB + C* D*AD + A* D A 29 Complexity - Error Correction – Nanorobotics - Nanocomputing DNA Walker: Operation • Valid hybridization: A* + B = A + B* A*B C* + D = C + D* C*D • Valid cut: A*B A + B* C*D C + D* B* + C = B + C* B*C D* + A = D + A* D*A B*CB + C* D*AD + A* PflM I A*B C D A 30 Complexity - Error Correction – Nanorobotics - Nanocomputing DNA Walker: Operation • Valid hybridization: A* + B = A + B* A*B C* + D = C + D* C*D • Valid cut: A*B A + B* C*D C + D* B* + C = B + C* B*C D* + A = D + A* D*A B*CB + C* D*AD + A* B* A C D A 31 Complexity - Error Correction – Nanorobotics - Nanocomputing DNA Walker: Operation • Valid hybridization: A* + B = A + B* A*B C* + D = C + D* C*D • Valid cut: A*B A + B* C*D C + D* A B* + C = B + C* B*C D* + A = D + A* D*A B*CB + C* D*AD + A* D B*C A 32 Complexity - Error Correction – Nanorobotics - Nanocomputing DNA Walker: Operation • Valid hybridization: A* + B = A + B* A*B C* + D = C + D* C*D • Valid cut: A*B A + B* C*D C + D* A B* + C = B + C* B*C D* + A = D + A* D*A B*CB + C* D*AD + A* D B*C A 33 Complexity - Error Correction – Nanorobotics - Nanocomputing DNA Walker: Operation • Valid hybridization: A* + B = A + B* A*B C* + D = C + D* C*D • Valid cut: A*B A + B* C*D C + D* B* + C = B + C* B*C D* + A = D + A* D*A B*CB + C* D*AD + A* BstAP I A D B*C A 34 Complexity - Error Correction – Nanorobotics - Nanocomputing DNA Walker: Operation • Valid hybridization: A* + B = A + B* A*B C* + D = C + D* C*D • Valid cut: A*B A + B* C*D C + D* B* + C = B + C* B*C D* + A = D + A* D*A B*CB + C* D*AD + A* C* A B D A 35 Complexity - Error Correction – Nanorobotics - Nanocomputing DNA Walker: Operation • Valid hybridization: A* + B = A + B* A*B C* + D = C + D* C*D • Valid cut: A*B A + B* C*D C + D* A B B* + C = B + C* B*C D* + A = D + A* D*A B*CB + C* D*AD + A* C*D A 36 Complexity - Error Correction – Nanorobotics - Nanocomputing DNA Walker: Operation • Valid hybridization: A* + B = A + B* A*B C* + D = C + D* C*D • Valid cut: A*B A + B* C*D C + D* B* + C = B + C* B*C D* + A = D + A* D*A B*CB + C* D*AD + A* D* A B C A 37 Complexity - Error Correction – Nanorobotics - Nanocomputing DNA Walker: Operation • Valid hybridization: A* + B = A + B* A*B C* + D = C + D* C*D • Valid cut: A*B A + B* C*D C + D* A B C B* + C = B + C* B*C D* + A = D + A* D*A B*CB + C* D*AD + A* D*A 38 Complexity - Error Correction – Nanorobotics - Nanocomputing DNA Walker: Operation • Valid hybridization: A* + B = A + B* A*B C* + D = C + D* C*D • Valid cut: A*B A + B* C*D C + D* B* + C = B + C* B*C D* + A = D + A* D*A B*CB + C* D*AD + A* A* A B C D 39 Complexity - Error Correction – Nanorobotics - Nanocomputing 40 DNA Walker: Experimental Design Complexity - Error Correction – Nanorobotics - Nanocomputing 41 Autonomous Motion of the Walker Complexity - Error Correction – Nanorobotics - Nanocomputing Roadmap: DNA Based Self-Assembly & Nano-Device • Complexity of Self-Assembly • Error Resilient Self-Assembly • Nanorobotics Device • Nanocomputing Device 42 Complexity - Error Correction – Nanorobotics - Nanocomputing Nano-Device Designs of DNA Cellular Computing Devices Joint with Sahu, Turberfield, Reif Yin, Turberfield, Sahu, & Reif (2004) DNA 10 Yin, Sahu,Turberfield, & Reif (2005) Submitted to DNA 11 43 Complexity - Error Correction – Nanorobotics - Nanocomputing DNA Cellular Computing Devices Self-assembly Nanorobotics Nanocomputation (Benenson et al 03) (Yan et al 03) Complex motion Intelligent robotics devices Reusable DNA computers 44 Complexity - Error Correction – Nanorobotics - Nanocomputing DNA Cellular Computing Devices Finite state automata Turing machine Cellular automata 45 Complexity - Error Correction – Nanorobotics - Nanocomputing Comp 101: Turing Machine Read/write head Tape Transition rule 46 Complexity - Error Correction – Nanorobotics - Nanocomputing DNA Turing Machine: Structure Turing machine Transition table: Rule molecules Turing head: Head molecules Data tape: Symbol molecules Autonomous universal DNA Turing machine: 2 states, 5 colors 47 Complexity - Error Correction – Nanorobotics - Nanocomputing Turing Machine: Operation Turing machine 48 Complexity - Error Correction – Nanorobotics - Nanocomputing Turing Machine: Operation 49 Complexity - Error Correction – Nanorobotics - Nanocomputing Turing Machine: Operation 50 Complexity - Error Correction – Nanorobotics - Nanocomputing Turing Machine: Operation 51 Complexity - Error Correction – Nanorobotics - Nanocomputing Turing Machine: Operation 52 Complexity - Error Correction – Nanorobotics - Nanocomputing Turing Machine: Operation 53 Complexity - Error Correction – Nanorobotics - Nanocomputing Turing Machine: Operation 54 Complexity - Error Correction – Nanorobotics - Nanocomputing Turing Machine: Molecule Set 55 Complexity - Error Correction – Nanorobotics - Nanocomputing Turing Machine: Molecule Set/Simulation 2 -Digit Binary Counter 56 Complexity - Error Correction – Nanorobotics - Nanocomputing Summary & Future Summary: Complexity & Fault-Tolerance Robotics & Computing Future: Mathematical Theory: General theory & Dynamic behavior Fault-Tolerance: Inspirations from fault tolerance theory & Biological systems Robotics Devices: Robotics lattice & Nanoparticle carrying/(un)loading Computing Devices: In silicon in vitro in vivo: “Doctor in a cell” Software Tools: “Molecular compiler” - Rational design & Simulation 57 Complexity - Error Correction – Nanorobotics - Nanocomputing Summary & Future Summary: There's Plenty of Room at the Bottom! Complexity & Fault-Tolerance Future: Robotics & Computing ? Mathematical Theory: General theory & Dynamic behavior Fault-Tolerance: Fault tolerant theory & Biological inspiration Robotics Devices: Robotics lattice & Nanoparticle carrying/(un)loading Computing Devices: Intelligent robotics lattice & “Doctor in a cell” Software Tools: “Molecular compiler” - Rational design & Simulation 58 58