Autumn Semester 2020 takes place in a mixed form of online and classroom teaching.
Please read the published information on the individual courses carefully.

636-0105-00L  Introduction to Biological Computers

SemesterAutumn Semester 2018
LecturersY. Benenson
Periodicityyearly recurring course
Language of instructionEnglish
CommentAttention: This course was offered in previous semesters with the number: 636-0011-00L "Introduction to Biological Computers". Students that already passed course 636-0011-00L cannot receive credits for course 636-0105-00L.


AbstractBiological computers are man-made biological networks that interrogate and control cells and organisms in which they operate. Their key features, inspired by computer science, are programmability, modularity, and versatility. The course will show how to rationally design, implement and test biological computers using molecular engineering, DNA nanothechnology and synthetic biology.
ObjectiveThe course has the following objectives:

* Familiarize students with parallels between theories in computer science and engineering and information-processing in live cells and organisms

* Introduce basic theories of computation

* Introduce approaches to creating novel biological computing systems in non-living environment and in living cells including bacteria, yeast and mammalian/human cells.

The covered approaches will include
- Nucleic acids engineering
- DNA and RNA nanotechnology
- Synthetic biology and gene circuit engineering
- High-throughput genome engineering and gene circuit assembly

* Equip the students with computer-aided design (CAD) tools for biocomputing circuit engineering. A number of tutorials will introduce MATLAB SimBiology toolbox for circuit design and simulations

* Foster creativity, research and communication skills through semester-long "Design challenge" assignment in the broad field of biological computing and biological circuit engineering.
ContentNote: the exact subjects can change, the details below should only serve for general orientation

Lecture 1. Introduction: what is molecular computation (part I)?

* What is computing in general?
* What is computing in the biological context (examples from development, chemotaxis and gene regulation)
* The difference between natural computing and engineered biocomputing systems

Lecture 2: What is molecular computation (part II) + State machines

1st hour

* Detailed definition of an engineered biocomputing system
* Basics of characterization
* Design challenge presentation

2nd hour

* Theories of computation: state machines (finite automata and Turing machines)

Lecture 3: Additional models of computation

* Logic circuits
* Analog circuits
* RAM machines

Basic approaches to computer science notions relevant to molecular computation. (i) State machines; (ii) Boolean networks; (iii) analog computing; (iv) distributed computing. Design Challenge presentation.

Lecture 4. Classical DNA computing

* Adleman experiment
* Maximal clique problem
* SAT problem

Lecture 5: Molecular State machines through self-assembly

* Tiling implementation of state machine
* DNA-based tiling system
* DNA/RNA origami as a spin-off of self-assembling state machines

Lecture 6: Molecular State machines that use DNA-encoded tapes

* Early theoretical work
* Tape extension system
* DNA and enzyme-based finite automata for diagnostic applications

Lecture 7: Introduction to cell-based logic and analog circuits

* Computing with (bio)chemical reaction networks
* Tuning computation with ultrasensitivity and cooperativity
* Specific examples

Lecture 8: Transcriptional circuits I

* Introducing transcription-based circuits
* General features and considerations
* Guidelines for large circuit construction

Lecture 9: Transcriptional circuits II

* Large-scale distributed logic circuits in bacteria
* Toward large-scale circuits in mammalian cells

Lecture 10: RNA circuits I

* General principles of RNA-centered circuit design
* Riboswitches and sRNA regulation in bacteria
* Riboswitches in yeast and mammalian cells
* General approach to RNAi-based computing

Lecture 11: RNA circuits II

* RNAi logic circuits
* RNAi-based cell type classifiers
* Hybrid transcriptional/posttranscriptional approaches

Lecture 12: In vitro DNA-based logic circuits

* DNAzyme circuits playing tic-tac-toe against human opponents
* DNA brain


Lecture 13: Advanced topics

* Engineered cellular memory
* Counting and sequential logic
* The role of evolution
* Fail-safe design principles

Lecture 14: Design challenge presentation
Lecture notesLecture notes will be available online
LiteratureAs a way of general introduction, the following two review papers could be useful:

Benenson, Y. RNA-based computation in live cells. Current Opinion in Biotechnology 2009, 20:471:478

Benenson, Y. Biocomputers: from test tubes to live cells. Molecular Biosystems 2009, 5:675:685

Benenson, Y. Biomolecular computing systems: principles, progress and potential (Review). Nature Reviews Genetics 13, 445-468 (2012).
Prerequisites / NoticeBasic knowledge of molecular biology is assumed.