programming4us
programming4us
DESKTOP

Non-Deterministic Finite Automata

- How To Install Windows Server 2012 On VirtualBox
- How To Bypass Torrent Connection Blocking By Your ISP
- How To Install Actual Facebook App On Kindle Fire
7/24/2010 8:00:17 PM
2.2 NON-DETERMINISTIC FINITE AUTOMATA
If the basic finite automata model is modified in such a way that from a state on an input symbol zero, one or more transitions are permitted, then the corresponding finite automata is called a "non-deterministic finite automata" (NFA). Therefore, an NFA is a finite automata in which there may exist more than one paths corresponding to x in Σ* (because zero, one, or more transitions are permitted from a state on an input symbol). Whereas in a DFA, there exists exactly one path corresponding to x in Σ*. Hence, an NFA is nothing more than a finite automata:

in which δ defines mapping from QΣ to 2Q (to take care of zero, one, or more transitions). For example, consider the finite automata shown below:

where:

The transition diagram of this automata is:

Click To expand
Figure 1: Transition diagram for finite automata that handles several transitions.

Acceptance of Strings by Non-deterministic Finite Automata

Since an NFA is a finite automata in which there may exist more than one path corresponding to x in Σ*, and if this is, indeed, the case, then we are required to test the multiple paths corresponding to x in order to decide whether or not x is accepted by the NFA, because, for the NFA to accept x, at least one path corresponding to x is required in the NFA. This path should start in the initial state and end in one of the final states. Whereas in a DFA, since there exists exactly one path corresponding to x in Σ*, it is enough to test whether or not that path starts in the initial state and ends in one of the final states in order to decide whether x is accepted by the DFA or not.

Therefore, if x is a string made of symbols in Σ of the NFA (i.e., x is in Σ*), then x is accepted by the NFA if at least one path exists that corresponds to x in the NFA, which starts in an initial state and ends in one of the final states of the NFA. Since x is a member of Σ* and there may exist zero, one, or more transitions from a state on an input symbol, we define a new transition function, δ1, which defines a mapping from 2QΣ* to 2Q; and if δ1 ({q0},x) = P, where P is a set containing at least one member of F, then x is accepted by the NFA. If x is written as wa, where a is the last symbol of x, and w is a string made of the remaining symbols of x then:

For example, consider the finite automata shown below:

where:

If x = 0111, then to find out whether or not x is accepted by the NFA, we proceed as follows:

Since δ1 ({q0}, 0111) = {q1, q2, q3}, which contains q3, a member of F of the NFA—, hence, x = 0111 is accepted by the NFA.

Therefore, if M is a NFA, then the language accepted by NFA is defined as:

L(M) = {x | δ1 ({q0} x) = P, where P contains at least one member of F }.


Other  
 
Top 10
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Finding containers and lists in Visio (part 2) - Wireframes,Legends
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Finding containers and lists in Visio (part 1) - Swimlanes
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Formatting and sizing lists
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Adding shapes to lists
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Sizing containers
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 3) - The Other Properties of a Control
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 2) - The Data Properties of a Control
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 1) - The Format Properties of a Control
- Microsoft Access 2010 : Form Properties and Why Should You Use Them - Working with the Properties Window
- Microsoft Visio 2013 : Using the Organization Chart Wizard with new data
REVIEW
- First look: Apple Watch

- 3 Tips for Maintaining Your Cell Phone Battery (part 1)

- 3 Tips for Maintaining Your Cell Phone Battery (part 2)
programming4us programming4us
programming4us
 
 
programming4us