Ngôn ngữ được đoán nhận bởi ô tô mát 6.Sự tương đương ôtômát đơn định và ôtômát không đơn định 7.Quan hệ giữa NNCQ, ô tô mát và VPCQ 8.. Các máy không có đầu ra, dùng đoán nhận ngôn ngữ,
Trang 1Chương 3
ÔTÔMÁT HỮU HẠN
1 Mở đầu.
2 Định nghĩa ô tô mát hữu hạn
3 Biểu diễn ô tô mát hữu hạn
4 Hàm chuyển của xâu đầu vào.
5 Ngôn ngữ được đoán nhận bởi ô tô mát
6.Sự tương đương ôtômát đơn định
và ôtômát không đơn định
7.Quan hệ giữa NNCQ, ô tô mát và VPCQ
8 Một số ví dụ.
Trang 21 Mở đầu
hình hoá các máy hữu hạn trạng thái có đầu ra
1 một tập hữu hạn các trạng thái, có một trạng thái xuất phát,
2 một bộ chữ cái đầu vào và
Trang 31 Mở đầu
• 1 Có đầu ra - máy Mealy (G.H.Mealy, 1955)
• 2 Máy Moore, đầu ra chỉ phụ thuộc trạng thái (E.F Moore,1956)
• 3 Các máy không có đầu ra, dùng đoán nhận ngôn ngữ, đó là các ôtômát
• Các ôtômát h u h n dùng oán nh n ngôn ng chính quy ữ ạ để đ ậ ữ
Trang 42 Định nghĩa ô tô mát hữu hạn
5 tập con F của S, bao gồm các trạng thái kết thúc
• Ví dụ 1.
• Dựng đồ thị chuyển trạng thái của ôtômát hữu hạn M={S,I,f, s0, F} với S={s0, s1, s2, s3}, I={0,1}, F={s0, s3} còn hàm chuyển f được cho trong Bảng 1
Trang 53 Biểu diễn ô tô mát hữu hạn
Bảng 1
Trạng thái
H.chuy n ể f
0 1
s0 s1 s2 s3
s0 s1 s0 s2 s0 s0 s2 s1
s0
s1
s3
s2 0
0 1
1
1
0 0,1
Xu t ấ
phát
Hai cách biểu diễn ôtômát
Trang 64 Hàm chuyển của xâu đầu vào.
• Giả sử x= x1x2 xk là một xâu trong I
• Khi đó f(s1, x) là một trạng thái nhận được bằng cách dùng tuần tự các ký hiệu của x từ trái sang
phải làm đầu vào, bắt đầu với trạng thái s1
• Từ s1 → s2 =f(s1, x1), →s3 =f(s2, x2), và → sk+1= f(sk, xk) Vậy f(s1, x)=sk+1
• Xâu x gọi là được đoán nhận bởi máy M={S,I,f, s0, F } nếu nó đưa trạng thái xuất phát tới một trạng thái kết thúc, t.l f(s0, x) ∈ F
Trang 75 Ngôn ngữ được đoán nhận bởi ô tô mát
• Một ngôn ngữ được máy M đoán nhận, ký hiệu L(M) là tập tất cả các xâu đc đoán nhận bởi M
• Hai ôtômát hữu hạn là tương đương nếu đoán nhận cùng một ngôn ngữ.
• Ví dụ 2 Xác định ngôn ngữ đoán nhận bởi các ôtômát M1, M2, M3 trên Hình 2.
• 1 0,1
• Xuất phát 0
• L(M1)= {1 n | n=0,1,2, }
Trang 85 Ngôn ngữ được đoán nhận bởi ô tô mát
Trang 95 Ngôn ngữ được đoán nhận bởi ô tô mát
• Ví dụ 3 Cho Ôtô mát đơn định M={S, I, f, s0, F} với S= {s0, s1, s2, s3}, I= {0,1 }, s0 trạng thái ban đầu, F= {s3 } trạng thái kết thúc, hàm chuyển được cho như sau:
phải là trạng thái kết thúc không
Trạng thái Ký hiệu vào
Trang 106.Sự tương đương ôtômát đơn định
và ôtômát không đơn định
• một tập hữu hạn S các trạng thái,
• một bộ các đầu vào I,
• một hàm chuyển f gán cho mỗi cặp trạng thái- đầu vào, một tập các trạng thái,
• trạng thái xuất phát s0, và
• tập con F của S, gồm các trạng thái kết thúc.
Trang 116.Sự tương đương ôtômát đơn định
và ôtômát không đơn định
• Ví dụ 4 Tìm đồ thị chuyển
trạng thái cho ôtômát hữu hạn
không đơn định với bảng trạng
s0, s1 s0 s0, s1, s2
s3 s1, s3 s0, s2 s1
Trang 126.Sự tương đương ôtômát đơn định
và ôtômát không đơn định
Ôtômat hữu hạn không đơn định
Trang 136.Sự tương đương ôtômát đơn định
và ôtômát không đơn định
tô mát đơn định(M) nằm trong lớp ngôn ngữ đoán nhận bởi ô tô mát không đơn định (N)
định nằm trong lớp ngôn ngữ đoán nhận bởi ô tô mát đơn định
bởi ô tô mát không đơn định trên bảng ký tự I hay L(M)=L(N)
Trang 146.Sự tương đương ôtômát đơn định
và ôtômát không đơn định
Q 0 1
q0 q1 q2
{q1,q2} φ
q1 q2
φ q2
Trang 156.Sự tương đương ôtômát đơn định và
s5 s7 s1 s2 s7 s2 s5 s2 s5 s2 s1 s2 s5 s2 s7 s7
Trang 167.Quan hệ giữa NNCQ, ô tô mát và VPCQ
mát M={S, I, f, s0, F} sao cho L(M)=A
hữu hạn M={S, I, f, q0, F} sao cho L(M)=L(G)
VPCQ suy rộng G=(T,V,s0,P) sao cho L(G)=L(M)
Trang 177.Quan hệ giữa NNCQ, ô tô mát và VPCQ
17
BTCQ (suy rộng)
VPCQ
(suy rộng)
NNCQ (suy rộng)
Sinh ra
Biểu diễn
ÔT Ô M ÁT HỮU HẠN
Đoán nhận
xây dựng
xây dựng
Trang 19Do f(s0, aa) ∩F ≠φ nên aa được đoán nhận.
Tương tự cho các trường hợp còn lại
s0 s1 s2 s3
{s0, s1}
s3
φ φ
s3 s2 s1
φ
s0-trạng thái ban đầu; F= {s0, s3, }
Trang 20• Bài giải
Trang 21b a
y
x
b
Trang 238 Một số ví dụ
a) Tìm NNCQ biểu diễn bởi BTCQ trên
b) Xây dựng VPCQ suy rộng sao cho L(G)=L
c) Xây dựng ô tô mat M sao cho L(M)=L(G)
• Bài giải
• b) G=<T,N,S,P>; T={1,0}, N={…}
• P={S→λ, S→0A, A→1B, B→1A, A→0, S→0C, C→0C,C→1D, D→0, S→1E, E→0E, E→λ};
Trang 24s3 s5
0
1
0
0 1 1 0