Professional Documents
Culture Documents
676500d9 3b01 4368 A129 C3c49efe2a30chuong 2. Bieu Thuc Chinh Quy Va o To Mat Huu Han
676500d9 3b01 4368 A129 C3c49efe2a30chuong 2. Bieu Thuc Chinh Quy Va o To Mat Huu Han
ε là một BTCQ
Chú ý:
Trong BTCQ chỉ có 3 phép toán và thứ tự ưu tiên là *,.,+
L((+))=L()L()
L(())=L().L()
L((*))=(L())*
(1+01+001)*(ε+0+00)*
[00+11+(01+10)(00+11)*(01+10)]*
Cấu tạo của OHT
Cấu tạo:
Một băng vào: chứa xâu cần xử lý (xâu vào), mỗi ô chứa
một kí tự
Một đầu đọc: tại mỗi thời điểm trỏ vào một ô của băng vào
Một hàm dịch chuyển: cho phép xác định trạng thái tiếp
1 0 0 1 1 1 0
Đầu đọc
vào hàm dịch chuyển, đẩy đầu đọc sang phải một ô
OHT dừng khi đọc hết xâu vào, nếu trạng thái cuối là trạng
thái thừa nhận thì xâu và được thừa nhận (thuộc ngôn ngữ
mà ôtômát mô tả)
Ôtômát hữu hạn tiền định
Ví dụ: Cho ôtômát tiền
định M, trong đó: 0 1
Bộ chữ vào ={0,1} q0 q2 q1
Q={q0, q1, q2, q}, q0 là trạng
thái đầu q1 q3 q0
F={q0} là tập trạng thái kết q2 q0 q3
thúc
q3 q1 q2
Hàm dịch chuyển : Q×
Q, cho bởi bảng bên
Xâu vào: 1001 , 11, 0110
Định nghĩa OHT
Định nghĩa: OHT là một bộ năm M=(,Q,,q0,F)
trong đó:
- tập hữu hạn các kí hiệu (bộ chữ vào)
OHT
L(OHK) là lớp các ngôn ngữ được đoán nhận bởi
OHK
Ta chứng minh: L(OHT)=L(OHK) (tức là ngôn ngữ L
được đoán nhận bởi OHT L cũng được đoán nhận
bởi một OHK)
Sự tương đương giữa OHT và OHK
L được đoán nhận bởi OHT thì cũng được đoán nhận bởi một
OHK: Thêm một số trạng thái qi và một số bước chuyển sao cho:
Các qi không thể đến được đích F
Phá vỡ tính tiền định
Như vậy, OHT trở thành OHK và cũng đoán nhận ngôn ngữ L
L được đoán nhận bởi OHK thì cũng được đoán nhận bởi một
OHT:
Loại bỏ dịch chuyển
Loại bỏ các đặc tính không tiền định
Sự tương đương giữa OHT và OHK
Loại bỏ dịch chuyển –ε:
Định lý II.1: Nếu một ngôn ngữ được thừa nhận
bởi một ô tô mát hữu hạn thì nó cũng sẽ được thừa
nhận bởi một ô tô mát hữu hạn không có dịch
chuyển ε
={0,1}
Q={p,q,r}
F={r}
Sự tương đương giữa OHT và OHK
Ta cần tìm M’ =(,(Q),’,{p},F’) trong đó:
(S,a)=U(s,a) với S(Q), a
F’={S (Q)|SF}
Sự tương đương giữa OHT và OHK
Hàm dịch chuyển ’
(Q) 0 1
được biểu diễn như
sau:
Đầu {p} {p,q} {p}
{q} {r}
Cuối {r}
{p,q} {p,q,r} {p}
Cuối {p,r} {p,q} {p}
Cuối {q,r} {r}
Cuối {p,q,r} {p,q,r}
Sự tương đương giữa OHT và OHK
Ôtômat tiền định tương đương:
Sự tương đương giữa OHT và OHK
Định lý II.3:
Một ngôn ngữ được thừa nhận bởi một ô tô mát
hữu hạn khi và chỉ khi nó được thừa nhận bởi một
ô tô mát tiền định
48
Sự tương đương
giữa VPTT phải đơn và FA
Xây dựng văn phạm G=(,,S,P) trong đó:
=Q; q là kí hiệu đầu (tiên đề);
0
P gồm:
qap nếu (q,a)=p;
49
Sự tương đương
giữa VPTT phải đơn và FA
Ví dụ 2: Cho DFA như sau:
50
Sự tương đương
giữa VPTT phải đơn và FA
DFA đã cho:
M=({0,1},{p, r},,p, {r}) trong đó gồm:
(p,1)=p; (p,0)=r; (r,0)=r.
Văn phạm tương đương với DFA:
G=({0, 1}, {p, r}, p, P) trong đó P gồm:
p1p; p0r ; r0r; r.
51
Sự tương đương
giữa VPTT phải đơn và FA
Định lý II.10:
Mọi ngôn ngữ sinh từ văn phạm tuyến tính
phải đều là ngôn ngữ chính quy:
Chứng minh:
Cho L là một ngôn ngữ sinh bởi một văn phạm
52
Sự tương đương
giữa VPTT phải đơn và FA
Xây dựng NFA:
M=(, {f}, , S, {f})
Trong đó:
f ;
53
Sự tương đương
giữa VPTT phải đơn và FA
Ví dụ 3: Cho Văn phạm:
S|aS|bT|b
TbT|b
Y/c: Tìm Ô tô mát hữu hạn tương đương với văn
phạm đã cho.
54
Sự tương đương
giữa VPTT phải đơn và FA
Ô tô mát hữu hạn tương đương:
M=({a,b}, {S, T, f}, , S, {f}) trong đó gồm:
(S,)=f (S,a)=S (S,b)=T
(S,b)=f (T,b)=T (T,b)=f
Sơ đồ dịch chuyển của Ô tô mát:
55
Sự tương đương
giữa VPTT phải đơn và FA
Định lý II.11:
Một ngôn ngữ được sản sinh bởi một văn
phạm tuyến tính phải khi và chỉ khi nó là chính
quy.
Chứng minh:
Định lý là hệ quả trực tiếp từ các Định lý II.9
và II.10
56
V. Các ngôn ngữ chính quy
Các phương tiện xác định ngôn ngữ chính quy:
Biểu thức chính quy
Các ô tô mát hữu hạn tiền định
Các ô tôt mát hữu hạn không tiền định
Các văn phạm tuyến tính phải
Các tính chất đóng của NNCQ
L1, L2 là các ngôn ngữ chính quy thì:
L1L2 là ngôn ngữ chính quy
L1 L2 là ngôn ngữ chính quy
L1 . L2 là ngôn ngữ chính quy
L1* là ngôn ngữ chính quy
L1 =*-L1 là ngôn ngữ chính quy
Các bài toán quyết định trên NNCQ
Bài toán từ: Cho L là NNCQ và một từ x*. Phải
chăng xL
Bài toán ngôn ngữ rỗng: Cho L là NNCQ. Phải chăng
L=
Bài toán ngôn ngữ đầy: Cho L là NNCQ. Phải chăng
L=*
Bài toán bao hàm ngôn ngữ: L1 L2 là NNCQ. Phải
chăng L1 L2
Bài toán ngôn ngữ bằng nhau: L1 L2 là NNCQ. Phải
chăng L1 =L2
Định lý Đùn (Bổ đề Bơm)
Cho L là ngôn ngữ chính quy vô hạn và một xâu wL
sao cho w#Q (Q là tập các trạng thái của một ô tô mát
hữu hạn tiền định thừa nhận L). Khi đó tồn tại x,u,y
sao cho w=xuy (uε và |xu|#Q) và xuny L
Định lý đùn là điều kiện cần đối với các ngôn ngữ
chính quy, mọi ngôn ngữ không thỏa định lý đùn thì
không thể là ngôn ngữ chính quy
Một số ví dụ
L=an bn không là ngôn ngữ chính quy vì không
thể tìm thấy xâu xuy sao cho xu nyanbn
L=an2 không là ngôn ngữ chính quy.