Existing “autonomous” system Sakamoto & Hagiya State transitions by molecules A transition...

53
Existing “autonomous” system Existing “autonomous” system Sakamoto & Hagiya Sakamoto & Hagiya State transitions by molecules State transitions by molecules A transition table: A transition table: {S {S S’} S’} Starting from the initial state, calculate as many as possible Starting from the initial state, calculate as many as possible following states according to the transition table following states according to the transition table

Transcript of Existing “autonomous” system Sakamoto & Hagiya State transitions by molecules A transition...

Existing “autonomous” systemExisting “autonomous” system

Sakamoto & HagiyaSakamoto & Hagiya

State transitions by moleculesState transitions by molecules

A transition table:A transition table: {S {S S’} S’}

Starting from the initial state, calculate as many as possibleStarting from the initial state, calculate as many as possiblefollowing states according to the transition tablefollowing states according to the transition table

Molecular implementationMolecular implementation

• Each state is a ss-DNA segmentEach state is a ss-DNA segment• Each transition S -> S’ is a sequence of S-complementaryEach transition S -> S’ is a sequence of S-complementaryand S’-complementary DNAand S’-complementary DNA• The transitions are performed in a PCR-like fashionThe transitions are performed in a PCR-like fashion

S0S0S1S1S2S2

The rules:The rules:S0 -> S1S0 -> S1S1 -> S2S1 -> S2

An “Input”An “Input”

Molecular implementationMolecular implementation

• Each state is a ss-DNA segmentEach state is a ss-DNA segment• Each transition S -> S’ is a sequence of S-complementaryEach transition S -> S’ is a sequence of S-complementaryand S’-complementary DNAand S’-complementary DNA• The transitions are performed in a PCR-like fashionThe transitions are performed in a PCR-like fashion

S0S0S1S1S2S2

The rules:The rules:S0 -> S1S0 -> S1S1 -> S2S1 -> S2

Molecular implementationMolecular implementation

• Each state is a ss-DNA segmentEach state is a ss-DNA segment• Each transition S -> S’ is a sequence of S-complementaryEach transition S -> S’ is a sequence of S-complementaryand S’-complementary DNAand S’-complementary DNA• The transitions are performed in a PCR-like fashionThe transitions are performed in a PCR-like fashion

S0S0S1S1S2S2

The rules:The rules:S0 -> S1S0 -> S1S1 -> S2S1 -> S2

Molecular implementationMolecular implementation

• Each state is a ss-DNA segmentEach state is a ss-DNA segment• Each transition S -> S’ is a sequence of S-complementaryEach transition S -> S’ is a sequence of S-complementaryand S’-complementary DNAand S’-complementary DNA• The transitions are performed in a PCR-like fashionThe transitions are performed in a PCR-like fashion

S0S0S1S1S2S2

The rules:The rules:S0 -> S1S0 -> S1S1 -> S2S1 -> S2

Molecular implementationMolecular implementation

• Each state is a ss-DNA segmentEach state is a ss-DNA segment• Each transition S -> S’ is a sequence of S-complementaryEach transition S -> S’ is a sequence of S-complementaryand S’-complementary DNAand S’-complementary DNA• The transitions are performed in a PCR-like fashionThe transitions are performed in a PCR-like fashion

S0S0S1S1S2S2

The rules:The rules:S0 -> S1S0 -> S1S1 -> S2S1 -> S2

Molecular implementationMolecular implementation

• Each state is a ss-DNA segmentEach state is a ss-DNA segment• Each transition S -> S’ is a sequence of S-complementaryEach transition S -> S’ is a sequence of S-complementaryand S’-complementary DNAand S’-complementary DNA• The transitions are performed in a PCR-like fashionThe transitions are performed in a PCR-like fashion

S0S0S1S1S2S2

The rules:The rules:S0 -> S1S0 -> S1S1 -> S2S1 -> S2

Molecular implementationMolecular implementation

• Each state is a ss-DNA segmentEach state is a ss-DNA segment• Each transition S -> S’ is a sequence of S-complementaryEach transition S -> S’ is a sequence of S-complementaryand S’-complementary DNAand S’-complementary DNA• The transitions are performed in a PCR-like fashionThe transitions are performed in a PCR-like fashion

S0S0S1S1S2S2

The rules:The rules:S0 -> S1S0 -> S1S1 -> S2S1 -> S2

The resultThe result

Acknowledgements• Kobi Benenson

• Ehud Keinan

