chemart / dna-automaton

View on GitHub

DNA automaton (Benenson-Shapiro) — A finite automaton made of molecules, with no external control at all. The input is a DNA duplex whose sticky end encodes the current state and next symbol; eight small 'software' duplexes act as transition rules, and th…

chemistry official · built in wet fidelity: reconstructed #banzhaf-yamamoto
files / chemart.yaml · 13.2 KB · at f34ce552d3e9 Raw
hub:
  repo_type: generator
  builtin: dna-automaton
  tags:
  - banzhaf-yamamoto
chemistries:
- id: dna-automaton
  name: DNA automaton (Benenson-Shapiro)
  intuition: 'A finite automaton made of molecules, with no external control at all. The input is a DNA
    duplex whose sticky end encodes the current state and next symbol; eight small ''software'' duplexes
    act as transition rules, and the restriction enzyme FokI cuts at a fixed distance from wherever one
    binds. Each cut exposes a new sticky end - the next state - and the process repeats until no rule
    matches. Hardware, software and input are mixed once; the input''s own phosphodiester bonds supply
    the energy.

    '
  aliases:
  - molecular finite automaton
  - DNA finite-state machine
  - autonomous molecular computer
  - doctor in a cell
  origin: Shapiro 1998-1999 (blueprint); Benenson, Paz-Elizur, Adar, Keinan, Livneh & Shapiro 2001 (first
    automaton); Benenson, Adar, Paz-Elizur, Livneh & Shapiro 2003 (the ATP-free automaton implemented
    here)
  book: 19.3.1
  refs:
  - '[767]'
  - '[768]'
  - '[100]'
  - doi:10.1073/pnas.0535624100
  - doi:10.1038/35106533
  - doi:10.1098/rsfs.2011.0118
  family: wet
  kind: wet
  constructive: false
  S:
    repr: 'DNA duplexes with 4-nt 5'' sticky ends, plus the FokI enzyme: the input molecule at every processing
      stage, the eight transition (software) molecules T1-T8, the FokI-software and FokI-software-input
      complexes, the scattered symbol fragments and the two output molecules; Species.structure holds
      the published sequences as ''sense/antisense'', each written 5''->3'''
    definition: explicit
    notes: 'Species ids: FokI, T1-T8, FokI-T<i>, <state>_<remaining symbols>t for an input at a processing
      stage (S0_abbt, S1_bbt, ..., S0_t for the output), FokI-T<i>-<molecule> for a hybrid and frag_<sense>_<antisense>
      for a scattered symbol.'
  R:
    definition: explicit
    arity:
    - 1
    - 2
    scheme: 'One transition of the automaton is three reactions (PNAS 2003, fig. 2E): FokI + Ti <-> FokI-Ti
      (hardware/software assembly, Kd = 2 nM); FokI-Ti + X <-> FokI-Ti-X (sticky-end hybridisation of
      the software''s <state, symbol> detector to the input, Kd = 50 uM); FokI-Ti-X -> FokI-Ti + fragment
      + X'' (irreversible cleavage). FokI binds GGATG and cuts 9 nt downstream on the sense strand and
      13 nt downstream on the antisense strand, so the software''s 0-, 1- or 2-bp spacer decides which
      4-nt window of the next symbol is exposed, i.e. the next state (0 bp: S1 -> S0, 1 bp: keep the state,
      2 bp: S0 -> S1). Hardware and software are recycled; the input is consumed and fuels the computation.

      '
    notes: 'No ligase and no ATP: this is the 2003 automaton, which uses FokI''s ability to cleave across
      a non-covalent sticky-end hybrid. In the 2001 automaton each transition also ligated the software
      to the input and consumed one software molecule and two ATP.'
  A:
    reactor:
    - ode
    - ssa
    dilution: 'none: a closed 10 ul reaction at 8 C in NEB4 buffer'
    notes: initial_state holds the published concentrations of the chosen `conditions` in micromolar.
  params:
  - name: program
    type: enum
    default: A1
    choices:
    - A1
    - A2
    - A3
    - book
    role: structural
    meaning: 'which automaton to build: A1 (even number of a symbols), A2 (even number of symbols) and
      A3 (ends with b) are the three programs run in PNAS 2003 fig. 3B; book is the even-number-of-b automaton
      of book fig. 19.13, which was not run in the lab'
    range: ignored when `transitions` is given
  - name: transitions
    type: list
    default: []
    role: structural
    meaning: 'explicit program as a list of published transition-molecule names (T1: S0-a->S0, T2: S0-a->S1,
      T3: S0-b->S0, T4: S0-b->S1, T5: S1-a->S0, T6: S1-a->S1, T7: S1-b->S0, T8: S1-b->S1); overrides `program`.
      Two molecules detecting the same <state, symbol> are rejected'
    range: any of the 2^8 subsets that is deterministic; the book notes that all eight transitions of
      a two-state two-symbol FSM are realisable
  - name: accepting_state
    type: enum
    default: S0
    choices:
    - S0
    - S1
    role: structural
    meaning: accepting state, used only with an explicit `transitions` program; the named programs carry
      their published accepting state (S0 for A1, A2 and book, S1 for A3)
  - name: inputs
    type: list
    default:
    - I8
    role: population
    meaning: input molecules, given as published input names (I1 abb, I2 abba, I3 babbabb, I4 babbabba,
      I5 baaaabb, I6 baaaabba, I7 abbbbabbabb, I8 abbbbaaaabba) or as literal strings over {a, b}; each
      one is added to the same reaction at the concentration of `conditions`
    range: fig. 3B runs each of I1-I8 in a separate tube
  - name: conditions
    type: enum
    default: standard
    choices:
    - standard
    - fast
    - parallel
    - reuse
    role: kinetic
    meaning: 'which published reaction sets the concentrations and the per-transition rate: standard (fig.
      3B: 1 uM input, 1 uM of each software molecule, 4 uM FokI; no rate published), fast (10 nM input,
      20 s per transition), parallel (5 uM input, 2.5 uM of each software molecule, 10 uM FokI, 45 s per
      transition, 6.646e10 transitions/s/ul) and reuse (fig. 3C: software at 0.075 molar ratio for 18
      h; no rate published)'
  provides:
  - topology
  - stoichiometry
  - rate-constants
  - mass-conservation
  - initial-state
  - sequence-structure-function
  fidelity: reconstructed
  sources:
  - 'Benenson, Y., Adar, R., Paz-Elizur, T., Livneh, Z. & Shapiro, E. (2003). DNA molecule provides a
    computing machine with both data and fuel. PNAS 100(5):2191-2196. https://doi.org/10.1073/pnas.0535624100,
    free full text https://pmc.ncbi.nlm.nih.gov/articles/PMC151317/ - the book''s reference [100] and
    the specification used here: figs. 1 (automata A1-A3 and inputs I1-I8), 2 (symbol encoding, FokI,
    the eight software molecules, the mechanism), 3 (results, software reuse) and Materials and Methods
    (all oligonucleotide sequences, concentrations, rates, fidelities and energetics).'
  - Benenson, Y., Paz-Elizur, T., Adar, R., Keinan, E., Livneh, Z. & Shapiro, E. (2001). Programmable
    and autonomous computing machine made of biomolecules. Nature 414:430-434. https://doi.org/10.1038/35106533
    - the original automaton (ligase + ATP, software consumed per step). Paywalled and withdrawn from
    PMC, so it could not be consulted; it is not implemented here.
  - 'Shapiro, E. (2012). A mechanical Turing machine: blueprint for a biomolecular computer. Interface
    Focus 2(4):497-503. https://doi.org/10.1098/rsfs.2011.0118 (open access; the book''s [767]) - the
    1998-1999 blueprint of the molecular Turing machine the automaton was cut down from.'
  - Shapiro, E. & Benenson, Y. (2006). Bringing DNA computers to life. Scientific American 294(5):44-51
    (the book's [768]) - popular account; not used for any number here.
  - Banzhaf, W. & Yamamoto, L. (2015). Artificial Chemistries, section 19.3.1 and figs. 19.13-19.16 (MIT
    Press).
  decisions:
  - 'Attribution: the book''s refs for this entry are [767] = Shapiro (2012, Interface Focus, the mechanical
    Turing machine blueprint), [768] = Shapiro & Benenson (2006, Scientific American) and [100] = Benenson
    et al. (2003, PNAS). The book itself says ''a detailed description of the DNA automaton can be found
    in [100]'', and figs. 19.14-19.16 cite [100]. The implementation therefore follows the 2003 PNAS automaton,
    not the 2001 Nature one, and the 2001 paper (which the bibliography does not list under this entry)
    is recorded in sources as the original.'
  - The 2001 automaton ligated each software molecule to the input, consuming one software molecule and
    two ATP per transition (1000 s per transition). Its sequences are only in the paywalled Nature paper,
    so only the 2003 ATP-free design - the one the book's figures show, with the software recycled and
    the input as the only fuel - is implemented.
  - 'Every transition rule is derived from the published oligonucleotides rather than typed in: the 4-nt
    5'' antisense overhang gives the detected <state, symbol> (its reverse complement is that symbol''s
    S1 window if it is the leftmost four bases, its S0 window if it is the rightmost four), and the number
    of sense bases between GGATG and the end of the software duplex (0, 1 or 2) gives the next state.
    The eight rules so derived reproduce fig. 2C exactly (test).'
  - 'Book fig. 19.13 shows a two-state automaton that accepts an even number of b symbols, while the automaton
    of PNAS fig. 1A (A1) accepts an even number of a symbols. Both are implemented: A1-A3 are the three
    programs actually run in the lab, `program: book` is the book''s example, which was not.'
  - Input molecules are reconstructed from the encoding (5-bp symbols a = TGGCT, b = GCAGG, terminator
    = GTCGG, 3-bp spacer GCC, 4-nt 5' sense overhang encoding <S0, first symbol>, 1-nt 3' A extrusion).
    The reconstruction reproduces the published abb and abba oligonucleotides base for base, and I3-I8
    reproduce the published ligation products of the blocks babb2, baaa2 and abbb3 (test).
  - 'Species are deduplicated by molecule, not by input: an intermediate is fully determined by <state,
    remaining symbols>, so two inputs that reach the same configuration share the species. All inputs
    listed in `inputs` sit in one reaction volume; in fig. 3B each lane was a separate tube.'
  - The scattered symbol is kept as one species, a 7-9 nt duplex with 3-5 bp paired, exactly as cleaved.
    The paper says it probably dissociates into single strands in solution; that dissociation, and the
    reversible rebinding of fragments to sticky ends that it mentions for very long inputs, are not modelled.
  - 'Rates: only the measured per-transition times are used, as a mass-action constant on the cleavage
    step (k = 1/20 s for `conditions: fast`, k = 1/45 s for `parallel`), with the conditions recorded
    on the rate dict. The published Kd values (2 nM hardware/software, 50 uM software/input) are equilibrium
    constants, not rate laws, so the assembly and hybridisation steps carry no rate and the Kd values
    are recorded in extras[''published'']. The default `conditions: standard` (fig. 3B) has no published
    step time and therefore no rate constant; `provides` claims rate-constants for the fast and parallel
    conditions.'
  - The computation stops when the exposed sticky end encodes the terminator, which no software molecule
    detects; the remaining molecule is the output, with a 15-nt antisense strand for S0 and 16 nt for
    S1, the two bands of the published gels. A program that has no rule for some exposed <state, symbol>
    suspends, and the run is marked suspended in extras['analysis'].
  - 'Nondeterministic programs (two software molecules detecting the same <state, symbol>, i.e. the stochastic
    computing of Adar et al. 2004) are rejected with a ValueError: the network here is the deterministic
    cascade.'
  - 'The hardware/software complex is recycled over a cycle, not within a reaction: the hybridisation
    step consumes it and the cleavage step releases it, so no reaction has a species on both sides and
    the `catalysts` capability is not claimed. The tests check the cycle instead.'
  - 'The generator is deterministic: `rng` is unused and the seed does not change the network.'
  - 'v1 params dropped: `automaton` (callable) becomes `program`/`transitions`, `input_string` (matrix)
    becomes `inputs`, and `n_states` disappears - the FokI construction is fixed at two states (the book
    notes that larger FSMs would exceed what fits inside FokI).'
  phenomena:
  - 'autonomous operation: once mixed, hardware, software and input run the whole computation with no
    human intervention and no external energy supply (contrast Adleman''s protocol)'
  - 'the input is both data and fuel: hydrolysis of two phosphodiester bonds per transition drives the
    cascade, dissipating about 34 kT per transition (<= 5.3e-9 W/ul)'
  - 'software and hardware are recycled: with software at 0.075 molar ratio, single molecules performed
    29, 21 and 54 transitions over 18 h (fig. 3C)'
  - 'massive parallelism: 3e12 automata per ul performing 6.6e10 transitions per second per ul, 20-45
    s per transition per molecule, about 8000x the throughput of the 2001 ligase automaton'
  - 'high fidelity: 99.9% per transition for long inputs, ~99.5% average over 12-symbol inputs, lower
    apparent values (95%) for short inputs'
  - 'programmability: all eight transitions of a two-state two-symbol FSM are available as separate molecules,
    and the three published programs give the expected final state on all eight published inputs (fig.
    3B)'
  notes: 'Autonomous, unlike Adleman''s HPP computation. The transition molecules are cofactors of FokI
    rather than an encoded program in the Turing sense, and the "digest the input from the front" operating
    mode is the one Fraglets later adopted in silico. Chemart returns the in-silico network of the published
    experiment: species are the actual published DNA molecules, reactions are the hybridisation and cleavage
    steps of PNAS 2003 fig. 2E, and extras carry the measured rates, fidelities and energetics that the
    network itself cannot express.

    '