2.  Зададим вектор, где , ,,. Строим систему уравнений относительно множеств вектора следующим образом: если в множестве есть продукции , то запишем уравнение . Тогда получим систему:

3.  Решаем систему уравнений .

a)  Задаём начальное приближение .

b)  Задаём следующее приближение . Тогда получим систему

c)  Удаляем из множеств те строки, которые не могут быть подстрокой искомой строки.

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

;

;

;

;

;

;

;

.

e)  Так как искомая строка появилась в множестве , то завершаем процедуру и делаем вывод, что строка принадлежит языку .

Задача 19

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

Определить является ли язык пустым.

Решение

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

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

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

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

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

НЕ нашли? Не то? Что вы ищете?

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

3.  Так как , то .

Задача 20

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

a)  ;

b)  .

Определить является ли язык бесконечным.

Решение для пункта а

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

2.  Найдём множество существенных нетерминальных знаков.

A.  Найдём множество достижимых знаков. Так как в первой продукции множества содержатся все нетерминальные знаки множества , то есть множество достижимых знаков.

B.  Найдём множество производящих знаков .

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

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

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

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

C.  Таким образом, получили, что все нетерминальные знаки грамматики существенны.

3.  Строим такой вывод в грамматике из существенного нетерминального знака , что и , где и состоят из существенных и терминальных знаков: .

4.  Так как и существенные знаки, то фрагмент может породить счётное множество строк, т. е. язык бесконечен.

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