Date post: | 02-Jan-2016 |
Category: |
Documents |
Upload: | roland-sherman |
View: | 221 times |
Download: | 0 times |
IMPORTANT2
We introduce a conceptual machine that occurs in practice more frequently than
the transition graph.
TRANSITION GRAPH3
DefinitionA transition graph (abbreviated TG) is a 5-tuple (Q, , q0, , A) where• Q means a finite set of states. is a finite input alphabet.• q0 Q named Initial state.• A Q , A is the set of all accepted states. is a function from Q* to P(Q), called
transition function.
NON-DETERMINISTIC MACHINE
7
A nondeterministic finite state machine (NFA) is a transition graph with a unique start state and each of its edge labels is a single alphabet.
NON-DETERMINISTIC MACHINE
8
DefinitionA nondeterministic finite automaton (abbreviated NFA) is a 5-tuple (Q,,q0,A,). where• Q means a finite set of states.• is a finite input alphabet.• q0 is in Q named Initial state.• A is a subset of Q, A is the set of all
accepted states.• is a function from Q to P(Q)where P(Q) is the power set of Q.
NON-DETERMINISTIC MACHINE
9
A B0
C0,1
0,1
D0,1
*(A,00)*(A,00) = (r,0) : r *(A,0)
: r { A , B }= { A , B } { C } = { A , B , C }
How to define the transition function?
NON-DETERMINISTIC MACHINE
1
0
A B0
C0,1
0,1
D0,1
*(A,010) *(A,010) = (r,0) : r *(A,01)
*(A,01) = (s,1) : s *(A,0)
: s { A , B }
= (A,1) (B,1)= { A } { C } : r
{ A , C }*(A,010) = (A,0) (C,0)
= { A , B } { D }= { A , B , D }
NON-DETERMINISTIC MACHINE
1
1
For a NFA, M = (Q, , q0, , A) and any pQ, *(p,) = {p}.
For any pQ and x = a1a2a3…an * (with n 1)*(p, x) is the set of all states q for which
there is a sequence of states p=p0, p1p2…pn-1, pn = q satisfying :
pi(pi-1,ai) for each i with 1 i n.
String x in * is accepted by a NFA if *(q0,x) A .
*(p,) = {p}*(p,yan) = all r*(p,y) (r,an)
NON-DETERMINISTIC MACHINE
1
2
DefinitionA nondeterministic finite automaton with -transition (NFA-) is a 5-tuple (Q, , q0, , A) where
• Q means a finite set of states. is a finite input alphabet.• q0 Q named Initial state.
• A Q , A is the set of all accepted states. is a function from Q({}) to P(Q)
where P(Q) is the power set of Q.
NON-DETERMINISTIC MACHINE
1
3
For an NFA-, M=(Q, , q0, , A) states p and q Q and a stringx = a1a2a3…an *, we will say M moves from p to q by a sequence of transitions corresponding to x if
there exist an integer m n, a sequence b1b2b3…bm {}satisfying x = b1b2b3…bm and a sequence of states
p = p0, p1, p2, …, pm = qso that for each i, 1 i m, pi (pi-1,bi).
For x * and p Q, *(p,x) is the set of all states q Q such that there is a sequence of transitions corresponding to x by which M moves from p to q.
-CLOSURE1
4
DefinitionLet M=(Q, , q0, , A) be a NFA-.
Let S be any subset of Q.The -closure of S is the set (S) defined as follows:• Every element of S is an element of (S).• For any q (S), every element of (q,) is in
(S).• No other elements of Q are in (S).
-CLOSURE1
5
For a NFA- M = (Q, , q0, , A).The extended transition function *: Q * P(Q) is defined as follows:For any q Q, *(q,) = ({q})For any q Q, y * and a ,
*(q,ya) = ( r*(q,y) (r,a) )
A string x is accepted by M if *(q0,x) A .The language recognized by M is the set L(M) of all strings accepted by M.
NON-DETERMINISTIC MACHINE
1
6
TheoremFor every nondeterministic finite state machine, there is a finite state machine accepts exactly the same language.
PROOF
NON-DETERMINISTIC MACHINE
1
7
TheoremFor every nondeterministic finite state machine with -transition, there is a finite state machine accepts exactly the same language.
PROOF