Tải bản đầy đủ (.pdf) (112 trang)

Về một cấu trúc vị nhóm mới và mã

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.72 MB, 112 trang )

....

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

-----------

-----------

HỒ NGỌC VINH

VỀ MỘT CẤU TRÚC VỊ NHÓM MỚI VÀ MÃ
Chun ngành: Đảm bảo tốn học cho máy tính và các hệ thống tính tốn
Mã số: 62.46.35.01

LUẬN ÁN TIẾN SĨ TOÁN HỌC

Hà Nội – 2012


BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

-----------

-----------

HỒ NGỌC VINH

VỀ MỘT CẤU TRÚC VỊ NHÓM MỚI VÀ MÃ
Chun ngành: Đảm bảo tốn học cho máy tính và các hệ thống tính tốn


Mã số: 62.46.35.01

LUẬN ÁN TIẾN SĨ TOÁN HỌC

NGƯỜI HƯỚNG DẪN KHOA HỌC:

1. GS. TSKH. Đỗ Long Vân
2. PGS. TS. Phan Trung Huy

Hà Nội – 2012


LỜI CAM ĐOAN
Tơi xin cam đoan đây là cơng trình nghiên cứu của riêng tôi, chưa
từng được công bố trong bất kỳ một cơng trình khoa học của ai khác.
Các kết quả được viết chung với các tác giả khác đều được sự đồng ý của
đồng tác giả trước khi đưa vào luận án.

Hà Nội, ngày 22 tháng 05 năm 2012

Hồ Ngọc Vinh

-1-


MỤC LỤC
Trang
DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT ............................... 4
DANH MỤC CÁC HÌNH VẼ ................................................................. 5
MỞ ĐẦU ................................................................................................ 6

CHƯƠNG 1 : KHÁI NIỆM VÀ KẾT QUẢ LIÊN QUAN ...................... 12

1.1 Một số khái niệm .................................................................. 12
1.1.1 Cấu trúc đại số cơ bản .................................................... 12
1.1.2 Đồng cấu........................................................................ 13
1.1.3 Từ và ngơn ngữ .............................................................. 14
1.1.4 Ngơn ngữ chính quy và Otomat hữu hạn ......................... 15
1.2 Mã và các tính chất của mã .................................................. 21
1.2.1 Mã và vị nhóm tự do ...................................................... 21
1.2.2 Thủ tục Sardinas-Patterson kiểm tra tính chất mã ......... 25
CHƯƠNG 2 : MÃ LUÂN PHIÊN .......................................................... 27

2.1 Tích không nhập nhằng ........................................................ 27
2.2 Mã luân phiên ...................................................................... 30
2.3 Đặc trưng của mã luân phiên ................................................ 36
CHƯƠNG 3 :

-NGÔN NGỮ CHÍNH QUY VÀ OTOMAT MỞ RỘNG. 47

3.1 Từ định biên ......................................................................... 47
3.2

-ngơn ngữ chính quy.......................................................... 53

3.3 Vị nhóm biểu diễn

-ngôn ngữ ............................................. 65

-2-



-3-

CHƯƠNG 4 : MÃ VỚI TỪ ĐỊNH BIÊN .............................................. 71

4.1 Mã với từ định biên .............................................................. 71
4.2 Thuật toán kiểm tra

-mã ................................................... 80

4.3 Thuật toán kiểm tra

-mã chặt ............................................ 89

4.4 Thuật toán xác định độ trễ giải mã cho

-mã ....................... 96

KẾT LUẬN VÀ KIẾN NGHỊ ..............................................................103
TÀI LIỆU THAM KHẢO ....................................................................105
DANH MỤC CÁC CƠNG TRÌNH ĐÃ CƠNG BỐ CỦA LUẬN ÁN ...109


-4-

DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT

Từ viết tắt

Giải nghĩa


LC

Lớp mã thông thường

LALT

Lớp mã luân phiên

LWLALT

Lớp mã luân phiên yếu trái

LWRALT

Lớp mã luân phiên yếu phải

LEALT

Lớp mã luân phiên chẵn

L

C

Lớp

-mã

L


WLC

Lớp

-mã yếu trái

L

WRC

Lớp

-mã yếu phải

L

SC

Lớp

-mã chặt

SPC

Thủ tục kiểm tra -mã
(the Sardinas−Patterson for Codes of bounded
words)

Thủ tục kiểm tra


MSPC

-mã mở rộng
(the Modification of Sardinas−Patterson for
Codes of bounded words)

SPSC

Thủ tục kiểm tra -mã chặt
(the Sardinas−Patterson for Strict Codes of
bounded words)


DANH MỤC CÁC HÌNH VẼ

Hình 2.1. Các Overlap của hai phân tích của từ w ................. 31
Hình 2.2. Hai phân tích của w trong (XY)+ và (XY)+ X –1 ..... 37
Hình 2.3. Các lớp thương Ui , Vj của hai phân tích ................ 42
Hình 2.4. Quan hệ của các lớp mã đã xét trên A* ................... 43
Hình 3.1.

-otomat đa định A đốn nhận L........................ 58

Hình 3.2.

-otomat A được mở rộng bão hịa từ A . ........... 58


Hình 3.3. Otomat A đốn nhận ngơn ngữ b*a ........................ 64

Hình 3.4.

-otomat A sinh bởi otomat A. ........................... 64

Hình 4.1. Phân bậc của các lớp mã ....................................... 80
Hình 4.2.

-ngơn ngữ có độ trễ giải mã hữu hạn d ................ 96

Hình 4.3. Các lớp cắt Vd và Vd +1 ........................................... 99

-5-


MỞ ĐẦU
Lý thuyết mã bắt nguồn từ lý thuyết thông tin do C. E. Shannon
khởi xướng [27] đã đặt nền móng tốn học cho lý thuyết thơng tin hiện đại.
Do nhu cầu thực tiễn, lý thuyết mã phát triển theo nhiều hướng khác
nhau, chẳng hạn như hướng nghiên cứu liên quan đến mã độ dài cố định,
điển hình là mã sửa sai, ứng dụng để phát hiện và sửa lỗi xuất hiện trên
các kênh truyền tin; hay một hướng nghiên cứu khác có liên quan đến mã
độ dài biến đổi, được nghiên cứu đầu tiên bởi Schüzenberger. Một số bài
toán cơ bản trong nghiên cứu lý thuyết mã là: các tính chất liên quan đến
sự phân tích một từ thành dãy các từ thuộc một tập cho trước; tính chất
khơng nhập nhằng của ngôn ngữ trong quan hệ với mã; mã trong mối
quan hệ với đại số, tổ hợp trên từ, lý thuyết ngơn ngữ hình thức và otomat.
Bảo mật thông tin là một hướng nghiên cứu luôn được nhiều người
quan tâm nhằm xây dựng những hệ mật mã với độ an tồn cao, nhưng
cho đến nay vẫn chưa có một hệ mật mã nào có thể có độ an toàn tuyệt
đối. Đây là động lực quan trọng thúc đẩy sự liên tục phải cải tiến, nghiên

cứu xây dựng các hệ mã mới, cả về khía cạnh lý thuyết cũng như thực
hành.
Mã truyền thống được định nghĩa dựa trên sự phân tích duy nhất
của một xâu văn bản được mã hóa thành tích các từ thuộc mã, trong đó
tích của hai từ là phép nối ghép xâu. Gần đây, một xu hướng mới trong
nghiên cứu lý thuyết mã là các tác giả đưa vào xét các yếu tố điều khiển,
nhập nhằng, đa trị để mở rộng khái niệm tích, từ đó cho phép xây dựng
những lớp mã mới.
Phân tích zigzag [34] là một tiếp cận mở rộng khái niệm tích, được
đề xuất bởi M. Anselmo vào đầu những năm 1990. Trong sự khai triển
tích zigzag có thể chứa các bước lùi khử từ, dẫn đến khái niệm mã zigzag
(còn được gọi là Z-mã). Các vấn đề cơ bản đối với mã truyền thống như

-6-


-7đồng cấu mã, kiểm tra tính chất mã đã được nghiên cứu cho trường hợp
Z-mã bởi Đỗ Long Vân, B. L. Saec, I. Litovsky, M. Madonia S. Salemi,
T. Sportelli (xem [23], [28], [29]).
Đến cuối những năm 1990, xuất hiện một hướng mở rộng khái niệm
tích khác, được đề xuất bởi A. Salomaa - tích trộn có điều khiển (shuffle
on trajectory ), trong đó, tích của hai từ x, y là phép trộn các chữ cái theo
thứ tự được điều khiển bởi xâu bit t (tổng quát hơn, xâu điều khiển là
một từ trên bảng chữ 2 ký tự), dẫn đến lớp mã theo tích trộn (được gọi là
T-mã). Các đặc trưng đại số của tích trộn và mã theo tích trộn đã được
nghiên cứu bởi A. Salomaa, A. Kadrie, A. Mateescu, G. Rozenberg (xem
[33], [20], [21]).
Trong [5], P. T. Huy, V. T. Nam đã đề xuất các hình thức mã mới,
là mã của một cặp hai ngôn ngữ (mã luân phiên, mã luân phiên chẵn)
dựa vào phân tích luân phiên của hai ngôn ngữ trên một bảng chữ và

thiết lập được một số tính chất cơ sở ban đầu về hai lớp mã mới này.
Mã luân phiên, mã luân phiên chẵn là một phát triển mở rộng tự nhiên,
nhưng không tầm thường của mã truyền thống. Trong khi mỗi mã
truyền thống là một ngôn ngữ X trên một bộ chữ nào đó thì mã ln
phiên, mã ln phiên chẵn là một cặp {X,Y} của hai ngôn ngữ mà mỗi
một trong chúng không nhất thiết phải là một mã truyền thống. Mặt
khác, nếu X là một mã truyền thống thì {X, X} là một mã luân phiên
chẵn. Như vậy mã luân phiên, mã luân phiên chẵn là một mở rộng thực
sự của mã truyền thống, hứa hẹn một khả năng ứng dụng rộng rãi hơn và
khả năng thúc đẩy phát triển các nghiên cứu mới, sâu sắc hơn về ngơn
ngữ nói chung, lý thuyết mã nói riêng. Mã từ định biên được đề xuất
trong luận án cũng nảy sinh từ nhu cầu nghiên cứu, xây dựng các thuật
toán kiểm định mã luân phiên, mã luân phiên chẵn.
Thật ra, thể hiện của một số hệ mã luân phiên, mã luân phiên chẵn
cụ thể đã xuất hiện và được sử dụng từ lâu trong thực tiễn như trong việc
biểu diễn thông tin trong máy tính, trong phơng chữ Unicode, trong mã
sửa sai,… nhưng chưa được đề cập nghiên cứu trong lý thuyết mã trước


-8đây. Đó chính là những gợi ý ban đầu và là động lực cho việc nghiên cứu
mã luân phiên, mã luân phiên chẵn về mặt lý thuyết như một bộ phận
của Lý thuyết mã nói riêng và Ngơn ngữ hình thức nói chung.
Từ cơng trình của P. T. Huy, V. T. Nam, một câu hỏi tự nhiên đặt
ra là một hệ gồm bốn điều kiện (trong Định lý 2.3.4) có thiết yếu hay
khơng?; có thể xây dựng các tiêu chuẩn cần và đủ để kiểm tra mã luân
phiên đơn giản hơn hay không?.
Một kết quả của luận án chỉ ra rằng 4 điều kiện đặc trưng của mã
luân phiên trong Định lý 2.3.4 đã nêu là độc lập, nghĩa là thiết yếu, thể
hiện sự khó khăn khi cần thiết lập một thuật tốn để kiểm tra một cặp
ngơn ngữ chính quy cho trước có là mã ln phiên hay khơng nếu dùng

định lý này.
Các tiếp cận mở rộng khái niệm tích đã gợi mở hướng nghiên cứu
của luận án. Trong đó, các yếu tố biên của từ được đưa vào làm cơ sở xây
dựng các loại tích mới theo biên của một dạng từ mới (tích biên trên các
từ định biên) và từ đó đề xuất, nghiên cứu các lớp mã mới theo các tích
này. Với các lớp mã mới, luận án đã cho ta câu trả lời khẳng định đối với
câu hỏi thứ hai nhờ đưa ra một mô tả khác của mã luân phiên, luân phiên
chẵn dựa trên các từ định biên và cho phép biểu diễn mã luân phiên một
cách đơn giản, giảm độ phức tạp của thuật toán kiểm định mã luân phiên
so với thuật toán kiểm tra trực tiếp hệ 4 điều kiện trong Định lý 2.3.4.
Từ việc nghiên cứu các lớp mã từ định biên, cho phép ta nhận được
một sơ đồ phân bậc tổng quát các lớp mã đã xét (xem thêm Hình 4.1),
trong đó chỉ ra rằng mã truyền thống, mã luân phiên và -mã chặt là
các lớp mã cực tiểu.
Luận án đã tập trung nghiên cứu và giải quyết các vấn đề sau:
1)

