Mã luân phiên

Một phần của tài liệu Về độ nhập nhằng của ngôn ngữ và ứng dụng (Trang 28 - 33)

Một hình thức mở rộng khác của tích không nhập nhằng đã được đề xuất

bởi P. T. Huy, V. T. Nam (xem [2], 2004) bằng cách tích lặp nhiều lần. Từ đó

cho phép thiết lập hai lớp mã mới (gọi là mã luân phiên, mã luân phiên chẵn)

và một số tính chất đặc trưng của mã luân phiên, mã luân phiên chẵn với cặp

ngôn ngữ có tích không nhập nhằng. Sau đây, ta sẽ trình bày lại một số kết quả đã được trình bày trong [2] và thiết lập mới một số kết quả nhằm làm phong phú thêm cho các lớp mới này.

Cho X, Y  A+, ta định nghĩa phân tích luân phiên theo hai tập ngôn ngữ

Định nghĩa 2.4. Cho bảng chữ A và X, Y  A+, w  A+. Ta nói rằng:

(i) Từ w có một phân tích luân phiên theo (X,Y) nếu w = u1u2 ... un (n2),

trong đó, u1  X, nếu ui X thì ui+1  Y và nếu ui Y thì ui+1 X, với i

= 1,...,n-1.

(ii) Từ w có một phân tích luân phiên chẵn theo (X,Y) nếu w = u1u2 ... un

(n2), trong đó, u1  X, un  Y, nếu ui X thì ui+1  Y và nếu ui Y thì

ui+1 X, với i = 1,...,n-1 và n chẵn.

(iii) Từ w có một phân tích luân phiên theo {X,Y} nếu w có một phân tích luân phiên theo (X,Y) hoặc (Y,X).

Ví d 2.5.. Cho X = {a, ba} và Y = {b, aba}. Khi đó, từ w = ababaaba có hai

phân tích luân phiên theo {X,Y} như sau:

f1 : (a).(b).(a).(b).(a).(aba) là một phân tích luân phiên chẵn theo (X,Y) f2 : (aba).(ba).(aba) là một phân tích luân phiên theo (Y,X)

Dựa trên khái niệm tích không nhập nhằng và khái niệm phân tích luân

phiên, cho phép ta định nghĩa lại một cách chặt chẽ đối với lớp mã luân phiên, mã luân phiên yếu dạng 1 (dạng 2) và mã luân phiên chẵn như sau:

Định nghĩa 2.6. Cho X, Y A+. Cặp {X,Y} được gọi là mã luân phiên nếu,

với mỗi từ w  A+, w có không quá một phân tích luân phiên theo {X,Y}.

Gọi LALT là lớp các cặp ngôn ngữ là mã luân phiên và LC là lớp các ngôn

ngữ là mã. Khi đó, cặp {X,Y} LALT thì XY = . Do đó, từ nay trở đi, ta luôn quy ước rằng, hai ngôn ngữ X và Y là rời nhau. Nếu ta viết là cặp {X,Y}

thì được hiểu là hai ngôn ngữ X, Y không có thứ tự, còn nếu viết là cặp (X,Y)

thì được hiểu là hai ngôn ngữ X, Y có thứ tự.

Trong trường hợp cặp {X,Y} LALT thì tồn tại từ w A+ sao cho các Overlap của hai phân tích của từ w là khác .

Các Overlap của hai phân tích của từ w.

Các ví dụ sau cho ta thấy rằng: có cặp {X,Y} không là mã luân phiên

cho dù X, Y là mã. Và có X, Y không là mã nhưng cặp {X,Y} là mã luân phiên.

Ví d 2.7. Cho X = {ab, ba}, Y = {a} LC nhưng cặp {X,Y} LALT. Vì, với

từ w = aba  A+ có hai phân tích luân phiên khác nhau theo {X,Y}: w = (ab).(a) = (a).(ba)

Ví d 2.2.5.. Cho X = {a, aa}, Y = {b, bb} LC, nhưng cặp {X,Y}LALT.

Định nghĩa 2.8. Cho X, Y  A+. Cặp (X,Y) được gọi là mã luân phiên chẵn

nếu, với mỗi từ w A+, w có không quá một phân tích luân phiên chẵn theo

(X,Y).

Ví dụ sau thể hiện tính phổ dụng của mã luân phiên, mã luân phiên chẵn đối với biểu diễn thông tin trong máy tính:

Ví d 2.9. Với mỗi tệp nhị phân có thể biểu diễn như một chuỗi các bit 0, 1.

Chẳng hạn:

w = 101011000011001101100001011101

Đặt X = {1}+, Y = {0}+, khi đó w là một phân tích luân phiên theo {X,Y}.

Nếu ta bổ sung một bit 1 vào đầu w và một bit 0 vào cuối w thì chuỗi kết quả

luôn là một chuỗi phân tích luân phiên chẵn theo (X,Y). Cụ thể, với w ở trên, ta có

Gọi LEALT là lớp các cặp ngôn ngữ là mã luân phiên chẵn. Ví dụ sau cho

ta thấy rằng cặp (X,Y) là mã luân phiên chẵn nhưng cặp {X,Y} không là mã

luân phiên .

Ví d 2.10. Cho X = {ab, abba}, Y = {b}, dễ thấy cặp (X,Y) LEALT nhưng

cặp {X,Y} LALT. Vì, với từ w = abbab A+ có hai phân tích luân phiên khác nhau theo (X,Y) là:

