Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
lecturemolecularprogramming [2018/12/10 18:34]
Nicolas Schabanel
lecturemolecularprogramming [2024/09/10 18:13] (current)
Nicolas Schabanel [Expected lectures planning]
Line 1: Line 1:
  
-{{ http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​ENS/​DNA-bandeau.png?​800x0 }}+{{ http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​ENS/​DNA-bandeau.png?​1000x0 ​}}
  
 //Research lecture (CR)// //Research lecture (CR)//
  
 ====== Molecular programming:​ Theory & wet-lab experiments ====== ====== Molecular programming:​ Theory & wet-lab experiments ======
 +
 +For 2024-25, lectures will take place on **Tuesdays** at **15:​45-17:​45** and **Fridays** at **13:​30-15:​30.**
 +
 +First lecture on Tuesday September 10th, 2024 at 15:45-17:45
 +
 +<color red>​**Next lecture (2/16) on Friday September 20th, 2024 at 13:​30-15:​30**</​color>​
  
 ==== Presentation ==== ==== Presentation ====
Line 17: Line 23:
   * Wetlab experiments:​ making a DNA origami from scratch, making a DNA strand displacement circuit from scratch   * Wetlab experiments:​ making a DNA origami from scratch, making a DNA strand displacement circuit from scratch
  
 +==== Grading ====
 +  * The final grade will be the sum of HOMEWORK and EXAM both over 10 points \\ FINAL_GRADE = HOMEWORK + EXAM
 +  * HOMEWORK will be the sum of the grades for a set of 5 tiny exercices to solve from one week to the next
 +  * EXAM = MINI-PROJECT + WRITTEN_EXAM where MINI-PROJECT is graded over 4pts et WRITTEN_EXAM is over 6pts
 +  * MINI-PROJECT will be a mini-project to realize using ENSnano by groups of 3-5 people over about a month
 +  * WRITTEN_EXAM will be a 1h30/​2h-written exam at the end of the lecture
 +This grading system ensures that you will work and train regularly for the final exam and get the best grade possible.
 +
 +==== Expected lectures planning ====
 +
 +  * Tue Sep 10 (15:​45-17:​45) Lecture 1/16
 +  * Fri Sep 13  **No Lecture**
 +  * Tue Sep 17  **No Lecture**
 +  * **Fri Sep 20 (13:​30-15:​30) Lecture 2/16 by Daria Pchelina**
 +  * Tue Sep 24 (15:​45-17:​45) Lecture 3/16
 +  * Fri Sep 27 (13:​30-15:​30) Lecture 4/16
 +  * Tue Oct 1 (15:​45-17:​45) Lecture 5/16
 +  * Fri Oct 4 (13:​30-15:​30) Lecture 6/16
 +  * Tue Oct 8 (15:​45-17:​45) Lecture 7/16
 +  * Fri Oct 11 (13:​30-15:​30) Lecture 8/16
 +  * Tue Oct 15 (15:​45-17:​45) Lecture 9/16
 +  * Fri Oct 18 (13:​30-15:​30) Lecture 10/16 (mini-project defense)
 +  * Tue Oct 22 (15:​45-17:​45) Lecture 11/16
 +  * Fri Oct 25 (13:​30-15:​30) Lecture 12/16
 +  * Tue Oct 29  **Holidays**
 +  * Fri Nov 1  **Holidays**
 +  * Tue Nov 5 (15:​45-17:​45) Lecture 13/16
 +  * Fri Nov 8 (13:​30-15:​30) Lecture 14/16 (written exam)
 +  * Tue Nov 12 (15:​45-17:​45) Lecture 15/16 (experiments I: lab work)
 +  * Fri Nov 15 (13:​30-15:​30) Lecture 16/16 (experiments II: imaging)
 + 
 +
 +
 +==== Internship proposals ====
 +  * :!: **__2025 M2 Internship proposal:__ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​stage/​2021_M2_Internship.pdf|DNA computing: Theory, Models and wet lab experiments]]**
 ==== Related resources ==== ==== Related resources ====
   * [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​]]   * [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​]]
 +  * [[https://​www.ens-lyon.fr/​ensnano/​]]
   * [[http://​molecular-programming.org/​]]   * [[http://​molecular-programming.org/​]]
   * [[http://​self-assembly.net/​]]   * [[http://​self-assembly.net/​]]
Line 24: Line 66:
   * [[https://​dna.hamilton.ie/​woods/​]]   * [[https://​dna.hamilton.ie/​woods/​]]
  
 +==== Archive: Previous editions ====
 +
 +==== 2020 ====
 +
 +  * Tue 09.19 15:45 Lecture 1/16 - Introduction to molecular programming</​color>​ [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2023/​lecture1-intro.pdf|slides]] | [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2023/​HW1.pdf| HW1]] ] \\
 +  * Fri 09.22 13:30 Lecture 2/16 - aTAM: Tile assembly systems \\
 +  * Tue 09.26 15:45 Lecture 3/16 - Universality in aTAM [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2023/​lecture2-universality.pdf|slides]] ] \\
 +  * Fri 09.29 13:30 Lecture 4/16 - How do we make DNA origami [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2023/​lecture4-origami.pdf|slides]] ] \\
 +  * Tue 10.03 15:45 Lecture 5/16 - Experimental realization of a universal computer with DNA nanotubes [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2023/​lecture3-110.pdf|slides]] ] \\
 +  * Fri 10.06 13:30 Lecture 6/16 - Intrinsic universality in aTAM [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2023/​lecture5-intrinsic.pdf|slides]] | [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2023/​HW2.pdf| HW2]] ] \\
 +  * Tue 10.10 15:45 Lecture 7/16 - Oritatami [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2023/​lecture6-oritatami.pdf|slides]] | [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2023/​HW3.pdf| HW3]] ] \\
 +  * Fri 10.13 13:30 Lecture 8/16 - Oritatami simulates Turedo\\
 +  * Tue 10.17 15:45 Lecture 9/16 - Universality in Turedos [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2023/​lecture7-turedos.pdf|slides]] ]\\
 +  * Fri 10.20 13:30 Lecture 10/16 - Strand displacements and DNA Boolean circuits [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2023/​lecture8-strand-displacement.pdf|slides]] ] \\
 +  * Tue 10.24 15:45 Lecture 11/16 - PEN toolbox [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2023/​lecture9-pentoolbox.pdf|slides]] | [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2023/​lecture9-pentoolbox.mp4|Yannick Rondelez'​s talk video]] | [[https://​blogs.ed.ac.uk/​dnananotechwebinars/​|DNA in action webinar]] ] \\
 +  * Fri 10.27 13:30 Lecture 12/16: Mini-project presentation [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2023/​HW4.pdf|HW4]] | [[https://​www.youtube.com/​watch?​v=1wBYPjkGRdo|pistol shrimp in action]] ]: \\
 +    * //You are asked to address one of the three questions bellow in **groups of 3-5 persons.** **A short report will be returned** (at most 4 pages including illustrations). **A short presentation will be given by each group on Friday Oct 27**. We will discuss the proposed solutions together during that session. At the end of the session, **we will vote for the best P01-design** to be ordered, assembled and imaged at the end of the lecture.//
 +    * **[P01] Trapezoid with alpha-stacking:​** Add complementary protuberances and recessions on the ensnano file [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2023/​trapezoid/​trapezoid.ens|trapezoid.ens]] (the xover positions are not optimized). How to make sure that the pieces get together upright (and make a circle) and not upside down (which would assemble a line)?
 +    * **[P02] Parametrized shape:** Propose a framework that allows a parametrized definition of a multi-component flat 2D shape and propose an algorithm that solves the constraints (assuming a scaffold length) and positions the corresponding helices in ENSnano (beware that the scaffold must be routed within every helices). What kind of shapes can your algorithm solve? Show an execution of your algorithm on a small representative example. (no implementation asked)
 +    * **[P03] Adapting helices parameters:​** you are given a shape that is supposed to assemble into a lattice (as for the P01-trapezoid),​ some helices are identified as "​identical"​ as they are supposed to click one into the other. Propose a data structure and an algorithm that adjust the helices parameters (roll, rise, helicity) so that each pair of helices marked as identical matches. What kind of constraints can your algorithm solve? Show an execution of your algorithm on a small representative example. (no implementation asked) ​  
 +  * Tue 11.07 :!: 10:15 (exceptionally) :!: Lecture 13/16\\
 +  * Fri 11.10 13:30 Lecture 14/16 - Final written exam\\
 +  * Tue 11.14 15:45 Lecture 15/16 - Lab experiments 1/2: mixing and cooking\\
 +  * Fri 11.17 13:30 Lecture 16/16 - Lab experiments 2/2: AFM imaging  ​
 +
 +==== 2019 ====
 +
 +**Lecture 9 (2019.12.19 - Last): Oritatami Shapes & Strand displacement boolean circuits**
 +  * **Oritatami:​ building shapes** [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2019-2020/​Lecture9A.pdf|Slides]] ]
 +    * The problem
 +    * Some impossible shapes
 +    * Scaling schemes
 +    * Algorithm for scales //​B//<​sub>//​n//​≥3</​sub>​
 +    * Filling a pseudo-hexagon
 +    * Bead type set for tight Oritatami systems
 +    * Algorithm for scales //​A//<​sub>//​n//​≥5</​sub>​
 +    * Algorithm for scale //​A//<​sub>​4</​sub>​
 +    * Algorithm for scale //​A//<​sub>​3</​sub>​
 +    * Time anomalies and how to fix them
 +
 +  * **Strand displacement boolean circuits** [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2019-2020/​Lecture9B.pdf|Slides]] ]
 +    * DNA Strand displacement mechanism
 +    * Some basic of thermodynamics [ [[https://​www.irif.fr/​~nschaban/​M2IF/​Lecture9C.pdf|Slides]] ]
 +    * Reading with fluophore
 +    * Dealing with leaks
 +    * Double long domain [ [[https://​www.irif.fr/​~nschaban/​M2IF/​Lecture9D.pdf|Slides]] ]
 +
 +**Lecture 8 (2019.12.12):​ Oritatami: A computational model for co-transcriptional folding** [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2019-2020/​Lecture8A.pdf|Slides A]] | [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2019-2020/​Lecture8B.pdf|Slides B]] ]
 +  * RNA Origami experiments
 +  * Oritatami model
 +  * A binary counter
 +  * Proving the correctness of the folding
 +  * Tag system and Oritatami simulating Turing machine efficiently
 +  * An Oritatami system simulating any Cellular Automaton
 +  ​
 +  * **Exercise sessions [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2019-2020/​HW4.pdf|HW4]] ]**
 +      - Window movie lemma :!:
 +      - Oritatami
 +
 +**Lecture 7 (2019.12.05) **
 +  * L'an 01: [ [[http://​dl.free.fr/​jrOXDv8bP|mkv]] | //passwd: an01// ]
 +
 +**Lecture 6 (2019.11.28):​ Wetlab Experiments**
 +  * Making an Origami [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​MPRI/​2019-2020/​WL1.pdf|Instructions]] ]
 +
 +**Lecture 5 (2019.11.21):​ Intrinsic universality in tile assembly** [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​MPRI/​2019-2020/​Lecture3A.pdf|Slides]] ]
 +    * Intrinsic universality at T°2
 +    * The supercell, the probes
 +    * One (polygonal) tile is enough
 +
 +**Lecture 4 (2019.11.14):​ An experimental realisation of a universal computer (II)** [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​MPRI/​2019-2020/​Lecture2B.pdf|Slides]] ]
 +    * Examples of nanotube circuits
 +    * A 6-bits Turing universal nanotube circuit
 +    * Minimizing errors with proof-reading tiles
 +    * Counting the glues
 +    * Sequence design
 +    * Experiment results
 +
 +**Lecture 3 (2019.11.07):​ **
 +  * Useful stuff to install cadnano:
 +    * **Maya 2015**:
 +      * Linux: [[http://​dl.free.fr/​qySF9Q3Eh|http://​dl.free.fr/​qySF9Q3Eh]]
 +      * MacOS X: [[http://​dl.free.fr/​vLUy5QlY9|http://​dl.free.fr/​vLUy5QlY9]]
 +      * Windows: [[http://​dl.free.fr/​nzL3MS15h|(1) http://​dl.free.fr/​nzL3MS15h]] [[http://​dl.free.fr/​hHQDyYA9A|(2) http://​dl.free.fr/​hHQDyYA9A]]
 +    * **Cadnano 2.2** for Maya 2015 (All platforms): [[http://​dl.free.fr/​iBgfRXG07|http://​dl.free.fr/​iBgfRXG07]]
 +    * **Installation instructions**:​ [[https://​cadnano.org/​osx-installation.html|MacOS X]] [[https://​cadnano.org/​windows-installation.html|Windows]] [[https://​cadnano.org/​license.html#​download|Other]]
 +  * **standalone version for older MacOS X,** you can try to install the all-in-one package for cadnano 2.2: [[http://​dl.free.fr/​kN2MHDhPx|cadnano2.2.pkg.zip]] (try this first!)
 +  ​
 +  * **Exercise sessions [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2019-2020/​HW3.pdf|HW3]] ]**
 +      - Making a DNA Origami
 +
 +**Lecture 2 (2019.10.24):​ Universality in assembly Model (I): Theory and experiment**
 +  * **Universality in assembly Model (I) [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​MPRI/​2019-2020/​Lecture2A.pdf|Slides]] ]**
 +    * Simulating a Turing machine at temperature T°=2 in aTAM
 +    * Optimal hardcoding of a binary string at T°=2 in aTAM
 +    * Simulating a Turing machine at temperature T°=1 in aTAM in 3D
 +  * **An experimental realisation of a universal computer (I) [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​MPRI/​2019-2020/​Lecture2B.pdf|Slides]] ]**
 +    * Single stranded tile nanotubes
 +    * Atomic Force Microscopy (AFM)
 +    * Marking 0s and 1s using biotin-streptavidin
 +    * kTAM kinetic assembly model
 +    * Error correction using proof-reading tiles
 +    * DNA nanotube circuit model 
 +  * **Exercise sessions [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2019-2020/​HW2.pdf|HW2]] ]**
 +    - Assembly time = O(rank of the produced shape) (from HW1)
 +    - Exponential random variables and kTAM implementation
 +    - Triangle tile assembly
 +    - :!: Tileset for simulating cellular automata **//(HW2: return your solution by email on or before Thursday Nov 7 at noon)//​** ​
 +    - Probabilistic simulation of Turing Machine at T°=1 in 2D
  
 +**Lecture 1 (2019.10.17):​ Introduction to DNA programming & Tile Assembly Systems [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2019-2020/​Lecture1.pdf|Slides]] ] **
 +  * Introduction to DNA programming & overview of the field
 +  * Abstract tile assembly model (aTAM):
 +    * Definition
 +    * Minimizing the assembly time
 +  * **Exercise sessions [ [[http://​perso.ens-lyon.fr/​nicolas.schabanel/​enseignement/​M2IF/​2019-2020/​HW1.pdf|HW1]] ]**
 +