Tải bản đầy đủ (.ppt) (33 trang)

Bai giang AutomatC3

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 (196.28 KB, 33 trang )

Chương 3

AUTOMAT HỮU HẠN

1


Nội dung
1.
2.
3.
4.
5.
6.

Định nghĩa ô tô mát hữu hạn
Biểu diễn ô tô mát hữu hạn
Hàm chuyển của xâu đầu vào.
Ngôn ngữ được đốn nhận bởi ơ tơ mát hữu hạn
Ơ tơ mát không đơn định
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ụ.

2


1. Định nghĩa Automat hữu hạn
Một Automat hữu hạn M={Q, I, f, q0, F}:
1. tập hữu hạn Q các trạng thái,


2. một bộ các đầu vào I,
3. một hàm chuyển
f : (trạng thái - đầu vào) trạng thái tiếp theo
4. trạng thái xuất phát q0, và
5. tập con F của Q, bao gồm các trạng thái kết thúc.
Biểu diễn ôtômát hữu hạn: bằng bảng trạng thái hoặc đồ
thị chuyển trạng thái.
Ví dụ 1.
• Dựng đồ thị chuyển trạng thái của ôtômát hữu hạn
M={Q,I,f, q0, F} với Q={q0, q1, q2, q3}, I={0,1}, F={q0, q3}
còn hàm chuyển f được cho trong Bảng 1.
3


2. Biểu diễn ôtômat hữu hạn
Bảng 1
Xuất
phát

Trạng
thái

q1

1

1
0
1


q0
0

q3
0

0,1
q2

H.chuyển f
0

1

q0

q0

q1

q1

q0

q2

q2

q0


q0

q3

q2

q1

q0,q3 – trạng thái kết thúc
Hai cách biểu diễn ôtômát
4


3. Hàm chuyển của xâu đầu vào
Định nghĩa hàm chuyển đối với một cặp trạng thái, xâu
đầu vào f(q,x):
•Giả sử x= x1x2..xk là một xâu trong I.
•Khi đó f(q1, 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 q1.
•Từ q1  q2 =f(q1, x1) q3=f(q2, x2).. và qk+1= f(qk, xk). Vậy
f(q1, x)=qk+1.
•Xâu x gọi là được đoán nhận bởi máy M={Q,I,f, q0, 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ức
là f(q0, x)  F.
5


4. Ngơn ngữ đố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 đốn nhận bởi M.
• Hai ơtơmát hữu hạn là tương đương nếu đốn
nhận cùng một ngơn ngữ.
Ví dụ 2. Xác định ngơn ngữ đốn nhận bởi các
ơtơmát M1, M2, M3 trên Hình 2.
1
Xuất phát
q0

0,1
0

q1

• L(M1)= {1n | n=0,1,2,.. }

6


4. Ngơn ngữ đốn nhận bởi ơtơmát
Cịn M2
0

Xuất phát

q0

0

q1


1

0,1

q2

q3

L(M2) = {1, 01}

1

và M3

0
0

0,1

q0

1

q1

1

q3


q2
0,1

L(M3) = {0n, 0n10x | n=0,1,2,.., và x là xâu bất kỳ}
7


4. Ngơn ngữ đốn nhận bởi ơtơmát
• Ví dụ 3. Cho Ơtơ mát đơn định M={Q, I, f, q0, F} với Q= {q0,
q1, q2, q3}, I= {0,1 }, q0 trạng thái ban đầu, F= {q3 } trạng thái
kết thúc, hàm chuyển f được cho như sau:
Trạng
thái

q0
q1
q2
q3

Ký hiệu vào
0
1

q1
q3
q0
q3

q2
q0

q3
q3

Xét các xâu 1 = 10110; 2=110,
3=10011. Ơ tơ mát M có đốn
nhận các xâu này không?
a)Dãy trạng thái khi cho 1vào là:
1 = 1
0 1
1 0
$

   

q0 q2 q0 q2q3 q3 F

Vậy M đoán nhận xâu 1 = 10110
b) Với 2=110
8


