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

Bài tập Automat

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 (106.37 KB, 3 trang )

Bài tập lý thuyết chương 3
Biểu thức chính qui
Môn: Automata và Ngôn ngữ hình thức.

Regular Expressions
1. Viết biểu thức chính qui cho các ngôn ngữ sau:
a) Tập các chuỗi trên bảng chữ cái {a, b, c} có chứa ít nhất một kí hiệu a và ít nhất một
kí hiệu b.
b) Tập các chuỗi 0, 1 sao cho kí hiệu thứ mười tính từ bên phải là 1.
c) Tập các chuỗi 0, 1 có tối đa một cặp 11.
Lưu ý: 111 được xem là có chứa 2 cặp 11 và do đó không thuộc ngôn ngữ này.
d) Tập các chuỗi 0, 1 sao cho mọi cặp 00 đều xuất hiện trước mọi cặp 11.
e) Tập các chuỗi 0, 1 có số lượng 0 chia hết cho 5.
f) Tập các chuỗi 0, 1 có số lượng 0 bằng số lượng 1 và không có tiền tố nào có số lượng
0 nhiều hơn số lượng 1 là hai đơn vị cũng như số lượng 1 nhiều hơn số lượng 0 hai
đơn vị.
g) Tập các chuỗi 0, 1 không chứa chuỗi con 101.
2. Mô tả không hình thức ngôn ngữ của các biểu thức chính qui sau:
a) * (1 + )(00*1)*0*.
b) (0*1*)*000(0 + 1)*.
c) (0 + 10)*1*.
3. Tìm biểu thức chính qui biểu diễn ngôn ngữ L được mô tả đệ qui như sau:
a) L. Nếu chuỗi x L thì 001x và x11 cũng thuộc L. Ngoài ra, ngôn ngữ L không
chứa những chuỗi không được xây dựng theo cách trên.
b) L. Nếu chuỗi x L thì 001x, x001 và x11 cũng thuộc L. Ngoài ra, ngôn ngữ L
không chứa những chuỗi không được xây dựng theo cách trên.

Regular Expression and Finite Automata
1. Cho sơ đồ chuyển vị

0


1
q
1

q
2

q
3

q
2

q
1

q
3

*q
3

q
2

q
1

a) Xây dựng biểu thức chính qui mô tả ngôn ngữ được kiểm nhận bởi DFA trên, sử dụng
kĩ thuật tính các giá trị R

(k)
ij
.
Lưu ý: (i) mỗi trạng thái q
i
được đánh số tương ứng là i. (ii) Đơn giản hóa biểu thức
chính qui.
b) Xây dựng sơ đồ chuyển vị khi loại bỏ trạng thái q
2
của DFA. Hãy chỉ ra một biểu
thức chính qui mô tả ngôn ngữ được kiểm nhận bởi DFA này.
Lưu ý: nhãn chuyển vị sẽ là các biểu thức chính qui và các chuyển vị phải được bảo
toàn.
2. Chuyển DFA sau đây thành biểu thức chính qui sử dụng kĩ thuật loại bỏ trạng thái.

0
1
*p
s
p
q
p
s
r
r
q
s
q
r
3. Chuyển các biểu thức chính qui sau đây sang -NFA, sau đó chuyển -NFA thành DFA.

a) 01*
b) (0 + 1)01
c) 00(0 + 1)*
4. Gọi A = (Q, Σ, δ, q
0
, {q
f
}) là một ε–NFA, sao cho không có chuyển vị đi vào q
0
và không có
chuyển vị đi ra khỏi q
f
. Hãy mô tả ngôn ngữ được chấp nhận bởi ε–NFA A sau khi đã thực
hiện một trong những thay đổi sau trên A:
a) Thêm chuyển vị rỗng ε từ q
f
đến q
0
.
b) Thêm chuyển vị rỗng ε từ q
0
đến mọi trạng thái có thể tới được (reachable) từ q
0
.
Lưu ý: trạng thái q có thể tới được từ q
0
khi tồn tại dãy chuyển vị từ q
0
đến q với nhãn
là ký hiệu thuộc Σ hoặc ε.

c) Thêm chuyển vị rỗng ε đến q
f
từ mọi trạng thái q, với q là trạng thái mà từ đó có thể
tới được q
f
theo dãy chuyển vị nào đó.
d) ε–NFA A được thay đổi bằng cách thức hiện cả b) và c).

Algebraic Laws for Regular Expressions
1. Chứng tỏ các đẳng thức sau là đúng nếu đẳng thức đó đúng, nếu không chứng tỏ đẳng thức
sai:
a) (R + S)* = R* + S*.
b) (RS + R)*R = R(SR + R)*.
c) (RS + R)*RS = (RR*S)*.
d) (R + S)*S = (R*S*)*.
e) S(RS + S)*R = RR*S(RR*S)*.
2. Đơn giản hóa biểu thức chính qui sau:
(0 + 1)*1(0 + 1) + (0 + 1)*1(0 + 1)(0 + 1)

Hết

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

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