Xem xét và thiết lập mới một số tính chất cùng với đặc trưng cần và
đủ đối với các lớp mã dựa trên tích luân phiên.

2)

Đề xuất khái niệm từ định biên, từ đó xây dựng hình thức tích mới
(tích biên) trên tập các từ định biên A* .


-93)

Nghiên cứu lớp ngôn ngữ của các từ định biên trên A* , đặc biệt là
lớp ngơn ngữ chính quy của các từ định biên trong mối liên hệ với

đại số và otomat thơng qua các hình thức -otomat.

4)

Nghiên cứu các lớp mã mới dựa trên tích biên, mối quan hệ của nó
với mã, mã luân phiên, mã luân phiên yếu trái (yếu phải), mã luân
phiên chẵn và các bài toán cơ bản cho trường hợp lớp mã mới.

5)

Nghiên cứu độ trễ giải mã của lớp mã mới và thiết lập thuật toán
xác định độ trễ giải mã cho lớp mã mới đã đề xuất ở trên.

Nội dung của luận án gồm phần mở đầu, 4 chương, phần kết quả và
thảo luận, phần kết luận và kiến nghị, phần tài liệu tham khảo.
Chương 1 – Khái niệm và kết quả liên quan. Chương này nhắc lại các
khái niệm cơ sở về đại số, ngơn ngữ chính quy và otomat, trình bày mối
liên hệ giữa ngôn ngữ với đại số. Phần tiếp theo của chương giới thiệu về
lý thuyết mã, vị nhóm tự do, mối quan hệ giữa mã với vị nhóm tự do, thủ
tục kiểm tra một ngơn ngữ cho trước có là mã hay khơng.
Các chương tiếp theo trình bày các kết quả nghiên cứu chính của
luận án.
Chương 2 – Mã luân phiên. Trong lý thuyết mã, yếu tố nhập nhằng đa
trị sử dụng yếu tố ngữ cảnh như là tín hiệu nhiễu chèn vào tích các từ,
là một xu hướng được nhiều người quan tâm. Trong chương này, nhắc lại
khái niệm tích khơng nhập nhằng, mối quan hệ giữa tích khơng nhập
nhằng và mã, khái niệm mã ln phiên chẵn, mã luân phiên. Từ đó đề
xuất hai lớp mã mới dựa trên tích luân phiên (mã luân phiên yếu trái,
mã luân phiên yếu phải) và thiết lập mới một số tính chất của tích khơng
nhập nhằng, mã ln phiên chẵn, mã luân phiên yếu trái (yếu phải),

mã luân phiên trong quan hệ với mã, đồng cấu mã. Các kết quả chính
được thể hiện trong Mệnh đề 2.2.13 về mã luân phiên chẵn, mã luân
phiên trong quan hệ với phép đồng cấu; các Định lý 2.3.1, Định lý 2.3.2,
Định lý 2.3.3, Định lý 2.3.4 về các đặc trưng cần và đủ để một cặp ngôn
ngữ X, Y cho trước có là mã luân phiên chẵn, mã luân phiên yếu trái
(yếu phải), mã luân phiên hay không.


- 10 Chương 3 – -ngơn ngữ chính quy và otomat mở rộng. Nếu như trong
Chương 2, các lớp mã được biểu diễn theo tích ln phiên của hai ngơn
ngữ thuộc A+ thì trong Chương 3 này, luận án trình bày hình thức tích
ln phiên theo quan điểm đại số trên dạng từ mới - từ định biên và tích
của các từ định biên trên tập các từ định biên A* . Từ đó, cho phép ta đề
xuất các khái niệm -ngơn ngữ chính quy, -otomat, -đốn nhận được
và nhận được một số kết quả rất cơ bản về -ngôn ngữ chính quy trên
A* . (Định lý 3.3.8, -ngơn ngữ chính quy trong quan hệ với -otomat
đa định (đơn định) hữu hạn, -đồng cấu vị nhóm).
Chương 4 – Mã với từ định biên. Chương này đưa ra bốn lớp mã mới
( -mã, -mã yếu trái, -mã yếu phải, -mã chặt) dựa trên tích của các
từ định biên trên A* và biểu diễn lớp mã, mã luân phiên, mã luân phiên
yếu trái (yếu phải), mã luân phiên chẵn dưới góc độ các phép toán đại số,
cấu trúc đại số mới trên các từ định biên. Từ đó, thiết lập mối quan hệ
giữa -mã, -mã yếu trái (yếu phải), -mã chặt với mã luân phiên
chẵn, mã luân phiên yếu trái (yếu phải), mã luân phiên qua các Định lý
4.1.13, Định lý 4.1.14, Định lý 4.1.15, Định lý 4.1.16 và xây dựng hai
thuật tốn kiểm tra tính chất mã của -mã, -mã chặt của một -ngơn
ngữ chính quy cho trước cùng với đánh giá độ phức tạp của chúng.
Hệ quả 4.2.14 và Hệ quả 4.3.7 đóng vai trị cơ sở cho phép đề xuất hai
thuật tốn hiệu quả kiểm tra một cặp ngơn ngữ X, Y cho trước có là mã
luân phiên chẵn, mã luân phiên hay không, với độ phức tạp thấp hơn so

với hai thuật toán được thiết lập trực tiếp nếu dựa vào các Định lý 2.3.1,
Định lý 2.3.4.
Các kết quả chính của luận án đã được cơng bố trong các cơng trình
[1.], [2.], [3.], [4.], [5.], [6.], [7.], [8.] và đã được trình bày tại:


Seminar tại phịng “Cơ sở Toán học của Tin học”, Viện Toán học.



Seminar tại bộ mơn Tốn Tin, khoa Tốn - Tin ứng dụng, Đại học
Bách khoa Hà Nội.



Hội thảo quốc gia lần thứ XII “Một số vấn đề chọn lọc của Công
nghệ thông tin và truyền thơng”, Biên Hịa, 5 - 6/8/2009;


- 11 −

Hội thảo khoa học quốc gia lần thứ IV “Nghiên cứu cơ bản và ứng
dụng Công nghệ thông tin” (FAIR 2009), Hà nội, 25 - 26/12/2009.



Hội thảo quốc gia lần thứ XIII “Một số vấn đề chọn lọc của Công
nghệ thông tin và truyền thông”, Hưng Yên, 19 - 20/8/2010.




Hội thảo quốc tế lần thứ 2 “Computational Collective IntelligenceTechnologies and Applications” (ICCCI 2010), Kaohsiung, Taiwan,
10 - 12/11/2010.



