RECAP CSE 318. Final Exam Cumulative: –Regular languages, automata: 20% –Context-free languages, pushdown automata: 20% –Turing machines, decidable, recognizable,

Slides:



Advertisements
Similar presentations
CS 345: Chapter 9 Algorithmic Universality and Its Robustness
Advertisements

Complexity and Computability Theory I Lecture #4 Rina Zviel-Girshin Leah Epstein Winter
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,
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen Department of Computer Science University of Texas-Pan American.
Recap CS605: The Mathematics and Theory of Computer Science.
Turing Machines (At last!). Designing Universal Computational Devices Was Not The Only Contribution from Alan Turing… Enter the year 1940: The world is.
CSC 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Variants.
Applied Computer Science II Chapter 3 : Turing Machines Prof. Dr. Luc De Raedt Institut für Informatik Albert-Ludwigs Universität Freiburg Germany.
CFG => PDA Sipser 2 (pages ).
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.
1 … NPDAs continued. 2 Pushing Strings Input symbol Pop symbol Push string.
CS 302: Discrete Math II A Review. An alphabet Σ is a finite set (e.g., Σ = {0,1}) A string over Σ is a finite-length sequence of elements of Σ For x.
Finite Automata Finite-state machine with no output. FA consists of States, Transitions between states FA is a 5-tuple Example! A string x is recognized.
Lecture 5 Turing Machines
CS Master – Introduction to the Theory of Computation Jan Maluszynski - HT Lecture 1 Introduction Jan Maluszynski, IDA, 2007
CS 310 – Fall 2006 Pacific University CS310 Decidability Section 4.1/4.2 November 10, 2006.
CS21 Decidability and Tractability
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.
Final Exam Review Cummulative Chapters 0, 1, 2, 3, 4, 5 and 7.
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 8 Mälardalen University 2010.
The Church-Turing Thesis Lecture by H. Munoz-Avila.
Pushdown Automata (PDAs)
Introduction to CS Theory Lecture 15 –Turing Machines Piotr Faliszewski
Push-down Automata Section 3.3 Fri, Oct 21, 2005.
Cs3102: Theory of Computation Class 14: Turing Machines Spring 2010 University of Virginia David Evans.
Midterm 2 review Jundong Liu School of EECS
Complexity and Computability Theory I Lecture #11 Instructor: Rina Zviel-Girshin Lea Epstein.
Models of Computation. Computation: Computation is a general term for any type of information processing information processing CPU memory.
Turing Machine Finite state automaton –Limitation: finite amount of memory –Prevents recognizing languages that are not regular {0 n 1 n |n = 0,1,2,…}
1 Turing’s Thesis. 2 Turing’s thesis: Any computation carried out by mechanical means can be performed by a Turing Machine (1930)
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
D E C I D A B I L I T Y 1. 2 Objectives To investigate the power of algorithms to solve problems. To explore the limits of algorithmic solvability. To.
September1999 CMSC 203 / 0201 Fall 2002 Week #15 – 2/4/6 December 2002 Prof. Marie desJardins.
CSCI 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Pushdown.
CSCI 2670 Introduction to Theory of Computing October 13, 2005.
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.
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 12 Mälardalen University 2007.
Summary of Previous Class There are languages that are not decidable –(we have not proved this yet) Why not extend Turing machines just as we did with.
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,
The Church-Turing Thesis
Turing Machines CS 130 Theory of Computation HMU Textbook: Chap 8.
Week 14 - Friday.  What did we talk about last time?  Simplifying FSAs  Quotient automata.
Lecture #5 Advanced Computation Theory Finite Automata.
Theory of Computation. Introduction to The Course Lectures: Room ( Sun. & Tue.: 8 am – 9:30 am) Instructor: Dr. Ayman Srour (Ph.D. in Computer Science).
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.
Review : Theory of Computation. Regular Language and Finite Automata Context-free Language and Pushdown Automata Turing Machine and Recursive Enumerable.
Recap: Nondeterministic Finite Automaton (NFA) A deterministic finite automaton (NFA) is a 5-tuple (Q, , ,s,F) where: Q is a finite set of elements called.
Non Deterministic Automata
CSCI 2670 Introduction to Theory of Computing
Reductions Costas Busch - LSU.
Turing Machines.
CSCE 355 Foundations of Computation
CSE 105 theory of computation
Pushdown Automata.
CSE 105 theory of computation
CSE 105 theory of computation
Chapter 2 FINITE AUTOMATA.
CSCI-2400 Models of Computation Costas Busch - RPI.
COSC 3340: Introduction to Theory of Computation
Automata and Formal Languages (Final Review)
CSE322 Definition and description of finite Automata
Decidable Languages Costas Busch - LSU.
Non Deterministic Automata
CS21 Decidability and Tractability
Decidability and Tractability
CSE 105 theory of computation
Chapter 1 Regular Language
CSE 105 theory of computation
Presentation transcript:

