Главная » Просмотр файлов » Хопкрофт, Джон, Э., Мотвани, Раджив, Ульман, Джеффри, Д. - Введение в теорию автоматов, языков и вычислений

Хопкрофт, Джон, Э., Мотвани, Раджив, Ульман, Джеффри, Д. - Введение в теорию автоматов, языков и вычислений (1082271), страница 64

Файл №1082271 Хопкрофт, Джон, Э., Мотвани, Раджив, Ульман, Джеффри, Д. - Введение в теорию автоматов, языков и вычислений (Хопкрофт, Джон, Э., Мотвани, Раджив, Ульман, Джеффри, Д. - Введение в теорию автоматов, языков и вычислений) 64 страницаХопкрофт, Джон, Э., Мотвани, Раджив, Ульман, Джеффри, Д. - Введение в теорию автоматов, языков и вычислений (1082271) страница 642018-01-11СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 64)

Окончательная НФХ-грамматика показана на рис. 7.3. 7.1. НОРМАЛЬНЫЕ ФОРМЫ КОНТЕКСТНО-СВОБОДНЫХ ГРАММАТИК 281 Š— ь ВС, ! ТСз ! ЬСз ! а ! Ь! 1А ! 1В ) 12 ! Ю Т вЂ” ь 7Сз ! ЬСз ! а ! Ь | 1А ! 1В ! 12 ) Ю Р -+ ЬС, ! а ! Ь |!А ) 1В ! 1е ( Ю 1 — э а ) Ь | 1А (!В ! 12 ! 1О А — ьа  — +Ь Е вЂ” >О О-+1 Р— >ь М вЂ” >* Ь вЂ” э( В-э) Сз — > РТ Сз -+ МР Сз — + ЕВ Рис.

7 3. Преобразование тел к одинонньив терминалом или двум неременным Теорема 7.!6. Если Π— КС-грамматика, язык которой содержит хотя бы одну не- пустую цепочку, то существует НФХ-грамматика Он причем ЦОз) = 1(О) — ( в). Доказательс~во. По теореме 7.14 можно найти КС-грамматику Оь для которой ЦОз) = Ь(О) — ( г), причем Оз свободна от бесполезных символов, цепных и в-продукций.

Конструкция, преобразующая Оз в НФХ-грамматику Оз, изменяет продукции таким образом, что каждая продукция из Оз может быть пронмитирована одной или несколькими продукциями из Он Наоборот, каждая из введенных в Оз переменных соответствует лишь одной продукции, поэтому эти переменные можно использовать только надлежащим образом. Более строго, докажем, что ге н 1(Оз) тогда и только тогда, когда и н ЦОз). (Необходимость) Если н порождается в Оп то легко заменить каждую использованную продукцию, скажем, А -+ХХз,..Хь последовательностью продукций из Ор Таким образом, один шаг порождения в Оз превращается в один или несколько шагов в порождении и, использующем продукции Оз.

Во-первых, если Х, — терминал, то Оз имеет соответствующую переменную В, и продукцию В, -+ Хь Во-вторых, если /с > 2, то Оз имеет продукции А — э В,Сь С, -+ ВзС. и так далее, где В, есть либо переменная, введенная для терминала Хь либо сам Хь если это переменная. Эти продукции имитируют в Оз один шаг порождения в Оз, использующий продукцию А э Х,Х,...Хл.

Делаем вывод, что в Оз существует порождение и, поэтому зе н ЦОз). (Достазпочность) Предположим, что ге ц 1(Оз). Тогда в Оз существует дерево разбора с отметкой корня 5 и кроной н. Преобразуем это дерево в дерево разбора в Ол также имеющее отметку корня 5 и крону н. ГЛАВА 7. СВОЙСТВА КОНТЕКСТНО-СВОБОДНЫХ ЯЗЫКОВ 282 Сначала "сделаем откат" части б построения НФХ. Предположим, существует узел с отиеткойА и сыновьями, отмеченными В~ и Сн где Сз — одна из переменных, введенных в части б.

Тогда данная часть дерева разбора должна выглядеть, как на рис. 7.4, а. Поскольку каждая из зтнх введенных переменных соответствует лишь одной продукции, существует только один способ для их возникновения, и все эти переменные, предназначенные для обработки продукции А -ь В,В,...Вь должны появляться вместе (см. рис. 7.4, а).

Каждый такой куст узлов в дереве разбора можно заменить продукцией, которую они представляют. Преобразование дерева разбора показано на рис. 7.4, б. Полученное дерево все еще не обязательно является деревом разбора в Сз. Причина в зви, что на шаге а построения НФХ были введены другие переменные, порождающие а) б) Рис. 7.4 Дерево разбора должно использовать введенные переменные спелиальным образом 7.1. НОРМАЛЬНЫЕ ФОРМЫ КОНТЕКСТНО-СВОБОДНЫХ ГРАММАТИК 283 одиночные терминалы. Однако их можно обнаружить в полученном дереве разбора и заменить узел, отмеченный такой переменной А, и его единственного сына, отмеченного а, одиночным узлом с отметкой а. Теперь каждый внутренний узел дерева разбора образует продукцию бл и мы приходим к выводу, что и е ЦС~).

П Нормальная форма Грейбах Существует еще одна интересная нормальная форма для грамматик, которая не будет обоснована. Любой непустой язык, не включающий я, есть ЦС) для некоторой грамматики С с продукциями вида А — > асг, где и — терминал, а а — цепочка из нуля или нескольких переменных. Преобразование грамматики к этой форме является сложным, даже если задачу упростить, скажем, начав с НФХ-грамматики. Иначе говоря, первая переменная каждой продукции расширяется до тех пор, пока не будет получен терминач, Однако на этом пути возможны циклы, в которых терминач не достигается, и этот процесс необходимо "замкнуть".

Для того чтобы породить все последователь- ности переменных, которые могут появиться на пути к порождению этого терминала, создается продукция с терминалом в качестве первого символа тела и переменными вслед за ним. Эта форма, называемая нормальной формой Грейбах, по имени Шейлы Грейбах (эйе11а Огейбасй), которая первой дала способ построения таких грамматик, имеет несколько интересных следствий. Поскольку каждое использование продукции вводит ровно один терминаз в выводимую цепочку, цепочка длины л порождается в точности за л шагов. Кроме того, если применить конструкцию из теоремы б.!3 для построения МП-автомата по грамматике в нормальной форме Грейбах, то получается МП-автомат без г-переходов, показывающий, что такие переходы в МП-автомате всегда можно удалить.

7.1.6. Упражнения к разделу 7.1 7.1.1. (я) Найдите грамматику, не содержащую бесполезных символов и эквивалентную следующей грамматике.  — э ВСТ АВ С-э аВ~Ь 7.1.2. Рассмотрите следующую грамматику: 5 — гАВВ~г А — > аАВ, 'а  — ~ ВЬВ ~ А ~ ЬЬ а) удалите я-продукции; ГЛАВА 7. СВОЙСТВА КОНТККСТНО-СВОБОДНЫХ ЯЗЫКОВ 7.1.3. 7,1А. 7.1.5. 7.1.6. 7.1.7. 7.1йй 7.15ь б) удалите цепные продукции; в) есть ли здесь бесполезные символы? Если да, удалите их; г) приведите грамматику к нормальной форме Хомского. Выполните упражнение 7.1.2 со следующей грамматикой. 5-+ ОАО ! !В! ! ВВ А -э С В-э5!А С->5! е Выполните упражнение 7.1.2 со следующей грамматикой.

5-эААА ! В А — э аА !   — >е Выполните упражнение 7.1.2 со следующей грамматикой. 5-~аАа!ЬВЬ|в А-эС)а  — >С)Ь С вЂ” > СГзЕ! е 0 — э А ! В ! аЬ Постройте НФХ-грамматику для множества цепочек сбалансированных скобок. Можно начать с грамматики, находящейся в НФХ. (!!) Пусть С вЂ” КС-грамматика с р продукциями и длины тел продукций не пре- восходят л. Докажите, что если А =» ц то найдется порождение л из А, в котоо ром не более, чем (и' — 1)/(л — 1) шагов. Как близко можно на самом деле подой- ти к этой границе? (!) Предположим, что нам дана грамматика 0 с л продукциями, ни одна из которых не является е-продукцией, и мы преобразуем ее в НФХ: а) докажите, что НФХ-грамматика имеет не более, чем О(п ) продукций; б) докажите, что у НФХ-грамматики число продукций может быть прямо про- 3 порциональным и.

Указание. Рассмотрите конструкцию удаления цепных продукций. Дайте индуктивные доказательства, необходимые для завершения следукпцих теорем: а) часть теоремы 7.4, в которой доказывалось, что обнаруживаемые символы действительно являются порождающими; 7,1. НОРМАЛЬНЫЕ ФОРМЫ КОНТЕКСТНО-СВОБОДНЫХ ГРАММАТИК 285 б) теорема 7.6 в обе стороны, где доказывалась корректность алгоритма из раз- дела 7.1.2 для обнаружения достижимых символов; в) часть теоремы 7.! 1, где доказывалось, что все обнаруженные пары действительно являются цепными парами, 7.1.10.