Hội thảo quốc tế lần thứ 3 “Computer and Electrical Engineering”
(ICCEE 2010), Chengdu, China, 16 - 18/11/2010.



Hội nghị toàn quốc lần thứ III về Ứng dụng toán học, Hà Nội, 23 25/12/2010.



Hội thảo quốc tế lần thứ 9 “IEEE-International Conference on
Computing and Communication Technologies Research, Innovation,
and Vision for the Future” (IEEE-RIVF 2012), Ho Chi Minh City,
February 27 - March 01, 2012.

Luận án được hồn thành tại Khoa Tốn - Tin ứng dụng, Trường
Đại học Bách khoa Hà Nội, dưới sự hướng dẫn của GS. TSKH. Đỗ Long
Vân và PGS. TS. Phan Trung Huy. Tác giả xin bày tỏ lòng biết ơn sâu
sắc đối với các thầy hướng dẫn, những người thầy đã chỉ bảo tận tình, chỉ
ra hướng nghiên cứu lý thú để có được kết quả trong luận án này.
Tác giả xin chân thành cảm ơn các thành viên trong Seminar “Cơ sở
Toán học của Tin học”, Viện Toán học, đã giúp đỡ, động viên và đóng
góp nhiều ý kiến quý báu khi thảo luận các kết quả của luận án.
Tác giả xin trân trọng cảm ơn Ban lãnh đạo Khoa Toán - Tin ứng
dụng và Viện Đào tạo Sau đại học, các thầy cơ giáo cùng tồn thể cán bộ

cơng nhân viên của Trường ĐHBK Hà Nội đã hỗ trợ giúp đỡ tác giả
trong quá trình thực hiện luận án.
Tác giả xin bày tỏ lịng biết ơn đến gia đình, bạn bè, Ban Giám hiệu
Trường Đại học Sư phạm Kỹ thuật Vinh, các thầy cô giáo và các bạn
đồng nghiệp Khoa CNTT đã tạo điều kiện thuận lợi và giúp đỡ tác giả
trong quá trình học tập, nghiên cứu.


Chương 1
KHÁI NIỆM VÀ KẾT QUẢ LIÊN QUAN

Chương này trình bày các kiến thức cơ sở được sử dụng trong
luận án. Cụ thể sẽ nhắc lại một số khái niệm và tính chất cơ bản của mã,
mối quan hệ giữa lý thuyết mã với đại số, ngơn ngữ hình thức, otomat.
Về các kiến thức cơ sở có liên quan, xin xem thêm trong [1], [9], [11], [13],
[14], [18].

1.1

Một số khái niệm

1.1.1 Cấu trúc đại số cơ bản
Cho M là một tập. Một phép tốn hai ngơi trên M là một ánh xạ
T : M × M → M. Thay vì viết T(x, y), ta viết xTy, với mọi x, y ∈M. Khi
T được viết theo lối nhân “.” thì ta viết đơn giản T(x, y) là x y (gọi là tích
của x và y), cịn khi T được viết theo lối cộng “+” thì ta viết T(x, y) là
x + y (gọi là tổng của x và y).
Trong toàn bộ luận án, theo thơng lệ, nếu khơng nói gì khác ta quy
ước phép tốn hai ngơi T ln được viết theo lối nhân.
Một phép tốn hai ngơi T trên M gọi là kết hợp nếu, ∀x, y, z ∈M,

(x y)z = x(yz); gọi là giao hoán nếu, ∀x, y ∈M, x y = y x.
Một tập khác rỗng M được gọi là nửa nhóm nếu trên M được trang
bị phép tốn hai ngơi kết hợp. Nửa nhóm là giao hốn nếu phép tốn của
nó là giao hốn.
Một phần tử e của nửa nhóm M được gọi là phần tử đơn vị nếu,
∀x ∈M, x e = x = ex. Phần tử đơn vị của M nếu có thì xác định một
cách duy nhất. Do vậy, ta thường ký hiệu đơn vị của M là 1M .

- 12 -


- 13 Một tập khác rỗng M được gọi là vị nhóm nếu M là một nửa nhóm
và có phần tử đơn vị. Vị nhóm con của M là tập con N, đóng kín đối với
phép tốn của M và chứa phần tử đơn vị của M , nghĩa là NN ⊆ N và
1M ∈N.
Một phần tử x của vị nhóm M được gọi là khả nghịch nếu tồn tại
phần tử x ′ ∈ M sao cho x x ′ = 1M = x ′x. Khi đó, x ′ được xác định duy
nhất bởi x và được gọi là phần tử nghịch đảo của x, ký hiệu là x –1 (nếu
phép tốn T được viết theo lối cộng thì phần tử nghịch đảo của x được
gọi là phần tử đối của x, ký hiệu là -x ). Một vị nhóm được gọi là nhóm
nếu mỗi phần tử của nó đều khả nghịch.

1.1.2 Đồng cấu
Một cách tổng quát, một đồng cấu giữa hai cấu trúc đại số là một
ánh xạ bảo tồn các phép tốn. Nghĩa là, một đồng cấu nửa nhóm là một
ánh xạ ϕ từ một nửa nhóm M vào một nửa nhóm N sao cho ∀m1, m2 ∈M

ϕ (m1 m2) = ϕ (m1) ϕ (m2)

(1.1)


Nếu M = N thì đồng cấu ϕ gọi là tự đồng cấu. Nếu ϕ là đơn ánh
(t.ứng, tồn ánh, song ánh) thì gọi là đơn cấu (t.ứng, toàn cấu, đẳng
cấu), một tự đồng cấu song ánh gọi là một tự đẳng cấu.
Tương tự, một đồng cấu vị nhóm là một ánh xạ ϕ từ một vị nhóm M
vào một vị nhóm N thỏa mãn điều kiện (1.1) và

ϕ (1M) = 1N

(1.2)

với 1M là đơn vị của M , 1N là đơn vị của N.
Đặc biệt, khi hai nửa nhóm M, N là nhóm thì mọi đồng cấu nửa
nhóm từ M đến N là đồng cấu vị nhóm và là đồng cấu nhóm từ M đến N.
Một đồng cấu ϕ : M → N là một đẳng cấu nếu tồn tại một đồng cấu
β : N → M sao cho ϕ ◦β = IdN và β ◦ϕ = IdM .


- 14 -

