CS243, Logic and Computation Nondeterministic finite automata

 Angelina Terry
 9 months ago
 Views:
Transcription
1 CS243, Prof. Alvarez NONDETERMINISTIC FINITE AUTOMATA (NFA) Prof. Sergio A. Alvarez alvarez/ Maloney Hall, room 569 Computer Science Department voice: (67) Boston College fax: (67) Chestnut Hill, MA 2467 USA CS243, Logic and Computation Nondeterministic finite automata We will discuss a theoretical tool that is useful for reasoning about computation in DFA. Nondeterministic finite automata (NFA) The computation of a DFA on a given input string is uniuely determined: given a DFA M, and an input string w over the input alphabet of M, the computation of M on input w is the uniue seuence of states defined by recursion in the notes on DFA. There are variants of DFA that allow multiple computations on a given input string. Some of these are probabilistic, in the sense that the present state and input symbol only determine the probability distribution of the next state. For example, when the probabilistic FA is in state 2 reading a at the input, the next state might be with probability 2/3, and 3 with probability /3. However, the variant that we will focus on here, the Nondeterministic Finite Automaton (NFA), is one that may seem more mysterious at first: in contrast with a probabilistic FA, an NFA is able to choose among several future states when in a given state reading a given input symbol. The choice among these options is entirely arbitrary; it need not satisfy any statistical constraints such as having a particular distribution. We will see that NFA are useful as a theoretical device. They are less appealing from a practical point of view, as no efficient implementations of NFA are currently available.. Definition of NFA An NFA is a tuple N = (Q, Σ, δ,, F ) of objects that are similar to those in DFA, with one big difference: in an NFA, the transition function is a map δ : Q (Σ {}) P(Q), where P(Q) is the set of all subsets of the state space Q. What this means is that, if N is in state and ready to read input symbol a, then one of the following can occur:. N may read a and change state to any state in the set δ(, a) if δ(, a) is nonempty. 2. N may change to any state in δ(, ) without reading any input, if δ(, ) is nonempty. 3. N s computation will end prematurely if δ(, x) is empty for all x Σ {}. Example.. The NFA in Fig. accepts all binary strings that end in : given an input string, the NFA chooses to loop at the start state until just before the final, if there is one, and only then jumps to the accepting state.
2 CS243, Prof. Alvarez NONDETERMINISTIC FINITE AUTOMATA (NFA), start Figure : NFA that accepts all binary strings that end in..2 Formal definition of nondeterministic finite automaton (NFA) A nondeterministic finite automaton (NFA) is a tuple N = (Q, Σ, δ,, F ), where: Q is a finite set known as the state space Σ is a finite set of symbols known as the input alphabet δ : Q (Σ {}) P(Q) is the state transition function, where P(S), for any set S, denotes the set of all subsets of S is an element of Q known as the start state F is a subset of Q known as the set of accepting (or final) states.3 Computation in an NFA An input string w of length n drives an NFA N along a state trajectory r, r,, r m in the state space. However, in contrast with the case of DFA, for an NFA the trajectory is not always uniuely determined by the input string. Furthermore, state trajectories may end prematurely (m < n) or include a greater number of state transitions than there are symbols in the input string (m > n). This is why the term nondeterministic is used in the name of NFA. A seuence r, r m in the state space Q is an allowed state trajectory if there is a driving string w of length m obtained by inserting zero or more symbols (in arbitrary locations) to some prefix string of the input string w, such that the state seuence r k is consistent with the transition function of N as described below.. r = 2. r k δ(r k, w k ) for each k with < k m A computation succeeds if it reads the entire input string. A computation fails if it ends prematurely because there are no valid next states for the last state in the computation and the current input at that time. Example.2. The following are valid state trajectories of the NFA in Fig. on input., (fails),, (fails),,, (succeeds)
3 CS243, Prof. Alvarez NONDETERMINISTIC FINITE AUTOMATA (NFA).4 Language recognized by an NFA An NFA N accepts a string w over the input alphabet of N if, and only if, there is a computation of N on input w that succeeds in processing all of w and ends in an accepting state of N. The language L(N) recognized by N is the set of all strings that are accepted by N. Example.3. The NFA in Fig. recognizes the language of binary strings that end in. Example.4. An NFA that recognizes the set of strings over {,, 2} that contain the substring 2 is shown in Fig. 2.,, 2,, 2 start 2 2 f Figure 2: NFA that accepts all binary strings that contain the substring 2. Example.5. Fig. 3 shows an NFA that accepts all binary strings that do not contain as a substring. Computation begins in the start state. After an initial segment of zero or more s at the input, the machine transitions to the accepting state, where any s can be processed. The transition allows the transition to occur without reading any input. This is used here, in particular, so that the empty string will be accepted. start Figure 3: NFA that accepts all binary strings that do not contain as a substring..5 Closure of NFArecognizable languages under concatenation The constructions discussed in the notes on DFA also show that the set of languages that are recognized by some NFA is closed under complements and unions. There is an additional closure property that is easy to prove in the case of NFA. Theorem.. Suppose that N and N 2 are NFA over the same input alphabet Σ. There is an NFA, M, that recognizes the language L(N )L(N 2 ) = {v w v L(N ), w L(N 2 )} that contains the concatenations of a string of L(N ) followed by a string of L(N 2 ).
4 CS243, Prof. Alvarez NONDETERMINISTIC FINITE AUTOMATA (NFA) Proof. We can essentially concatenate the machines N and N 2. Begin by noticing that no generality is lost if we assume that N has a single accepting state. This is because if several accepting states are designated, then we can add to N a new state f, together with transitions from all accepting states of N to f, and then make f the sole accepting state of the updated machine N. We construct an NFA N from N and N 2 as follows. Assume that N i = (Q i, Σ, δ i,,i, F i ) for i =, 2, and that N has a single accepting state (see comment above). Let Q = Q Q 2, assuming that Q and Q 2 to be disjoint sets (formally, if this reuirement is not satisfied, we can take the union of Q {} and Q 2 {2} instead). We leave all transitions of both N and N 2 intact, and we add a new transition from the accepting state of N to the start state of N 2. We then take the set F of accepting states of the new machine N to be the set F 2 of the set of accepting states of N 2. It is clear from the construction that a string w will be accepted by N if, and only if, w = uv where u drives N from its start state to its accepting state, and v drives N 2 from its start state to one of its accepting states. In other words, the language recognized by L(N) is precisely the concatenation L(N )L(N 2 ), as desired. This completes the proof. Example.6. Fig. 4 shows an NFA that accepts all binary strings of the form uv, where u contains as a substring and v does not contain as a substring. This language illustrates why the concatenation machine construction in the proof of the preceding theorem would not obviously work for DFA: it is not obvious where to split the input string and jump from one machine to the other. For example, consider the string w =. Scanning w from left to right, there is a first point at which has been read (and where the accepting state of N has first been reached), corresponding to splitting w into followed by. However, if a jump to the start state of N 2 were made when the accepting state of N is first reached, then the subseuent computation in N 2 would not accept the input, since the remaining string contains the prohibited substring. Nondeterminism, in the form of transitions, allows the jump to made at an appropriate point during the computation. In this example, this would correspond to splitting w into and., start Figure 4: NFA that accepts strings uv, where u contains and v does not contain.
5 CS243, Prof. Alvarez 2 EQUIVALENCE OF NFA AND DFA 2 Euivalence of NFA and DFA On the surface, it appears that NFA are computationally more powerful than DFA. For example, we saw above that the concatenation of two NFArecognizable languages is also NFArecognizable. We did this by way of the concatenation of two NFA, a construction that presents difficulties in the case of DFA. We saw in an example that it is not clear how a DFA would decide to jump from one machine to another in attempting to split a string into a suitable concatenation of strings in the languages under consideration. Despite these concerns, it turns out that every NFArecognizable language is also DFArecognizable! In particular, the class of DFArecognizable languages is closed under concatenation. We will prove this by showing that any NFA may be simulated by a suitable DFA that has as its state space the set of all subsets of the state space of N. Theorem 2.. Suppose that N = (Q, Σ, δ,, F ) is an NFA. There exists a DFA M = (P(Q), Σ, δ M,,M, F M ) such that L(M) = L(N). Proof. The intuition behind the construction is that, since a computation of N on a given input string can branch because of nondeterminism, we can keep track of the possibilities by listing all possible states that can occur after reading a certain number of input symbols. Thus, a single set of states can represent the various possible states of N at that point in time. Accordingly, we take the state space of the DFA M to be P(Q), the set of all subsets of the state space of the NFA N. A natural candidate to serve as the start state of M is the set { } that contains only the start state of N. However, if there are transitions leaving, then it is possible for a computation in N to leave before any input symbols have been processed. Therefore, we will take as the start state of M the closure of { }, defined as the set of all states that can be reached from by following zero or more transitions in N. Likewise, we take as the set F M of accepting states of M the set of the closures of the sets { f }, where f F. The transition function of M is defined as follows. S Q a Σ δ M (S, a) = closure of S δ(, a) This completes the construction of the DFA M that simulates the NFA N. We will now prove that the simulation works as desired.
6 CS243, Prof. Alvarez 2 EQUIVALENCE OF NFA AND DFA Lemma 2.2. With the above construction of M, there is a computation of N on input w that is in state k after reading the first k symbols of w if, and only if, the final state r k of the uniuely defined computation r,, r k of M on input w, w k contains k. Proof. We prove this claim by induction in k. (Basis) If k = symbols of w have been processed, then only the states in the closure of { } are reachable in N s computation. By construction, such states are precisely the elements of the start state M of M. This completes the basis of the induction. (Inductive step) Assume that the target statement is true for some nonnegative integer, k. Consider a computation of N that has processed w,, w k, w k+. Such a computation consists of a computation of the first k input symbols w,, w k followed by a state transition on input w k+ that is consistent with the transition function δ of N. Specifically, there must exist a state k Q such that N is in state k after processing w, w k in this particular computation of N and (the closure of) δ( k, w k+ ) contains the final state k+ in the computation of N after reading w k+. Let r, r k+ be the corresponding uniuely defined computation of the DFA M on input w, w k+. By the induction hypothesis, r k contains the state k. Therefore, by definition of M s transition function, it follows that state k+ δ M (r k, w k+ ). Conversely, let r, r k+ be the portion of the uniuely defined computation of M on input w after processing w, w k+. If k+ denotes any state in r k+, then by definition of M s transition function, k+ must be reachable (possibly after transitions) from a state in δ( k, w k+ ) for some state k in r k. By the induction hypothesis, there is a valid computation of N on input w, w k that ends in state k after processing w, w k. It follows that appending k+ produces a valid computation of N on input w, w k+. This completes the inductive step. By Lemma 2.2, if w is any string in Σ, then w L(N) there is a computation of N on input w that ends in some F } the computation of M on input w ends in some S Q M that contains the computation of M on input w ends in some F M, where the last step uses the definition of the set F M of accepting states of M. Therefore, we conclude that L(M) = L(N), as claimed. This completes the proof of Theorem 2.. Example 2.. We carry out the DFA simulation construction for the NFA that appears in Fig.. The state space of the DFA is the set of subsets of {, }, which is the fourelement set {, { }, { }, {, }}. The state transition diagram is shown in Fig. 5. Notice that two of the states of the DFA are not reachable from the start state. Thus, the simulating DFA really uses only two states in this case.
7 CS243, Prof. Alvarez 2 EQUIVALENCE OF NFA AND DFA,, start { } { } {, } Figure 5: DFA simulation construction for NFA in Fig..
Lecture 3: Nondeterministic Finite Automata
Lecture 3: Nondeterministic Finite Automata September 5, 206 CS 00 Theory of Computation As a recap of last lecture, recall that a deterministic finite automaton (DFA) consists of (Q, Σ, δ, q 0, F ) where
More informationFinite Automata and Regular languages
Finite Automata and Regular languages Huan Long Shanghai Jiao Tong University Acknowledgements Part of the slides comes from a similar course in Fudan University given by Prof. Yijia Chen. http://basics.sjtu.edu.cn/
More informationSeptember 7, Formal Definition of a Nondeterministic Finite Automaton
Formal Definition of a Nondeterministic Finite Automaton September 7, 2014 A comment first The formal definition of an NFA is similar to that of a DFA. Both have states, an alphabet, transition function,
More informationDeterministic Finite Automata. Non deterministic finite automata. NonDeterministic Finite Automata (NFA) NonDeterministic Finite Automata (NFA)
Deterministic Finite Automata Non deterministic finite automata Automata we ve been dealing with have been deterministic For every state and every alphabet symbol there is exactly one move that the machine
More informationNondeterministic finite automata
Lecture 3 Nondeterministic finite automata This lecture is focused on the nondeterministic finite automata (NFA) model and its relationship to the DFA model. Nondeterminism is an important concept in the
More informationFORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
5453 FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY NONDETERMINISM and REGULAR OPERATIONS THURSDAY JAN 6 UNION THEOREM The union of two regular languages is also a regular language Regular Languages Are
More informationNondeterministic Finite Automata
Nondeterministic Finite Automata Mahesh Viswanathan Introducing Nondeterminism Consider the machine shown in Figure. Like a DFA it has finitely many states and transitions labeled by symbols from an input
More informationClarifications from last time. This Lecture. Last Lecture. CMSC 330: Organization of Programming Languages. Finite Automata.
CMSC 330: Organization of Programming Languages Last Lecture Languages Sets of strings Operations on languages Finite Automata Regular expressions Constants Operators Precedence CMSC 330 2 Clarifications
More informationcse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska
cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska LECTURE 6 CHAPTER 2 FINITE AUTOMATA 2. Nondeterministic Finite Automata NFA 3. Finite Automata and Regular Expressions 4. Languages
More informationTheory of Computation p.1/?? Theory of Computation p.2/?? Unknown: Implicitly a Boolean variable: true if a word is
Abstraction of Problems Data: abstracted as a word in a given alphabet. Σ: alphabet, a finite, nonempty set of symbols. Σ : all the words of finite length built up using Σ: Conditions: abstracted as a
More informationFurther discussion of Turing machines
Further discussion of Turing machines In this lecture we will discuss various aspects of decidable and Turingrecognizable languages that were not mentioned in previous lectures. In particular, we will
More informationUses of finite automata
Chapter 2 :Finite Automata 2.1 Finite Automata Automata are computational devices to solve language recognition problems. Language recognition problem is to determine whether a word belongs to a language.
More informationTheory of Languages and Automata
Theory of Languages and Automata Chapter 1 Regular Languages & Finite State Automaton Sharif University of Technology Finite State Automaton We begin with the simplest model of Computation, called finite
More informationFooling Sets and. Lecture 5
Fooling Sets and Introduction to Nondeterministic Finite Automata Lecture 5 Proving that a language is not regular Given a language, we saw how to prove it is regular (union, intersection, concatenation,
More informationComputer Sciences Department
1 Reference Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER 3 objectives Finite automaton Infinite automaton Formal definition State diagram Regular and Nonregular
More informationCSE 135: Introduction to Theory of Computation Nondeterministic Finite Automata (cont )
CSE 135: Introduction to Theory of Computation Nondeterministic Finite Automata (cont ) Sungjin Im University of California, Merced 23214 Example II A ɛ B ɛ D F C E Example II A ɛ B ɛ D F C E NFA accepting
More informationTheory of Computation Lecture 1. Dr. Nahla Belal
Theory of Computation Lecture 1 Dr. Nahla Belal Book The primary textbook is: Introduction to the Theory of Computation by Michael Sipser. Grading 10%: Weekly Homework. 30%: Two quizzes and one exam. 20%:
More informationCSC173 Workshop: 13 Sept. Notes
CSC173 Workshop: 13 Sept. Notes Frank Ferraro Department of Computer Science University of Rochester September 14, 2010 1 Regular Languages and Equivalent Forms A language can be thought of a set L of
More informationBüchi Automata and their closure properties.  Ajith S and Ankit Kumar
Büchi Automata and their closure properties  Ajith S and Ankit Kumar Motivation Conventional programs accept input, compute, output result, then terminate Reactive program : not expected to terminate
More informationTheory of computation: initial remarks (Chapter 11)
Theory of computation: initial remarks (Chapter 11) For many purposes, computation is elegantly modeled with simple mathematical objects: Turing machines, finite automata, pushdown automata, and such.
More informationDM17. Beregnelighed. Jacob Aae Mikkelsen
DM17 Beregnelighed Jacob Aae Mikkelsen January 12, 2007 CONTENTS Contents 1 Introduction 2 1.1 Operations with languages...................... 2 2 Finite Automata 3 2.1 Regular expressions/languages....................
More informationFORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
15453 FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY REVIEW for MIDTERM 1 THURSDAY Feb 6 Midterm 1 will cover everything we have seen so far The PROBLEMS will be from Sipser, Chapters 1, 2, 3 It will be
More informationarxiv: v2 [cs.fl] 29 Nov 2013
A Survey of MultiTape Automata Carlo A. Furia May 2012 arxiv:1205.0178v2 [cs.fl] 29 Nov 2013 Abstract This paper summarizes the fundamental expressiveness, closure, and decidability properties of various
More informationFinite Automata and Regular Languages (part III)
Finite Automata and Regular Languages (part III) Prof. Dan A. Simovici UMB 1 / 1 Outline 2 / 1 Nondeterministic finite automata can be further generalized by allowing transitions between states without
More informationRegular Languages. Kleene Theorem I. Proving Kleene Theorem. Kleene Theorem. Proving Kleene Theorem. Proving Kleene Theorem
Regular Languages Kleene Theorem I Today we continue looking at our first class of languages: Regular languages Means of defining: Regular Expressions Machine for accepting: Finite Automata Kleene Theorem
More informationChapter 2: Finite Automata
Chapter 2: Finite Automata 2.1 States, State Diagrams, and Transitions Finite automaton is the simplest acceptor or recognizer for language specification. It is also the simplest model of a computer. A
More informationIntroduction to the Theory of Computation. Automata 1VO + 1PS. Lecturer: Dr. Ana Sokolova.
Introduction to the Theory of Computation Automata 1VO + 1PS Lecturer: Dr. Ana Sokolova http://cs.unisalzburg.at/~anas/ Setup and Dates Lectures and Instructions 23.10. 3.11. 17.11. 24.11. 1.12. 11.12.
More informationLecture 23 : Nondeterministic Finite Automata DRAFT Connection between Regular Expressions and Finite Automata
CS/Math 24: Introduction to Discrete Mathematics 4/2/2 Lecture 23 : Nondeterministic Finite Automata Instructor: Dieter van Melkebeek Scribe: Dalibor Zelený DRAFT Last time we designed finite state automata
More informationLecture 17: Language Recognition
Lecture 17: Language Recognition Finite State Automata Deterministic and NonDeterministic Finite Automata Regular Expressions PushDown Automata Turing Machines Modeling Computation When attempting to
More informationCHAPTER 1 Regular Languages. Contents
Finite Automata (FA or DFA) CHAPTER Regular Languages Contents definitions, examples, designing, regular operations Nondeterministic Finite Automata (NFA) definitions, euivalence of NFAs and DFAs, closure
More informationLanguages. Non deterministic finite automata with ε transitions. First there was the DFA. Finite Automata. NonDeterministic Finite Automata (NFA)
Languages Non deterministic finite automata with ε transitions Recall What is a language? What is a class of languages? Finite Automata Consists of A set of states (Q) A start state (q o ) A set of accepting
More informationIntroduction to the Theory of Computation. Automata 1VO + 1PS. Lecturer: Dr. Ana Sokolova.
Introduction to the Theory of Computation Automata 1VO + 1PS Lecturer: Dr. Ana Sokolova http://cs.unisalzburg.at/~anas/ Setup and Dates Lectures Tuesday 10:45 pm  12:15 pm Instructions Tuesday 12:30
More informationCS 154. Finite Automata vs Regular Expressions, NonRegular Languages
CS 154 Finite Automata vs Regular Expressions, NonRegular Languages Deterministic Finite Automata Computation with finite memory NonDeterministic Finite Automata Computation with finite memory and guessing
More informationFinite Automata Part Two
Finite Automata Part Two Recap from Last Time Old MacDonald Had a Symbol, Σeyeεey, Oh! You may have noticed that we have several letter Eish symbols in CS103, which can get confusing! Here s a quick
More information1 More finite deterministic automata
CS 125 Section #6 Finite automata October 18, 2016 1 More finite deterministic automata Exercise. Consider the following game with two players: Repeatedly flip a coin. On heads, player 1 gets a point.
More informationCPS 220 Theory of Computation REGULAR LANGUAGES
CPS 22 Theory of Computation REGULAR LANGUAGES Introduction Model (def) a miniature representation of a thing; sometimes a facsimile Iraq village mockup for the Marines Scientific modelling  the process
More information3515ICT: Theory of Computation. Regular languages
3515ICT: Theory of Computation Regular languages Notation and concepts concerning alphabets, strings and languages, and identification of languages with problems (H, 1.5). Regular expressions (H, 3.1,
More informationPS2  Comments. University of Virginia  cs3102: Theory of Computation Spring 2010
University of Virginia  cs3102: Theory of Computation Spring 2010 PS2  Comments Average: 77.4 (full credit for each question is 100 points) Distribution (of 54 submissions): 90, 12; 80 89, 11; 7079,
More informationEquivalence of DFAs and NFAs
CS 172: Computability and Complexity Equivalence of DFAs and NFAs It s a tie! DFA NFA Sanjit A. Seshia EECS, UC Berkeley Acknowledgments: L.von Ahn, L. Blum, M. Blum What we ll do today Prove that DFAs
More informationFinite Automata (contd)
Finite Automata (contd) CS 2800: Discrete Structures, Fall 2014 Sid Chaudhuri Recap: Deterministic Finite Automaton A DFA is a 5tuple M = (Q, Σ, δ, q 0, F) Q is a fnite set of states Σ is a fnite input
More informationAutomata & languages. A primer on the Theory of Computation. Laurent Vanbever. ETH Zürich (DITET) September,
Automata & languages A primer on the Theory of Computation Laurent Vanbever www.vanbever.eu ETH Zürich (DITET) September, 28 2017 Part 2 out of 5 Last week was all about Deterministic Finite Automaton
More informationFinite Automata Part Two
Finite Automata Part Two DFAs A DFA is a Deterministic Finite Automaton A DFA is defined relative to some alphabet Σ. For each state in the DFA, there must be exactly one transition defined for each symbol
More informationBefore we show how languages can be proven not regular, first, how would we show a language is regular?
CS35 Proving Languages not to be Regular Before we show how languages can be proven not regular, first, how would we show a language is regular? Although regular languages and automata are quite powerful
More informationProperties of Regular Languages (2015/10/15)
Chapter 4 Properties of Regular Languages (25//5) Pasbag, Turkey Outline 4. Proving Languages Not to e Regular 4.2 Closure Properties of Regular Languages 4.3 Decision Properties of Regular Languages 4.4
More informationNondeterminism and Epsilon Transitions
Nondeterminism and Epsilon Transitions Mridul Aanjaneya Stanford University June 28, 22 Mridul Aanjaneya Automata Theory / 3 Challenge Problem Question Prove that any square with side length a power of
More informationIntroduction to Turing Machines. Reading: Chapters 8 & 9
Introduction to Turing Machines Reading: Chapters 8 & 9 1 Turing Machines (TM) Generalize the class of CFLs: Recursively Enumerable Languages Recursive Languages ContextFree Languages Regular Languages
More informationCONCATENATION AND KLEENE STAR ON DETERMINISTIC FINITE AUTOMATA
1 CONCATENATION AND KLEENE STAR ON DETERMINISTIC FINITE AUTOMATA GUOQIANG ZHANG, XIANGNAN ZHOU, ROBERT FRASER, LICONG CUI Department of Electrical Engineering and Computer Science, Case Western Reserve
More informationAutomata: a short introduction
ILIAS, University of Luxembourg Discrete Mathematics II May 2012 What is a computer? Real computers are complicated; We abstract up to an essential model of computation; We begin with the simplest possible
More informationHarvard CS 121 and CSCI E207 Lecture 4: NFAs vs. DFAs, Closure Properties
Harvard CS 121 and CSCI E207 Lecture 4: NFAs vs. DFAs, Closure Properties Salil Vadhan September 13, 2012 Reading: Sipser, 1.2. How to simulate NFAs? NFA accepts w if there is at least one accepting computational
More informationAutomata and Formal Languages  CM0081 NonDeterministic Finite Automata
Automata and Formal Languages  CM81 NonDeterministic Finite Automata Andrés SicardRamírez Universidad EAFIT Semester 2172 NonDeterministic Finite Automata (NFA) Introduction q i a a q j a q k The
More informationLanguages. A language is a set of strings. String: A sequence of letters. Examples: cat, dog, house, Defined over an alphabet:
Languages 1 Languages A language is a set of strings String: A sequence of letters Examples: cat, dog, house, Defined over an alphaet: a,, c,, z 2 Alphaets and Strings We will use small alphaets: Strings
More informationApplied Computer Science II Chapter 1 : Regular Languages
Applied Computer Science II Chapter 1 : Regular Languages Prof. Dr. Luc De Raedt Institut für Informatik AlbertLudwigs Universität Freiburg Germany Overview Deterministic finite automata Regular languages
More informationComputability Theory. CS215, Lecture 6,
Computability Theory CS215, Lecture 6, 2000 1 The Birth of Turing Machines At the end of the 19th century, Gottlob Frege conjectured that mathematics could be built from fundamental logic In 1900 David
More informationCS21 Decidability and Tractability
CS21 Decidability and Tractability Lecture 3 January 9, 2017 January 9, 2017 CS21 Lecture 3 1 Outline NFA, FA equivalence Regular Expressions FA and Regular Expressions January 9, 2017 CS21 Lecture 3 2
More information6.045J/18.400J: Automata, Computability and Complexity Final Exam. There are two sheets of scratch paper at the end of this exam.
6.045J/18.400J: Automata, Computability and Complexity May 20, 2005 6.045 Final Exam Prof. Nancy Lynch Name: Please write your name on each page. This exam is open book, open notes. There are two sheets
More informationTheory of computation: initial remarks (Chapter 11)
Theory of computation: initial remarks (Chapter 11) For many purposes, computation is elegantly modeled with simple mathematical objects: Turing machines, finite automata, pushdown automata, and such.
More informationConcatenation. The concatenation of two languages L 1 and L 2
Regular Expressions Problem Problem Set Set Four Four is is due due using using a late late period period in in the the box box up up front. front. Concatenation The concatenation of two languages L 1
More informationUNITVI PUSHDOWN AUTOMATA
Syllabus R09 Regulation UNITVI PUSHDOWN AUTOMATA The context free languages have a type of automaton that defined them. This automaton, called a pushdown automaton, is an extension of the nondeterministic
More informationBüchi Automata and Their Determinization
Büchi Automata and Their Determinization Edinburgh, October 215 Plan of the Day 1. Büchi automata and their determinization 2. Infinite games 3. Rabin s Tree Theorem 4. Decidability of monadic theories
More informationDecidability. William Chan
Decidability William Chan Preface : In 1928, David Hilbert gave a challenge known as the Entscheidungsproblem, which is German for Decision Problem. Hilbert s problem asked for some purely mechanical procedure
More informationKybernetika. Daniel Reidenbach; Markus L. Schmid Automata with modulo counters and nondeterministic counter bounds
Kybernetika Daniel Reidenbach; Markus L. Schmid Automata with modulo counters and nondeterministic counter bounds Kybernetika, Vol. 50 (2014), No. 1, 66 94 Persistent URL: http://dml.cz/dmlcz/143764 Terms
More informationAutomata Theory, Computability and Complexity
Automata Theory, Computability and Complexity Mridul Aanjaneya Stanford University June 26, 22 Mridul Aanjaneya Automata Theory / 64 Course Staff Instructor: Mridul Aanjaneya Office Hours: 2:PM  4:PM,
More informationPushdown Automata. We have seen examples of contextfree languages that are not regular, and hence can not be recognized by finite automata.
Pushdown Automata We have seen examples of contextfree languages that are not regular, and hence can not be recognized by finite automata. Next we consider a more powerful computation model, called a
More informationacs04: Regular Languages Regular Languages Andreas Karwath & Malte Helmert Informatik Theorie II (A) WS2009/10
Regular Languages Andreas Karwath & Malte Helmert 1 Overview Deterministic finite automata Regular languages Nondeterministic finite automata Closure operations Regular expressions Nonregular languages
More informationNotes on State Minimization
U.C. Berkeley CS172: Automata, Computability and Complexity Handout 1 Professor Luca Trevisan 2/3/2015 Notes on State Minimization These notes present a technique to prove a lower bound on the number of
More informationFormal Definition of Computation. August 28, 2013
August 28, 2013 Computation model The model of computation considered so far is the work performed by a finite automaton Finite automata were described informally, using state diagrams, and formally, as
More information6.045 Final Exam Solutions
6.045J/18.400J: Automata, Computability and Complexity Prof. Nancy Lynch, Nati Srebro 6.045 Final Exam Solutions May 18, 2004 Susan Hohenberger Name: Please write your name on each page. This exam is open
More informationExtended transition function of a DFA
Extended transition function of a DFA The next two pages describe the extended transition function of a DFA in a more detailed way than Handout 3.. p./43 Formal approach to accepted strings We define the
More informationFormal Models in NLP
Formal Models in NLP FiniteState Automata Nina Seemann Universität Stuttgart Institut für Maschinelle Sprachverarbeitung Pfaffenwaldring 5b 70569 Stuttgart May 15, 2012 Nina Seemann (IMS) Formal Models
More informationAutomata and Computability. Solutions to Exercises
Automata and Computability Solutions to Exercises Spring 27 Alexis Maciel Department of Computer Science Clarkson University Copyright c 27 Alexis Maciel ii Contents Preface vii Introduction 2 Finite Automata
More informationECS 120: Theory of Computation UC Davis Phillip Rogaway February 16, Midterm Exam
ECS 120: Theory of Computation Handout MT UC Davis Phillip Rogaway February 16, 2012 Midterm Exam Instructions: The exam has six pages, including this cover page, printed out twosided (no more wasted
More informationCS481F01 Solutions 6 PDAS
CS481F01 Solutions 6 PDAS A. Demers 2 November 2001 1. Give a NPDAs that recognize the following languages: (a) The set of all strings in {0, 1} that contain twice as many 1s as 0s. (answer a) We build
More informationIncorrect reasoning about RL. Equivalence of NFA, DFA. Epsilon Closure. Proving equivalence. One direction is easy:
Incorrect reasoning about RL Since L 1 = {w w=a n, n N}, L 2 = {w w = b n, n N} are regular, therefore L 1 L 2 = {w w=a n b n, n N} is regular If L 1 is a regular language, then L 2 = {w R w L 1 } is regular,
More informationReversal of Regular Languages and State Complexity
Reversal of Regular Languages and State Complexity Juraj Šebej Institute of Computer Science, Faculty of Science, P. J. Šafárik University, Jesenná 5, 04001 Košice, Slovakia juraj.sebej@gmail.com Abstract.
More informationFORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
5453 FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY 5453 FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY YOU NEED TO PICK UP THE SYLLABUS, THE COURSE SCHEDULE, THE PROJECT INFO SHEET, TODAY S CLASS NOTES
More informationOctober 6, Equivalence of Pushdown Automata with ContextFree Gramm
Equivalence of Pushdown Automata with ContextFree Grammar October 6, 2013 Motivation Motivation CFG and PDA are equivalent in power: a CFG generates a contextfree language and a PDA recognizes a contextfree
More informationProperties of Regular Languages. BBM Automata Theory and Formal Languages 1
Properties of Regular Languages BBM 401  Automata Theory and Formal Languages 1 Properties of Regular Languages Pumping Lemma: Every regular language satisfies the pumping lemma. A nonregular language
More informationFORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
15453 FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY THE PUMPING LEMMA FOR REGULAR LANGUAGES and REGULAR EXPRESSIONS TUESDAY Jan 21 WHICH OF THESE ARE REGULAR? B = {0 n 1 n n 0} C = { w w has equal number
More informationFinite Automata and Regular Languages (part II)
Finite Automata and Regular Languages (part II) Prof. Dan A. Simovici UMB 1 / 25 Outline 1 Nondeterministic Automata 2 / 25 Definition A nondeterministic finite automaton (ndfa) is a quintuple M = (A,
More informationRegular Expression Unit 1 chapter 3. Unit 1: Chapter 3
Unit 1: Chapter 3 (Regular Expression (RE) and Language) In previous lectures, we have described the languages in terms of machine like descriptionfinite automata (DFA or NFA). Now we switch our attention
More informationFinite State Transducers
Finite State Transducers Eric Gribkoff May 29, 2013 Original Slides by Thomas Hanneforth (Universitat Potsdam) Outline 1 Definition of Finite State Transducer 2 Examples of FSTs 3 Definition of Regular
More informationTheory of Computation
Theory of Computation (Feodor F. Dragan) Department of Computer Science Kent State University Spring, 2018 Theory of Computation, Feodor F. Dragan, Kent State University 1 Before we go into details, what
More informationHarvard CS 121 and CSCI E207 Lecture 10: CFLs: PDAs, Closure Properties, and NonCFLs
Harvard CS 121 and CSCI E207 Lecture 10: CFLs: PDAs, Closure Properties, and NonCFLs Harry Lewis October 8, 2013 Reading: Sipser, pp. 119128. Pushdown Automata (review) Pushdown Automata = Finite automaton
More informationCompilers. Lexical analysis. Yannis Smaragdakis, U. Athens (original slides by Sam
Compilers Lecture 3 Lexical analysis Yannis Smaragdakis, U. Athens (original slides by Sam Guyer@Tufts) Big picture Source code Front End IR Back End Machine code Errors Front end responsibilities Check
More informationWarshall s algorithm
Regular Expressions [1] Warshall s algorithm See FloydWarshall algorithm on Wikipedia The FloydWarshall algorithm is a graph analysis algorithm for finding shortest paths in a weigthed, directed graph
More informationFormal Languages. We ll use the English language as a running example.
Formal Languages We ll use the English language as a running example. Definitions. A string is a finite set of symbols, where each symbol belongs to an alphabet denoted by Σ. Examples. The set of all strings
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION Spring 2017 http://cseweb.ucsd.edu/classes/sp17/cse105ab/ Today's learning goals Sipser Ch 1.4 Explain the limits of the class of regular languages Justify why the Pumping
More informationNondeterministic Finite Automata
Nondeterministic Finite Automata COMP2600 Formal Methods for Software Engineering Katya Lebedeva Australian National University Semester 2, 206 Slides by Katya Lebedeva. COMP 2600 Nondeterministic Finite
More informationFinite Automata Theory and Formal Languages TMV027/DIT321 LP4 2017
Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2017 Lecture 4 Ana Bove March 24th 2017 Structural induction; Concepts of automata theory. Overview of today s lecture: Recap: Formal Proofs
More informationAutomata Theory for Presburger Arithmetic Logic
Automata Theory for Presburger Arithmetic Logic References from Introduction to Automata Theory, Languages & Computation and Constraints in Computational Logic Theory & Application Presented by Masood
More informationInf2A: The Pumping Lemma
Inf2A: Stuart Anderson School of Informatics University of Edinburgh October 8, 2009 Outline 1 Deterministic Finite State Machines and Regular Languages 2 3 4 The language of a DFA ( M = Q, Σ, q 0, F,
More informationHomework 8. a b b a b a b. twoway, read/write
Homework 8 309 Homework 8 1. Describe a TM that accepts the set {a n n is a power of 2}. Your description should be at the level of the descriptions in Lecture 29 of the TM that accepts {ww w Σ } and the
More informationThe Turing machine model of computation
The Turing machine model of computation For most of the remainder of the course we will study the Turing machine model of computation, named after Alan Turing (1912 1954) who proposed the model in 1936.
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION "Winter" 2018 http://cseweb.ucsd.edu/classes/wi18/cse105ab/ Today's learning goals Sipser Ch 4.2 Trace highlevel descriptions of algorithms for computational problems. Use
More informationTuring Machines Part III
Turing Machines Part III Announcements Problem Set 6 due now. Problem Set 7 out, due Monday, March 4. Play around with Turing machines, their powers, and their limits. Some problems require Wednesday's
More informationFORMAL LANGUAGES, AUTOMATA AND COMPUTATION
FORMAL LANGUAGES, AUTOMATA AND COMPUTATION IDENTIFYING NONREGULAR LANGUAGES PUMPING LEMMA Carnegie Mellon University in Qatar (CARNEGIE MELLON UNIVERSITY IN QATAR) SLIDES FOR 15453 LECTURE 5 SPRING 2011
More informationChapter 1  Time and Space Complexity. deterministic and nondeterministic Turing machine time and space complexity classes P, NP, PSPACE, NPSPACE
Chapter 1  Time and Space Complexity deterministic and nondeterministic Turing machine time and space complexity classes P, NP, PSPACE, NPSPACE 1 / 41 Deterministic Turing machines Definition 1.1 A (deterministic
More informationNondeterministic Finite Automata and Regular Expressions
Nondeterministic Finite Automata and Regular Expressions CS 2800: Discrete Structures, Spring 2015 Sid Chaudhuri Recap: Deterministic Finite Automaton A DFA is a 5tuple M = (Q, Σ, δ, q 0, F) Q is a finite
More informationTheoretical Computer Science. State complexity of basic operations on suffixfree regular languages
Theoretical Computer Science 410 (2009) 2537 2548 Contents lists available at ScienceDirect Theoretical Computer Science journal homepage: www.elsevier.com/locate/tcs State complexity of basic operations
More information