1 Non-Deterministic Automata Regular Expressions
2 NFA Example
3
4 Formal Definition of NFAs Set of states, i.e. Input aplhabet, i.e. Transition function Initial state Final states
5 Transition Function
6 Extended Transition Function
7 Formally It holds if and only if there is a walk from to with label
8 The Language of an NFA
9
10
11 Formally The language accepted by NFA is: where and there is some (final state)
12
13 Equivalence of NFAs and DFAs For DFAs or NFAs: Machine is equivalent to if
14 Example NFA DFA
15 Since machines and are equivalent DFA NFA
16 Equivalence of NFAs and DFAs Every DFA is also an NFA A language accepted by a DFA will be accepted by an NFA An NFA is as least as powerful as a DFA Is an DFA as powerful as an NFA?
17 Is a DFA as Powerful as an NFA? Answer: YES! A language accepted by an NFA will be accepted by some DFA For every NFA there is an equivalent DFA that accepts the same language
18 NFAs Accept the Regular Languages For every NFA there is an equivalent DFA The language accepted by a DFA is regular The language accepted by an NFA is regular
19 NFA to DFA NFA DFA
20 NFA to DFA NFA DFA
21 NFA to DFA NFA DFA
22 NFA to DFA NFA DFA
23 NFA to DFA NFA DFA
24 NFA to DFA NFA DFA
25 NFA to DFA NFA DFA
26 NFA to DFA NFA DFA
27 NFA to DFA Observations We are given an NFA We want to convert it to an equivalent DFA With
28 If the NFA has states The DFA has states in the powerset
29 Procedure NFA to DFA 1. Initial state of NFA: Initial state of DFA:
30 Example NFA DFA
31 Procedure NFA to DFA 2. For every DFA’s state Compute in the NFA Giving union Add a transition
32 Exampe NFA DFA
33 Procedure NFA to DFA Repeat Step 2 for all letters, until no more transitions can be added.
34 Example NFA DFA
35 Procedure NFA to DFA 3. For any DFA state If some is a final state for the NFA Then, is a final state for the DFA
36 Example NFA DFA
37 Theorem Take NFA Apply procedure to obtain DFA Then and are equivalent :