What is Finite State Automata or finite state machine?

The finite state machine also has the following names;

- Finite state automata (FSA)
- Finite automata (FA)
- Finite machines
- Finite state machines

The finite state machine is designed for accepting and rejecting the different strings of the languages from the machine. All regular languages can be represented by the FSA.

## Symboles of Finite Automata (Finite State Machine FSM)

The finite state machine has the following parts;

**Start state:** Representing the start of the machine.

**Final state:** Representing the successful end of the machine

**Dead/Dummy State:** Having no meaning in the strings generation. It is only designed to full the requirements of the finite state machines that every state have one transition for each alphabet.

**Transition:** Representing the reading of the alphabets from the finite state machine.

**Strings:** Strings are characters are set of characters that can be accepted or rejected by finite state machines.

## Rules of Finite Automata (Finite State Machine FSM)

**1.** Every state has strictly one transition for each alphabet. Suppose there two alphabets in the languages L={a,b}, then each state has strictly had two transitions. One transition for alphabet a and one transition for alphabet b. Let’s have another example, Suppose there three alphabets in the languages L={a,b,c}, then each state has strictly three transitions. One transition for alphabet a, one transition for alphabet b and one transition for alphabet c.

**2.** If the generation of any alphabet from a transition is the cause of generating some strings that are not the part of the language, and it becomes very necessary to put that alphabet on some transition, then generates the alphabet and move the machine to the dead/dummy state. Dummy state means that machine will not generate any string.

**3.** Every string that is part of the language should be accepted by the FSA and every string that is not part of the language should be rejected by the FSA.

**4.** Every language that can be generated by a regular expression can be generated by FSA.

## Examples of Finite Automata (Finite State Machine FSM)

**Example 1**

Language of all those strings follows the following rules;

- can’t have odd a’s except single a
- can have many b with even a’s or no a’s.

**Example 2**

Language of all those strings follows the following rules;

- can’t have odd a’s except single a
- can have many b with even a’s or no a’s.

**Example 3**

Language of all those strings follows the following rules;

- can have many b or many or no aa but all strings must ends with only ba or a.

**Example 4**

Language of all those strings follows the following rules;

- must starts with a and then can have no or many a’s or b’s and ends with only ba or a

**Example 5**

Language of all those strings follows the following rules;

- starts with aba and then can have no or many aa and many b and always ends with ba.

**Example 6**

Language of all those strings follows the following rules;

- many b’s but only at the begining
- many or no aaa or bbb and then always ends with bs.

**Example 7**

Language of all those strings follows the following rules;

- can have no or many aaa’s or bbb’s and always end with ba.

**Example 8**

Language of all those strings follows the following rules;

- always starts with aa or bb and then can have no or many aa’s or b’s and then always must end with ba.

**Example 9**

Language of all those strings follows the following rules;

- only two strings are accepted, 11000 or 11100 and no more string.

**Example 10**

Language of all those strings follows the following rules;

always ends with 000 or 100 and can have no or many 11’s in the starting of the string.

**Example 11**

**Example 12**

**Example 13**

Language of all those strings follows the following rules;

**Example 14**

Language of all those strings follows the following rules;

**Example 15**

Language of all those strings follows the following rules;

**Example 16**

Language of all those strings follows the following rules;

**Example 17**

Language of all those strings follows the following rules;

**Example 18**

Language of all those strings follows the following rules;

**Example 19**

Language of all those strings follows the following rules;

**Example 20**

Language of all those strings follows the following rules;

**Example 21**

Language of all those strings follows the following rules;

**Example 22**

**Example 23**

**Example 24**

**Example 25**

**Example 26**

**Example 27**

**Example 28**

**Example 29**

**Example 30**

**Example 31**

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

- DFA for Regular Expression (a+b)* (a+b)a – Click Here
- DFA for Regular Expression (bb)*(aa)* – Click Here
- DFA for Regular Expression b+a(a+b)*+a – Click Here
- DFA for Regular Expression (a+b)*b+(bb)*a – Click Here
- DFA for Regular Expression bb+a(a+b)*+aa – Click Here
- DFA for Regular Expression a(a+b)*+bb(a)* – Click Here
- DFA for Regular Expression a(a+b)b*+bb(a)* – Click Here
- DFA for Regular Expression b(aa)*a+a(bb)*b – Click Here
- DFA for Regular Expression a+a(aa+b)*(aa)b – Click Here
- DFA for Regular Expression a+a(aa+b)*+(aa)b – Click Here
- DFA for Regular Expression (a+b)b(a+b)*+(aa)*b – Click Here
- FA for strings starting with a and ending with a – Click Here
- FA for the language of all those string starting with a – Click Here
- FA for the language of all those string containing aa as a substring – Click Here
- DFA for the language of all those strings starting and ending with same letters – Click Here
- DFA for the language of all those strings starting and ending with different letters – Click Here
- DFA for the language of all those strings having double 0 or double 1 – Click Here
- DFA for the language of all those strings starting and ending with b – Click Here
- DFA for ending with b – Click Here
- DFA for the string of even A’s and even b’s – Click Here
- DFA for the regular expression of a(a+b)*+(bb)+a(ba)*+aba+bb*(a+b)* – Click Here
- RegExp and DFA for strings having triple a’s or triple b’s – Click Here