Understanding the Myhill-Nerode Theorem: Equivalence Relations and Finite State Automata
The Myhill-Nerode theorem establishes three equivalent conditions for a language L to be recognized by a finite state automaton (FSA). These conditions pertain to the acceptance of L by a FSA, the union of equivalence classes under a right-invariant equivalence relation of finite index, and the finiteness of the equivalence relation defined by context of membership in L. This detailed exploration also demonstrates how the theorem aids in minimizing the state count in DFAs and proves whether a language is regular or not, providing invaluable insight into automata theory.
Understanding the Myhill-Nerode Theorem: Equivalence Relations and Finite State Automata
E N D
Presentation Transcript
MYHILL NERODE THEOREM By AnushaTilkam
MyhillNerode Theorem: The following three statements are equivalent • The set L є ∑* is accepted by a FSA • L is the union of some of the equivalence classes of a right invariant equivalence relation of finite index. • Let equivalence relation RL be defined by : xRLy iff for all z in ∑* xz is in L exactly when yz is in L. Then RL is of finite index.
Theorem Proof: • There are three conditions: • Condition (i) implies condition (ii) • Condition (ii) implies condition (iii) • Condition (iii) implies condition (i)
Equivalence Relation A binary relation ̴ over a set X is an equivalence relation if it satisfies • Reflexivity • Symmetry • Transitivity
Condition (i) implies condition (ii) Proof: Let L be a regular language accepted by a DFSA M = (Q,∑,δ,q0,F). Define RMon ∑* xRMy if δ(q0, x) = δ(q0 , y) In order to show that its an equivalence relation it has to satisfy three properties.
δ(q0 , x) = δ(q0 , x) --- Reflexive • If δ(q0 , x) = δ(q0 , y) then δ(q0 , y) = δ(q0 , x) --- Symmetry • If δ(q0 , x) = δ(q0 , y) δ(q0 , y) = δ(q0 , z) then δ(q0 , x) = δ(q0 , z) --- Transitive
Index of an Equivalence relation: There are N states If This RMis an Equivalence Relation, Then the index of RM is at most the number of States of M q0 q1 q2 qn-1
Right invariant If x RM y Then xzRMyz for any z є ∑* Then we say RMis Right invariant Proof: δ(q0 , x) = δ(q0, y) δ(q0 , xz) = δ( δ(q0 , x), z ) = δ( δ(q0 , y), z ) = δ(q0 , yz) Therefore RMis right invariant
L is the union of sum of the equivalence classes of that relation. If the Equivalence Relation RMhas n states. S0 , S1 , S2, ……, Si ,…….. , Sn-1 | | | | | q0 , q1 , q2 ,….., qi ,…..…, qn-1
Condition (ii) implies condition (iii) : Proof: Let E be an equivalence relation as defined in (ii). We have to prove that E is a Refinement of RL. What is Refinement?
x E y | x,y є to same equivalence class of E xz E yz | xz is related to yz for any z є ∑* L is the union of sum of the equivalence classes of E. If L contains this equivalence class then xz and yz are in L or it may not be in L. Then we can say that x RL y Hence it is proved that every equivalence class in E is an Equivalence class in RL Then we can say that E is a Refinement of RL E is of finite index Index of RL <= index of E therefore RL is of Finite index.
b b b a a q0 q2 q1 • Example : DFA L ={ w | w contains a stings having atleast one a ,no sequence of b} ∑* is partioned into three equivalence class J0,J1,J2 a
J0 – strings which do not contain an a J1 – strings which contain odd number of a’s J2 - strings which contain even number of a’s L = J1 U J2
Condition (iii) implies condition (i) Proof: RL is right invariant x RL y if xzє L yzє L Therefore if z = wz then xwzє L ywzє L for any w and z Then xwz RLywz Hence RL is Right invariant Define an FSA M’ = (Q’, ∑,δ’,q0 ’,F’) as follows: For each equivalence class of RL ,we have a state in Q’. |Q’| = index of RL
If x є ∑* denote the Equivalence class of RL to which x є to [x] q0’ = [є] belongs to initial state / one equivalence class. For symbol a є ∑ δ’([x],a) = [xa] This definition is consistent because RL is right invariant. If xRLy then δ([x],a) = [ya] Because x,y belong to same class and Right invariant. Therefore we can say that L is accepted by a FSA.
Example : J0 and J1 U J2 are the two equivalence classes in RL a,b b J0 a J1 , J2
To show that a given language is not Regular: • L = {anbn |n>=1} Assume that L is Regular Then by MyhillNerode theorem we can say that L is the union of sum of the Equivalence classes and etc a, aa,aaa,aaaa,…….. Each of this cannot be in different equivalence classes. an ~ am for m ≠ n By Right invariance anbn ~ am bn for m ≠ n Hence contradiction The L cannot be regular.
Conclusion • Shown how the MyhillNerode theorem helps in minimizing the number of states in a DFA. • How it shows that the language is not regular.
References • Languages and MachinesThomas A. Sudkamp, Addison Wesley • http://en.wikipedia.org/wiki/Myhill%E2%80%93Nerode_theorem