7.1
(1)
(2)
7.2
8.1(1)
證明:對任意的k>=0,存在字符串z=a^kb^(k+1)c^(k+2);
綜上:該語言不是CFL
8.4
aabbaa不屬于L(G)
因為
-
D
S
-
-
A
a
9.2(1)
1.語言描述:
(1)讀入并記錄當前的符號(不是1:reject);
(2)將當前的符號改為X,;
(3)讀寫頭右移,越過1和之后所有的Y,停在第一個0處(若找不到0:reject);
(4)將0改為Y;
(5)讀寫頭左移,越過Y和1后,停在遇到的第一個x的右邊;
(6)跳(1)直到右移下一個是Y(0都被標記完了)
(7)若讀到1,將當前的符號改為X,右移越過所有的1,Y停在口左邊;否則跳(9)
(8)跳(7)直到1被標記完
(9)右移,越過所有的Y
所有的1、0多被標記則接受。
2.截圖:
9.2(5)
1.語言描述:
(1)讀入并記錄當前的符號;
(2)將當前的符號改為X;
(3)讀寫頭右移,越過a,b,停在遇到的第一個Y或口的左邊;
(4)將當前的符號(不一致:reject)改為Y;
(5)讀寫頭左移,越過a和b后,停在遇到的第一個x的右邊;
跳(1)直到右移的下一個是Y
如果所有的a和b都做過標記, 就accept
2.截圖:
9.3(3)
1.語言描述:
輸入:形如00000#0000,結果說明
(1)當紙帶上只剩下X和#則結果為0
(2)當紙帶上#左邊有0結果為正(正幾就看有幾個0)
(3)當紙帶上#右邊有0結果為負(負幾就看有幾個0)
、、、、、、
過程描述:
(1)讀入并記錄當前的符號;
(2)將當前的符號改為X;
(3)讀寫頭右移,越過0和過了#之后再越過所有的X,停在第一個0處;
(4)將0改為X;
(5)讀寫頭左移,過了#后,再越過所有的0,停在遇到的第一個x的右邊; X的右邊為#則接受。
2.截圖: