2.2.1. Định nghĩa. Cho X là bảng chữ cái hữu hạn. Trên X* ta xác định quanhệ ≤ nh sau hệ ≤ nh sau
x ≤ y ⇔ x = x1x2...xm ; y = y1x1y2x2...ymxmym +1, trong đó xi, yi ∈X*, ∀i = 1, ..., m.
Ngôn ngữ L trên X đợc gọi là ngôn ngữ Thierin, nếu từ x ≤ y và x ∈ L kéo theo y ∈ L.
2.2.2. Mệnh đề. [10]. Quan hệ ≤ trên X* có tính chất sau đây:i) Mỗi tập không so sánh đợc từng đôi của X* là hữu hạn. i) Mỗi tập không so sánh đợc từng đôi của X* là hữu hạn.
ii) Giả sử L là ngôn ngữ tùy ý trên X, ký hiệu
L1 = {x ∈ X* | y ≤ x với y ∈ L}
L2 = {x ∈X*|x ≤y với y ∈L}
Thế thì tồn tại các ngôn ngữ hữu hạn E, F trên X sao cho L1= E1; L2=F1 trong đó E1 và F1 đợc xác định qua E và F nh L1; L2 xác định qua L.
iii) L1 và L2 là ngôn ngữ chính quy với mọi ngôn ngữ L.
iv) L là ngôn ngữ Thierin khi và chỉ khi L1 = L.
Từ mệnh đề 2.1 suy ra rằng: Nếu L là ngôn ngữ Thierin thì L là ngôn ngữ chính quy.
2.2.3. Mệnh đề. Ngôn ngữ L trên X là ngôn ngữ Thierin khi và chỉ khi L cótính chất: ∀u, v∈X*; u, v∈L→uzv∈L, ∀z ∈X*. tính chất: ∀u, v∈X*; u, v∈L→uzv∈L, ∀z ∈X*.
Chứng minh.
Nếu L là ngôn ngữ Thierin thì do u, v ≤uzv và uv∈L⇒uzv∈L. Ta chứng minh điều ngợc lại.
Giả sử có x∈L; x≤y. Ta phải chứng minh y∈L. Nếu x = ∧ thì L = X* ta lấy v = u = ∧; z∈X* và L = X*. Nếu x ≠ ∧ thì x = x1x2...xm với xi ∈ X và vì x ≤ y nên
y = y1x1y2x2...ymxmym +1 với yj ∈X*. Vì x = ∧.x ∈ L ⇒ ∧y1x = y1x = y1x∧ ∈ L ⇒ y2xym +1∧ ∈ L
hay y1x1x2...xmym +1∈L. Tiếp tục nh vậy sau một số hữu hạn bớc, có
Mệnh đề 2.2.3 đợc chứng minh.
Định lý sau đây mô tả dáng điệu ngôn ngữ, vị nhóm cú pháp và ôtômát của ngôn ngữ Thierin.
2.2.4. Định lý. Giả sử L là ngôn ngữ trên bảng chữ cái hữu hạn L. Khi đócác điều kiện sau đây là tơng đơng các điều kiện sau đây là tơng đơng
i) L là ngôn ngữ Thierin.
ii) Vị nhóm cú pháp à(L) hữu hạn và chứa phần tử không z rời rạc thoả mãn điều kiện, nếu a, b ∈à(L); ab = z thì axb = z ∀x∈à(L) ; (*)
iii) Ôtômát tối tiểu ω(L) = (A, X, δ, a0, {a1}) đoán nhận ngôn ngữ L là ôtômat xyclic hữu hạn với a1 là trạng thái dừng.
Chứng minh. i) ⇒ii). Giả sử L là ngôn ngữ Thierin. Theo mệnh đề 2.3 ta có
L là ngôn ngữ chính qui nên à(L) là hữu hạn theo định lý Myhill- Noorde [7]. Ta chứng minh L là một lớp của à(L) và là một iđêan của X*.
Thật vậy, với ∀a∈ L, ta có a ≤xay ⇒xay ∈L với ∀x, y ∈X* vì L Thierin. Từ đó suy ra L là phần tử không z của à(L) và nếu [a][b] = z thì [ab] = z
suy ra ab∈L thì axb∈L , ∀x ∈X* (Theo mệnh đề 2.3) suy ra [axb] = [a][x][b] = z , ∀[x] ∈ à(L).
z là tập rời vì là ảnh của L trong đồng cấu chính tắc từ X* lên à(L). Có thể chứng minh trực tiếp nh sau:
Giả sử ([a], [b]) ∈℘x ⇔ ([x][a][y] = z ⇔ [x][b][y] = z) ⇔ ⇔ (xay ∈ L ⇔ xby ∈ L) ⇔ (a, b) ∈℘L ⇔ [a] = [b]. Vậy z là tập rời.
ii) ⇒ i). Ta chứng minh kết quả tổng quát hơn.
Giả sử M là vị nhóm hữu hạn sinh chứa phần tử không z có tính chất (*). Nếu a, b ∈ M; ab = z kéo theo axb = z với ∀x ∈ M. Khi đó M hữu hạn và
Giả sử X là tập sinh hữu hạn của M. Ta lập vị nhóm tự do X* sinh bởi X. Khi đó tồn tại đồng cấu ϕ từ X* lên M và giả sử L = ϕ-1(z).
Ta sẽ chứng minh L là ngôn ngữ Thierin và M≅à(L).
Thật vậy, giả sử ab ∈ L và x ∈ X*. Khi đó ϕ(ab) = z hay ϕ(a).ϕ(b) = z;
axb ∈L; ϕ(axb) = ϕ(a).ϕ(x),ϕ(b) = z; theo theo tính chất (*) nên axb∈L. Theo mệnh đề 2.2.3, L là ngôn ngữ Thierin.
Ta cần chứng minh à(L) = X*/℘L ≅M.
Giả sử ρ = kerϕ , nghĩa là (a, b) ∈ ρ ⇔ ϕ(a) = ϕ(b). Khi đó M ≅ X*/ρ. Ta phải chứng minh ρ = ℘L.
Thật vậy, có (a,b) ∈ ℘L ⇔ (xay ∈ L ⇔ xby ∈ L ; ∀x, y ∈ X*)
⇔ ϕ(x).ϕ(a).ϕ(y) = z ⇔ ϕ(x).ϕ(b).ϕ(y) = z ; ∀x, y ∈ X*) ⇔ (ϕ(a), ϕ(b)) ∈℘L (Vì ϕ là toàn cấu)
⇔ ϕ(a) = ϕ(b) (vì z là tập rời) ⇔ (a, b) ∈ρ .
i) ⇒ iii). Giả sử ω(L) = (A, X, a0, δ, A’) là ôtômát tối tiểu đoán nhận ngôn ngữ L, a0 = ∧, A’ = {u | u ∈ L}. Vì L là một iđêan của X* nên A’ = {s1} (do L là một lớp của ℜL nên s1 = L).
ω(L) là ôtômát xyclic sinh bởi trạng thái a0. Giả sử δ(s, x) = s1. Vì ω(L) là ôtômát xyclic nên ∃y∈X* sao cho δ(a0, y) = s. Khi đó : δ(a0, yx) = δ(δ(a0, y); x) = δ(s, x) = s1 ⇒ yx ∈ L.
Theo mệnh đề 2.2.3 ta có yzx ∈ L ; ∀z ∈ X* nên δ(a0, yzx) = s1 ⇒ δ(δ(a0, y);
zx) = δ(s, zx) = s1. Vậy s1 là trạng thái dừng theo nghĩa δ(s, x) = s1 ⇒ δ(s, zx) = s1 ; ∀x ∈ X*.
iii) ⇒i). Ta chứng minh nếu ab∈L thì ayb∈L ; ∀y∈X*. Thật vậy, vì ab ∈ L nên δ(a0, ab) = s1.
Giả sử δ(a0, a) = s ⇒δ(s, b) = s1⇒δ(s, yb) = s1 (vì s1 là trạng thái dừng) ⇒
ayb ∈ L ⇒ Theo mệnh đề 2.2.3 ta có L là ngôn ngữ Thierin.
2.2.5. Mệnh đề. Vị nhóm cú pháp à(L) của ngôn ngữ Thierin L có mọinhóm con đều tầm thờng. nhóm con đều tầm thờng.
Chứng minh. Giả sử L là ngôn ngữ lồi phải, khi đó M = à(L) có phần tử không là tập rời z thoả mãn điều kiện ii) ở định lý 2.2.4. Giả sử G là nhóm con của à(L), ta chứng minh |G| = 1.
Thật vậy, giả sử tồn tại c, d∈ G sao cho c ≠ d. Vì z là tập rời nên tồn tại r, s
∈M = à(L) sao cho rcs = z, rds≠z (**).
Vì c, d ∈ G nên ta có d = cc-1d. Khi đó theo tính chất của z ta có
z = rcs = rcc-1ds = rds. Điều này mâu thuẫn với (**). Do đó |G| = 1.
Kết hợp với các kết quả đã trình bày ở tiết 1, chơng 2 và tiết 2, chơng 2 trong [8], từ định lý 2.2.4 và mệnh đề 2.2.5 vừa trình bày và định lý Shudzenbecze (1965), định lý Zatestein (1972) ta có bảng sau đây nêu lên mối liên hệ giữa dáng điệu ngôn ngữ, vị nhóm cú pháp, ôtômát tối tiểu đoán nhận 2 ngôn ngữ và văn phạm sinh ra ngôn ngữ đó.
Bảng quan hệ giữa ngôn ngữ, vị nhóm cú pháp, văn phạm và ôtômát tối tiểu đoán nhận ngôn ngữ đó.
Ngôn ngữ Vị nhóm cú pháp Ôtômát Văn phạm
Phi ngữ cảnh
A
Đẩy xuống
(push down) (u,v)∈℘;p(u) =1
λ(v) = 1 u∈ (V - X)* - {∧} u∈V* G = (V, X, P, σ) Chính quy (Đóng kín đối với các phép toán ∪, °,*) Hữu hạn
(Eilenberg) (Klecne, 1954)Hữu hạn UTuyến tính phải∈ V - X; v = w
w∈X*, α∈V - X.Không lặp Không lặp (đóng kín đối với các phép ∪, °, \) Hữu hạn, mọi nhóm con đều tầm thờng (Shudzenbecze, 1965) Counder - free (MC Nauchton, 1971) (*) Thử đợc địa phơng M(L) = T1 ì T2 ì ... ì Tn ; Ti là mở rộng lũy linh của iđêan tổ hợp 0 - đơn Ti≅Rn (Zatestein, 1972) Local testable Bazozawok Simon, 1973 B (thử đợc) (*) Thierin à(L), chứa phần tử không z, rời rạc mà từ a.b = z → a: x b = z ∀x∈à(L) Liên thông và xyclic chứa trạng thái dừng s1∈S: Sx = s1⇒ syx = s1 ∀y∈X* (*)
Chú ý: A . Nếu một ngôn ngữ phi ngữ cảnh L có vị nhóm cú pháp là nhóm
Aben có hạng k thì L xác định nếu k ≤ 1 và không xác định nếu k≥ 2 (xem [8]).
B . Ôtômát B = (S, X) gọi là thử đợc ở địa phơng, nếu ∀x ∈ X*, ∀y, z ∈ X* ta có:
(xnyxn)B = (xnyxnyxn)B.
(xnyxnyxn)B = (xnzxnyxn)B (xem [8])
Nhận xét: Qua bảng quan hệ giữa ngôn ngữ, ôtômát, vị nhóm cú pháp và
văn phạm, ta thấy các ô về văn phạm còn bỏ trống nhiều, điều đó nói lên sự phức tạp trong việc mô tả văn phạm của các ngôn ngữ.