Изменения

Перейти к: навигация, поиск
Построение грамматики по МТ
{{Задача
|definition = написать грамматику, генерирующую язык заданной МТ:<br>
* Четыре состояния <tex>\{A,B,Y,N\}</tex>, где <tex>Y</tex> — доупускающее, <tex>N</tex> — недоупускающее<br>;* <tex>A \rightarrow A</tex> по единице, головка сдвигается вправо;* <tex>A \rightarrow B</tex> по нулю, головка сдвигается вправо;* <tex>A \rightarrow Y</tex> по пустому символу, головка сдвигается вправо;* <tex>B \rightarrow B</tex> по нулю, головка сдвигается вправо;* <tex>B \rightarrow Y</tex> по пустому символу, головка сдвигается вправо;* <tex>B \rightarrow N</tex> по единице, головка сдвигается вправо.
}}
Грамматика будет следующей:
#<tex>A_1 \rightarrow q_A A_2</tex>;#<tex>A_2 \rightarrow [0,0]</tex>;#<tex>A_2 \rightarrow [1,1]</tex>;#<tex>A_2 \rightarrow A_3</tex>;#<tex>A_3 \rightarrow [e,B]A_3</tex>;#<tex>A_3 \rightarrow e</tex>;#<tex>q_A[0, 0] \rightarrow [0,0]q_A</tex>;#<tex>q_A[1, 0] \rightarrow [1,0]q_A</tex>;#<tex>q_A[e, 0] \rightarrow [e,0]q_A</tex>;#<tex>q_A[0, 1] \rightarrow [0,1]q_B</tex>;#<tex>q_A[1, 1] \rightarrow [1,1]q_B</tex>;#<tex>q_A[e, 1] \rightarrow [e,1]q_B</tex>;#<tex>q_A[0, 1] \rightarrow [0,0]q_B</tex>;#<tex>q_A[0, B] \rightarrow [0,B]q_Y</tex>;#<tex>q_A[1, B] \rightarrow [1,B]q_Y</tex>;#<tex>q_A[e, B] \rightarrow [e,B]q_Y</tex>;#<tex>q_Y[0, 0] \rightarrow q_Y0q_Y</tex>;#<tex>q_Y[1, 0] \rightarrow q_Y1q_Y</tex>;#<tex>q_Y[e, 0] \rightarrow q_Yq_Y</tex>;#<tex>q_Y[0, 1] \rightarrow q_Y0q_Y</tex>;#<tex>q_Y[1, 1] \rightarrow q_Y1q_Y</tex>;#<tex>q_Y[e, 1] \rightarrow q_Yq_Y</tex>;#<tex>q_Y[0, B] \rightarrow q_Y0q_Y</tex>;#<tex>q_Y[1, B] \rightarrow q_Y1q_Y</tex>;#<tex>q_Y[e, B] \rightarrow q_Yq_Y</tex>;#<tex>q_Y \rightarrow e</tex>.
271
правка

Навигация