1.1.3 Từ và ngôn ngữ
Cho tập hợp các ký tự A gọi là bảng chữ cái. Một từ w trên A là một
xâu hữu hạn các phần tử của A, w = (a1, a2, ..., an), ai ∈A. Một ngơn ngữ
(hình thức) L là một tập hợp các từ của bảng chữ cái A nào đó. Tập tất
cả các từ trên bảng chữ cái A, ký hiệu là A* và được trang bị phép toán
kết hợp − là phép ghép nối hai xâu:
(a1, a2, ..., an) (b1, b2, ..., bm) = (a1, a2, ..., an , b1, b2, ..., bm).
Phép tốn ghép nối có tính kết hợp. Do đó, ta có thể viết:
w = a1 a2 ... an thay cho cách viết w = (a1, a2, ..., an)
Mỗi phần tử a ∈A được gọi là một chữ cái. Xâu không chứa chữ cái

nào được gọi là xâu rỗng (hay từ rỗng), ký hiệu là 1 hoặc ε . Từ rỗng là
phần tử đơn vị của phép ghép nối. Vì vậy, tập A* được trang bị cấu trúc
của một vị nhóm và được gọi là vị nhóm tự do sinh bởi A. Có thể thấy
A* = A0 ∪ A1 ∪ A2 … An … , với A0 = {ε }, A1 = A và An = An –1 A. Tập
tất cả các từ khác rỗng trên A được ký hiệu là A+. Do đó, ta có:
A+ = A* − {ε }.

(1.3)

Số tất cả các xuất hiện của các chữ trong từ w là độ dài của w, ký
hiệu là |w|, quy ước |ε | = 0. Với mỗi số nguyên dương n, ký hiệu A[n ] là
tập tất cả các từ trong A* có độ dài nhỏ hơn hoặc bằng n.
Ký hiệu |w|a là số lần xuất hiện của chữ cái a ∈A trong w. Khi đó:

w

=



a ∈A

w

a

(1.4)

Ta nói, từ w ∈A* là một khúc con (factor) của một từ x ∈A* nếu ∃u,
v ∈ A* sao cho: x = uwv. Một từ w ∈A* là một khúc đầu (prefix) của một

từ x ∈A* nếu ∃v ∈A* sao cho: x = wv. Tương tự, một từ w ∈A* là một
khúc đuôi (suffix) của một từ x ∈A* nếu ∃u ∈A* sao cho: x = uw. Một
khúc con (khúc đầu, khúc đuôi) là thực sự nếu uv ≠ ε (t.ứng, v ≠ ε , u ≠ ε ).


- 15 Một phân tích của một từ w ∈A* là một dãy {u1, u2, ..., un}, với n ≥ 0,
un ∈A*, i = 1,...,n sao cho w = u1 u2 ... un . Với X ⊆ A*, ta biểu diễn X * là
vị nhóm con sinh bởi X, với đơn vị là ε .
X * = { x1 x2 . . . xn | n ≥ 0, xi ∈X }

(1.5)

Tương tự, ta biểu diễn X + là nửa nhóm con sinh bởi X.
X + = { x1 x2 . . . xn | n ≥ 1, xi ∈X }

(1.6)

Vì vậy, ta có
X

+

X * − {ε }

=

X

Nếu ε ∉ X


*

(1.7)

Ngược lại

Giả sử X và Y là các ngôn ngữ trên A. Ta gọi thương trái (thương phải)
của X với Y là ngôn ngữ Y –1 X (tương ứng XY –1) được xác định bởi:
Y –1 X = { w ∈A* | y w ∈X, y ∈Y }
XY

–1

*

(1.8)

= { w ∈A | w y ∈X, y ∈Y }

Nếu Y = {u} chỉ có một phần tử thì ta ký hiệu Xu, uX u–1 X, Xu–1
thay cho XY, YX, Y –1 X, XY –1 tương ứng.

1.1.4 Ngơn ngữ chính quy và Otomat hữu hạn
1.1.4.1 Ngơn ngữ chính quy
Cho A là bảng chữ cái hữu hạn. Biểu thức rỗng (∅ ) và các biểu thức
a ∈ A hoặc a = ε được gọi là các biểu thức sơ cấp trên A.
− Các biểu thức chính quy trên A là các biểu thức được định nghĩa đệ
quy như sau:
+ Các biểu thức sơ cấp trên A là các biểu thức chính quy trên A,



- 16 + Nếu E1 và E2 là các biểu thức chính quy trên A, thì các biểu thức
E1 + E2 , E1 .E2 và E1* là các biểu thức chính quy.
Nói cách khác, một biểu thức trên A được gọi là biểu thức chính quy
nếu nó được xây dựng từ các biểu thức sơ cấp bằng cách dùng một số hữu
hạn lần các phép tốn hợp, phép tích ghép và phép lặp.
− Một ngơn ngữ chính quy trên A được biểu diễn bởi một biểu thức
chính quy E trên A, ký hiệu L(E), được định nghĩa đệ quy như sau:
+ L(∅ ) = ∅, L(ε ) = {ε }, L(a) = {a }, với mọi a ∈A,
+ Nếu E1 biểu diễn ngôn ngữ L1, E2 biểu diễn ngôn ngữ L2 thì
L(E1 + E2) = L 1 ∪ L2, L(E 1.E2) = L 1.L2, L(E 1*) = L1*.
Ta nói rằng ngôn ngữ được định nghĩa L(E) như trên là giá trị của
biểu thức chính quy E. Do đó, mỗi tập dạng {w}, w ∈A*, là ngơn ngữ
chính quy trên A. (xem thêm [1, tr. 46]).
Như vậy, tập hợp các ngôn ngữ được biểu diễn bởi các biểu thức
chính quy trên A trùng với tập hợp các ngơn ngữ chính quy khác rỗng
trên A. Khi đó, ta có:
+ Một ngơn ngữ chính quy là vơ hạn khi và chỉ khi biểu thức chính
quy biểu diễn nó có chứa phép lặp.
+ Mọi tập hữu hạn các từ trong A* đều là các ngơn ngữ chính quy
trên A. Như vậy từ định nghĩa suy ra: lớp các ngơn ngữ chính quy
trên A là lớp bé nhất chứa các ngôn ngữ hữu hạn và ngơn ngữ
trống, đóng đối với các phép hợp, phép tích ghép và phép lặp.
− Biểu diễn đại số của ngôn ngữ chính quy:
Cho ϕ : A* → M là đồng cấu vị nhóm (ta có thể xem đồng cấu vị
nhóm ϕ là tồn cấu vì nếu khơng thì ta thay M bởi vị nhóm con ϕ (A*)
của M). Nếu L ⊆ A* thỏa mãn ϕ –1 (ϕ(L)) = L thì ta nói rằng L thỏa bởi
đồng cấu vị nhóm ϕ . Vậy L thỏa bởi đồng cấu ϕ ⇔ ∃N ⊆ M sao cho
L = ϕ –1 (N).



