b)  Строим вспомогательные множества : , , , .

c)  Фиксируем в множестве продукцию вида , например, зафиксируем продукцию .

d)  Добавляем в множество всевозможные продукции вида , т. е. .

e)  Если все продукции из просмотрены, то завершаем процедуру, иначе повторяем шаги c и d:

-  фиксируем ;

;

-  фиксируем ;

;

-  фиксируем ;

.

f)  Так как все продукции из просмотрены, то завершаем процедуру.

3.  Строим грамматику следующим образом: и содержат те терминальные и нетерминальные знаки, которые присутствуют в продукциях . Далее , а

Задача 15

КС-грамматика задана множеством продукций

Получить эквивалентную ей КС-грамматику , не содержащую бесполезных нетерминальных знаков.

Решение

1.  Грамматика является КС-грамматикой, так как все её продукции имеют вид .

2.  Строим множество достижимых знаков .

a)  Задаём начальное приближение множества достижимых знаков , куда включаем аксиому достижимую по определению грамматики и те нетерминальные знаки, которые содержаться в правых частях продукций .

b)  Строим следующее приближение множества достижимых знаков , где - множество всех нетерминальных знаков из правых частей продукций вида . Тогда получаем .

c)  Повторяем шаг b до тех пор, пока приближение множества достижимых знаков на текущей итерации не сравнится с приближением множества достижимых знаков на предыдущей итерации, либо пока приближение множества достижимых знаков на текущей итерации не будет содержать все нетерминальные знаки, т. е. все знаки множества .

d)  Так как , то .

3.  Строим множество производящих знаков .

a)  Задаём начальное приближение множества производящих знаков , куда включаем те нетерминальные знаки, которые непосредственно порождают терминальные строки.

b)  Строим следующее приближение множества производящих знаков , где - множество тех нетерминальных знаков, которые непосредственно порождают строки состоящие из терминальных знаков и знаков множества . Тогда получаем .

c)  Повторяем шаг b до тех пор, пока приближение множества производящих знаков на текущей итерации не сравнится с приближением множества производящих знаков на предыдущей итерации, либо пока приближение множества производящих знаков на текущей итерации не будет содержать все нетерминальные знаки, т. е. все знаки множества :

;

.

d)  Так как , то .

4.  Строим приведённую грамматику .

a)  Определим множество существенных знаков .

b)  В включаем те продукции из , которые не содержат бесполезных знаков . Тогда

c)  В множество включаем те терминальные знаки из , которые встречаются в продукциях . Тогда .

Задача 16

КС-грамматика задана множеством продукций

Получить эквивалентную ей КС-грамматику без -продукций.

Задача 17

КС-грамматика задана множеством продукций

Получить эквивалентную ей КС-грамматику без цепных продукций.

Занятие 1.5. Разрешимость языков

Задача 18

Грамматика задана множеством продукций

Определить принадлежит ли строка языку .

Решение

1.  Грамматика является КС-грамматикой, так как все её продукции имеют вид . Строка является строкой в терминальном алфавите, так как .

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10