Definitions
Deterministic Finite Automata: A -tuple  where .
Language: 
Recognizing Language: If a machine  accepts all strings  and rejects every other string , then we say that  recognizes . Conversely,  language recognized by .
Regular Expressions: Uses .
Non-deterministic Finite Automata: A -tuple  where .
Generalized NFA: A -tuple  where we have the following.
Theorems on Finite Automation
•

•
All finite languages are regular.
•
Memory of a finite automata 
•
Regular languages are closed under the union operation.
•
Regular languages are closed under the concatenation operation.
•

•
For a given NFA of n state, number of states in equivalent DFA is atmost . Worst case complexity is .
•
Conversion of NFA to DFA may require exponential increase in space. But .
Pumping Lemma
If  is a regular language then there is a number  where if  is any string in  of length at least  , then  may be divided into three pieces, , satisfying the following conditions:
1.
for each 
2.

3.

Main Proof: