DFA Minimization – Complete Step-by-Step Solution
Given DFA:
• States: {A, B, C, D}
• Alphabet: {0, 1}
• Accepting States: {C, D}
• Transitions:
Current State Input 0 Input 1
A B C
B C D
C B C
D B C
Step 1: Initial Partition (Accepting vs Non-Accepting)
We first divide the states based on whether they are accepting or not:
• Group 1: Accepting → {C, D}
• Group 2: Non-Accepting → {A, B}
Step 2: Refine Partitions
Examine Group 1: {C, D}
We check whether C and D transition to the same group under both inputs:
• C:
o 0 → B (Group 2)
o 1 → C (Group 1)
• D:
o 0 → B (Group 2)
o 1 → C (Group 1)
Since both transitions are identical → C and D are equivalent, remain in the same group.
Examine Group 2: {A, B}
• A:
o 0 → B (Group 2)
o 1 → C (Group 1)
• B:
o 0 → C (Group 1)
o 1 → D (Group 1)
→ Transitions differ:
• A goes to Group 2 on 0, Group 1 on 1
• B goes to Group 1 on both inputs
Therefore, A and B are not equivalent, split the group.
Step 3: Final Groups
So we have the following partitions:
1. [A]
2. [B]
3. [C, D]
Step 4: Construct Minimized DFA
New States (Partitions):
Let’s name them for simplicity:
• Q1 = [A]
• Q2 = [B]
• Q3 = [C, D] (Accepting)
Transitions:
From Q1 ([A]):
• 0 → B → Q2
• 1 → C → Q3
From Q2 ([B]):
• 0 → C → Q3
• 1 → D → Q3
From Q3 ([C, D]):
• 0 → B → Q2
• 1 → C → Q3
Final Minimized DFA:
State Input 0 Input 1 Accepting
Q1 Q2 Q3 No
Q2 Q3 Q3 No
Q3 Q2 Q3 Yes
Answer: There are THREE states in the minimized DFA.
Correct Option: (3) THREE
Conclusion
Minimizing the given DFA by identifying and merging equivalent states leads to 3 states. The
accepting behavior is preserved while reducing redundancy. The key factors in minimization are
equivalent behavior under all inputs and careful partition refinement.