Biomolecular Implementation of Computing Devices with Unbounded Memory Matteo CAVALIERE, Nataša JONOSKA, Nadrian C. SEEMAN. Department of Computer Science.

Slides:



Advertisements
Similar presentations
Recognising Languages We will tackle the problem of defining languages by considering how we could recognise them. Problem: Is there a method of recognising.
Advertisements

Chapter 5 Pushdown Automata
C O N T E X T - F R E E LANGUAGES ( use a grammar to describe a language) 1.
Pushdown Automata Chapter 12. Recognizing Context-Free Languages Two notions of recognition: (1) Say yes or no, just like with FSMs (2) Say yes or no,
Pushdown Automata Chapter 12. Recognizing Context-Free Languages We need a device similar to an FSM except that it needs more power. The insight: Precisely.
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen Department of Computer Science University of Texas-Pan American.
CS21 Decidability and Tractability
Introduction to Computability Theory
CFG => PDA Sipser 2 (pages ).
1 Introduction to Computability Theory Lecture7: PushDown Automata (Part 1) Prof. Amos Israeli.
CFG => PDA Sipser 2 (pages ). CS 311 Fall Formally… A pushdown automaton is a sextuple M = (Q, Σ, Γ, δ, q 0, F), where – Q is a finite set.
Courtesy Costas Busch - RPI1 Non Deterministic Automata.
1 … NPDAs continued. 2 Pushing Strings Input symbol Pop symbol Push string.
1 Normal Forms for Context-free Grammars. 2 Chomsky Normal Form All productions have form: variable and terminal.
Fall 2006Costas Busch - RPI1 Pushdown Automata PDAs.
1 Normal Forms for Context-free Grammars. 2 Chomsky Normal Form All productions have form: variable and terminal.
CS 490: Automata and Language Theory Daniel Firpo Spring 2003.
CS5371 Theory of Computation Lecture 4: Automata Theory II (DFA = NFA, Regular Language)
Push Down Automata That Flip Their Stacks Presented By, Bhargavi Belathur Ramalingaiah.
Prof. Busch - LSU1 Pushdown Automata PDAs. Prof. Busch - LSU2 Pushdown Automaton -- PDA Input String Stack States.
Fall 2005Costas Busch - RPI1 Pushdown Automata PDAs.
Grammars, Languages and Finite-state automata Languages are described by grammars We need an algorithm that takes as input grammar sentence And gives a.
1 Pushdown Automata PDAs. 2 Pushdown Automaton -- PDA Input String Stack States.
Finite State Machines Data Structures and Algorithms for Information Processing 1.
CS 3240: Languages and Computation Pushdown Automata & CF Grammars NOTE: THESE ARE ONLY PARTIAL SLIDES RELATED TO WEEKS 9 AND 10. PLEASE REFER TO THE TEXTBOOK.
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 8 Mälardalen University 2010.
Chapter 7 PDA and CFLs.
CS490 Presentation: Automata & Language Theory Thong Lam Ran Shi.
Pushdown Automata CS 130: Theory of Computation HMU textbook, Chap 6.
Pushdown Automata (PDAs)
Pushdown Automata Part I: PDAs Chapter Recognizing Context-Free Languages Two notions of recognition: (1) Say yes or no, just like with FSMs (2)
Lecture Pushdown Automata. stack stack head finite control tape head tape.
Push-down Automata Section 3.3 Fri, Oct 21, 2005.
CS 208: Computing Theory Assoc. Prof. Dr. Brahim Hnich Faculty of Computer Sciences Izmir University of Economics.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
Chapter 3 Regular Expressions, Nondeterminism, and Kleene’s Theorem Copyright © 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction.
Foundations of (Theoretical) Computer Science Chapter 2 Lecture Notes (Section 2.2: Pushdown Automata) Prof. Karen Daniels, Fall 2010 with acknowledgement.
CSCI 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Pushdown.
CSC 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Pushdown.
THE CONVENTIONS 2 simple rules: Rule # 1: Rule # 2: RR “move to the right until you find  “ Note: first check. Then move (think of a “while”) “Never.
CSC 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Pushdown.
Pushdown Automata Hopcroft, Motawi, Ullman, Chap 6.
1.Draw a parse tree for the following derivation: S  C A C  C A b b  b b A b b  b b B b b  b b a A a a b b  b b a b a a b b 2. Show on your parse.
1.Draw a parse tree for the following derivation: S  C A C  C A b b  b b A b b  b b B b b  b b a A a a b b  b b a b a a b b 2. Show on your parse.
Pushdown Automata Chapter 12. Recognizing Context-Free Languages Two notions of recognition: (1) Say yes or no, just like with FSMs (2) Say yes or no,
CS 154 Formal Languages and Computability March 10 Class Meeting Department of Computer Science San Jose State University Spring 2016 Instructor: Ron Mak.
Theory of Computation Automata Theory Dr. Ayman Srour.
CS6800 Advance Theory of Computation Spring 2016 Nasser Alsaedi
Lecture 11  2004 SDU Lecture7 Pushdown Automaton.
Pushdown Automata - like NFA-  but also has a stack - transition takes the current state, the current input symbol, and the top-of-the-stack symbol (which.
Modeling Arithmetic, Computation, and Languages Mathematical Structures for Computer Science Chapter 8 Copyright © 2006 W.H. Freeman & Co.MSCS SlidesAlgebraic.
6. Pushdown Automata CIS Automata and Formal Languages – Pei Wang.
Formal Languages, Automata and Models of Computation
Non Deterministic Automata
PDA’s - A new format for FAs
Pushdown Automata PDAs
Pushdown Automata PDAs
Pushdown Automata PDAs
Pushdown Automata PDAs
Push-down Automata.
Chapter 7 PUSHDOWN AUTOMATA.
AUTOMATA THEORY VI.
Pushdown Automata (PDA). Part 3
Nondeterministic Finite Automata
Intro to Data Structures
Non Deterministic Automata
Pushdown automata a_introduction.htm.
Principles of Computing – UFCFA3-30-1
… NPDAs continued.
Presentation transcript:

Biomolecular Implementation of Computing Devices with Unbounded Memory Matteo CAVALIERE, Nataša JONOSKA, Nadrian C. SEEMAN. Department of Computer Science and Artificial Intelligence, University of Sevilla, Sevllia, Spain

Introduction Implement automata with unbounded stack memory (PDA)  Using circular DNA strands and the enzyme called PsrI that is able to cut a DNA strand in two places at the same time. Implement push-down automata with two stacks (2PDA)  Using 2 circular molecules glued with a DX molucule and a class IIs restriction enzyme.

1. Push-down automata with one stack A push-down automaton is a finite state machine with a stack memory. The class of languages accepted by PDA’s is the class of context-free language.

Push-down automata with one stack (contd.) Definition 1. A push-down automaton M is a system (Q,Σ,Г,δ,q 0,Z 0,F) where:  Q is a finite set of states;  Σ is an input alphabet (it’s elements are called input-symbols);  Г is a stack alphabet (it’s elements are called stack-symbols);  q 0 in Q is the initial state;  Z 0 in Г is a particular stack-symbol called the start symbol;  F ⊆ Q and the set of final states;  δ is the transition mapping from Q×(Σ ∪ {ε}) ×Г to finite subsets of Q× Г *

Push-down automata with one stack (contd.) Theorem 1. The class of languages accepted by PDA’s is exactly the class of context-free languages (that strictly includes the class of regular languages). Theorem 2. for every PDA there is an equivalent two state PDA that accepts the same language.

Implementing PDA ’ s: An example Without loss of generality, we suppose that every input word is inserted with a symbol indicating end of input denoted with τ.

Implementing PDA ’ s: An example (contd.) A non regular language L 1 = {a n b n | n ∈ N}, a PDA accepting the language L1 is the following:  M 1 = (Q,Σ,Г,δ,q 0,Z 0,F), with Q = {0, 1}, Σ = {a, b}, Г = {Z, #}, Z 0 = #, F = {1}.  δ is,(i) δ(0, a, #) = (0, Z#) (ii) δ(0, a, Z) = (0, ZZ) (iii) δ(0, b, Z) = (1, ε ) (iv) δ(1, b, Z) = (1, ε ) (v) δ(0, τ, #) = (1, #)

Restriction enzyme PsrI Using the enzyme PsrI together with circular molecules containing the information for the stack and the tape, and linear DNA strands for the transitions.

Sequence design Input symbols: a = TTC and b = AAC Stack symbols: Z = TCCAG and # = CAAAC Input symbols are separated with GC end-of-input (τ ): CAGGC

Sequence design (contd.) Example: an input sequence “aabb” is, GCTTCGCTTCGCAACGCAACGCCAGGC The sequence GC allows “moving” between different states.

Circular DNA (init.) Initial configuration  The first part CAAAC represents the initial configuration of the stack.  The middle portion GAACNNNNNNTAC is the restriction site for the enzyme PsrI.  The final part is the input.

Transitions (a-b) Five linear DNA strands that encode the transitions of the PDA are also needed. (a) and (b) in Fig. 4 add a symbol Z on the stack, do not change the states. This is obtained by having NN between the restriction site and the sticky-end representing the input symbol to the right.

Transitions (c-e) The transistions (c) and (d) are similar, except they are removing Z’s from the stack. (e) is the transition 5 and stops in the final state.

Circular DNA (some stages)

2. Implementing 2PDA ’ s using DX molecules Two circular molecules are “connected” with two DX molecules (called here circular DX molecule) and a class IIs restriction enzyme FokI or a similar.

Implementing 2PDA ’ s using DX molecules (contd.) The restriction site for FokI is placed in four places of the strands.

Implementing 2PDA ’ s using DX molecules (contd.) 2PDA  M 2 = (Q,Σ,Г,δ,q 0,Z 0, Z 1,F), with Q = {0, 1}, Σ = {a}, Г = {Z, #}, Z 0 = Z 1 = #, F = {1}.  δ(0, a, #, #) = (1, Z#, Z#) Sequence design  a = GTTG, Z = TCCA, # = GCTG  The coding of the state is in a “direct” way. There is no need to use the “shift” technique. 0 = TGGT, 1 = ACTC

Circular DX molecules & Transitions

3. 2PDA in an array By including the 2PDA molecules in an array we can potentially (a) scale up the computational process and (b) avoid mutual interactions between the circular DX molecules.