COMPSCI 590d: Molecular Assembly and Computation

Department of Computer Science

Duke University

John H. Reif
Spring Semester, 2024

Instructor: John H. Reif

         A. Hollis Edens Professor of Computer Science

         Office: D223 LSRC Building

         E-mail: reif AT

         Office hours: Tuesday &  Thursday  1:00pm – 2:00pm     

TA: Rajiv Nagipogu, PhD Student

         Office:  Biosci 042       

         Phone: 984-377-9214       


         Web page:       

         Office hours: Monday &  Wednesday  2:00pm – 3:00pm     

Lectures: 11:45AM – 1:00PM Tuesday, Thursday Room LSRC A156

Recitation: 11:45AM – 1:00PM Wednesday Room LSRC A156

Detailed Description of Course Material: see Schedule

Lectures: see Schedule

Course Lecture URL:


Course Canvas URL:


Summary Description of Course:

The course will cover the topics of Molecular Assembly, Molecular Computation, and Molecular Robotics. Special emphasis will be on DNA-based approaches, and the course will cover DNA nanostructures, DNA assemblies, and DNA-based robotic devices.



There are no formal prerequisites for the course, except mathematical maturity.  However, it would help to have a working knowledge of Algorithms at the level of an undergraduate algorithms class.



·      Kenneth Douglas, DNA Nanoscience: From Prebiotic Origins to Emerging Nanotechnology, CRC Press, Edition 1,  (2016) ISBN 9781498750127


·      Nadrian Seeman, Structural DNA Nanotechnology, Cambridge University Press, Edition 1,  (2016), ISBN  9780521764483



There will be 3 homeworks (15% each, 45% total), and a Final Project (40%) for the course. In addition, attendance and class interaction will provide an additional 15% of the total grade.


Homeworks: To be prepared using LATEX (preferred) or WORD.

Homework Rules:

·      Be sure to provide enough details to convince me, but try to keep your answers to at most one or two pages.

·      It is OK to answer a problem by stating it is open, but if so, please convincingly explain the reasons you believe this.

·      It is permitted to collaborate with your classmates, but please list your collaborators with your homework solution.

·      There is no credit given for homework past their due date.


Final Project: To be prepared using LATEX (preferred) or WORD.

·      The final project is a short (at most 12 pages) paper overviewing a chosen topic in Molecular Assembly and Computation

·      The topic is of your choice, and the instructor will provide guidance on relevant literature.

·      Novel topics and/or new research may result, but is not necessarily required to still produce an excellent project paper.

To be prepared using LATEX (preferred) or WORD.


Course Synopsis:

0 Course Overview

1 Introduction to DNA structure, reactions and DNA nanostructures

   1.1 Overview of DNA structure

   1.2 Nonstandard DNA structures

   1.3 Modeling DNA

   1.4 Synthesis and Purification of ssDNA

   1.5 DNA Photonics

2 DNA Nanostructures

   2.1 DNA Tiles

   2.2 DNA Lattices

   2.3 DNA Origami

3 Introduction to DNA Reactions

   3.4 DNA Hybridization Reactions

   3.1 DNA Enzyme reactions

   3.2 Kinetics Modeling

4. Hybridization Reactions for DNA Computation and Detection

   4.1 Adleman’s Experiment

   4.2 DNA Reaction Networks Fueled by Strand Displacement

   4.3 Autonomous DNA Computation using DNA Hairpins

   4.4. Catalytic and Autocatalytic Hybridization Reactions for Detection

5. Enzymic Reactions for DNA Computation and Detection

   5.1 DNA Amplification using Polymerase

   5.1 DNA Computation using Polymerase

   5.3 Autonomous DNA Computation using Restriction Enzymes

   5.4 Autonomous DNA Computation using DNAzymes

6 Analog Molecular Computations

7. Molecular Robotics

   7.1 Natural Protein Molecular Motors

   7.2 Molecular Gears

   7.3 DNA Robotics via External State Changes

   7.4 Autonomous DNA Robotics using Enzymes

   7.5 Autonomous DNA Robotics using DNAzyme

   7.6 Autonomous DNA Robotics only using DNA Hybridization

   7.7 Molecular Assembly Lines and Reaction Factories

8. Abstract Models of Tiling Assembly

   8.1 Tiling Assembly Models

   8.2 Tiles via DNA Nanostructures

   8.3 Tiling Computability & Undecidability

   8.4 Tile Complexity of Assembled Shapes

   8.5 Randomized Assembly

   8.6 Temperature Programmed Assembly

   8.7 Staged Assembly & Hierarchical Assembly

   8.8 Assembly Error-Correction