• Zvi Livneh

• Tami Paz-Elizur

• Irit Sagi, Ada Yonath

From Turing Machines to Finite Automata

• A finite automaton is a Turing machine that can only– Move to the right

– Read but not write

• An elementary, well-characterized class of computing devices.

Computable (Turing Machines)Computable (Turing Machines)

Context-free (Stack automata)Context-free (Stack automata)

Regular (Finite Automata)Regular (Finite Automata)

0 1 0 0 1 1 0 0 1 0 0 1 1 0 ............

S0,0 S0

S1,0 S1

S0,1 S1

S1,1 S0

State transition rules

Turing Machine and Finite AutomatonTuring Machine and Finite Automaton

S0 S1

1

1

00

State transition diagram

Example ComputationExample Computation

S0,0 S0

S1,0 S1

S0,1 S1

S1,1 S0

State transition rules

0 1 0 0 1 0 0

S0

initial state: S0

<S0, 0100100>

S1

0 1 0 0 1 0 0 <S1, 00100>

S0,1 S1

S1

0 1 0 0 1 0 0 <S1, 0100>

S1,0 S1

S1

0 1 0 0 1 0 0 <S1, 100>

S1,0 S1

0 1 0 0 1 0 0

S0

<S0, 00>

S1,1 S0

0 1 0 0 1 0 0

S0

final state: S0 <S0, 0>

S0,0 S0

0 1 0 0 1 0 0

S0

<S0, 100100>

S0,0 S0

S0 S1

1

1

00

State transition diagram

Molecular realization of Finite Automata

• Input: DNAS, a rest a’

• Program: DNA

S, aFokI

• Execution engine: Class-II restriction enzyme FokI, DNA Ligase, ATP

Fok I Ligase

S, a rest a’

Basic cycle of automatonBasic cycle of automaton

Iterative processing of input until the end is reachedIterative processing of input until the end is reached

S, a S’ <S, nil>

Detect the result

State-symbol tag

S’, a’ rest

S0,1S0,100 11

S0,1S0,100 11

S0,1S0,1FokIFokI

S0,1S0,1FokIFokI

S0,1S0,100 11

Ligase

FokIFokI 00 11

Fok I

FokIFokI 11S1,0S1,0

Fok I

11S1,0S1,0

11S1,0S1,0

Molecular realization of FA

FAFA

AlphabetAlphabet::{0 = 5’- {0 = 5’- CTGGCTCTGGCT,, 1 = 5’- 1 = 5’- CGCAGCCGCAGC}}

StatesStates::{S0,S1}{S0,S1}

S0, 0 S0, 0 S0 S0S0, 1 S0, 1 S1 S1S1, 0 S1, 0 S1 S1 S1, 1 S1, 1 S0 S0

S0S0 S1S1

0000

11

11

Transition TableTransition Table::

Representation of states

States are not physically separated from the symbols.States are not physically separated from the symbols.Subsequences of the alphabet codes represent different statesSubsequences of the alphabet codes represent different states

{0 = 5’- {0 = 5’- CTGGCTCTGGCT, 1 = 5’- , 1 = 5’- CGCAGCCGCAGC}}

Representation of states

{0 = 5’- {0 = 5’- CTGGCTCTGGCT, 1 = 5’- , 1 = 5’- CGCAGCCGCAGC}}

CTGGCTGG = = a combination of S1 and 0a combination of S1 and 0

States are not physically separated from the symbols.States are not physically separated from the symbols.Subsequences of the alphabet codes represent different statesSubsequences of the alphabet codes represent different states

Representation of states

{0 = 5’- {0 = 5’- CTGGCTCTGGCT, 1 = 5’- , 1 = 5’- CGCAGCCGCAGC}}

GGCTGGCT = = a combination of S0 and 0a combination of S0 and 0

CTGGCTGG = = a combination of S1 and 0a combination of S1 and 0

States are not physically separated from the symbols.States are not physically separated from the symbols.Subsequences of the alphabet codes represent different statesSubsequences of the alphabet codes represent different states

Representation of states

{0 = 5’- {0 = 5’- CTGGCTCTGGCT, 1 = 5’- , 1 = 5’- CGCAGCCGCAGC}}

GGCTGGCT = = <S0,0><S0,0>

CTGGCTGG = = <S1, 0><S1, 0> CGCA CGCA = = <S1, 1><S1, 1>

CAGC CAGC = = <S0,1><S0,1>

States are not physically separated from the symbols.States are not physically separated from the symbols.Subsequences of the alphabet codes represent different statesSubsequences of the alphabet codes represent different states

How Does it Work?

Adapters = transition moleculesAdapters = transition molecules

GGATGGGATGCCTACCCTAC NNNNNNNN

Fok I (9/13) recognition siteFok I (9/13) recognition site

S0, 0 S0, 0 S0 S0

S0, 1 S0, 1 S1 S1

S1, 0 S1, 0 S1 S1

S1, 1 S1, 1 S0 S0

3 3 bpbp

5 5 bpbp

3 3 bpbp

1 1 bpbp

CCGACCGA

GTCGGTCG

GACCGACC

GCGTGCGT

Animation of experimentAnimation of experiment

Fok I

450 bpGGATGATATCGCCGCAGCCTGGCTCGCAGCTGTCGCCCTACTATAGCGGCGTCGGACCGAGCGTCGACAGCG

5'-p

8 bp

5'-p

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

v

TT11 1100

450 bpGGATGATATCGCCGCAGCCTGGCTCGCAGCTGTCGCCCTACTATAGCGGCGTCGGACCGAGCGTCGACAGCG

5'-p

8 bp

5'-p

5'-p

5'-p

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

v

TT11 1100

GGATGATATCGCCGCCTACTATAGCGGCGTCG

5'-p

8 bp

5' - p

450 bp CAGCCTGGCTCGCAGCTGTCGC GACCGAGCGTCGACAGCG

5'-p

5'-p

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

TT11 1100

v

GGATGATATCGCCGCCTACTATAGCGGCGTCG

5'-p

8 bp

5' - p

450 bp CAGCCTGGCTCGCAGCTGTCGC GACCGAGCGTCGACAGCG

5'-p

5'-p

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

v

TT11 1100

450 bp CAGCCTGGCTCGCAGCTGTCGC GACCGAGCGTCGACAGCG

5'-p

5'-p

GGATGACGACCCTACTGCTGGTCG

5'-p

5'-p

15 bp

Ligase

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

v

GGATGTACCCTACATGCCGA

5'-p

22 bp

5' - p<S0-0> <S1-0>

GGATGACGCCTACTGCGACC

5' - p

5' - p

15 bp

<S1-1>

GGATGGCCTACCGCGT

5' - p

21 bp

5' - p<S0-1>

GGATGACGACCCTACTGCTGGTCG

5' - p

5' - p

15 bp

TT11 1100

Fok I

450 bp

5'-p

GGATGACGACCAGCCTGGCTCGCAGCTGTCGCCCTACTGCTGGTCGGACCGAGCGTCGACAGCG

5'-p

15 bp

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

v

TT11 1100

GGATGTACCCTACATGCCGA

5'-p

22 bp

5' - p<S0-0> <S1-0>

GGATGACGCCTACTGCGACC

5' - p

5' - p

15 bp

<S1-1>

GGATGGCCTACCGCGT

5' - p

21 bp

5' - p<S0-1>

GGATGACGACCCTACTGCTGGTCG

5' - p

5' - p

15 bp

450 bp

5'-p

CTGGCTCGCAGCTGTCGC GAGCGTCGACAGCG

GGATGACGACCAGCCCTACTGCTGGTCGGACC

5'-p

15 bp

5'-p

5'-p

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

v

TT11 1100

GGATGTACCCTACATGCCGA

5'-p

22 bp

5' - p<S0-0> <S1-0>

GGATGACGCCTACTGCGACC

5' - p

5' - p

15 bp

<S1-1>

GGATGGCCTACCGCGT

5' - p

21 bp

5' - p<S0-1>

GGATGACGACCCTACTGCTGGTCG

5' - p

5' - p

15 bp

GGATGACGACCAGCCCTACTGCTGGTCGGACC

5'-p

15 bp

5' - p

450 bp

5'-p

CTGGCTCGCAGCTGTCGC GAGCGTCGACAGCG

5'-p

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

v

TT11 1100

GGATGTACCCTACATGCCGA

5'-p

22 bp

5' - p<S0-0> <S1-0>

GGATGACGCCTACTGCGACC

5' - p

5' - p

15 bp

<S1-1>

GGATGGCCTACCGCGT

5' - p

21 bp

5' - p<S0-1>

GGATGACGACCCTACTGCTGGTCG

5' - p

5' - p

15 bp

GGATGACGACCAGCCCTACTGCTGGTCGGACC

5'-p

15 bp

5' - p

450 bp

5'-p

CTGGCTCGCAGCTGTCGC GAGCGTCGACAGCG

5'-p

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

v

TT1100

GGATGTACCCTACATGCCGA

5'-p

22 bp

5' - p<S0-0> <S1-0>

GGATGACGCCTACTGCGACC

5' - p

5' - p

15 bp

<S1-1>

GGATGGCCTACCGCGT

5' - p

21 bp

5' - p<S0-1>

GGATGACGACCCTACTGCTGGTCG

5' - p

5' - p

15 bp

11

450 bp

5'-p

CTGGCTCGCAGCTGTCGC GAGCGTCGACAGCG

5'-pLigase

GGATGACGCCTACTGCGACC

5'-p

5'-p

15 bp

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

v

GGATGTACCCTACATGCCGA

5'-p

22 bp

5' - p<S0-0> <S1-0>

GGATGACGCCTACTGCGACC

5' - p

5' - p

15 bp

<S1-1>

GGATGGCCTACCGCGT

5' - p

21 bp

5' - p<S0-1>

GGATGACGACCCTACTGCTGGTCG

5' - p

5' - p

15 bp

TT110011

GGATGACGCTGGCTCGCAGCTGTCGCCCTACTGCGACCGAGCGTCGACAGCG

5'-p

15 bp 450 bp

5' - p

Fok I

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

v

TT1100

GGATGTACCCTACATGCCGA

5'-p

22 bp

5' - p<S0-0> <S1-0>

GGATGACGCCTACTGCGACC

5' - p

5' - p

15 bp

<S1-1>

GGATGGCCTACCGCGT

5' - p

21 bp

5' - p<S0-1>

GGATGACGACCCTACTGCTGGTCG

5' - p

5' - p

15 bp

11

5'-p

GGATGACGCTGGCTCCTACTGCGACCGAGCGT

5'-p

15 bp

5'-p

CGCAGCTGTCGC CGACAGCG 450 bp

5' - p

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

v

TT1100

GGATGTACCCTACATGCCGA

5'-p

22 bp

5' - p<S0-0> <S1-0>

GGATGACGCCTACTGCGACC

5' - p

5' - p

15 bp

<S1-1>

GGATGGCCTACCGCGT

5' - p

21 bp

5' - p<S0-1>

GGATGACGACCCTACTGCTGGTCG

5' - p

5' - p

15 bp

11

5'-p

GGATGACGCTGGCTCCTACTGCGACCGAGCGT

5'-p

15 bp

5'-p

CGCAGCTGTCGC CGACAGCG 450 bp

5' - p

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

v

TT1100

GGATGTACCCTACATGCCGA

5'-p

22 bp

5' - p<S0-0> <S1-0>

GGATGACGCCTACTGCGACC

5' - p

5' - p

15 bp

<S1-1>

GGATGGCCTACCGCGT

5' - p

21 bp

5' - p<S0-1>

GGATGACGACCCTACTGCTGGTCG

5' - p

5' - p

15 bp

11

5'-p

GGATGACGCTGGCTCCTACTGCGACCGAGCGT

5'-p

15 bp

5'-p

CGCAGCTGTCGC CGACAGCG 450 bp

5' - p

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

v

TT1100

GGATGTACCCTACATGCCGA

5'-p

22 bp

5' - p<S0-0> <S1-0>

GGATGACGCCTACTGCGACC

5' - p

5' - p

15 bp

<S1-1>

GGATGGCCTACCGCGT

5' - p

21 bp

5' - p<S0-1>

GGATGACGACCCTACTGCTGGTCG

5' - p

5' - p

15 bp

11

5'-p

CGCAGCTGTCGC CGACAGCG 450 bp

5' - p

Ligase

GGATGGCCTACCGCGT

5'-p

21 bp

5' - p

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

v

GGATGTACCCTACATGCCGA

5'-p

22 bp

5' - p<S0-0> <S1-0>

GGATGACGCCTACTGCGACC

5' - p

5' - p

15 bp

<S1-1>

GGATGGCCTACCGCGT

5' - p

21 bp

5' - p<S0-1>

GGATGACGACCCTACTGCTGGTCG

5' - p

5' - p

15 bp

TT110011

450 bp

5'-p

GGATGGCGCAGCTGTCGCCCTACCGCGTCGACAGCG

5'-p

21 bp

Fok I

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

TT11 1100

5'-p