(а!) Можно ли для каждого КС-языка найти грамматику, все продукции которой имеют вид или А — з ВСР (тело состоит из трех переменных), или А — з а (тело образовано одиночным терминалом)? Приведите либо доказательство, либо контрпример. 7.1.11. В этом упражнении показывается, что для каждого КС-языка Е, содержашего хотя бы одну непустую цепочку, найдется КС-грамматика в нормальной форме Грейбах, порождаюшая  — (к). Напомним, что тела продукций грамматики в нормальной форме Грейбах (НФГ) начинаются терминалом. В построении используется ряд лемм и конструкций.

!. Пусть КС-грамматика 6 имеет продукцию А — ~ ггВД и всеми продукциями для В являются  — з у~ ! у ! ... ( у„. Заменив А э ггВ)3 всеми продукциями, у которых вместо В подставлены тела всех В-продукций, получим А э ау Д ! ау!3 ! ... ! ауя3. Построенная грамматика порождает тот же язык, что и гэ. Далее будем предполагать, что грамматика 6 для В находится в нормальной форме Хомского, а ее переменные обозначены Ан Ал ..., Аь 2. (*!) Докажите, что путем повторных применений преобразования из части 1 грамматику П можно превратить в эквивалентную грамматику, у которой тело каждой продукции для А, начинается или терминалом, или А, для некоторогоу > ь В обоих случаях все символы после первого в теле продукции— переменные.

3. (!) Пусть б~ — грамматика, полученная из б путем выполнения шага 2. Пусть А, — произвольная переменная и А, — э А,а, ! ... ~ А,а — все Ар продукции, тело которых начинается с А,. Пусть А, -з В, ! ... ! Д, — все остальные Арпродукции. Заметим, что каждое Д начинается либо терминалом, либо переменной с индексом больше б Введем новую переменную В, и заменим первую группу из гл продукций следуюшими; А, — з )3, ( ... , ')3р В, — з а В,! а, ! ., ! гг В,! а Докажите, что подученная грамматика порождает тот же язык, что и О или 6л 4.

(в!) Пусть после шага 3 получена грамматика С'> Отметим, что тела всех А; продукций начинаются или терминалом, или А, с 3'> ~'. Кроме того, тела Вг продукций начинаются или терминалом, или некоторым Ар Докажите, что Пз имеет эквивалентную грамматику в НФГ. Указание. Сначала преобразуй- 288 ГЛАВА 7. СВОЙСТВА КОНТЕКСТНО-СВОБОДНЫХ ЯЗЫКОВ те должным образом продукции для Ам затем для А», и так далее до Аь используя часть 1. Затем снова с помощью части 1 преобразуйте продукции для В, в любом порядке.

7.1Д2. Используйте построения из упражнения 7.1.11 для преобразования в НФГ слелующей грамматики. л-+АА )0 А -+Ю) 1 7.2. Лемма о накачке для контекстно-свободных языков В этом разделе развивается инструмент доказательства, что некоторые языки не являются контекстно-свободными. Теорема, называемая "леммой о накачке для контекство-свободных языков"', гласит, что в любой достаточно длинной цепочке КС-языка можно найти две близлежащие короткие подцепочки (одна из них может быть пустой) и совместно их "накачивать".

Таким образом, обе подцепочки можно повторить! Раз для любого целого б и полученная цепочка также будет принадлежать языку. Эта теорема отличается от аналогичной для регулярных языков (теорема 4.1), гласящей, что всегда можно найти одну короткую цепочку для ее накачки. Разница видна, есяв рассмотреть язык типа А = (О" 1" ~ н> 1). Можно показать, что он нерегулярен, если мфнкснровать л н накачать подцепочку из нулей, получив цепочку, в которой символов 0 больше, чем 1. Однако лемма о накачке для КС-языков утверждает, что можно найти две короткие цепочки, поэтому нам пришлось бы использовать для накачки цепочку из пулей и цепочку из единиц, порождая таким образом только цепочки из Ь.

Этот резуль»вт вас устраивает, так как». — КС-язык, а для построения цепочек, не принадлежащих юыку Ь, лемма о накачке для КС-языков использоваться и не должна. ?.2Д. Размер деревьев разбора Первый щаг на пути к лемме о накачке для КС-языков состоит в том, чтобы рассмотреть внд и размер деревьев разбора. Одно из применений НФХ вЂ” преобразовывать деревья разбора в бинарные (двоичные). Такие деревья имеют ряд удобных свойств, и одно вз ввх используется здесь. Теорема 7.17.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6458
Авторов
на СтудИзбе
305
Средний доход
с одного платного файла
Обучение Подробнее