русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Зауваження


Дата додавання: 2013-12-24; переглядів: 1362.


Алгоритм приведення граматики

Визначення

Метод

Алгоритм видалення марних символів

Визначення

Метод

Алгоритм видалення недосяжного символу

Визначення

Символ називається недосяжним в граматиці G=(VT, VN, P, S), якщо він не з‘являється в жодній сентенціальній формі цієї граматики.

Вхід: КС – граматика G=(VT, VN, P, S)

Вихід: КС – граматика , що не містить недосяжних символів, для якої .

1. V0={S}; i=1.

2. в та .

3. Якщо , то , і переходимо до кроку 2, інакше складається з правил множини Р, що містять тільки символи з Vi; .

Символ називається марним в граматиці G=(VT, VN, P, S), якщо множина є порожньою.

Вхід: КС – граматика G=(VT, VN, P, S)

Вихід: КС – граматика , що не містить марних символів, для якої .

 

Рекурсивно будуємо множини N0, N1

1. , i=1.

2. та .

3. Якщо , то і=і+1, і переходимо до кроку 2, інакше складається з правил множини Р, що містять лише символи з .

КС-граматика G називається приведеною, якщо в ній немає недосяжних та марних символів.

1. Знаходяться та видаляються усі марні нетермінали.

2. Знаходяться та видаляються всі недосяжні символи.

Видалення символів супроводжується видаленням правил висновку, що містять ці символи.

Якщо у цьому алгоритмі переставити кроки 1 та 2, то не завжди результатом буде приведена граматика.

Для опису синтаксису мов програмування намагаються використовувати однозначні, приведені КВ-граматики.

 


<== попередня лекція | наступна лекція ==>
Перетворення граматик | Проектування бази даних


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн