bio-molecular computing of finite-state automata yasubumi sakakibara biosciences and informatics...

Post on 19-Dec-2015

213 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Bio-molecular computing of finite-state automata

Yasubumi SakakibaraBiosciences and Informatics

Keio UniversityJapan

9th International Colloquium on Grammatical Inference (ICGI 2008), 2008

What is DNA computer? Computer in vitro or in vivo

• Computational devise: DNA strands• Adenine, Cytosine, Guanine, Thymine• Watson-Crick complement (bonding) A – T, C – G

• Biological operations to do Computation:• Annealing • Amplifying• Ligation• …

• DNA sequences are used to encode information while enzymes can be employed to simulate simple computations

Image of DNA Computer

Test Tube

ATATCCCCCCCCTTTT

GGGGGGGG

DNA strands

CGCGCGCG

Image of DNA Computer

Test Tube

ATATCCCC

CCCCTTTTGGGGGGGG

Hybridization:

CGCGCGCG

Image of DNA Computer

Test Tube

ATATCCCCCCCCTTTT

GGGG GGGG

Hybridization:

Self-Assembly

CGCGCGCG

Leonard Adleman’s seminal work  

(Science 266, 1994)

Solved an instance of directed Hamiltonian path problem solely by manipulating DNA sequences

ハミルトン経路問題( HPP)

60

13

2

4

5

Directed Hamiltonian Path Problem (HPP)

List of molecular biological operations

Synthesis of a desired DNA strand (sequence) Separation of DNA strands by length

using gel-electrophoresis Merging : pour two test tubes into one to do union Extraction : extract DNA strands containing a given pattern

as a subsequence Melting/Annealing : break apart/bond together two single

DNA strands with complementary sequences Amplifying : make copies of DNA strands by using

Polymerase Chain Reaction (PCR) Cutting : cut DNA strands by using restriction enzymes Ligation : concatenate DNA strands by using ligase

Computational process of DNA computer

• Computational process of DNA computer:   a sequence of test tubes

Advantage of DNA computer:– microscopic DNA molecule offers massively parallel

computation and huge information storage– potential application to molecular biology and medical

research

input output

biological operations

Automaton in silico, in vitro, in vivo

in silico computer in vitro computer

Finite Automata

PushdownAutomata

Linear Bounded Automaton

Turing machine

in vivo computer

Finite Automata Finite Automata

low

(computation pow

er

) high

q0 q1

C

G q4q3

q2 state

transition function

input symbol 

q3 q4G

initial state

final state

TA

C

Finite-state Automaton: Example

= { A, C, G, T } (for DNA sequences)

Finite-state Automaton (FA): Definition

Formal Definition of (deterministic) Finite-state Automaton:

states  finalof set

state initial

  to input on fromn transitiostate

 functionn transitiostate

(alphabet) symbols input of set finite

states of set finite

:

:

:

),(

:

:},,{

:},,{

),,,,(

0

1

1

0

QF

q

qqqaq

aa

qqQ

FqQM

jiji a

M

N

   

q0 q1

Aq2

Tq4

G

q3

CC

Implementation of Finite Automata in vitro

Length-encoding method to implement FA(Yokomori, Sakakibara, & Kobayashi, 2002)

• Finite automaton with k states (from #1 to #k)

• Encode input string x1x2…xm into ssDNA:

• State transition from state i to state j with symbol a :

timestimes1times1

)()()( 21

lmxexexe

kk

TTTTTTTTTTTT

)'5( )( )'3(times1times

jkiae AAAAA

ssDNA:

complementary ssDNA:

(5’) (3’)

‘0’ 5’- CCC -3’

① ssDNA subsequence encoding input symbol:

② Encode input string by joining into ssDNA sequence

DNA sequence design: input symbol

(Ex)

“010”(Ex)

00 1

‘1’ 5’- GGG -3’state

(2 states)5’- TTT -3’

5’- TCCCTTTGGGTTTCCCT -3’

DNA sequence design: transition function

x y0 : AGGGA

Example:

x x0 : AGGGAA②

x y1 : ACCCA③

x x1 : ACCCAA④

y y0 : AAGGGA⑤

y x0 : AAGGGAA⑥

y y1 : AACCCA⑦

y x1 : AACCCAA⑧

8 transition rules for two-states FA

x y

0

0

1

0

11

0

1

#1 #2

y y0 : AAGGGA

x x0 : AGGGAA

x y1 : ACCCAy x : AACCCAA

1

TCCCTTTGGGTTTCCCT

Computation process using hybridization:Accepting case

Input string : 010

AGGGAAACCCAAAGGGAAccept

x y

1

1

0

0

Input string : 011

y y0 : AAGGGA

x x0 : AGGGAA

x y1 : ACCCAy x : AACCCAA

1

Computation process using hybridization:Rejecting case

x y

1

1

0

0

AGGGAAACCCAAACCCAATCCCTTTGGGTTTGGGT Reject

Input string : 011

y y0 : AAGGGA

x x0 : AGGGAA

x y1 : ACCCAy x : AACCCAA

1

TCCCTTTGGGTTTGGGT

x y

1

1

0

0

ACCCAAGGGAAACCCAReject

Computation process using hybridization:Rejecting case

Ligase

YYYYYYYYYYYY

detection, purification sequence:XXXXXX-

TTCCCTTTGGGTTTCCCT

input sequence:

Experimental protocol for executing FA in vitro(Kuramochi & Sakakibara, DNA11, 2005)

ACCCAA

AAGGGA

transition function:

AACCCAACCCA

AAGGGAA

Protocol of in vitro automaton

Hybridizationaccept

Ligation

Purification by beads

PCR

reject

PCR sequence

purification sequence

input string

Input symbol ‘0’ GCGTGTACGATGCAG

Input symbol ‘1’ GACGTTGGATGTGGG

state AAGCAGTTTT

purification probe CTGGTTGCTTGTCCC

detection probe CCCTGTTCGTTGGTC

PCR primer CCGACTTCGTACGAGATTAG

concrete ssDNA sequences:

DNA sequences designed with TM control

Experimental result: 2-states FA

0

input strings:

(a) 1101   reject

(b) 1110   reject

(c) 1010   accept

1

(a)     (b)     (c)

acceptreject reject

190mer

gel-electrophoresis:

finite-automaton:

input strings:

(a) 1101   reject

(b) 1110   accept

(c) 1010   accept

Experimental result: 4-states FA

0

0

1

1 1

(a)     (b)      (c)

190mer

acceptacceptreject

gel-electrophoresis:

finite-automaton:

Experimental result: from 2-states to 6-states FA

1

1 1

1

1

1

1

1

1

1 1

1

1 1

1

1

11

1

1

input string:

111111

finite-automata:

240mer

2 (accept)

3 (accept)

4 (reject)5 (reject)

6 (accept)

Experimental result: from 2-states to 6-states FA

Input string: 111111   (six ‘1’s)

gel-electrophoresis:

Development of in vivo computerbased on E.coli

Bacteria computer

Protein synthesis (Translation) system Molecular machine to synthesize proteins

• Ribosomes, • tRNAs, • several translation factors

mRNA

Ribosome

tRNA

Translation process to synthesize proteins

DNA-- AUG CCG CAA AUC ACU CUA UGG CAG CGU CCA --

mRNA

transcription

-- AUG CCG CAA AUC ACU CUG UGG CAG CGU UAG --

Met Pro GlnIle

Thr

translations

GAC

Leu

ACC

Trp

Initiation codon stop codon3-base codons

amino acid sequence

Methods for implementing FA in vivo(Nakagawa, Sakamoto, & Sakakibara, DNA11, 2005)

Use protein-synthesis mechanism of E.coli

+ 4-base codon technique Input string

→ encoded to mRNA State-transition function

→ encoded to 3, 4-base anticodon Translation of mRNA = Computation (accepting)

process of FA

in vitro (low translation efficiency) → in vivo(Sakakibara & Hohsaka, DNA 9, 2003)

Four-base codon techniques(Hohsaka et al, 2001)

AGC      CGUUCG

Ser

UCCA

Xaa

mRNAAGGU

4-base codon

4-base anticodon

nonnatural amino acid

tRNA

5-base codon, 6-base, …

Implementing FA: example

State = {s0, s1}  

Input symbol = {1}

State-transition function: δ(s0,1) = s1, δ(s1,1) = s0

Initial & Final state: s0

Number of input symbols ‘1’

  Even → Accept

  Odd → Reject

Parity check 1

1s0 s1

Implementing FA: example

Input symbol ‘1’: AGGU      State: A

‘11’ = AGGUAAGGUAAAUAA - reporter gene

‘111’ = AGGUAAGGUAAGGUAAAUAA -reporter gene

1 1

encoding states

stop codon

1 1 1

1

1s0 s1

Encode input string into mRNA:

Implementing FA: example

1

1s0 s1

Encode state transitions into tRNA with anticodons

δ(s0, 1) = s1  

+

Encode state-transition function:

δ(s1, 1) = s0

4-base anticodon tRNA

3-base anticodon tRNAs

UCCA

Ser

UUC

Lys Val

CAU

Computation process : accepting case(even number of ‘1’)

5’ - AGGUAAGGUAAAUAAC - reporter gene  3’  

mRNAStop codon

1

1

Ser

δ(s0, 1) = s0   δ(s1, 1) = s0

Input string: ’11’

UCCA

Ser

+

UUC

Lys Val

CAU

UCCA

Ser

s1s0

Computation process : accepting case(even number of ‘1’)

5’ - AGGUAAGGUAAAUAAC - reporter gene  3’  

mRNAStop codon

1

1s0

Ser Lys

δ(s0, 1) = s0   δ(s1, 1) = s0

Input string: ’11’

UCCA

Ser

+

UUC

Lys Val

CAU

UUC

Lys

s1

Computation process : accepting case(even number of ‘1’)

5’ - AGGUAAGGUAAAUAAC - reporter gene  3’  

mRNAStop codon

1

1

Ser Lys

δ(s0, 1) = s0   δ(s1, 1) = s0

Input string: ’11’

UCCA

Ser

+

UUC

Lys Val

CAU

s0 s1

CAU

Val

Val

Computation process : accepting case(even number of ‘1’)

5’ - AGGUAAGGUAAAUAAC - reporter gene  3’  

mRNAStop codon

1

1

Ser Lys

δ(s0, 1) = s0   δ(s1, 1) = s0

Input string: ’11’

UCCA

Ser

+

UUC

Lys Val

CAU

s0 s1

Val Asn

UUA

Asn

Computation process : accepting case(even number of ‘1’)

5’ - AGGUAAGGUAAAUAAC - reporter gene  3’  

mRNAStop codon

1

1

Ser Lys

δ(s0, 1) = s0   δ(s1, 1) = s0

Input string: ’11’

UCCA

Ser

+

UUC

Lys Val

CAU

s0 s1

Val Asn

UUG

LeuLeu

Translation continue

Computation process : rejecting case(odd number of ‘1’)

5’ - AGGUAAGGUAAGGUAAAUAAC - reporter gene  3’

mRNAStop codon

Input string: ’111’

δ(s0, 1) = s0   δ(s1, 1) = s0

UCCA

Ser

+

UUC

Lys Val

CAUSer

UCCA

Ser

1

1s1s0

Computation process : rejecting case(odd number of ‘1’)

5’ - AGGUAAGGUAAGGUAAAUAAC - reporter gene  3’

mRNAStop codon

Input string: ’111’

δ(s0, 1) = s0   δ(s1, 1) = s0

UCCA

Ser

+

UUC

Lys Val

CAU

1

1s0

Ser Lys

UUC

Lys

s1

Computation process : rejecting case(odd number of ‘1’)

5’ - AGGUAAGGUAAGGUAAAUAAC - reporter gene  3’

mRNAStop codon

Input string: ’111’

δ(s0, 1) = s0   δ(s1, 1) = s0

UCCA

Ser

+

UUC

Lys Val

CAU

1

1

Ser Lys

s0 s1

CAU

Val

Val

Computation process : rejecting case(odd number of ‘1’)

5’ - AGGUAAGGUAAGGUAAAUAAC - reporter gene  3’

mRNAStop codon

Input string: ’111’

δ(s0, 1) = s0   δ(s1, 1) = s0

UCCA

Ser

+

UUC

Lys Val

CAU

UCCA

Ser

Ser Lys Val Ser

1

1s0 s1

Computation process : rejecting case(odd number of ‘1’)

5’ - AGGUAAGGUAAGGUAAAUAAC - reporter gene  3’

mRNAStop codon

Input string: ’111’

δ(s0, 1) = s0   δ(s1, 1) = s0

UCCA

Ser

+

UUC

Lys Val

CAU

1

1s1s0

UUU

Phe

Ser Lys Val Ser

Computation process : rejecting case(odd number of ‘1’)

5’ - AGGUAAGGUAAGGUAAAUAAC - reporter gene  3’

mRNAStop codon

Input string: ’111’

δ(s0, 1) = s0   δ(s1, 1) = s0

UCCA

Ser

+

UUC

Lys Val

CAU

1

1s1s0

UUU

Phe

Ser Lys Val Ser

Designing Plasmid for input string

Reporter gene:  lacZ

Designing Plasmid for 4-base UCCU anticodon tRNA

An in vivo computer based on E.coliplasmid encoding input string

plasmid encoding Ser tRNA reading AGGU

E. coli

LacZ expression

colony exhibits a blue color = accept

incubation= computation

LacZ no expression

transformation

colony exhibits no color = reject

Experimental result

(+)(-)

(-)

(-)

(-)

(-)

(+)

(-)

(+)

(-)

(-)

(-)

theoretical sign

n = 1”1”

n = 2”11”

n = 3”111”

n = 4”1111”

n = 5”11111”

n = 6”1111111”

(UCCU)

with tRNA

(UCCU)

without tRNA

Programmable and autonomous in vivo computer

plasmid encoding input string

Programmable:choosing plasmid encoding tRNAs

E. coli

Autonomous:computation is executed by living E.coli

transformation. . .A B Z

Build our Wet Laboratory from Zero

Cloning Recombinant DNA Gel-electrophoresis Transformation by

electroporation Competent cell Operations on E.coli Design plasmids Protein synthesis in vitro

and in vivo RT-PCR P1 level

References:

H.Nakagawa, K.Sakamoto, and Y.Sakakibara : Development of an in

vivo computer based on Escherichia coli, Proceedings of 11th

International Meeting on DNA Based Computers, 68-77, 2005

J.Kuramochi and Y.Sakakibara : Intensive in vitro experiments of

implementing and executing finite automata in test tube, Proceedings

of 11th International Meeting on DNA Based Computers, 59-67, 2005.

Y.Sakakibara and T.Hohsaka : In Vitro Translation-based

Computations, Proceedings of 9th International Meeting on DNA

Based Computers, 175-179, 2003.

T.Yokomori, Y.Sakakibara, and S.Kobayashi : A Magic Pot : Self-

assembly computation revisited, Formal and Natural Computing,

Lecture Notes in Computer Science 2300, Springer-Verlag, 418--429,

2002.

top related