Finite Automata(FA) in Compiler Construction and Design

By: Prof. Fazal Rehman Shamil
Last modified on April 14th, 2021

Let us see an example of Finite Automata(FA) in Compiler Construction and Design. 

Regular Expression : b(aa)*a+a(bb)*b

Finite Automata(FA) in Compiler Construction and Design

Strings of FA (Automata)

  • Accepted strings of length 1={no Strings}
  • Accepted strings of length 2={ba, ab}
  • Accepted strings of length 5={ No Strings}
  • Accepted strings of length 8={baaaaaaa,abbbbbbb, no more strings}
  • Accepted strings of length 10={baaaaaaaaa,abbbbbbbbb, no more strings}
  • Accepted strings of length 15={No Strings}
  • Accepted strings of length 20={baaaaaaaaaaaaaaaaaaa, abbbbbbbbbbbbbbbbbbb, no more strings}
  • Accepted strings of length 25={No Strings}

How to read strings from FA?

How to read ba?

0 to 3 | 3 to 4

How to read ab?
0 to 1 | 1 to 2

How to read baaaaaaa?

0 to 3 | 3 to 3 | 4 to 3 | | 3 to 3 | 4 to 3 || 3 to 3 | 4 to 3 | 3 to 4

How to read abbbbbbb?

0 to 1 | 1 to 2 | 2 to 1 | 1 to 2 | 2 to 1| 1 to 2 | 2 to 1 | 1 to 2

How to read baaaaaaaaa?

0 to 3 | 3 to 3 | 4 to 3 | 3 to 3 | 4 to 3 | 3 to 3 | 4 to 3 | 3 to 4 | 4 to 3 | 3 to 4

How to read abbbbbbbbb?

0 to 1 | 1 to 2 | 2 to 1 | 1 to 2 | 2 to 1| 1 to 2 | 2 to 1 | 1 to 2 | 2 to 1 | 1 to 2

How to read baaaaaaaaaaaaaaaaaaa?

0 to 3 | 3 to 3 | 4 to 3 | 3 to 3 | 4 to 3 | 3 to 3 | 4 to 3 | 3 to 4 | 4 to 3 | 3 to 4 | 4 to 3 | 3 to 3 | 4 to 3 | 3 to 3 | 4 to 3 | 3 to 4 | 4 to 3 | 3 to 4 | 4 to 3 | 3 to 4

How to read abbbbbbbbbbbbbbbbbbb?

0 to 1 | 1 to 2 | 2 to 1 | 1 to 2 | 2 to 1| 1 to 2 | 2 to 1 | 1 to 2 | 2 to 1 | 1 to 2 | 2 to 1 | 1 to 2 | 2 to 1|
1 to 2 | 2 to 1 | 1 to 2 | 2 to 1 | 1 to 2 | 2 to 1 | 1 to 2

Video Lecture

List of 100+ Important Deterministic Finite Automata

Finite Automata Exercise Solution

Here I am showing you a list of some more important Deterministic Finite Automata used in the theory of automata and theory of computation.

  1. DFA for  (a+b)* (a+b)a .
  2. DFA for (bb)*(aa)* .
  3. DFA for  b+a(a+b)*+a.
  4. DFA for (a+b)*b+(bb)*a.
  5. DFA for bb+a(a+b)*+aa.
  6. DFA for  a(a+b)*+bb(a)* .
  7. DFA for  a(a+b)b*+bb(a)*.
  8. DFA for  b(aa)*a+a(bb)*b.
  9. DFA for a+a(aa+b)*(aa)b.
  10. DFA for a+a(aa+b)*+(aa)b.
  11. DFA for (a+b)b(a+b)*+(aa)*b.
  12. FA for strings starting with a and ending with a.
  13. FA for the language of all those strings starting with a.
  14. FA for the language of all those strings containing aa as a substring.
  15. DFA for the language of all those strings starting and ending with the same letters.
  16. DFA for the language of all those strings starting and ending with different letters.
  17. DFA for the language of all those strings having double 0 or double 1.
  18. DFA for the language of all those strings starting and ending with b.
  19. DFA for ending with b.
  20. DFA for the string of even A’s and even b’s.
  21. DFA for the regular expression of  a(a+b)*+(bb)+a(ba)*+aba+bb*(a+b)*.
  22. RegExp and DFA for strings having triple a’s or triple b’s.