w = (ab).(b).(ab) = (abba).(b)

Trong phần 1, ta đã xét tính chất mã trong quan hệ với phép đồng cấu . Tiếp theo, ta sẽ thiết lập một kết quả tương tự cho mã luân phiên, mã luân phiên chẵn.

Cho bảng chữ A. Đặt B = A  {e, f}, với e, f, (e  f) là các chữ cái mới

không thuộc A. Khi đó, ta định nghĩa đồng cấu xóa  : B*  A* được cho bởi:

(1) (e) = (f) = . (2) (a) = a , a  A.

Đặt S = { e wf , e we , f we , fwf | w  A+ }  B+. Trên S, ta định nghĩa

một phép tích “.” : x = i1u j1, y = i2v j2 B+,

với 0  B+ là phần tử zero mới, 1 là phần tử đơn vị mới của S^ = S  {1,0}. Dễ kiểm tra, S^ là một vị nhóm.

Cho X, Y  A+, ta xét UX,Y = { e xf , f ye | x  X, y  Y }  S và VX,Y = <UX,Y> là vị nhóm con của S^ sinh bởi UX,Y, khi đó VX,Y = U+X,Y.

x . y =

i1uv j2 nêu j1 = i2 0 nếu j1  i2

Mệnh đề 2.11. Cặp {X, Y} LALT khi và chi khi |VX,Y là đơn ánh.

Chứng minh. () Ta chứng minh cặp {X,Y} LALT thì |VX,Y là đơn ánh.

Thật vậy, giả sử ngược lại |VX,Y không là đơn ánh. Khi đó ta có thể chọn

hai phần tử khác nhau, chẳng hạn u = ex1fy1e x2fy2 ...  v = f y1e x1 f y2e x2 ... và (u) = (v). Suy ra x1y1x2y2 ... = y1x1y2x2..., mâu thuẫn. với giả thiết

{X,Y} LALT. Các trường hợp còn lại ta cũng suy ra được mâu thuẫn

() Ta chứng minh |VX,Y là đơn ánh thì cặp {X,Y} LALT.

Thật vậy, giả sử ngược lại cặp {X,Y} LALT. Khi đó, tồn tại từ w  A+ có hai phân tích luân phiên khác nhau trong X, Y. Chẳng hạn, xét trường hợp

x1y1x2y2 . . . = y1x1y2x2 . . .

Xét hai từ u = e x1f y1e x2f y2 ... , v = f y1e x1f y2e x2... trong VX,Y .Ta có

(u) = x1y1x2y2 ... = y1x1y2x2 ... = (v). Suy ra (u) = (v), mâu thuẫn với

giả thiết |VX,Y là đơn ánh. Các trường hợp còn lại ta cũng suy ra được mâu

thuẫn.

Mệnh đề 2.12. Cho A, B là hai bảng chữ rời nhau, khác rỗng và C = AB. Cho đồng cấu vị nhóm : C* D*, D C, đặt X = (A), Y = (B), U là tập tất cả các từ u C+, u có ít nhất một phân tích luân phiên theo {A, B}, và V

U là tập tất cả các từ có dạng a1b1 ... anbn , n 1, ai A, bi  B, i=1,...,n. Khi

đó

(i) Cặp {X, Y} LALT khi và chỉ khi |U là đơn ánh. (ii) Cặp (X,Y) LEALT khi và chỉ khi |V là đơn ánh.

Chứng minh. (i) Cặp {X,Y} LALT khi và chỉ khi|U là đơn ánh.

Phản chứng, giả sử ngượ c lại |U không là đơn ánh. Khi đó, ta có thể

chọn từ hai từ khác nhau u, u U sao cho (u) = (u). Vì u, u có ít nhất một

phân tích luân phiên theo {A, B}; chẳng hạn u = a1b1 ... anbn, u = a1b1 ...

ambm, với m, n  1, ai, aj A, bi, bj B, i = 1,...,n, j = 1,...,m. Mặt khác, là đồng cấu nên ta có:

(a1)(b1) . . . (an)(bn) = (a1)(b1) . . . (am)(bm),

đây là hai phân tích luân phiên theo {X,Y}, mâu thuẫn.

() Ta chứng minh, nếu|U là đơn ánh thì cặp {X,Y} LALT.

Thật vậy, giả sử ngược lại cặp {X,Y} LALT. Khi đó, tồn tại từ w  C+ có hai phân tích luân phiên khác nhau trong X, Y:

w = x1y1 . . . xnyn = y1x1 . . . xmym,

với m, n  1, xi, xj X = (A), yi, yj Y = (A), i = 1,...,n, j = 1,...,m. Xét các từ (ai) = xi, (bi) = yi, (aj) = xj, (bj) = yj, i = 1,...,n, j = 1,...,m. Do đó:

(a1)(b1) . . . (an)(bn) = (a1)(b1) . . . (am)(bm). Mặt khác, là đồng cấu nên ta có:

(a1b1 ... anbn) = (a1b1 ... ambm),

Đặt u = a1b1 ... anbn , u = a1b1 ... ambm, suy ra (u) = (u). Mâu thuẫn với giả thiết |U là đơn ánh.

(ii) Cặp (X,Y) LEALT khi và chỉ khi|V là đơn ánh.

Chứng minh tương tự như trường hợp (i).

Một phần của tài liệu Về độ nhập nhằng của ngôn ngữ và ứng dụng (Trang 28 - 33)

Tải bản đầy đủ (PDF)

(95 trang)