- 17 Ta có tính chất sau:
Định lý 1.1.1. (xem [11, tr. 62]) Cho L ⊆ A*, L là ngôn ngữ chính quy khi
và chỉ khi L thỏa bởi một đồng cấu vị nhóm ϕ : A* → M, với M là một vị
nhóm hữu hạn.
Khi đó, vị nhóm hữu hạn M được gọi là vị nhóm biểu diễn ngơn ngữ L.
Từ định nghĩa của đồng cấu và định nghĩa của ngơn ngữ chính quy, ta có
một số kết quả sau:
Mệnh đề 1.1.2. Cho X, Y ⊆ A* là hai ngơn ngữ chính quy, và hai đồng
cấu vị nhóm α : A* → M và β : A* → N lần lượt thỏa X và Y. Khi đó, ta
ln xây dựng được một đồng cấu (tồn cấu) vị nhóm ϕ : A* → P, với P là
một vị nhóm hữu hạn, thỏa đồng thời cả X và Y.
Chứng minh. Xét ϕ ′ = α ο β : A* → M × N = P ′
u → (α (u), β (u))

ε → (1M, 1N) = 1P′ , với 1P′ là đơn vị của P ′
Theo giả thiết, tồn tại C ⊆ M, D ⊆ N mà X = α –1 (C), Y = β –1 (D). Đặt
C ′ = C × N = { (c, n) | c ∈C, n ∈N },
D′ = M × D = { (m, d) | m ∈M, d ∈D }
Sau đây ta sẽ chứng minh: ϕ ′–1 (C ′) = X, ϕ ′–1 (D′) = Y. Thật vậy,
với X = α –1 (C), ∀x ∈ X, ta có c = α (x), c ∈ C, ϕ ′(x) = (α (x), β (x)) =
(c, β (x)) ∈ C ′ như vậy ϕ ′(X) ⊆ C ′.
Ngược lại, với y ∈ ϕ ′(C ′) ⊆ A*, ϕ ′(y) ∈C ′, ϕ ′(y) = (α (y), β (y)) =
(c, n) ∈ C ′. Từ đó ta có thể viết:

ϕ ′(C ′) = X = ϕ –1 (C ′∩ P),

C″ = C ′∩ P ⊆ P

ϕ ′(D′) = Y = ϕ –1 (D′∩ P),


D″ = D′∩ P ⊆ P

X = ϕ –1 (C″), Y = ϕ –1 (D″)
Suy ra X và Y đồng thời thỏa bởi ϕ ′. Từ ϕ ′(A*) = P ⊆ P ′ và
ϕ : A* → P là toàn cấu, suy ra ϕ (u) = ϕ ′(u). Vậy ϕ : A* → P thỏa đồng
thời cả X và Y.



- 18 Ví dụ 1.1.3. Cho vị nhóm U1 = {0, 1}, với phần tử đơn vị là 1 và phần tử
zero là 0 và cho ngôn ngữ X thỏa bởi một đồng cấu vị nhóm α : A* → M ,
ngôn ngữ Y = {ε } thỏa bởi đồng cấu vị nhóm β : A* → U1, được xác định
bởi: β (ε ) = 1, ∀u ∈A*, β (u) = 0. Dễ thấy rằng, cả X và Y cùng thỏa bởi
toàn cấu ϕ : A* → P, với P ⊆ M ×U1 , được xác định bởi: ∀u ∈A*, ϕ (u) =
(α (u), 0), 1P = ϕ (ε ) = (1M , 1). Khi đó, P là vị nhóm được sinh bởi ϕ (u),
∀u ∈A*. Nếu |M| là hữu hạn thì |P| ≤ 2.|M|.
Từ Mệnh đề 1.1.2, ta có kết quả sau:
Hệ quả 1.1.4. Cho X, Y ⊆ A* là hai ngơn ngữ chính quy. Nếu X và Y cùng
thỏa bởi tồn cấu vị nhóm ϕ : A* → P, với P là một vị nhóm hữu hạn,
thì ϕ cũng thỏa mọi L ∈A(X,Y), trong đó A(X,Y) là lớp ngôn ngữ sinh
bởi X, Y nhờ sử dụng hữu hạn các phép ∪, ∩, − và các phép thương trái,
thương phải.
Chứng minh. Theo giả thiết X = ϕ –1 (C), Y = ϕ –1 (D), C, D ⊆ P.
Với mọi x ∈X ∪ Y, ta có ϕ (x) ∈C hoặc ϕ (x) ∈D. Suy ra X ∪ Y =
ϕ (C ∪ D) = ϕ –1 (C) ∪ ϕ –1 (D). Do đó, ϕ thỏa ngơn ngữ X ∪ Y. Lập luận
tương tự với phép ∩ và phép − .
–1

Theo định nghĩa: C –1D = { m ∈P | ∃c ∈C, c m = d ∈D ⊆ P } ⇒

X –1 Y = ϕ –1 (C –1D). Do đó ϕ thỏa ngôn ngữ X –1 Y. Lập luận tương tự với
phép XY –1.

Từ kết quả trên, ta có nhận xét sau:
Nhận xét 1.1.5. Cho X, Y là hai ngơn ngữ chính quy trên A và tồn cấu
vị nhóm ϕ : A* → P thỏa đồng thời cả X và Y, với P có cỡ |M|.|N|. Theo
Hệ quả 1.1.4, ϕ thỏa đồng thời cả L = X ∪ Y, L = X ∩ Y, L = X−Y,
L = X –1 Y, L = XY –1. Đặt X = ϕ –1 (C), Y = ϕ –1 (D), với C, D ⊆ P. Suy
ra L = ϕ –1 (K), với K = C ∪ D, K = C ∩ D, K = C − D, K = C –1D,
K = CD –1, K ⊆ P. Khi đó, để tính K thì mất khơng q |P|2 bước thực
hiện. Cịn đối với vị nhóm X +, ta thực hiện như sau:


