Types of Finite Automata. CMSC 330: Organization of Programming Languages. Comparing DFAs and NFAs. Comparing DFAs and NFAs (cont.) Finite Automata 2
|
|
- Sharleen Doris Goodwin
- 6 years ago
- Views:
Transcription
1 CMSC 330: Orgniztion of Progrmming Lnguges Finite Automt 2 Types of Finite Automt Deterministic Finite Automt () Exctly one sequence of steps for ech string All exmples so fr Nondeterministic Finite Automt (NFA) My hve mny sequences of steps for ech string Accepts if ny pth ends in finl stte t end of string More compct thn CMSC Compring s nd NFAs NFAs cn hve more thn one trnsition leving stte on the sme symol Compring s nd NFAs (cont.) NFAs my hve trnsitions with empty string lel My move to new stte without consuming chrcter -trnsition s llow only one trnsition per symol I.e., trnsition function must e vlid function is specil cse of NFA trnsition must e leled with symol is specil cse of NFA
2 NFA for ( )* NFA for ( )* Hs pths to either S0 or S1 Neither is finl, so rejected Hs pths to different sttes One pth leds to S3, so ccepts string Hs pths to sttes S0, S1 Hs pths to S0, S1 Need to use -trnsition Another exmple Relting REs to s nd NFAs Regulr expressions, NFAs, nd s ccept the sme lnguges! cn trnsform NFA Lnguge? ( )* cn trnsform RE cn trnsform
3 Forml Definition A deterministic finite utomton () is 5-tuple (Σ, Q, q 0, F, δ) where Σ is n lphet Q is nonempty set of sttes q 0 Q is the strt stte F Q is the set of finl sttes δ : Q x Σ Q specifies the 's trnsitions! Wht's this definition sying tht δ is? A ccepts s if it stops t finl stte on s Forml Definition: Exmple Σ = {0, 1} Q = {S0, S1} q 0 = S0 F = {S1} δ 0 1 S0 S0 S1 S1 S0 S1 or s { (S0,0,S0),(S0,1,S1),(S1,0,S0),(S1,1,S1) } Nondeterministic Finite Automt (NFA) An NFA is 5-tuple (Σ, Q, q 0, F, δ) where Σ is n lphet Q is nonempty set of sttes Difference from q 0 Q is the strt stte F Q is the set of finl sttes δ Q x (Σ {}) x Q specifies the NFA's trnsitions! Trnsitions on re llowed cn optionlly tke these trnsitions without consuming ny input! Cn hve more thn one trnsition for given stte nd symol δ is reltion, not function An NFA ccepts s if there is t lest one pth from its strt to finl stte on s Reducing Regulr Expressions to NFAs Gol: Given regulr expression e, construct NFA: <e> = (Σ, Q, q 0, F, δ) Rememer regulr expressions re defined recursively from primitive RE lnguges Invrint: F = 1 in our NFAs! Recll F = set of finl sttes Bse cse: <> = ({}, {S0, S1}, S0, {S1}, {(S0,, S1)} )
4 Reduction (cont.) Bse cse: Reduction: Conctention Induction: AB <> = (, {S0}, S0, {S0}, ) Bse cse: <A> <B> < > = (, {S0, S1}, S0, {S1}, ) Reduction: Conctention (cont.) Induction: AB Reduction: Union Induction: (A B) <A> <B> <A> = (Σ A, Q A, q A, {f A }, δ A ) <B> = (Σ B, Q B, q B, {f B }, δ B ) <AB> = (Σ A Σ B, Q A Q B, q A, {f B }, δ A δ B {(f A,,q B )} )
5 Reduction: Union (cont.) Induction: (A B) Reduction: Closure Induction: A* <A> = (Σ A, Q A, q A, {f A }, δ A ) <B> = (Σ B, Q B, q B, {f B }, δ B ) <(A B)> = (Σ A Σ B, Q A Q B {S0,S1}, S0, {S1}, δ A δ B {(S0,,q A ), (S0,,q B ), (f A,,S1), (f B,,S1)}) Reduction: Closure (cont.) Induction: A* <A> = (Σ A, Q A, q A, {f A }, δ A ) <A*> = (Σ A, Q A {S0,S1}, S0, {S1}, δ A {(f A,,S1), (S0,,q A ), (S0,,S1), (S1,,S0)}) Reduction Complexity Given regulr expression A of size n... Size = # of symols + # of opertions How mny sttes does <A> hve? 2 dded for ech, 2 dded for ech * O(n) Tht s pretty good!
6 Prctice Drw NFAs for the following regulr expressions nd lnguges (0 1)*110* 101* 111 ll inry strings ending in 1 (odd numers) ll lphetic strings which come fter hello in lphetic order (*c d* )d Recp Finite utomt Alphet, sttes (Σ, Q, q 0, F, δ) Types Deterministic () Non-deterministic (NFA) Reducing RE to NFA Conctention Union Closure CMSC Next How NFA Works Reducing NFA to -closure Suset lgorithm Minimizing Hopcroft reduction Complementing Implementing When NFA processes string NFA my e in severl possile sttes! Multiple trnsitions with sme lel! -trnsitions Exmple After processing! NFA my e in sttes S1 S2 S3 S1 S2 S3 CMSC CMSC
7 Reducing NFA to NFA my e reduced to By explicitly trcking the set of NFA sttes Intuition Build where! Ech stte represents set of NFA sttes Exmple S1 S2 NFA S3 CMSC S1 S1, S2, S3 Reducing NFA to (cont.) Reduction pplied using the suset lgorithm stte is suset of set of ll NFA sttes Algorithm Input! NFA (Σ, Q, q 0, F n, δ) Output! (Σ, R, r 0, F d, δ) Using two suroutines! -closure(p)! move(p, ) CMSC trnsitions nd -closure We sy p q If it is possile to go from stte p to stte q y tking only -trnsitions If p, p 1, p 2, p n, q Q such tht! {p,,p 1 } δ, {p 1,,p 2 } δ,, {p n,,q} δ -closure(p) Set of sttes rechle from p using -trnsitions lone! Set of sttes q such tht p q! -closure(p) = {q p q } Note! -closure(p) lwys includes p! -closure( ) my e pplied to set of sttes (tke union) -closure: Exmple 1 Following NFA contins S1 S2 S2 S3 S1 S3! Since S1 S2 nd S2 S3 S1 S2 S3 -closures -closure(s1) = { S1, S2, S3 } -closure(s2) = { S2, S3 } -closure(s3) = { S3 } -closure( { S1, S2 } ) = { S1, S2, S3 } { S2, S3 } CMSC CMSC
8 -closure: Exmple 2 Following NFA contins S1 S3 S3 S2 S1 S2! Since S1 S3 nd S3 S2 S1 S2 S3 -closure: Prctice Find -closures for following NFA -closures -closure(s1) = { S1, S2, S3 } -closure(s2) = { S2 } -closure(s3) = { S2, S3 } -closure( { S2,S3 } ) = { S2 } { S2, S3 } Find -closures for the NFA you construct for The regulr expression (0 1*)111(0* 1) CMSC CMSC Clculting move(p,) move(,p) : Exmple 1 move(p,) Set of sttes rechle from p using exctly one trnsition on! Set of sttes q such tht {p,, q} δ! move(p,) = {q {p,, q} δ} Note: move(p,) my e empty Ø! If no trnsition from p with lel Following NFA Σ = {, } Move move(s1, ) = move(s1, ) = move(s2, ) = move(s2, ) = move(s3, ) = move(s3, ) = { S2, S3 } Ø Ø { S3 } Ø Ø S1 S2 S3 CMSC CMSC
9 move(,p) : Exmple 2 Following NFA Σ = {, } Move move(s1, ) = move(s1, ) = move(s2, ) = move(s2, ) = move(s3, ) = move(s3, ) = { S2 } { S3 } { S3 } Ø Ø Ø S1 S2 S3 NFA Reduction Algorithm Input NFA (Σ, Q, q 0, F n, δ), Output (Σ, R, r 0, F d, δ) Algorithm Let r 0 = -closure(q 0 ), dd it to R // strt stte While n unmrked stte r R // process stte r Mrk r // ech stte visited once For ech Σ // for ech letter Let S = {s q r & move(q,) = s} // sttes reched vi Let e = -closure(s) // sttes reched vi If e R // if stte e is new Let R = R {e} // dd e to R (unmrked) Let δ = δ {r,, e} // dd trnsition r e Let F d = {r s r with s F n } // finl if include stte in F n CMSC CMSC NFA Exmple 1 Strt = -closure(s1) = { {S1,S3} } NFA R = { {S1,S3} } r R = {S1,S3} S1 S2 S3 Move({S1,S3},) = {S2}! e = -closure({s2}) = {S2}! R = R {{S2}} = { {S1,S3}, {S2} }! δ = δ {{S1,S3},, {S2}} Move({S1,S3},) = Ø {1,3} {2} NFA Exmple 1 (cont.) R = { {S1,S3}, {S2} } r R = {S2} Move({S2},) = Ø Move({S2},) = {S3}! e = -closure({s3}) = {S3}! R = R {{S3}} = { {S1,S3}, {S2}, {S3} }! δ = δ {{S2},, {S3}} S1 S2 S3 {1,3} NFA {2} {3} CMSC CMSC
10 NFA Exmple 1 (cont.) NFA Exmple 2 R = { {S1,S3}, {S2}, {S3} } r R = {S3} Move({S3},) = Ø Move({S3},) = Ø Mrk {S3}, exit loop F d = {{S1,S3}, {S3}}! Since S3 F n Done! S1 S2 S3 {1,3} NFA {2} {3} NFA {A} {B,D} {C,D} R = { {A}, {B,D}, {C,D} } CMSC CMSC NFA Exmple 3 Anlyzing the reduction NFA {B,D,E} Any string from {A} to either {D} or {CD} Represents pth from A to D in the originl NFA {A,E} {C,D} {E} R = { {A,E}, {B,D,E}, {C,D}, {E} } NFA CMSC CMSC
11 Anlyzing the reduction (cont d) Cn reduce ny NFA to using suset lg. How mny sttes in the? Ech stte is suset of the set of NFA sttes Given NFA with n sttes, my hve 2 n sttes! Since set with n items my hve 2 n susets Corollry! Reducing NFA with n sttes my e O(2 n ) CMSC Minimizing Result from CS theory Every regulr lnguge is recognizle y minimum-stte tht is unique up to stte nmes In other words For every, there is unique with minimum numer of sttes tht ccepts the sme lnguge Two minimum-stte s hve sme underlying shpe S1 S2 S3 c CMSC S1 c S3 S , Minimizing : Hopcroft Reduction Intuition Look to distinguish sttes from ech other! End up in different ccept / non-ccept stte with identicl input Algorithm Construct initil prtition! Accepting & non-ccepting sttes Itertively refine prtitions (until prtitions remin fixed)! Split prtition if memers in prtition hve trnsitions to different prtitions for sme input Two sttes x, y elong in sme prtition if nd only if for ll symols in Σ they trnsition to the sme prtition Updte trnsitions & remove ded sttes CMSC Splitting Prtitions No need to split prtition {S,T,U,V} All trnsitions on led to identicl prtition P2 Even though trnsitions on led to different sttes S U V T P1 CMSC X Z Y P2
12 Splitting Prtitions (cont.) Need to split prtition {S,T,U} into {S,T}, {U} Trnsitions on from S,T led to prtition P2 Trnsition on from U led to prtition P3 P4 S U T P1 CMSC X Z Y P2 P3 Resplitting Prtitions Need to reexmine prtitions fter splits Initilly no need to split prtition {S,T,U} After splitting prtition {X,Y} into {X}, {Y} Need to split prtition {S,T,U} into {S,T}, {U} P4 S U T P1 CMSC P3 X P2 Y Minimizing : Exmple 1 Minimizing : Exmple 2 P2 S T R P1 P2 S T R P1 After Initil prtitions clenup Accept { R } = P1 P2 P1 Reject { S, T } = P2 Split prtition? Not required, minimiztion done move(s,) = T P2 move(s,) = R P1 move(t,) = T P2 move (T,) = R P1 CMSC After Initil prtitions clenup Accept { R } = P1 P2 P1 Reject { S, T } = P2 Split prtition? Not required, minimiztion done move(s,) = T P2 move(s,) = R P1 move(t,) = S P2 move (T,) = R P1 CMSC
13 Minimizing : Exmple 3 P2 S T R P3 Initil prtitions lredy Accept { R } = P1 miniml Reject { S, T } = P2 Split prtition? Yes, different prtitions for move(s,) = T P2 move(s,) = T P2 move(t,) = T P2 move (T,) = R P1 CMSC P1 Minimiztion Algorithm (1) Input (Σ, Q, q 0, F n, δ), Output (Σ, R, r 0, F d, δ) Algorithm Let p 0 = F n, p 1 = Q F // initil prtitions = finl, nonfinl sttes Let R = { p p {p 0,p 1 } nd p!= Ø }, P = Ø // dd p to R if nonempty While P!= R do // while prtitions chnged on prev itertion Let P = R, R = Ø // P = prev prtitions, R = current prtitions For ech p P // for ech prtition from previous itertion {p 0,p 1 } = split(p,p) // split prtition, if necessry R = R { p p {p 0,p 1 } nd p!= Ø } // dd p to R if nonempty r 0 = p R where q 0 p // prtition w/ strting stte F d = { p p R nd exists s p such tht s F n } // prtitions w/ finl sttes δ(p,c) = q when δ(s,c) = r where s p nd r q // dd trnsitions CMSC Minimiztion Algorithm (2) Algorithm for split(p,p) Choose some r p, let q = p {r}, m = { } // pick some stte r in p For ech s q // for ech stte in p except for r For ech c Σ // for ech symol in lphet If δ(r,c) = q 0 nd δ(s,c) = q 1 nd // q s = sttes reched for c there is no p 1 P such tht q 0 p 1 nd q 1 p 1 then m = m {s} // dd s to m if q s not in sme prtition Return p m, m // m = sttes tht ehve differently thn r // m my e Ø if ll sttes ehve the sme // p m = sttes tht ehve the sme s r Complement of Given ccepting lnguge L How cn we crete ccepting its complement? Exmple! Σ = {,} CMSC CMSC
14 Complement of (cont.) Algorithm Add explicit trnsitions to ded stte Chnge every ccepting stte to non-ccepting stte & every non-ccepting stte to n ccepting stte Note this only works with s Why not with NFAs? Prctice Mke the which ccepts the complement of the lnguge ccepted y the elow. S3 CMSC CMSC Reducing s to REs Generl ide Remove sttes one y one, leling trnsitions with regulr expressions When two sttes re left (strt nd finl), the trnsition lel is the regulr expression for the Relting REs to s nd NFAs Why do we wnt to convert etween these? Cn mke it esier to express ides Cn e esier to implement CMSC CMSC
15 Implementing s (one-off) It's esy to uild progrm which mimics cur_stte = 0; while (1) { } } symol = getchr(); switch (cur_stte) { cse 0: switch (symol) { cse '0': cur_stte = 0; rek; cse '1': cur_stte = 1; rek; cse '\n': printf("rejected\n"); return 0; defult: printf("rejected\n"); return 0; } rek; cse 1: switch (symol) { cse '0': cur_stte = 0; rek; cse '1': cur_stte = 1; rek; cse '\n': printf("ccepted\n"); return 1; defult: printf("rejected\n"); return 0; } rek; defult: printf("unknown stte; I'm confused\n"); rek; CMSC Implementing s (generic) More generlly, use generic tle-driven given components (Σ, Q, q 0, F, δ) of : let q = q 0 while (there exists nother symol s of the input string) q := δ(q, s); if q F then ccept else reject q is just n integer Represent δ using rrys or hsh tles Represent F s set CMSC Run Time of How long for to decide to ccept/reject string s? Assume we cn compute δ(q, c) in constnt time Then time to process s is O( s )! Cn t get much fster! Constructing for RE A my tke O(2 A ) time But usully not the cse in prctice So there s the initil overhed But then processing strings is fst CMSC Regulr Expressions in Prctice Regulr expressions re typiclly compiled into tles for the generic lgorithm Cn think of this s simple yte code interpreter But relly just representtion of (Σ, Q A, q A, {f A }, δ A ), the components of the produced from the RE Regulr expression implementtions often hve extr constructs tht re non-regulr I.e., cn ccept more thn the regulr lnguges Cn e useful in certin cses Disdvntges! Nonstndrd, plus cn hve higher complexity CMSC
16 Prctice Convert to Convert to n NFA nd then to (0 1)*11 0* Strings of lternting 0 nd 1 * ( ) Summry of Regulr Expression Theory Finite utomt, NFA Equivlence of RE, NFA, RE NFA! Conctention, union, closure NFA! -closure & suset lgorithm Minimiztion, complement Implementtion CMSC CMSC
Types of Finite Automata. CMSC 330: Organization of Programming Languages. Comparing DFAs and NFAs. NFA for (a b)*abb.
CMSC 330: Orgniztion of Progrmming Lnguges Finite Automt 2 Types of Finite Automt Deterministic Finite Automt () Exctly one sequence of steps for ech string All exmples so fr Nondeterministic Finite Automt
More informationCMSC 330: Organization of Programming Languages
CMSC 330: Orgniztion of Progrmming Lnguges Finite Automt 2 CMSC 330 1 Types of Finite Automt Deterministic Finite Automt (DFA) Exctly one sequence of steps for ech string All exmples so fr Nondeterministic
More informationNFA DFA Example 3 CMSC 330: Organization of Programming Languages. Equivalence of DFAs and NFAs. Equivalence of DFAs and NFAs (cont.
NFA DFA Exmple 3 CMSC 330: Orgniztion of Progrmming Lnguges NFA {B,D,E {A,E {C,D {E Finite Automt, con't. R = { {A,E, {B,D,E, {C,D, {E 2 Equivlence of DFAs nd NFAs Any string from {A to either {D or {CD
More informationCMSC 330: Organization of Programming Languages. DFAs, and NFAs, and Regexps (Oh my!)
CMSC 330: Orgniztion of Progrmming Lnguges DFAs, nd NFAs, nd Regexps (Oh my!) CMSC330 Spring 2018 Types of Finite Automt Deterministic Finite Automt (DFA) Exctly one sequence of steps for ech string All
More informationRegular expressions, Finite Automata, transition graphs are all the same!!
CSI 3104 /Winter 2011: Introduction to Forml Lnguges Chpter 7: Kleene s Theorem Chpter 7: Kleene s Theorem Regulr expressions, Finite Automt, trnsition grphs re ll the sme!! Dr. Neji Zgui CSI3104-W11 1
More informationConvert the NFA into DFA
Convert the NF into F For ech NF we cn find F ccepting the sme lnguge. The numer of sttes of the F could e exponentil in the numer of sttes of the NF, ut in prctice this worst cse occurs rrely. lgorithm:
More informationMinimal DFA. minimal DFA for L starting from any other
Miniml DFA Among the mny DFAs ccepting the sme regulr lnguge L, there is exctly one (up to renming of sttes) which hs the smllest possile numer of sttes. Moreover, it is possile to otin tht miniml DFA
More informationJava II Finite Automata I
Jv II Finite Automt I Bernd Kiefer Bernd.Kiefer@dfki.de Deutsches Forschungszentrum für künstliche Intelligenz Finite Automt I p.1/13 Processing Regulr Expressions We lredy lerned out Jv s regulr expression
More informationLexical Analysis Finite Automate
Lexicl Anlysis Finite Automte CMPSC 470 Lecture 04 Topics: Deterministic Finite Automt (DFA) Nondeterministic Finite Automt (NFA) Regulr Expression NFA DFA A. Finite Automt (FA) FA re grph, like trnsition
More informationCS415 Compilers. Lexical Analysis and. These slides are based on slides copyrighted by Keith Cooper, Ken Kennedy & Linda Torczon at Rice University
CS415 Compilers Lexicl Anlysis nd These slides re sed on slides copyrighted y Keith Cooper, Ken Kennedy & Lind Torczon t Rice University First Progrmming Project Instruction Scheduling Project hs een posted
More informationChapter Five: Nondeterministic Finite Automata. Formal Language, chapter 5, slide 1
Chpter Five: Nondeterministic Finite Automt Forml Lnguge, chpter 5, slide 1 1 A DFA hs exctly one trnsition from every stte on every symol in the lphet. By relxing this requirement we get relted ut more
More informationRegular Expressions (RE) Regular Expressions (RE) Regular Expressions (RE) Regular Expressions (RE) Kleene-*
Regulr Expressions (RE) Regulr Expressions (RE) Empty set F A RE denotes the empty set Opertion Nottion Lnguge UNIX Empty string A RE denotes the set {} Alterntion R +r L(r ) L(r ) r r Symol Alterntion
More informationChapter 2 Finite Automata
Chpter 2 Finite Automt 28 2.1 Introduction Finite utomt: first model of the notion of effective procedure. (They lso hve mny other pplictions). The concept of finite utomton cn e derived y exmining wht
More informationConverting Regular Expressions to Discrete Finite Automata: A Tutorial
Converting Regulr Expressions to Discrete Finite Automt: A Tutoril Dvid Christinsen 2013-01-03 This is tutoril on how to convert regulr expressions to nondeterministic finite utomt (NFA) nd how to convert
More informationAUTOMATA AND LANGUAGES. Definition 1.5: Finite Automaton
25. Finite Automt AUTOMATA AND LANGUAGES A system of computtion tht only hs finite numer of possile sttes cn e modeled using finite utomton A finite utomton is often illustrted s stte digrm d d d. d q
More informationCS 373, Spring Solutions to Mock midterm 1 (Based on first midterm in CS 273, Fall 2008.)
CS 373, Spring 29. Solutions to Mock midterm (sed on first midterm in CS 273, Fll 28.) Prolem : Short nswer (8 points) The nswers to these prolems should e short nd not complicted. () If n NF M ccepts
More informationTheory of Computation Regular Languages. (NTU EE) Regular Languages Fall / 38
Theory of Computtion Regulr Lnguges (NTU EE) Regulr Lnguges Fll 2017 1 / 38 Schemtic of Finite Automt control 0 0 1 0 1 1 1 0 Figure: Schemtic of Finite Automt A finite utomton hs finite set of control
More informationDesigning finite automata II
Designing finite utomt II Prolem: Design DFA A such tht L(A) consists of ll strings of nd which re of length 3n, for n = 0, 1, 2, (1) Determine wht to rememer out the input string Assign stte to ech of
More informationNFAs continued, Closure Properties of Regular Languages
Algorithms & Models of Computtion CS/ECE 374, Fll 2017 NFAs continued, Closure Properties of Regulr Lnguges Lecture 5 Tuesdy, Septemer 12, 2017 Sriel Hr-Peled (UIUC) CS374 1 Fll 2017 1 / 31 Regulr Lnguges,
More informationTheory of Computation Regular Languages
Theory of Computtion Regulr Lnguges Bow-Yw Wng Acdemi Sinic Spring 2012 Bow-Yw Wng (Acdemi Sinic) Regulr Lnguges Spring 2012 1 / 38 Schemtic of Finite Automt control 0 0 1 0 1 1 1 0 Figure: Schemtic of
More informationFinite Automata-cont d
Automt Theory nd Forml Lnguges Professor Leslie Lnder Lecture # 6 Finite Automt-cont d The Pumping Lemm WEB SITE: http://ingwe.inghmton.edu/ ~lnder/cs573.html Septemer 18, 2000 Exmple 1 Consider L = {ww
More informationState Minimization for DFAs
Stte Minimiztion for DFAs Red K & S 2.7 Do Homework 10. Consider: Stte Minimiztion 4 5 Is this miniml mchine? Step (1): Get rid of unrechle sttes. Stte Minimiztion 6, Stte is unrechle. Step (2): Get rid
More informationLet's start with an example:
Finite Automt Let's strt with n exmple: Here you see leled circles tht re sttes, nd leled rrows tht re trnsitions. One of the sttes is mrked "strt". One of the sttes hs doule circle; this is terminl stte
More informationFormal Languages and Automata
Moile Computing nd Softwre Engineering p. 1/5 Forml Lnguges nd Automt Chpter 2 Finite Automt Chun-Ming Liu cmliu@csie.ntut.edu.tw Deprtment of Computer Science nd Informtion Engineering Ntionl Tipei University
More informationFinite-State Automata: Recap
Finite-Stte Automt: Recp Deepk D Souz Deprtment of Computer Science nd Automtion Indin Institute of Science, Bnglore. 09 August 2016 Outline 1 Introduction 2 Forml Definitions nd Nottion 3 Closure under
More informationNondeterminism. Nondeterministic Finite Automata. Example: Moves on a Chessboard. Nondeterminism (2) Example: Chessboard (2) Formal NFA
Nondeterminism Nondeterministic Finite Automt Nondeterminism Subset Construction A nondeterministic finite utomton hs the bility to be in severl sttes t once. Trnsitions from stte on n input symbol cn
More informationCSCI 340: Computational Models. Kleene s Theorem. Department of Computer Science
CSCI 340: Computtionl Models Kleene s Theorem Chpter 7 Deprtment of Computer Science Unifiction In 1954, Kleene presented (nd proved) theorem which (in our version) sttes tht if lnguge cn e defined y ny
More informationHomework 3 Solutions
CS 341: Foundtions of Computer Science II Prof. Mrvin Nkym Homework 3 Solutions 1. Give NFAs with the specified numer of sttes recognizing ech of the following lnguges. In ll cses, the lphet is Σ = {,1}.
More informationCHAPTER 1 Regular Languages. Contents
Finite Automt (FA or DFA) CHAPTE 1 egulr Lnguges Contents definitions, exmples, designing, regulr opertions Non-deterministic Finite Automt (NFA) definitions, euivlence of NFAs nd DFAs, closure under regulr
More informationCS 301. Lecture 04 Regular Expressions. Stephen Checkoway. January 29, 2018
CS 301 Lecture 04 Regulr Expressions Stephen Checkowy Jnury 29, 2018 1 / 35 Review from lst time NFA N = (Q, Σ, δ, q 0, F ) where δ Q Σ P (Q) mps stte nd n lphet symol (or ) to set of sttes We run n NFA
More informationNondeterminism and Nodeterministic Automata
Nondeterminism nd Nodeterministic Automt 61 Nondeterminism nd Nondeterministic Automt The computtionl mchine models tht we lerned in the clss re deterministic in the sense tht the next move is uniquely
More informationNon-deterministic Finite Automata
Non-deterministic Finite Automt From Regulr Expressions to NFA- Eliminting non-determinism Rdoud University Nijmegen Non-deterministic Finite Automt H. Geuvers nd J. Rot Institute for Computing nd Informtion
More informationDeterministic Finite Automata
Finite Automt Deterministic Finite Automt H. Geuvers nd J. Rot Institute for Computing nd Informtion Sciences Version: fll 2016 J. Rot Version: fll 2016 Tlen en Automten 1 / 21 Outline Finite Automt Finite
More informationFinite Automata. Informatics 2A: Lecture 3. John Longley. 22 September School of Informatics University of Edinburgh
Lnguges nd Automt Finite Automt Informtics 2A: Lecture 3 John Longley School of Informtics University of Edinburgh jrl@inf.ed.c.uk 22 September 2017 1 / 30 Lnguges nd Automt 1 Lnguges nd Automt Wht is
More informationFinite Automata. Informatics 2A: Lecture 3. Mary Cryan. 21 September School of Informatics University of Edinburgh
Finite Automt Informtics 2A: Lecture 3 Mry Cryn School of Informtics University of Edinburgh mcryn@inf.ed.c.uk 21 September 2018 1 / 30 Lnguges nd Automt Wht is lnguge? Finite utomt: recp Some forml definitions
More informationMore on automata. Michael George. March 24 April 7, 2014
More on utomt Michel George Mrch 24 April 7, 2014 1 Automt constructions Now tht we hve forml model of mchine, it is useful to mke some generl constructions. 1.1 DFA Union / Product construction Suppose
More informationNon-deterministic Finite Automata
Non-deterministic Finite Automt Eliminting non-determinism Rdoud University Nijmegen Non-deterministic Finite Automt H. Geuvers nd T. vn Lrhoven Institute for Computing nd Informtion Sciences Intelligent
More informationCMPSCI 250: Introduction to Computation. Lecture #31: What DFA s Can and Can t Do David Mix Barrington 9 April 2014
CMPSCI 250: Introduction to Computtion Lecture #31: Wht DFA s Cn nd Cn t Do Dvid Mix Brrington 9 April 2014 Wht DFA s Cn nd Cn t Do Deterministic Finite Automt Forml Definition of DFA s Exmples of DFA
More informationCHAPTER 1 Regular Languages. Contents. definitions, examples, designing, regular operations. Non-deterministic Finite Automata (NFA)
Finite Automt (FA or DFA) CHAPTER Regulr Lnguges Contents definitions, exmples, designing, regulr opertions Non-deterministic Finite Automt (NFA) definitions, equivlence of NFAs DFAs, closure under regulr
More informationFABER Formal Languages, Automata and Models of Computation
DVA337 FABER Forml Lnguges, Automt nd Models of Computtion Lecture 5 chool of Innovtion, Design nd Engineering Mälrdlen University 2015 1 Recp of lecture 4 y definition suset construction DFA NFA stte
More informationNon-Deterministic Finite Automata. Fall 2018 Costas Busch - RPI 1
Non-Deterministic Finite Automt Fll 2018 Costs Busch - RPI 1 Nondeterministic Finite Automton (NFA) Alphbet ={} q q2 1 q 0 q 3 Fll 2018 Costs Busch - RPI 2 Nondeterministic Finite Automton (NFA) Alphbet
More informationAssignment 1 Automata, Languages, and Computability. 1 Finite State Automata and Regular Languages
Deprtment of Computer Science, Austrlin Ntionl University COMP2600 Forml Methods for Softwre Engineering Semester 2, 206 Assignment Automt, Lnguges, nd Computility Smple Solutions Finite Stte Automt nd
More informationFormal Language and Automata Theory (CS21004)
Forml Lnguge nd Automt Forml Lnguge nd Automt Theory (CS21004) Khrgpur Khrgpur Khrgpur Forml Lnguge nd Automt Tle of Contents Forml Lnguge nd Automt Khrgpur 1 2 3 Khrgpur Forml Lnguge nd Automt Forml Lnguge
More informationNFAs continued, Closure Properties of Regular Languages
lgorithms & Models of omputtion S/EE 374, Spring 209 NFs continued, losure Properties of Regulr Lnguges Lecture 5 Tuesdy, Jnury 29, 209 Regulr Lnguges, DFs, NFs Lnguges ccepted y DFs, NFs, nd regulr expressions
More informationGNFA GNFA GNFA GNFA GNFA
DFA RE NFA DFA -NFA REX GNFA Definition GNFA A generlize noneterministic finite utomton (GNFA) is grph whose eges re lele y regulr expressions, with unique strt stte with in-egree, n unique finl stte with
More informationIntermediate Math Circles Wednesday, November 14, 2018 Finite Automata II. Nickolas Rollick a b b. a b 4
Intermedite Mth Circles Wednesdy, Novemer 14, 2018 Finite Automt II Nickols Rollick nrollick@uwterloo.c Regulr Lnguges Lst time, we were introduced to the ide of DFA (deterministic finite utomton), one
More informationLecture 08: Feb. 08, 2019
4CS4-6:Theory of Computtion(Closure on Reg. Lngs., regex to NDFA, DFA to regex) Prof. K.R. Chowdhry Lecture 08: Fe. 08, 2019 : Professor of CS Disclimer: These notes hve not een sujected to the usul scrutiny
More informationNFAs and Regular Expressions. NFA-ε, continued. Recall. Last class: Today: Fun:
CMPU 240 Lnguge Theory nd Computtion Spring 2019 NFAs nd Regulr Expressions Lst clss: Introduced nondeterministic finite utomt with -trnsitions Tody: Prove n NFA- is no more powerful thn n NFA Introduce
More informationWorked out examples Finite Automata
Worked out exmples Finite Automt Exmple Design Finite Stte Automton which reds inry string nd ccepts only those tht end with. Since we re in the topic of Non Deterministic Finite Automt (NFA), we will
More informationLexical Analysis Part III
Lexicl Anlysis Prt III Chpter 3: Finite Automt Slides dpted from : Roert vn Engelen, Florid Stte University Alex Aiken, Stnford University Design of Lexicl Anlyzer Genertor Trnslte regulr expressions to
More informationAnatomy of a Deterministic Finite Automaton. Deterministic Finite Automata. A machine so simple that you can understand it in less than one minute
Victor Admchik Dnny Sletor Gret Theoreticl Ides In Computer Science CS 5-25 Spring 2 Lecture 2 Mr 3, 2 Crnegie Mellon University Deterministic Finite Automt Finite Automt A mchine so simple tht you cn
More information1 Nondeterministic Finite Automata
1 Nondeterministic Finite Automt Suppose in life, whenever you hd choice, you could try oth possiilities nd live your life. At the end, you would go ck nd choose the one tht worked out the est. Then you
More informationScanner. Specifying patterns. Specifying patterns. Operations on languages. A scanner must recognize the units of syntax Some parts are easy:
Scnner Specifying ptterns source code tokens scnner prser IR A scnner must recognize the units of syntx Some prts re esy: errors mps chrcters into tokens the sic unit of syntx x = x + y; ecomes
More informationFinite Automata Theory and Formal Languages TMV027/DIT321 LP4 2018
Finite Automt Theory nd Forml Lnguges TMV027/DIT321 LP4 2018 Lecture 10 An Bove April 23rd 2018 Recp: Regulr Lnguges We cn convert between FA nd RE; Hence both FA nd RE ccept/generte regulr lnguges; More
More informationFirst Midterm Examination
Çnky University Deprtment of Computer Engineering 203-204 Fll Semester First Midterm Exmintion ) Design DFA for ll strings over the lphet Σ = {,, c} in which there is no, no nd no cc. 2) Wht lnguge does
More informationFirst Midterm Examination
24-25 Fll Semester First Midterm Exmintion ) Give the stte digrm of DFA tht recognizes the lnguge A over lphet Σ = {, } where A = {w w contins or } 2) The following DFA recognizes the lnguge B over lphet
More information3 Regular expressions
3 Regulr expressions Given n lphet Σ lnguge is set of words L Σ. So fr we were le to descrie lnguges either y using set theory (i.e. enumertion or comprehension) or y n utomton. In this section we shll
More informationTable of contents: Lecture N Summary... 3 What does automata mean?... 3 Introduction to languages... 3 Alphabets... 3 Strings...
Tle of contents: Lecture N0.... 3 ummry... 3 Wht does utomt men?... 3 Introduction to lnguges... 3 Alphets... 3 trings... 3 Defining Lnguges... 4 Lecture N0. 2... 7 ummry... 7 Kleene tr Closure... 7 Recursive
More informationHarvard University Computer Science 121 Midterm October 23, 2012
Hrvrd University Computer Science 121 Midterm Octoer 23, 2012 This is closed-ook exmintion. You my use ny result from lecture, Sipser, prolem sets, or section, s long s you quote it clerly. The lphet is
More informationFundamentals of Computer Science
Fundmentls of Computer Science Chpter 3: NFA nd DFA equivlence Regulr expressions Henrik Björklund Umeå University Jnury 23, 2014 NFA nd DFA equivlence As we shll see, it turns out tht NFA nd DFA re equivlent,
More informationAutomata Theory 101. Introduction. Outline. Introduction Finite Automata Regular Expressions ω-automata. Ralf Huuck.
Outline Automt Theory 101 Rlf Huuck Introduction Finite Automt Regulr Expressions ω-automt Session 1 2006 Rlf Huuck 1 Session 1 2006 Rlf Huuck 2 Acknowledgement Some slides re sed on Wolfgng Thoms excellent
More informationFormal languages, automata, and theory of computation
Mälrdlen University TEN1 DVA337 2015 School of Innovtion, Design nd Engineering Forml lnguges, utomt, nd theory of computtion Thursdy, Novemer 5, 14:10-18:30 Techer: Dniel Hedin, phone 021-107052 The exm
More information5. (±±) Λ = fw j w is string of even lengthg [ 00 = f11,00g 7. (11 [ 00)± Λ = fw j w egins with either 11 or 00g 8. (0 [ ffl)1 Λ = 01 Λ [ 1 Λ 9.
Regulr Expressions, Pumping Lemm, Right Liner Grmmrs Ling 106 Mrch 25, 2002 1 Regulr Expressions A regulr expression descries or genertes lnguge: it is kind of shorthnd for listing the memers of lnguge.
More informationCompiler Design. Fall Lexical Analysis. Sample Exercises and Solutions. Prof. Pedro C. Diniz
University of Southern Cliforni Computer Science Deprtment Compiler Design Fll Lexicl Anlysis Smple Exercises nd Solutions Prof. Pedro C. Diniz USC / Informtion Sciences Institute 4676 Admirlty Wy, Suite
More informationMyhill-Nerode Theorem
Overview Myhill-Nerode Theorem Correspondence etween DA s nd MN reltions Cnonicl DA for L Computing cnonicl DFA Myhill-Nerode Theorem Deepk D Souz Deprtment of Computer Science nd Automtion Indin Institute
More informationThoery of Automata CS402
Thoery of Automt C402 Theory of Automt Tle of contents: Lecture N0. 1... 4 ummry... 4 Wht does utomt men?... 4 Introduction to lnguges... 4 Alphets... 4 trings... 4 Defining Lnguges... 5 Lecture N0. 2...
More informationCISC 4090 Theory of Computation
9/6/28 Stereotypicl computer CISC 49 Theory of Computtion Finite stte mchines & Regulr lnguges Professor Dniel Leeds dleeds@fordhm.edu JMH 332 Centrl processing unit (CPU) performs ll the instructions
More informationɛ-closure, Kleene s Theorem,
DEGefW5wiGH2XgYMEzUKjEmtCDUsRQ4d 1 A nice pper relevnt to this course is titled The Glory of the Pst 2 NICTA Resercher, Adjunct t the Austrlin Ntionl University nd Griffith University ɛ-closure, Kleene
More informationNon Deterministic Automata. Linz: Nondeterministic Finite Accepters, page 51
Non Deterministic Automt Linz: Nondeterministic Finite Accepters, pge 51 1 Nondeterministic Finite Accepter (NFA) Alphbet ={} q 1 q2 q 0 q 3 2 Nondeterministic Finite Accepter (NFA) Alphbet ={} Two choices
More informationCS375: Logic and Theory of Computing
CS375: Logic nd Theory of Computing Fuhu (Frnk) Cheng Deprtment of Computer Science University of Kentucky 1 Tle of Contents: Week 1: Preliminries (set lger, reltions, functions) (red Chpters 1-4) Weeks
More informationSpeech Recognition Lecture 2: Finite Automata and Finite-State Transducers
Speech Recognition Lecture 2: Finite Automt nd Finite-Stte Trnsducers Eugene Weinstein Google, NYU Cournt Institute eugenew@cs.nyu.edu Slide Credit: Mehryr Mohri Preliminries Finite lphet, empty string.
More informationCS103B Handout 18 Winter 2007 February 28, 2007 Finite Automata
CS103B ndout 18 Winter 2007 Ferury 28, 2007 Finite Automt Initil text y Mggie Johnson. Introduction Severl childrens gmes fit the following description: Pieces re set up on plying ord; dice re thrown or
More information12.1 Nondeterminism Nondeterministic Finite Automata. a a b ε. CS125 Lecture 12 Fall 2016
CS125 Lecture 12 Fll 2016 12.1 Nondeterminism The ide of nondeterministic computtions is to llow our lgorithms to mke guesses, nd only require tht they ccept when the guesses re correct. For exmple, simple
More informationCS 275 Automata and Formal Language Theory
CS 275 Automt nd Forml Lnguge Theory Course Notes Prt II: The Recognition Problem (II) Chpter II.6.: Push Down Automt Remrk: This mteril is no longer tught nd not directly exm relevnt Anton Setzer (Bsed
More information1. For each of the following theorems, give a two or three sentence sketch of how the proof goes or why it is not true.
York University CSE 2 Unit 3. DFA Clsses Converting etween DFA, NFA, Regulr Expressions, nd Extended Regulr Expressions Instructor: Jeff Edmonds Don t chet y looking t these nswers premturely.. For ech
More informationLecture 09: Myhill-Nerode Theorem
CS 373: Theory of Computtion Mdhusudn Prthsrthy Lecture 09: Myhill-Nerode Theorem 16 Ferury 2010 In this lecture, we will see tht every lnguge hs unique miniml DFA We will see this fct from two perspectives
More information80 CHAPTER 2. DFA S, NFA S, REGULAR LANGUAGES. 2.6 Finite State Automata With Output: Transducers
80 CHAPTER 2. DFA S, NFA S, REGULAR LANGUAGES 2.6 Finite Stte Automt With Output: Trnsducers So fr, we hve only considered utomt tht recognize lnguges, i.e., utomt tht do not produce ny output on ny input
More information2. Lexical Analysis. Oscar Nierstrasz
2. Lexicl Anlysis Oscr Nierstrsz Thnks to Jens Plserg nd Tony Hosking for their kind permission to reuse nd dpt the CS132 nd CS502 lecture notes. http://www.cs.ucl.edu/~plserg/ http://www.cs.purdue.edu/homes/hosking/
More informationSome Theory of Computation Exercises Week 1
Some Theory of Computtion Exercises Week 1 Section 1 Deterministic Finite Automt Question 1.3 d d d d u q 1 q 2 q 3 q 4 q 5 d u u u u Question 1.4 Prt c - {w w hs even s nd one or two s} First we sk whether
More informationMidterm 1 Practice. CS 350 Fall 2018 gilray.org/classes/fall2018/cs350/
Midterm 1 Prctice CS 350 Fll 2018 gilry.org/clsses/fll2018/cs350/ 1 Midterm #1: Thursdy, Septemer 27! Bring less stuff, if possile. Keep ny gs under the tle. You my hve out: pencil, pen, nd/or erser. My
More informationa,b a 1 a 2 a 3 a,b 1 a,b a,b 2 3 a,b a,b a 2 a,b CS Determinisitic Finite Automata 1
CS4 45- Determinisitic Finite Automt -: Genertors vs. Checkers Regulr expressions re one wy to specify forml lnguge String Genertor Genertes strings in the lnguge Deterministic Finite Automt (DFA) re nother
More informationClosure Properties of Regular Languages
of Regulr Lnguges Dr. Neil T. Dntm CSCI-561, Colordo School of Mines Fll 2018 Dntm (Mines CSCI-561) Closure Properties of Regulr Lnguges Fll 2018 1 / 50 Outline Introduction Closure Properties Stte Minimiztion
More informationCS375: Logic and Theory of Computing
CS375: Logic nd Theory of Computing Fuhu (Frnk) Cheng Deprtment of Computer Science University of Kentucky 1 Tble of Contents: Week 1: Preliminries (set lgebr, reltions, functions) (red Chpters 1-4) Weeks
More informationTalen en Automaten Test 1, Mon 7 th Dec, h45 17h30
Tlen en Automten Test 1, Mon 7 th Dec, 2015 15h45 17h30 This test consists of four exercises over 5 pges. Explin your pproch, nd write your nswer to ech exercise on seprte pge. You cn score mximum of 100
More informationinput tape head moves current state
CPS 140 - Mthemticl Foundtions of CS Dr. Susn Rodger Section: Finite Automt (Ch. 2) (lecture notes) Things to do in clss tody (Jn. 13, 2004): ffl questions on homework 1 ffl finish chpter 1 ffl Red Chpter
More informationCS 330 Formal Methods and Models Dana Richards, George Mason University, Spring 2016 Quiz Solutions
CS 330 Forml Methods nd Models Dn Richrds, George Mson University, Spring 2016 Quiz Solutions Quiz 1, Propositionl Logic Dte: Ferury 9 1. (4pts) ((p q) (q r)) (p r), prove tutology using truth tles. p
More informationSpeech Recognition Lecture 2: Finite Automata and Finite-State Transducers. Mehryar Mohri Courant Institute and Google Research
Speech Recognition Lecture 2: Finite Automt nd Finite-Stte Trnsducers Mehryr Mohri Cournt Institute nd Google Reserch mohri@cims.nyu.com Preliminries Finite lphet Σ, empty string. Set of ll strings over
More informationThe University of Nottingham SCHOOL OF COMPUTER SCIENCE A LEVEL 2 MODULE, SPRING SEMESTER LANGUAGES AND COMPUTATION ANSWERS
The University of Nottinghm SCHOOL OF COMPUTER SCIENCE LEVEL 2 MODULE, SPRING SEMESTER 2016 2017 LNGUGES ND COMPUTTION NSWERS Time llowed TWO hours Cndidtes my complete the front cover of their nswer ook
More informationToday s Topics Automata and Languages
Tody s Topics Automt nd Lnguges Prof. Mohmed Hmd Softwre Engineering L. The University of Aizu Jpn DFA to Regulr Expression GFNA DFAèGNFA GNFA è RE DFA è RE Exmples 2 DFA è RE NFA DFA -NFA REX GNFA 3 Definition
More informationAutomata and Languages
Automt nd Lnguges Prof. Mohmed Hmd Softwre Engineering L. The University of Aizu Jpn Tody s Topics DFA to Regulr Expression GFNA DFAèGNFA GNFA è RE DFA è RE Exmples 2 DFA è RE NFA DFA -NFA REX GNFA 3 Definition
More informationContext-Free Grammars and Languages
Context-Free Grmmrs nd Lnguges (Bsed on Hopcroft, Motwni nd Ullmn (2007) & Cohen (1997)) Introduction Consider n exmple sentence: A smll ct ets the fish English grmmr hs rules for constructing sentences;
More informationCoalgebra, Lecture 15: Equations for Deterministic Automata
Colger, Lecture 15: Equtions for Deterministic Automt Julin Slmnc (nd Jurrin Rot) Decemer 19, 2016 In this lecture, we will study the concept of equtions for deterministic utomt. The notes re self contined
More informationCS 267: Automated Verification. Lecture 8: Automata Theoretic Model Checking. Instructor: Tevfik Bultan
CS 267: Automted Verifiction Lecture 8: Automt Theoretic Model Checking Instructor: Tevfik Bultn LTL Properties Büchi utomt [Vrdi nd Wolper LICS 86] Büchi utomt: Finite stte utomt tht ccept infinite strings
More informationWhere did dynamic programming come from?
Where did dynmic progrmming come from? String lgorithms Dvid Kuchk cs302 Spring 2012 Richrd ellmn On the irth of Dynmic Progrmming Sturt Dreyfus http://www.eng.tu.c.il/~mi/cd/ or50/1526-5463-2002-50-01-0048.pdf
More information12.1 Nondeterminism Nondeterministic Finite Automata. a a b ε. CS125 Lecture 12 Fall 2014
CS125 Lecture 12 Fll 2014 12.1 Nondeterminism The ide of nondeterministic computtions is to llow our lgorithms to mke guesses, nd only require tht they ccept when the guesses re correct. For exmple, simple
More informationCS311 Computational Structures Regular Languages and Regular Grammars. Lecture 6
CS311 Computtionl Strutures Regulr Lnguges nd Regulr Grmmrs Leture 6 1 Wht we know so fr: RLs re losed under produt, union nd * Every RL n e written s RE, nd every RE represents RL Every RL n e reognized
More informationHomework 4. 0 ε 0. (00) ε 0 ε 0 (00) (11) CS 341: Foundations of Computer Science II Prof. Marvin Nakayama
CS 341: Foundtions of Computer Science II Prof. Mrvin Nkym Homework 4 1. UsetheproceduredescriedinLemm1.55toconverttheregulrexpression(((00) (11)) 01) into n NFA. Answer: 0 0 1 1 00 0 0 11 1 1 01 0 1 (00)
More informationCS 573 Automata Theory and Formal Languages
Non-determinism Automt Theory nd Forml Lnguges Professor Leslie Lnder Leture # 3 Septemer 6, 2 To hieve our gol, we need the onept of Non-deterministi Finite Automton with -moves (NFA) An NFA is tuple
More informationCSCI 340: Computational Models. Transition Graphs. Department of Computer Science
CSCI 340: Computtionl Models Trnsition Grphs Chpter 6 Deprtment of Computer Science Relxing Restrints on Inputs We cn uild n FA tht ccepts only the word! 5 sttes ecuse n FA cn only process one letter t
More informationClosure Properties of Regular Languages
Closure Properties of Regulr Lnguges Regulr lnguges re closed under mny set opertions. Let L 1 nd L 2 e regulr lnguges. (1) L 1 L 2 (the union) is regulr. (2) L 1 L 2 (the conctention) is regulr. (3) L
More information