RECAP CSE 318

Final Exam Cumulative: –Regular languages, automata: 20% –Context-free languages, pushdown automata: 20% –Turing machines, decidable, recognizable, nondecidable languages: 40% –(remaining 20%: flexibility)

Two Key Questions What is computation? –Non-deterministic computation What kinds of problems we can solve with computation? –limits of computation

Computation conf 1 trans 1 conf 2 trans 2 …. trans n conf n configurations transitions

Examples (s,100) (s,1,q) (q,00) ( q,0,p ) (f,e) ( p,0,f ) (p,0) Finite automata: (s,101,e) ((s,1,e),(q,*)) (q,01,*) (f,e,e)(p,1,*) Pushdown automata: ((q,0,e),(p,e)) ((p,1,*),(f,e)) (s,101) ((s,1,0),(q,  )) (q,001) (f,010) Turing machines: ((q,0,1),(p,  )) (p,011) ((p,1,0),(f,  ))

Nondetermistic Computation Theoretical (i.e., artificial) construct that facilitates:  Proving properties of computation  Writing algorithms in a simplified form conf 1 trans 1 conf 2 Trans 1’ Conf 2’ ….

Configuration Finite automata ConfigurationMachine (state,string) Pushdown automata (state,string,stack) Turing machines (state,LShRS) LS,RS: strings, h:symbol A configuration indicate the current state of the computation

Transitions Finite automata TransitionMachine Pushdown automata Turing machines (state, symbol, state) ((state, symbol, pop), (state,push)) ((state, symbol, symbol), (state,  /  )) A transition indicates how the configurations are transformed

Notion of Acceptance Finite automata ConfigurationMachineAcceptance if (f,w) f: accepting state, w = e Pushdown automata (f,w,  ) f: accepting state, w =e Turing machines (f, w) f: accepting state Acceptance indicates what kinds of configurations are considered successful computations

Machines versus Classes of Languages Machine Expressiveness Finite Automata Pushdown Automata Turing Machines Regular Languages Context-free Languages Decidable languages

Machine vs. n-stack NFA Machine n-stack NFA Finite Automata Pushdown Automata Turing Machines NFA + 0 stacks NFA + 1 stack NFA + 2 stacks

Computation and Countability Surprisingly deep connection If a language L can be enumerated then it is recognizable –To recognize if w is in L: 1.Print next string in L: 2.If w = w’ then accept else goto 1 And the other way around! Enumerator of L … w’

Problems that Can be Solved with Computation Church-Turing Thesis Algorithms = Turing machines Therefore, C, C++, Prolog, Lisp, Small talk, and Java programs can be simulated byTuring machines

Classes of Languages Regular languages  Context-Free Languages  Decidable Languages  Recognizable Languages  Non recognizable Languages Limits of computation Turing machines Pushdown Automata Finite Automata subset (Equivalence) (HALT) ({ww| w  *}) (Palindrome) (a*b*) This is the end…