equivalence of left linear, right linear and regular...
Post on 05-May-2020
4 Views
Preview:
TRANSCRIPT
Equivalence of Left Linear, Right Linear and RegularLanguages
Dr. Neminath Hubballi
Indian Institute of Technology Indore
January 29, 2018
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 1 / 8
Overview
1 Reverse of a Regular Language
2 Left Linear Grammar to Right Linear Grammar
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 2 / 8
Converting L into LR
Theorem
If L is a regular language then LR is also regular
Proof:
Let L be a regular language⇒ ∃ an nfa such that L = L(M)M=(Q,Σ, δ, q0,F ) (M has a single final state)Construct a new machie M
′=(Q
′,Σ
′, δ
′, qf ,F
′) (with q0 ∈ Q)
Q′
= QΣ
′= Σ
F′
= {q0}Add transitions as followsFor every transition δ(qi , t) = qj in M (where t ∈ Σ
⋃λ)
Add a transition δ′(qj , t) = qi
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 3 / 8
Converting L into LR
Theorem
If L is a regular language then LR is also regular
Proof: Let L be a regular language
⇒ ∃ an nfa such that L = L(M)M=(Q,Σ, δ, q0,F ) (M has a single final state)Construct a new machie M
′=(Q
′,Σ
′, δ
′, qf ,F
′) (with q0 ∈ Q)
Q′
= QΣ
′= Σ
F′
= {q0}Add transitions as followsFor every transition δ(qi , t) = qj in M (where t ∈ Σ
⋃λ)
Add a transition δ′(qj , t) = qi
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 3 / 8
Converting L into LR
Theorem
If L is a regular language then LR is also regular
Proof: Let L be a regular language⇒ ∃ an nfa such that L = L(M)
M=(Q,Σ, δ, q0,F ) (M has a single final state)Construct a new machie M
′=(Q
′,Σ
′, δ
′, qf ,F
′) (with q0 ∈ Q)
Q′
= QΣ
′= Σ
F′
= {q0}Add transitions as followsFor every transition δ(qi , t) = qj in M (where t ∈ Σ
⋃λ)
Add a transition δ′(qj , t) = qi
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 3 / 8
Converting L into LR
Theorem
If L is a regular language then LR is also regular
Proof: Let L be a regular language⇒ ∃ an nfa such that L = L(M)M=(Q,Σ, δ, q0,F ) (M has a single final state)
Construct a new machie M′
=(Q′,Σ
′, δ
′, qf ,F
′) (with q0 ∈ Q)
Q′
= QΣ
′= Σ
F′
= {q0}Add transitions as followsFor every transition δ(qi , t) = qj in M (where t ∈ Σ
⋃λ)
Add a transition δ′(qj , t) = qi
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 3 / 8
Converting L into LR
Theorem
If L is a regular language then LR is also regular
Proof: Let L be a regular language⇒ ∃ an nfa such that L = L(M)M=(Q,Σ, δ, q0,F ) (M has a single final state)Construct a new machie M
′=(Q
′,Σ
′, δ
′, qf ,F
′) (with q0 ∈ Q)
Q′
= QΣ
′= Σ
F′
= {q0}Add transitions as followsFor every transition δ(qi , t) = qj in M (where t ∈ Σ
⋃λ)
Add a transition δ′(qj , t) = qi
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 3 / 8
Converting L into LR
Theorem
If L is a regular language then LR is also regular
Proof: Let L be a regular language⇒ ∃ an nfa such that L = L(M)M=(Q,Σ, δ, q0,F ) (M has a single final state)Construct a new machie M
′=(Q
′,Σ
′, δ
′, qf ,F
′) (with q0 ∈ Q)
Q′
= Q
Σ′
= ΣF
′= {q0}
Add transitions as followsFor every transition δ(qi , t) = qj in M (where t ∈ Σ
⋃λ)
Add a transition δ′(qj , t) = qi
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 3 / 8
Converting L into LR
Theorem
If L is a regular language then LR is also regular
Proof: Let L be a regular language⇒ ∃ an nfa such that L = L(M)M=(Q,Σ, δ, q0,F ) (M has a single final state)Construct a new machie M
′=(Q
′,Σ
′, δ
′, qf ,F
′) (with q0 ∈ Q)
Q′
= QΣ
′= Σ
F′
= {q0}Add transitions as followsFor every transition δ(qi , t) = qj in M (where t ∈ Σ
⋃λ)
Add a transition δ′(qj , t) = qi
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 3 / 8
Converting L into LR
Theorem
If L is a regular language then LR is also regular
Proof: Let L be a regular language⇒ ∃ an nfa such that L = L(M)M=(Q,Σ, δ, q0,F ) (M has a single final state)Construct a new machie M
′=(Q
′,Σ
′, δ
′, qf ,F
′) (with q0 ∈ Q)
Q′
= QΣ
′= Σ
F′
= {q0}
Add transitions as followsFor every transition δ(qi , t) = qj in M (where t ∈ Σ
⋃λ)
Add a transition δ′(qj , t) = qi
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 3 / 8
Converting L into LR
Theorem
If L is a regular language then LR is also regular
Proof: Let L be a regular language⇒ ∃ an nfa such that L = L(M)M=(Q,Σ, δ, q0,F ) (M has a single final state)Construct a new machie M
′=(Q
′,Σ
′, δ
′, qf ,F
′) (with q0 ∈ Q)
Q′
= QΣ
′= Σ
F′
= {q0}Add transitions as follows
For every transition δ(qi , t) = qj in M (where t ∈ Σ⋃λ)
Add a transition δ′(qj , t) = qi
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 3 / 8
Converting L into LR
Theorem
If L is a regular language then LR is also regular
Proof: Let L be a regular language⇒ ∃ an nfa such that L = L(M)M=(Q,Σ, δ, q0,F ) (M has a single final state)Construct a new machie M
′=(Q
′,Σ
′, δ
′, qf ,F
′) (with q0 ∈ Q)
Q′
= QΣ
′= Σ
F′
= {q0}Add transitions as followsFor every transition δ(qi , t) = qj in M (where t ∈ Σ
⋃λ)
Add a transition δ′(qj , t) = qi
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 3 / 8
Converting L into LR
Theorem
If L is a regular language then LR is also regular
Proof: Let L be a regular language⇒ ∃ an nfa such that L = L(M)M=(Q,Σ, δ, q0,F ) (M has a single final state)Construct a new machie M
′=(Q
′,Σ
′, δ
′, qf ,F
′) (with q0 ∈ Q)
Q′
= QΣ
′= Σ
F′
= {q0}Add transitions as followsFor every transition δ(qi , t) = qj in M (where t ∈ Σ
⋃λ)
Add a transition δ′(qj , t) = qi
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 3 / 8
Converting L into LR
Correctness Claim: Let w = t1t2, · · · , tn ∈ L(M)
⇒ δ∗(q0,w) = qf
⇒ δ∗(q0, t1t2, · · · , tn) = qf
⇒ δ∗(δ(q0, t1), t2, · · · , tn) = qf
⇒ δ∗(qa, t2, · · · , tn) = qf
⇒ δ∗(δ(qa, t2), t3, · · · , tn) = qf
. . . ⇒ δ(qx , tn) = qf
wR = tn, tn−1, · · · , t1To show⇒ δ
′∗(qf ,wR) = q0
⇒ δ′∗(qf , tntn−1, · · · , t1) = q0
⇒ δ′∗(δ
′(qf , tn), tn−1, · · · , t1)
⇒ δ′∗(qx , tn−1, · · · , t1) (∵ δ(qx , tn) = qf ∈ M ⇒ δ
′(qf , tn) = qx ∈ M
′)
.... ⇒ δ(qa, t1) = q0 ∈ F′
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 4 / 8
Converting L into LR
Correctness Claim: Let w = t1t2, · · · , tn ∈ L(M)⇒ δ∗(q0,w) = qf
⇒ δ∗(q0, t1t2, · · · , tn) = qf
⇒ δ∗(δ(q0, t1), t2, · · · , tn) = qf
⇒ δ∗(qa, t2, · · · , tn) = qf
⇒ δ∗(δ(qa, t2), t3, · · · , tn) = qf
. . . ⇒ δ(qx , tn) = qf
wR = tn, tn−1, · · · , t1To show⇒ δ
′∗(qf ,wR) = q0
⇒ δ′∗(qf , tntn−1, · · · , t1) = q0
⇒ δ′∗(δ
′(qf , tn), tn−1, · · · , t1)
⇒ δ′∗(qx , tn−1, · · · , t1) (∵ δ(qx , tn) = qf ∈ M ⇒ δ
′(qf , tn) = qx ∈ M
′)
.... ⇒ δ(qa, t1) = q0 ∈ F′
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 4 / 8
Converting L into LR
Correctness Claim: Let w = t1t2, · · · , tn ∈ L(M)⇒ δ∗(q0,w) = qf
⇒ δ∗(q0, t1t2, · · · , tn) = qf
⇒ δ∗(δ(q0, t1), t2, · · · , tn) = qf
⇒ δ∗(qa, t2, · · · , tn) = qf
⇒ δ∗(δ(qa, t2), t3, · · · , tn) = qf
. . . ⇒ δ(qx , tn) = qf
wR = tn, tn−1, · · · , t1To show⇒ δ
′∗(qf ,wR) = q0
⇒ δ′∗(qf , tntn−1, · · · , t1) = q0
⇒ δ′∗(δ
′(qf , tn), tn−1, · · · , t1)
⇒ δ′∗(qx , tn−1, · · · , t1) (∵ δ(qx , tn) = qf ∈ M ⇒ δ
′(qf , tn) = qx ∈ M
′)
.... ⇒ δ(qa, t1) = q0 ∈ F′
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 4 / 8
Converting L into LR
Correctness Claim: Let w = t1t2, · · · , tn ∈ L(M)⇒ δ∗(q0,w) = qf
⇒ δ∗(q0, t1t2, · · · , tn) = qf
⇒ δ∗(δ(q0, t1), t2, · · · , tn) = qf
⇒ δ∗(qa, t2, · · · , tn) = qf
⇒ δ∗(δ(qa, t2), t3, · · · , tn) = qf
. . . ⇒ δ(qx , tn) = qf
wR = tn, tn−1, · · · , t1To show⇒ δ
′∗(qf ,wR) = q0
⇒ δ′∗(qf , tntn−1, · · · , t1) = q0
⇒ δ′∗(δ
′(qf , tn), tn−1, · · · , t1)
⇒ δ′∗(qx , tn−1, · · · , t1) (∵ δ(qx , tn) = qf ∈ M ⇒ δ
′(qf , tn) = qx ∈ M
′)
.... ⇒ δ(qa, t1) = q0 ∈ F′
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 4 / 8
Converting L into LR
Correctness Claim: Let w = t1t2, · · · , tn ∈ L(M)⇒ δ∗(q0,w) = qf
⇒ δ∗(q0, t1t2, · · · , tn) = qf
⇒ δ∗(δ(q0, t1), t2, · · · , tn) = qf
⇒ δ∗(qa, t2, · · · , tn) = qf
⇒ δ∗(δ(qa, t2), t3, · · · , tn) = qf
. . . ⇒ δ(qx , tn) = qf
wR = tn, tn−1, · · · , t1To show⇒ δ
′∗(qf ,wR) = q0
⇒ δ′∗(qf , tntn−1, · · · , t1) = q0
⇒ δ′∗(δ
′(qf , tn), tn−1, · · · , t1)
⇒ δ′∗(qx , tn−1, · · · , t1) (∵ δ(qx , tn) = qf ∈ M ⇒ δ
′(qf , tn) = qx ∈ M
′)
.... ⇒ δ(qa, t1) = q0 ∈ F′
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 4 / 8
Converting L into LR
Correctness Claim: Let w = t1t2, · · · , tn ∈ L(M)⇒ δ∗(q0,w) = qf
⇒ δ∗(q0, t1t2, · · · , tn) = qf
⇒ δ∗(δ(q0, t1), t2, · · · , tn) = qf
⇒ δ∗(qa, t2, · · · , tn) = qf
⇒ δ∗(δ(qa, t2), t3, · · · , tn) = qf
. . . ⇒ δ(qx , tn) = qf
wR = tn, tn−1, · · · , t1To show⇒ δ
′∗(qf ,wR) = q0
⇒ δ′∗(qf , tntn−1, · · · , t1) = q0
⇒ δ′∗(δ
′(qf , tn), tn−1, · · · , t1)
⇒ δ′∗(qx , tn−1, · · · , t1) (∵ δ(qx , tn) = qf ∈ M ⇒ δ
′(qf , tn) = qx ∈ M
′)
.... ⇒ δ(qa, t1) = q0 ∈ F′
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 4 / 8
Converting L into LR
Correctness Claim: Let w = t1t2, · · · , tn ∈ L(M)⇒ δ∗(q0,w) = qf
⇒ δ∗(q0, t1t2, · · · , tn) = qf
⇒ δ∗(δ(q0, t1), t2, · · · , tn) = qf
⇒ δ∗(qa, t2, · · · , tn) = qf
⇒ δ∗(δ(qa, t2), t3, · · · , tn) = qf
. . . ⇒ δ(qx , tn) = qf
wR = tn, tn−1, · · · , t1To show⇒ δ
′∗(qf ,wR) = q0
⇒ δ′∗(qf , tntn−1, · · · , t1) = q0
⇒ δ′∗(δ
′(qf , tn), tn−1, · · · , t1)
⇒ δ′∗(qx , tn−1, · · · , t1) (∵ δ(qx , tn) = qf ∈ M ⇒ δ
′(qf , tn) = qx ∈ M
′)
.... ⇒ δ(qa, t1) = q0 ∈ F′
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 4 / 8
Converting L into LR
Correctness Claim: Let w = t1t2, · · · , tn ∈ L(M)⇒ δ∗(q0,w) = qf
⇒ δ∗(q0, t1t2, · · · , tn) = qf
⇒ δ∗(δ(q0, t1), t2, · · · , tn) = qf
⇒ δ∗(qa, t2, · · · , tn) = qf
⇒ δ∗(δ(qa, t2), t3, · · · , tn) = qf
. . . ⇒ δ(qx , tn) = qf
wR = tn, tn−1, · · · , t1
To show⇒ δ
′∗(qf ,wR) = q0
⇒ δ′∗(qf , tntn−1, · · · , t1) = q0
⇒ δ′∗(δ
′(qf , tn), tn−1, · · · , t1)
⇒ δ′∗(qx , tn−1, · · · , t1) (∵ δ(qx , tn) = qf ∈ M ⇒ δ
′(qf , tn) = qx ∈ M
′)
.... ⇒ δ(qa, t1) = q0 ∈ F′
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 4 / 8
Converting L into LR
Correctness Claim: Let w = t1t2, · · · , tn ∈ L(M)⇒ δ∗(q0,w) = qf
⇒ δ∗(q0, t1t2, · · · , tn) = qf
⇒ δ∗(δ(q0, t1), t2, · · · , tn) = qf
⇒ δ∗(qa, t2, · · · , tn) = qf
⇒ δ∗(δ(qa, t2), t3, · · · , tn) = qf
. . . ⇒ δ(qx , tn) = qf
wR = tn, tn−1, · · · , t1To show⇒ δ
′∗(qf ,wR) = q0
⇒ δ′∗(qf , tntn−1, · · · , t1) = q0
⇒ δ′∗(δ
′(qf , tn), tn−1, · · · , t1)
⇒ δ′∗(qx , tn−1, · · · , t1) (∵ δ(qx , tn) = qf ∈ M ⇒ δ
′(qf , tn) = qx ∈ M
′)
.... ⇒ δ(qa, t1) = q0 ∈ F′
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 4 / 8
Converting L into LR
Correctness Claim: Let w = t1t2, · · · , tn ∈ L(M)⇒ δ∗(q0,w) = qf
⇒ δ∗(q0, t1t2, · · · , tn) = qf
⇒ δ∗(δ(q0, t1), t2, · · · , tn) = qf
⇒ δ∗(qa, t2, · · · , tn) = qf
⇒ δ∗(δ(qa, t2), t3, · · · , tn) = qf
. . . ⇒ δ(qx , tn) = qf
wR = tn, tn−1, · · · , t1To show⇒ δ
′∗(qf ,wR) = q0
⇒ δ′∗(qf , tntn−1, · · · , t1) = q0
⇒ δ′∗(δ
′(qf , tn), tn−1, · · · , t1)
⇒ δ′∗(qx , tn−1, · · · , t1) (∵ δ(qx , tn) = qf ∈ M ⇒ δ
′(qf , tn) = qx ∈ M
′)
.... ⇒ δ(qa, t1) = q0 ∈ F′
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 4 / 8
Converting L into LR
Correctness Claim: Let w = t1t2, · · · , tn ∈ L(M)⇒ δ∗(q0,w) = qf
⇒ δ∗(q0, t1t2, · · · , tn) = qf
⇒ δ∗(δ(q0, t1), t2, · · · , tn) = qf
⇒ δ∗(qa, t2, · · · , tn) = qf
⇒ δ∗(δ(qa, t2), t3, · · · , tn) = qf
. . . ⇒ δ(qx , tn) = qf
wR = tn, tn−1, · · · , t1To show⇒ δ
′∗(qf ,wR) = q0
⇒ δ′∗(qf , tntn−1, · · · , t1) = q0
⇒ δ′∗(δ
′(qf , tn), tn−1, · · · , t1)
⇒ δ′∗(qx , tn−1, · · · , t1) (∵ δ(qx , tn) = qf ∈ M ⇒ δ
′(qf , tn) = qx ∈ M
′)
.... ⇒ δ(qa, t1) = q0 ∈ F′
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 4 / 8
Converting L into LR
Correctness Claim: Let w = t1t2, · · · , tn ∈ L(M)⇒ δ∗(q0,w) = qf
⇒ δ∗(q0, t1t2, · · · , tn) = qf
⇒ δ∗(δ(q0, t1), t2, · · · , tn) = qf
⇒ δ∗(qa, t2, · · · , tn) = qf
⇒ δ∗(δ(qa, t2), t3, · · · , tn) = qf
. . . ⇒ δ(qx , tn) = qf
wR = tn, tn−1, · · · , t1To show⇒ δ
′∗(qf ,wR) = q0
⇒ δ′∗(qf , tntn−1, · · · , t1) = q0
⇒ δ′∗(δ
′(qf , tn), tn−1, · · · , t1)
⇒ δ′∗(qx , tn−1, · · · , t1) (∵ δ(qx , tn) = qf ∈ M ⇒ δ
′(qf , tn) = qx ∈ M
′)
.... ⇒ δ(qa, t1) = q0 ∈ F′
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 4 / 8
Converting L into LR
Correctness Claim: Let w = t1t2, · · · , tn ∈ L(M)⇒ δ∗(q0,w) = qf
⇒ δ∗(q0, t1t2, · · · , tn) = qf
⇒ δ∗(δ(q0, t1), t2, · · · , tn) = qf
⇒ δ∗(qa, t2, · · · , tn) = qf
⇒ δ∗(δ(qa, t2), t3, · · · , tn) = qf
. . . ⇒ δ(qx , tn) = qf
wR = tn, tn−1, · · · , t1To show⇒ δ
′∗(qf ,wR) = q0
⇒ δ′∗(qf , tntn−1, · · · , t1) = q0
⇒ δ′∗(δ
′(qf , tn), tn−1, · · · , t1)
⇒ δ′∗(qx , tn−1, · · · , t1) (∵ δ(qx , tn) = qf ∈ M ⇒ δ
′(qf , tn) = qx ∈ M
′)
.... ⇒ δ(qa, t1) = q0 ∈ F′
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 4 / 8
Converting L into LR
Correctness Claim: Let w = t1t2, · · · , tn ∈ L(M)⇒ δ∗(q0,w) = qf
⇒ δ∗(q0, t1t2, · · · , tn) = qf
⇒ δ∗(δ(q0, t1), t2, · · · , tn) = qf
⇒ δ∗(qa, t2, · · · , tn) = qf
⇒ δ∗(δ(qa, t2), t3, · · · , tn) = qf
. . . ⇒ δ(qx , tn) = qf
wR = tn, tn−1, · · · , t1To show⇒ δ
′∗(qf ,wR) = q0
⇒ δ′∗(qf , tntn−1, · · · , t1) = q0
⇒ δ′∗(δ
′(qf , tn), tn−1, · · · , t1)
⇒ δ′∗(qx , tn−1, · · · , t1) (∵ δ(qx , tn) = qf ∈ M ⇒ δ
′(qf , tn) = qx ∈ M
′)
.... ⇒ δ(qa, t1) = q0 ∈ F′
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 4 / 8
Converting Left Linear Grammar to Right Linear Grammar
Theorem
If L is a regular language, then there exist an equivalent Left LinearGrammar G
′such that L = L(G
′)
Proof: Let L be a regular language⇒ ∃ and nfa M=(Q,Σ, δ, q0,F ) such that L=L(M)Construct a new machine M
′for LR
Generate a Right Linear Grammar G for LR
Generate a Left Linear Grammar G′
by rewriting production rules
1 For every production X− > xY (where x ∈ T ∗)Add a production in G
′X− > YxR
2 For every production X− > x (where x ∈ T ∗)Add a production in G
′X− > xR
Correctness: L=L(M)=L(M′)R=L(G )R=L(G
′)
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 5 / 8
Converting Left Linear Grammar to Right Linear Grammar
Theorem
If L is a regular language, then there exist an equivalent Left LinearGrammar G
′such that L = L(G
′)
Proof: Let L be a regular language
⇒ ∃ and nfa M=(Q,Σ, δ, q0,F ) such that L=L(M)Construct a new machine M
′for LR
Generate a Right Linear Grammar G for LR
Generate a Left Linear Grammar G′
by rewriting production rules
1 For every production X− > xY (where x ∈ T ∗)Add a production in G
′X− > YxR
2 For every production X− > x (where x ∈ T ∗)Add a production in G
′X− > xR
Correctness: L=L(M)=L(M′)R=L(G )R=L(G
′)
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 5 / 8
Converting Left Linear Grammar to Right Linear Grammar
Theorem
If L is a regular language, then there exist an equivalent Left LinearGrammar G
′such that L = L(G
′)
Proof: Let L be a regular language⇒ ∃ and nfa M=(Q,Σ, δ, q0,F ) such that L=L(M)
Construct a new machine M′
for LR
Generate a Right Linear Grammar G for LR
Generate a Left Linear Grammar G′
by rewriting production rules
1 For every production X− > xY (where x ∈ T ∗)Add a production in G
′X− > YxR
2 For every production X− > x (where x ∈ T ∗)Add a production in G
′X− > xR
Correctness: L=L(M)=L(M′)R=L(G )R=L(G
′)
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 5 / 8
Converting Left Linear Grammar to Right Linear Grammar
Theorem
If L is a regular language, then there exist an equivalent Left LinearGrammar G
′such that L = L(G
′)
Proof: Let L be a regular language⇒ ∃ and nfa M=(Q,Σ, δ, q0,F ) such that L=L(M)Construct a new machine M
′for LR
Generate a Right Linear Grammar G for LR
Generate a Left Linear Grammar G′
by rewriting production rules
1 For every production X− > xY (where x ∈ T ∗)Add a production in G
′X− > YxR
2 For every production X− > x (where x ∈ T ∗)Add a production in G
′X− > xR
Correctness: L=L(M)=L(M′)R=L(G )R=L(G
′)
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 5 / 8
Converting Left Linear Grammar to Right Linear Grammar
Theorem
If L is a regular language, then there exist an equivalent Left LinearGrammar G
′such that L = L(G
′)
Proof: Let L be a regular language⇒ ∃ and nfa M=(Q,Σ, δ, q0,F ) such that L=L(M)Construct a new machine M
′for LR
Generate a Right Linear Grammar G for LR
Generate a Left Linear Grammar G′
by rewriting production rules
1 For every production X− > xY (where x ∈ T ∗)Add a production in G
′X− > YxR
2 For every production X− > x (where x ∈ T ∗)Add a production in G
′X− > xR
Correctness: L=L(M)=L(M′)R=L(G )R=L(G
′)
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 5 / 8
Converting Left Linear Grammar to Right Linear Grammar
Theorem
If L is a regular language, then there exist an equivalent Left LinearGrammar G
′such that L = L(G
′)
Proof: Let L be a regular language⇒ ∃ and nfa M=(Q,Σ, δ, q0,F ) such that L=L(M)Construct a new machine M
′for LR
Generate a Right Linear Grammar G for LR
Generate a Left Linear Grammar G′
by rewriting production rules
1 For every production X− > xY (where x ∈ T ∗)Add a production in G
′X− > YxR
2 For every production X− > x (where x ∈ T ∗)Add a production in G
′X− > xR
Correctness: L=L(M)=L(M′)R=L(G )R=L(G
′)
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 5 / 8
Converting Left Linear Grammar to Right Linear Grammar
Theorem
If L is a regular language, then there exist an equivalent Left LinearGrammar G
′such that L = L(G
′)
Proof: Let L be a regular language⇒ ∃ and nfa M=(Q,Σ, δ, q0,F ) such that L=L(M)Construct a new machine M
′for LR
Generate a Right Linear Grammar G for LR
Generate a Left Linear Grammar G′
by rewriting production rules
1 For every production X− > xY (where x ∈ T ∗)
Add a production in G′
X− > YxR
2 For every production X− > x (where x ∈ T ∗)Add a production in G
′X− > xR
Correctness: L=L(M)=L(M′)R=L(G )R=L(G
′)
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 5 / 8
Converting Left Linear Grammar to Right Linear Grammar
Theorem
If L is a regular language, then there exist an equivalent Left LinearGrammar G
′such that L = L(G
′)
Proof: Let L be a regular language⇒ ∃ and nfa M=(Q,Σ, δ, q0,F ) such that L=L(M)Construct a new machine M
′for LR
Generate a Right Linear Grammar G for LR
Generate a Left Linear Grammar G′
by rewriting production rules
1 For every production X− > xY (where x ∈ T ∗)Add a production in G
′X− > YxR
2 For every production X− > x (where x ∈ T ∗)Add a production in G
′X− > xR
Correctness: L=L(M)=L(M′)R=L(G )R=L(G
′)
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 5 / 8
Converting Left Linear Grammar to Right Linear Grammar
Theorem
If L is a regular language, then there exist an equivalent Left LinearGrammar G
′such that L = L(G
′)
Proof: Let L be a regular language⇒ ∃ and nfa M=(Q,Σ, δ, q0,F ) such that L=L(M)Construct a new machine M
′for LR
Generate a Right Linear Grammar G for LR
Generate a Left Linear Grammar G′
by rewriting production rules
1 For every production X− > xY (where x ∈ T ∗)Add a production in G
′X− > YxR
2 For every production X− > x (where x ∈ T ∗)
Add a production in G′
X− > xR
Correctness: L=L(M)=L(M′)R=L(G )R=L(G
′)
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 5 / 8
Converting Left Linear Grammar to Right Linear Grammar
Theorem
If L is a regular language, then there exist an equivalent Left LinearGrammar G
′such that L = L(G
′)
Proof: Let L be a regular language⇒ ∃ and nfa M=(Q,Σ, δ, q0,F ) such that L=L(M)Construct a new machine M
′for LR
Generate a Right Linear Grammar G for LR
Generate a Left Linear Grammar G′
by rewriting production rules
1 For every production X− > xY (where x ∈ T ∗)Add a production in G
′X− > YxR
2 For every production X− > x (where x ∈ T ∗)Add a production in G
′X− > xR
Correctness: L=L(M)=L(M′)R=L(G )R=L(G
′)
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 5 / 8
Converting Left Linear Grammar to Right Linear Grammar
Theorem
If L is a regular language, then there exist an equivalent Left LinearGrammar G
′such that L = L(G
′)
Proof: Let L be a regular language⇒ ∃ and nfa M=(Q,Σ, δ, q0,F ) such that L=L(M)Construct a new machine M
′for LR
Generate a Right Linear Grammar G for LR
Generate a Left Linear Grammar G′
by rewriting production rules
1 For every production X− > xY (where x ∈ T ∗)Add a production in G
′X− > YxR
2 For every production X− > x (where x ∈ T ∗)Add a production in G
′X− > xR
Correctness: L=L(M)=L(M′)R=L(G )R=L(G
′)
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 5 / 8
Converting Left Linear Grammar to Right Linear Grammar
Theorem
If L is a language defined by a Left Linear Grammar G (i.e., L=L(G)),then L is a regular language
Proof: Take it as exercise !
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 6 / 8
Converting Right Linear Grammar to Left Linear Grammar
Theorem
If G is a Right Linear Grammar, then there is a Left Linear Grammar G′′
such that L(G ) = L(G′′
)
Proof: Conversion outline (Not a rigorous proof! )
1 From G, construct M
2 From M construct M′
for LR
3 Generate G′
a Right Linear Grammar for LR
4 Generate G′′
a Left Linear Grammar for LRR
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 7 / 8
Converting Right Linear Grammar to Left Linear Grammar
Theorem
If G is a Right Linear Grammar, then there is a Left Linear Grammar G′′
such that L(G ) = L(G′′
)
Proof: Conversion outline (Not a rigorous proof! )
1 From G, construct M
2 From M construct M′
for LR
3 Generate G′
a Right Linear Grammar for LR
4 Generate G′′
a Left Linear Grammar for LRR
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 7 / 8
Converting Right Linear Grammar to Left Linear Grammar
Theorem
If G is a Right Linear Grammar, then there is a Left Linear Grammar G′′
such that L(G ) = L(G′′
)
Proof: Conversion outline (Not a rigorous proof! )
1 From G, construct M
2 From M construct M′
for LR
3 Generate G′
a Right Linear Grammar for LR
4 Generate G′′
a Left Linear Grammar for LRR
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 7 / 8
Converting Right Linear Grammar to Left Linear Grammar
Theorem
If G is a Right Linear Grammar, then there is a Left Linear Grammar G′′
such that L(G ) = L(G′′
)
Proof: Conversion outline (Not a rigorous proof! )
1 From G, construct M
2 From M construct M′
for LR
3 Generate G′
a Right Linear Grammar for LR
4 Generate G′′
a Left Linear Grammar for LRR
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 7 / 8
Converting Right Linear Grammar to Left Linear Grammar
Theorem
If G is a Right Linear Grammar, then there is a Left Linear Grammar G′′
such that L(G ) = L(G′′
)
Proof: Conversion outline (Not a rigorous proof! )
1 From G, construct M
2 From M construct M′
for LR
3 Generate G′
a Right Linear Grammar for LR
4 Generate G′′
a Left Linear Grammar for LRR
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 7 / 8
Converting Right Linear Grammar to Left Linear Grammar
Theorem
If G is a Right Linear Grammar, then there is a Left Linear Grammar G′′
such that L(G ) = L(G′′
)
Proof: Conversion outline (Not a rigorous proof! )
1 From G, construct M
2 From M construct M′
for LR
3 Generate G′
a Right Linear Grammar for LR
4 Generate G′′
a Left Linear Grammar for LRR
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 7 / 8
Converting Right Linear Grammar to Left Linear Grammar
Theorem
If G is a Left Linear Grammar, then there is a Right Linear Grammar G′′
such that L(G ) = L(G′′
)
Proof: Conversion outline (Not a rigorous proof! )
1 From G, generate G′
for LR
2 From G′
construct M for LR
3 Construct M′
from M for LRR
4 Generate G′′
a Right Linear Grammar for LRR
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 8 / 8
Converting Right Linear Grammar to Left Linear Grammar
Theorem
If G is a Left Linear Grammar, then there is a Right Linear Grammar G′′
such that L(G ) = L(G′′
)
Proof: Conversion outline (Not a rigorous proof! )
1 From G, generate G′
for LR
2 From G′
construct M for LR
3 Construct M′
from M for LRR
4 Generate G′′
a Right Linear Grammar for LRR
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 8 / 8
Converting Right Linear Grammar to Left Linear Grammar
Theorem
If G is a Left Linear Grammar, then there is a Right Linear Grammar G′′
such that L(G ) = L(G′′
)
Proof: Conversion outline (Not a rigorous proof! )
1 From G, generate G′
for LR
2 From G′
construct M for LR
3 Construct M′
from M for LRR
4 Generate G′′
a Right Linear Grammar for LRR
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 8 / 8
Converting Right Linear Grammar to Left Linear Grammar
Theorem
If G is a Left Linear Grammar, then there is a Right Linear Grammar G′′
such that L(G ) = L(G′′
)
Proof: Conversion outline (Not a rigorous proof! )
1 From G, generate G′
for LR
2 From G′
construct M for LR
3 Construct M′
from M for LRR
4 Generate G′′
a Right Linear Grammar for LRR
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 8 / 8
Converting Right Linear Grammar to Left Linear Grammar
Theorem
If G is a Left Linear Grammar, then there is a Right Linear Grammar G′′
such that L(G ) = L(G′′
)
Proof: Conversion outline (Not a rigorous proof! )
1 From G, generate G′
for LR
2 From G′
construct M for LR
3 Construct M′
from M for LRR
4 Generate G′′
a Right Linear Grammar for LRR
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 8 / 8
Converting Right Linear Grammar to Left Linear Grammar
Theorem
If G is a Left Linear Grammar, then there is a Right Linear Grammar G′′
such that L(G ) = L(G′′
)
Proof: Conversion outline (Not a rigorous proof! )
1 From G, generate G′
for LR
2 From G′
construct M for LR
3 Construct M′
from M for LRR
4 Generate G′′
a Right Linear Grammar for LRR
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 8 / 8
Converting Right Linear Grammar to Left Linear Grammar
Theorem
If G is a Left Linear Grammar, then there is a Right Linear Grammar G′′
such that L(G ) = L(G′′
)
Proof: Conversion outline (Not a rigorous proof! )
1 From G, generate G′
for LR
2 From G′
construct M for LR
3 Construct M′
from M for LRR
4 Generate G′′
a Right Linear Grammar for LRR
Dr. Neminath Hubballi (IIT Indore) Kleene Theorem January 29, 2018 8 / 8
top related