4. Ngơn ngữ đốn nhận bởi ơtơmát
dãy trạng thái của M là:
2 = 1
1
0 $


 
q0  q2  q3q3F; M đoán nhận xâu 2 = 110

c) Với xâu 3=10011 dãy trạng thái của M là:
3 = 1

0

0

1

1

$




  
q0 q2  q0 q1 q0q2 F
nên máy M khơng đốn nhận xâu này.
• Q trình đốn nhận một xâu đối với ôtômát đơn định là
qt biến đổi từ trạng thái ban đầu đến trạng thái cuối cùng
có phải là trạng thái kết thúc không.
9


5. Ơtơmát khơng đơn định
• Định nghĩa: Một ơtơmát hữu hạn không đơn định M={Q,
I, f, q0, F} gồm:
một tập hữu hạn Q 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 q0, và
tập con F của Q, gồm các trạng thái kết thúc.
Biểu diễn ôtômát hữu hạn không đơn định bằng bảng
trạng thái hoặc đồ thị chuyển trạng thái.

10


5. Ơtơmát khơng đơn định
Bảng trạng thái

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 thái ở
bên, các trạng thái
kết thúc là q2 và q3.

Trạng
thái

Hàm chuyển
Đầu vào
0

q0

q1
q2

{q0, q1}
q0

q3

{q0, q1, q2}

1
q3
{q1, q3}
{q0, q2}
q1

11


5. Ơtơmát khơng đơn định
Ơtơmat hữu hạn khơng đơn định

1

12


5. Ơtơmát khơng đơn định
Ngơn ngữ được đốn nhận bởi ôtômát không đơn định
Ví dụ 5. Cho ôtômát không đơn định M=<Q,I,q0,F,f> với

I= {0, 1 }, Q= {q0, q1, q2, q3, q4}; q0 trạng thái ban đầu;
F= { q2, q4 }- tập trạng thái kết thúc.
Hàm chuyển như bên cạnh.
• Với ô tô mát không đơn định
hàm chuyển f (q,a)  Q nên
sẽ có rẽ nhánh.
• Lập dãy trạng thái của máy
ứng với xâu đầu vào dưới
dạng một cây gốc q0.

Trạng
thái
q0
q1
q2
q3
q4

Ký hiệu vào
0

1

{q0, q3}

q2

{q0, q1}

q4

q4

q2
q2

q4

13


5. Ơtơmát khơng đơn định
• Trong cây này nếu có
một đường đi từ gốc q0
tới một lá chứa trạng thái
kết thúc, thì M đốn nhận
xâu vào đang xét.
• Nếu khơng có một lá nào
như vậy thì M khơng đốn
nhận xâu này.
• Chẳng hạn với xâu vào
1=01001 đối với máy M
trên cây đốn nhận xâu này;

q0
0

0

q0


q3
1

1

q1

q0
0

q0

• Xâu 2=010 khơng được đốn nhận





q3
0

0

q0
1

0

0


q0
0

1

1
q1

q3

q4

1

1



q4
14


6.Sự tương đương của Ơ đơn định và khơng đơn định
• Theo định nghĩa ơ tơ mát đơn định và ơ tơ mát khơng
đơn định thì lớp ngơn ngữ đốn nhận bởi ô tô mát đơn
định(M) nằm trong lớp ngôn ngữ đốn nhận bởi ơ tơ mát
khơng đơn định (N).
• Và người ta cũng chứng minh điều ngược lại: lớp ngơn
ngữ đốn nhận bởi ơ tơ mát khơng đơn định nằm trong
lớp ngơn ngữ đốn nhận bởi ơ tơ mát đơn định.

Hay:
• Định lý 1 . Lớp ngơn ngữ đốn nhận bởi ô tô mát đơn
định trùng với lớp ngôn ngữ đốn nhận bởi ơ tơ mát
khơng đơn định trên bảng ký tự I hay L(M)=L(N)

