0% found this document useful (0 votes)
90 views17 pages

L3 DFA Introduction

This document introduces deterministic finite automata (DFAs) through examples. It defines a DFA as a 5-tuple (Q, S, d, q0, F) where Q is a finite set of states, S is an alphabet, d is the transition function, q0 is the initial state, and F is the set of accepting states. It represents transition functions through transition diagrams and tables. Strings are accepted if the DFA reaches an accepting state when reading the input from left to right. The document provides examples of DFAs that recognize specific languages and discusses how to construct DFAs to recognize languages with certain properties. It concludes with homework problems to construct DFAs for various languages over the alphabet {0,1}.

Uploaded by

Sanket Khaire
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
90 views17 pages

L3 DFA Introduction

This document introduces deterministic finite automata (DFAs) through examples. It defines a DFA as a 5-tuple (Q, S, d, q0, F) where Q is a finite set of states, S is an alphabet, d is the transition function, q0 is the initial state, and F is the set of accepting states. It represents transition functions through transition diagrams and tables. Strings are accepted if the DFA reaches an accepting state when reading the input from left to right. The document provides examples of DFAs that recognize specific languages and discusses how to construct DFAs to recognize languages with certain properties. It concludes with homework problems to construct DFAs for various languages over the alphabet {0,1}.

Uploaded by

Sanket Khaire
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

L3 - Theory of Computation -

DFA Introduction

Course Instructors:
Div 1: Praveen Pawar (Div 1)
Div 2: Jibi Abraham (Div 2)

1
Finite Automata

2
Example of a Finite Automaton
f
off on
f
 There are states off and on, the automaton
starts in off and tries to reach the “good state”
on
 What sequences of f’s lead to the final state?
 Answer: {f, fff, fffff, …} = {f n: n is odd}
 This is an example of a deterministic finite
automaton over alphabet {f}
Deterministic finite automata
 A deterministic finite automaton (DFA) is a 5-
tuple (Q, S, d, q0, F) where
 Q is a finite set of states
 S is an alphabet
 d: Q × S → Q is a transition function
 q0  Q is the initial state
 F  Q is a set of accepting states (or final states).
Representation of d
 Transition Function, d, can be represented in
2-ways
 Transition Diagram
 Transition Table

5
Example - 1
0 1 0,1
q0 1 q1 0 q2

alphabet S = {0, 1} transition function d:


states Q = {q0, q1, q2} inputs
initial state q0 0 1
accepting states F = {q0, q1} q0 q0 q1

states
q1 q2 q1
q2 q2 q2

In Transition diagrams, the accepting states will be denoted by


double loops
Polling - 1
 Is the below FA a DFA?
A. Yes

B. No

7
Block Diagram of FA

0 1 1 0 0 .. .. Input Tape
Header
Finite
Control

 One-way, infinite tape, broken into cells


 One-way, read-only tape head.
 Finite control, i.e.,
 finite number of states, and
 transition rules between them, i.e.,
 a program, containing the position of the read head, current symbol
being scanned, and the current “state.” 8
Acceptance of DFA
 A string is placed on the tape, read head is
positioned at the left end, and the DFA will read the
string one symbol at a time until all symbols have
been read.
 The DFA will then either accept or reject the string.
 Let ‘w’ be any string defined over alphabet Σ
corresponding to ‘w’ if their exist a transition path
which start at initial state and end in any one of the
final states then string ‘w’ is accepted by DFA.
 The set of all string’s which are accepted by DFA is
called as Language of DFA

9
Example -2
The language of a DFA (Q, S, d, q0, F) is the set of
all strings over S that, starting from q0 and
following the transitions as the string is read left
to right, will reach some accepting state.

f
M: off on
f

 Language of M is {f, fff, fffff, …} = {f n: n is


odd}
Example - 3
 Modeling recognition of the word “then”

Start state Transition Intermediate Final state


state
11
Example - 4
1

0
q0 q1 1
0

State q0 q0 q1 q0 q0 q0
Input 1 0 0 1 1

• One state is final/accepting, all others are


rejecting.
• The above DFA accepts those strings that
contain an even number of 0’s, including the
null string, over {0,1}
L = {all strings with even number of 0’s} 12
Polling - 2
 Does the language of the below DFA include ԑ?
A. Yes

B. No

0
q0 q1 1
0

13
Construction of DFA – Example 5
Construct the FA that accept all the strings on {0,1}
where every string start with 10.
Step 1 : ∑ = {0,1}
Step 2 : L = {10, 100, 101, 1000, 1001, 1010, 1011, ….}
Step 3: Transition Diagram
0,1
q3
Step 4: Q = {q0, q1, q2, q3} 0 0,1
1
Step 5: F = {q2} q0 q1 q2
1 0
Start

14
Construction of DFA – Example 6
Construct the FA that accept all the string of {0,1}
where every string contain the substring 10.
Step 1 : ∑ = {0,1}
Step 2 : L = {10, 010, 110, 100, 101, 1010, 1011, ….}
Step 3: Transition Diagram

Step 4: Q = {q0, q1, q2} 1 0,1


0
Step 5: F = {q2} q0 q1 q2
1 0
Start
15
Home Work
 Construct a DFA that accept all the string of
{0,1}
1. where every string end with 10

2. where every string Start and end with 0

3. where every string Start and end with same

symbol where every string


4. Start and end with different symbol

5. where number of 0 in the string is exactly 2

6. where number of 0 in the string is at most 2

16
?
17

You might also like