- 19 Theo giả thiết X = ϕ –1 (C), đặt K = ϕ (X +) và K1 = C, khi đó ta có
K = C +. Từ K1 = C, ta có K 2 = (K 1 ∪ {1P}).C ⊆ P, K 3 = (K 2 ∪ {1P}).C
⊆ P, . . . , K i +1 = (K i ∪ {1P}).C ⊆ P. Nếu K i +1 = K i thì dừng và ta thu
được nửa nhóm K = Ki = C 1 ∪ C 2 ∪ ... là nửa nhóm đốn nhận X +.
Độ phức tạp tính tốn của mỗi bước tính K i +1 từ K i có cỡ |P|2. Vì
dãy K i là dãy tăng dần và bị chặn bởi |P|, do đó số bước tính các tập K i
không vượt quá |P| bước, i ≥ 1. Vì vậy, độ phức tạp để tính nửa nhóm
K = C + có cỡ |P|3.
Bổ đề 1.1.6. Cho X, Y ⊆ A* là hai ngơn ngữ chính quy và ϕ : A* → P là
tồn cấu vị nhóm. Nếu X, Y thỏa bởi ϕ thì (X +) –1 Y, Y (X +) –1 cũng thỏa
bởi ϕ .
Chứng minh. Theo giả thiết X = ϕ –1 (C), Y = ϕ –1 (D), với C, D ⊆ P. Đặt
ϕ (X +) = K, khi đó C + = K. Ta chứng minh (X +) –1 Y = ϕ –1 (K –1 D).
Với mọi w ∈(X +) –1 Y, ta có x1 x2 ... xn w = y, xi ∈X, y ∈Y, i = 1,...,n .
Suy ra ϕ (x1) ϕ (x2) ... ϕ (xn) ϕ (w) = ϕ (y) ∈D. Từ ϕ (xi) ∈C, ta có ϕ (w)
∈(C +) –1 D. Vì vậy, w ∈ ϕ –1 (K –1 D).
Ngược lại, chọn w ∈ ϕ –1 (K –1 D), ta có ϕ (w) ∈K –1 D = (C +) –1 D, suy

ra tồn tại c ∈ C + sao cho c.ϕ (w) ∈D. Từ c ∈ C +, suy ra c = c1c2 ... cp, với
ci ∈C, i = 1,...,p. Theo giả thiết, ϕ là toàn cấu và X = ϕ –1 (C), tồn tại
xi ∈X sao cho ci = ϕ (xi), suy ra c = ϕ (x1 x2 ... xp). Do đó, c.ϕ (w) = ϕ (x1 x2
... xp w), suy ra x1 x2 ... xp w ∈ ϕ –1 (D) = Y. Vì vậy w ∈(X +) –1 Y.
Chứng minh tương tự cho trường hợp Y (X +) –1 thỏa bởi ϕ .



1.1.4.2 Otomat hữu hạn
Cho A là bảng chữ cái hữu hạn. Một otomat đa định hữu hạn trên A
là một bộ gồm 5 thành phần A = (A, Q, E, I, T), với Q là tập hữu hạn
các trạng thái; I ⊆ Q là tập các trạng thái khởi đầu; T ⊆ Q là tập các
trạng thái kết thúc; E ⊆ Q×A×Q là tập các cung, xác định hàm chuyển
trạng thái của otomat.


- 20 Mỗi cung là một bộ (qi , a, qj ), với a ∈A, qi , qj ∈Q. Khi đó, ta gọi là
đường đi từ trạng thái qi đến trạng thái qj với nhãn a và được biểu diễn là:
a
→ qj
qi 

(1.9)

Hai cung chuyển (p, a, q) và (p′, a′, q ′) là kế tiếp (liền nhau)
nếu q = p′. Một đường đi trong otomat A là một dãy các cung kế tiếp

a3
an
a1

a2
→ . . . qn –1 →
→ q1 
→ q2 
q0 
qn

(1.10)

trong đó, n gọi là độ dài của đường đi P, từ w = a1 a2 … an tạo thành bởi
các nhãn ai được gọi là nhãn của đường đi P. q0 là trạng thái bắt đầu của P,
qn là trạng thái kết thúc của P. Ta ký hiệu:
w
P : q0 → qn

(1.11)

Quy ước rằng, ∀q ∈Q, đường đi từ q đến q có độ dài 0. Nhãn của nó là
từ rỗng. Một đường đi P : q0 
→ qn được gọi là đường đi thành công nếu
q0 ∈I, qn ∈T. Tập tất cả nhãn của các đường đi thành công của otomat A
được ký hiệu là L(A ) và được gọi là ngơn ngữ đốn nhận bởi A. Một trạng
thái qi ∈Q được gọi là trạng thái đạt được nếu có một đường đi P: q0 
→ qi ,
với q0 ∈I.
Hàm chuyển trạng thái δ : Q × A → Q được xác định bởi q ∈ δ (p, a),
với (p, a, q) ∈E. Ta có thể mở rộng hàm δ : Q×A → Q thành hàm δ :
Q×A* → Q, gọi là hàm chuyển mở rộng của otomat A, được định nghĩa quy
nạp theo độ dài của từ w ∈A*: δ (p, ε ) = p và δ (p, wa) = δ (δ (p, w), a).
Do đó,


L (A )

= { w ∈A* | ∃q0 ∈I sao cho δ (q0, w) ∈T }

(1.12)

Một otomat hữu hạn A = (A, Q, E, I, T) được gọi là otomat đơn
định hữu hạn nếu I có một phần tử và từ điều kiện (p, a, q), (p, a, q ′) ∈E
suy ra q = q ′. Do đó, ta có thể xem các otomat đơn định hữu hạn như là
các trường hợp đặc biệt của otomat đa định hữu hạn, với các hạn chế
δ (p, ε ) = ∅ và |δ (p, a)| = 1.


- 21 Một ngôn ngữ L ⊆ A* được gọi là đoán nhận được nếu L = L (A ), với
A là otomat đa định (đơn định) hữu hạn nào đó.
Định lý 1.1.7. (xem [18, tr. 156]) Một ngơn ngữ L là đoán nhận được khi
và chỉ khi L là ngơn ngữ chính quy.

1.2

Mã và các tính chất của mã

1.2.1 Mã và vị nhóm tự do
Định nghĩa 1.2.1. Cho A là một bảng chữ cái. Một tập con X của vị
nhóm tự do A* được gọi là mã trên A nếu ∀n, m ≥ 1 và x1, x2, ..., xn ,
x1′, x2′, ..., xm′ ∈X,
x1 x2 ... xn = x1′x2′ ... xm′

⇒ m = n và xi = xi′ (với i = 1, ..., n).