15


6.Sự tương đương của Ơ đơn định…
• Xây dựng ơ tơ mat đơn định tương đương theo cách sau:
• Cho ô tô mat không đơn định M=< Q,I,F,q0,f>. Xây dựng ô
tô mat đơn định M’=< S,I’, F’,s0,f’> sao cho:
 I’=I của M;
 Tập trạng thái:

S {s 0 , s1 ,...s2|Q|  1 | si  Q (i 0,1,..,2|Q|  1)}
=tập tất cả các tập con của Q, và s0 = {q0 }
 F’= {s | s  S và s  F   }
 f’ :S x I* S; xác định với mọi s S và mọi x  I* có:

f ' ( s, x)  f (q, x)
qs

Khi đó M’ là ơ tơ mat đơn định và M’  M.
16


6.Sự tương đương của Ơ đơn định…
Ví dụ 6. Cho ô tô mát không đơn định M={Q, I, f, q0, F}
Hãy tìm L(M)=?

Xây dựng ơ tơ mát đơn định M’ tương đương M?
Bài giải.
Q

0

q0
q1
q2

{q1,q2}
q1


1

q2
q2

0

X. phát
q0

q1

0

1


q2

0

• L(M)= {0 , 0 1 , 01 | n≥1, m≥1,k≥1, l≥0
• Xây dựng M’ đơn định và tương đương với M
n

m k

l

1

17


6.Sự tương đương của Ơ đơn định…
b) Xây dựng ơ tơ mát đơn định tương đương như sau:
• M’=< S, I’, f’, s0, F’ >; I’= I = {0,1 }
• S= {s0, s1, s2, s3, s4, s5, s6, s7} trong đó
• s0=q0, s1=q1, s2=q2, s3= {q0, q1}, s4= {q0, q2}, s5= {q1, q2}, s6=
{q0, q1,q2}, s7= 
• Hàm chuyển f’ như sau:
Q

0

1


Q

0

1

s0

s5

s7

s4

s5

s2

s1

s1

s2

s5

s1

s2


s2

s7

s2

s6

s5

s2

s3

s5

s2

s7

s7

s7

• s0=q0 là trạng thái ban đầu,
• F’= {s1, s2 ,s3, s4, s5,s6 }- tập trạng thái kết thúc.

18



6.Sự tương đương của Ơ đơn định…
Ví dụ 7. Cho ô tô mat không đơn định M=<Q,I,F, q0,f>:
Q

I= { 0

1

}

q0

{q0, q1}

{q3}

q1

{q0}

{q1, q3}

q2



{q0, q2}

q3


{q0, q1,q2}

{q1}

q0 trạng thái ban đầu;
F={q2, q3} - tập trạng thái kết thúc

Bài giải:
a) Đồ thi chuyển của M:

a) Đưa M về dạng đồ thị
chuyển
b) Xây dựng ô tô mat đơn
định M’=<S,I,F’,s0,f’>M
1
0

q1

0
0

1
0,1
q3

1

q0
0


0

1
q2

1
19


6.Sự tương đương của Ơ đơn định…
• M’=< S, I, f’, s0, F’ >;
• I= {0,1 }
S={s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15}
trong đó:
s0=q0, s1=q1, s2=q2, s3=q3; s4= {q0, q1}, s5= {q0, q2 },
s6= {q0, q3}, s7= {q1, q2}, s8= {q1, q3}, s9= {q2, q3};
s10= {q0, q1,q2}, s11= {q0, q1,q3}, s12={q0, q2,q3}; s13={q1,q2,q3},
s14= {q0, q1,q2, q3}; s15 =  ;
s0 = {q0} - trạng thái ban đầu.
• F’= { s2 ,s3, s5, s6,s7 ,s8, s9 ,s10, s11, s12,s13, s14};
• Hàm chuyển f’ như sau:
20



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×