GGATGGCGCAGCTGCCTACCGCGTCGACAGCG

5'-p

21 bp 450 bp

5'-p

TCGC

5'-p

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

TT11 1100

5'-p

GGATGGCGCAGCTGCCTACCGCGTCGACAGCG

5'-p

21 bp 450 bp

5'-p

TCGC

5'-p

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

TT110011

5'-p

GGATGGCGCAGCTGCCTACCGCGTCGACAGCG

5'-p

21 bp 450 bp

5'-p

TCGC

5'-p

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

TT11 1100

450 bp

5'-p

TCGC

5'-p

Ligase

5'-p

170 bp AGCG

5' - p

5'-p

250 bp ACAG

5' - p

5'-p

170 bp AGCG

5' - p

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

450 bp

5'-p

TCGCAGCG

5'-p

170 bp

<S0> = "cut inside"

<S1> = "cut outside"

S0,0 S0S1,0 S1S0,1 S1S1,1 S0

State transition rules

Why autonomous?

• Fok I and Ligase act in the same environment (NED4 buffer + 1 mM ATP, 18 oC)

• No interference between input molecules that are at different stages of computation

• Each molecule is an independent automaton. There are ~1013 computations running in parallel

Computation 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10

1,10: 50 1,10: 50 bp ladder; 2: 101 input; 3: 010010 input; 4: S0-detector; 5: S1-detectorbp ladder; 2: 101 input; 3: 010010 input; 4: S0-detector; 5: S1-detector6: Computation result of 101 input; 7: Computation result of 010010 input6: Computation result of 101 input; 7: Computation result of 010010 input8: Computation result of 010100 input; 9: Computation result of 001000 input8: Computation result of 010100 input; 9: Computation result of 001000 input

150 150 bpbp

200 200 bpbp

S0-resultS0-result

S1-resultS1-result

InputInputdegradationdegradationproductsproducts

Reaction conditions: Reaction conditions: Environment: 120 Environment: 120 l of NEB4 buffer + 1 mM ATP, 18 l of NEB4 buffer + 1 mM ATP, 18 ooC, 80 minC, 80 minInput: 2.5 pmol; Detectors: 1.5 pmol each; Transition molecules: 20 pmol eachInput: 2.5 pmol; Detectors: 1.5 pmol each; Transition molecules: 20 pmol eachFok I: 12 units; T4 Ligase: 120 unitsFok I: 12 units; T4 Ligase: 120 units

S0-dS0-d

S1-dS1-d

Proof of Mechanism

A complete mixture:A complete mixture:Input (010100) ; S0-detector; S1-detector; T1,T2,T3,T4; Fok I; T4 DNA LigaseInput (010100) ; S0-detector; S1-detector; T1,T2,T3,T4; Fok I; T4 DNA Ligase

The gel shows a “component removal” experiment, where each component was The gel shows a “component removal” experiment, where each component was omitted from the complete mixture and the result was compared to the predicted omitted from the complete mixture and the result was compared to the predicted outcomeoutcome

1 2 3 4 5 6 7 8 9 10 11 121 2 3 4 5 6 7 8 9 10 11 12

1,12: 50 1,12: 50 bp ladderbp ladder2: complete mixture2: complete mixture3: No Input3: No Input4: No S0-detector4: No S0-detector5: No S1-detector5: No S1-detector6: No T16: No T17: No T27: No T28: No T38: No T39: No T49: No T410: No Fok I10: No Fok I11: No T4 DNA Ligase11: No T4 DNA Ligase

PredictedPredicted ActualActual++----++------------

++----++--??--------

Result bandResult band

Estimation of system correctness

1 2 3 4 5 6 71 2 3 4 5 6 7Detectors are labeled with Detectors are labeled with 3232PP

S0-resultS0-result

S1-resultS1-result

S1-detectorS1-detector

S0-detectorS0-detector

There are possible “wrong” bands. Their origin is currently There are possible “wrong” bands. Their origin is currently being determined. At any rate, the correctness is >95%being determined. At any rate, the correctness is >95%

Exact error rate still needs to be determinedExact error rate still needs to be determined

Lanes:Lanes:1,7: 50 bp ladder1,7: 50 bp ladder2: 2: 3232P-S0-detectorP-S0-detector3: 3: 3232P-S1-detectorP-S1-detector4: Computation over 0100104: Computation over 0100105: Computation over 0101005: Computation over 0101006: Computation over 0010006: Computation over 001000