Nói cách khác, một tập X là mã nếu mọi từ trong A* có khơng q một
cách phân tích thành các từ trong X. Dễ thấy rằng, mỗi tập con của một
mã là mã, đặc biệt tập rỗng cũng là mã và mọi từ mã đều không chứa từ
rỗng (do ε .ε = ε ).
Một đơn cấu β : B * → A* được gọi là đồng cấu mã hay một phép mã
hóa. Điều kiện cần và đủ về phép mã hoá, biểu diễn qua đơn cấu vị nhóm
được thể hiện qua mệnh đề sau.
Mệnh đề 1.2.2. (xem [9, tr. 38]) Nếu tập con X của A* là mã thì mọi đồng
cấu β : B * → A*, cảm sinh một song ánh từ bảng chữ cái B nào đó lên X,
sẽ là đơn cấu. Ngược lại, nếu tồn tại một đơn cấu β : B * → A* sao cho
β (B) = X thì X là mã.
Với khái niệm trên, q trình mã hố có thể coi là việc thay thế mỗi
từ b1 b2 ... bn thuộc B * bằng từ mã β (b1) β (b2) ... β (bn) được xác định bởi
đồng cấu mã β . Sự kiện β là đơn ánh đảm bảo rằng từ mã có thể được
giải mã duy nhất để thu được bản rõ ban đầu.
Ví dụ 1.2.3. (a) Mã Morse XM là mã trên bảng chữ { . , ∧ , − } dùng để
mã hóa các chữ a, b, …, z.


- 22 (b) Mã ASCII XA là một mã trên {0, 1}. Ta thấy các từ của XM có độ
dài khác nhau, cịn mọi từ của XA có độ dài là 8.
Từ Mệnh đề 1.2.2, ta có hệ quả sau:
Hệ quả 1.2.4. (xem [9, tr. 39]) Cho α : A* → C * là một đơn cấu. Nếu X là
mã trên A thì α (X) là mã trên C. Nếu Y là mã trên C thì α –1 (Y) là mã
trên A.
Hệ quả 1.2.5. (xem [9, tr. 40]) Nếu X ⊆ A+ là mã thì X n là mã, với mọi số
nguyên n > 0.
Cho tập X ⊆ A*, khi đó X gọi là tập prefix nếu khơng có từ nào trong
X là khúc đầu thực sự của một từ khác trong X. Nói cách khác, tập X là

prefix nếu với mọi x, y ∈X, nếu x là prefix của y thì x = y. Hoặc X là
prefix nếu X –1 X = ∅.
Ta có thể thấy rằng nếu X là tập prefix và chứa từ rỗng thì X = {ε }.
Ngược lại với định nghĩa tập prefix ta có định nghĩa tập suffix. Tập X
được gọi là tập suffix nếu khơng có từ x nào trong X là khúc đuôi thực sự
của một từ y khác trong X. Tập X được gọi là tập bifix nếu nó vừa là tập
prefix, vừa là tập suffix. Tập các prefix thực sự của tập X bất kỳ được ký
hiệu là Pref(X), tương tự ta có tập Suff(X). Dễ thấy rằng Pref(X) =
X(A+)−1 và Suff(X)=(A+)−1 X.
Ví dụ 1.2.6. Tập X = {abb, bb, bab } trên A = {a, b }, là tập prefix vì
khơng tồn tại từ nào trong X có chứa khúc đầu cũng là từ trong X. Tuy
nhiên X không phải là suffix vì từ abb thuộc X có khúc đi bb thuộc X.
Do đó X khơng phải là tập suffix.
Ví dụ 1.2.7. Tập X = {abb, baa, bab } trên A = {a, b }, là tập prefix vì
khơng tồn tại từ nào trong X có chứa khúc đầu cũng là từ trong X và
X cũng là suffix. Do đó X là tập bifix.
Từ định nghĩa mã và tập prefix, suffix và bifix, ta có các mệnh đề sau:
Mệnh đề 1.2.8. (xem [9, tr. 40]) Mọi tập prefix (suffix, bifix) khác {ε } đều
là mã.


- 23 Mã X được gọi là mã prefix (t.ứng, suffix, bifix) nếu nó là tập prefix
(t.ứng, suffix, bifix). Ta có mệnh đề sau:
Mệnh đề 1.2.9. (xem [25, tr. 108]) Cho X là mã trên A. Khi đó, X là mã
prefix (t.ứng, suffix) khi và chỉ khi XA+ ∩ X = ∅ (t.ứng, A+ X ∩ X = ∅ ).
Tính chất của mã có quan hệ rất gần với khái niệm vị nhóm tự do
bởi vì nếu X là mã thì X * là vị nhóm tự do và nếu M là vị nhóm tự do thì
tập sinh cực tiểu của M là mã. Do đó, tiếp theo sau đây, ta sẽ trình bày
một số kết quả cơ sở của vị nhóm tự do và mối quan hệ giữa vị nhóm tự
do và mã.

Mệnh đề 1.2.10. (xem [25, tr. 103]) Một vị nhóm con M của A* là vị
nhóm tự do khi và chỉ khi, với mọi w ≠ ε thuộc M, w có duy nhất một phân
tích thành tích của các phần tử của X, với X = (M – {ε }) − (M − {ε })2.
Cho M là một vị nhóm con của vị nhóm tự do A*. Với mọi w ≠ ε
thuộc M, ta có thể viết w = w1 w2 . . . wn , với wi ∈X = (M − {ε }) −
(M − {ε })2, i = 1,…,n. Do đó, tập X là tập sinh của M. Nếu X ′ ⊆
(M − {ε }) là một tập sinh khác của M thì, với mọi w ′ ∈X, w′ có thể viết
thành w′ = w1′w2′ … wn′, với wi′ ∈X′. Hơn nữa, nếu n = 1 và w ′ ∈X ′ thì
X ⊆ X ′. Ta có mệnh đề sau:
Mệnh đề 1.2.11. (xem [18, tr. 106]) Mọi vị nhóm con M của vị nhóm tự
do A* có tập sinh cực tiểu duy nhất X = (M − {ε }) − (M − {ε })2. Khi đó,
X được gọi là cơ sở của M.
Ví dụ 1.2.12. Cho A = {a, b }, với tập M = {ai | i ∈ »0, i ≠ 1}. Tập X =
{ a 2, a 3 } là cơ sở của M. Dễ thấy, M khơng là vị nhóm tự do trên X, vì
a6 ∈M thừa nhận hai phân tích trong C : a 6 = a 2 a 2 a2 = a 3 a 3 . Theo
Mệnh đề 1.2.11, M khơng là vị nhóm tự do.
Ví dụ 1.2.13. Cho A = {a, b }, với tập M = {w | |w|a ≡ 0 mod 2 }. Ta có
X = (M − {ε }) − (M − {ε })2 = b ∪ ab*a.


×