Главная » Просмотр файлов » Теория синтаксического анализа, перевода и компиляции - Том 2

Теория синтаксического анализа, перевода и компиляции - Том 2 (943929), страница 32

Файл №943929 Теория синтаксического анализа, перевода и компиляции - Том 2 (Теория синтаксического анализа, перевода и компиляции) 32 страницаТеория синтаксического анализа, перевода и компиляции - Том 2 (943929) страница 322013-09-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Пусть 6=(В, 2, р, 5) -клноническая грамматика. Рассмотрим тря возмои<пых конфликта отношений предшествоввпия и покажем, что нн оЛин из них не реализуется. Случай !' Предположим, что Х (1' и Х вЂ” )'. Поскольку Х ' У, долгкно быть правило А ХУ типа 2 или 4. Поэтому Х=-[бд') и либо У ЕЕ и д' — состояние чтения, либо У =[рр') и р' †состоян стирания. Пасколысу Х( 1', должно быть правило  — ХС типа 4, где С~+ Уа для некоторой кепочки а. Пусть, как и раньше, Х=-[дд']. Тогда д' должно быть состоянием записи, потому что В ХС вЂ” правило типа 4.

Более того, У должен иметь яид [рр'], где р' — состояние стирания, и, значит, А ХУ вЂ” правило типа 4. Из вида пранил типа 4 можно заключить, что р--второе состояние в пишущей последовательности для 92 Так как В ХС вЂ” правило типа 4, то С -[рр ) для некоторого р". Рассмотрим теперь вывод С~", Уа, который можно записать в виде [зз,]---ог[з,з!]а,=от., ~, [з„з„)а„ где [з,зД=[рр") и [в„зД=.[рр'). Ич вида правил заключаем, что для каждого ) либо з„,=з, (если [зЛД заменяется по правилу типа 2 или 4), лнбо з;„— состояние, которое в пишущей последовательности для д' следует за состоянием з, (если [з,зД заменяется ао правилу типа 3).

Только в последнем случае з,'„будет состояпнем стирания, и, значит (посколыгу з„'(= рг) есть состояние стирания), з„( — р) в пишущей последовательности для д' следует зэ з„ ,. Твк каи з„ , либо есть р, либо следует за р В этой последовательности, то р появляется в пи|пущей последовательности для д' дважды. Это означает существование никла, и мы заключаем, что в канонической грамматике конфликтов между отношениями ( и ' нет. ') Для аьга чтобы лакввьть, что кьнанвчаекая гваммвтввв является врастай ССП.грэннэтчвай,,шетатачва лачьвать.

что авэ — граннвтньа слабого предшествовав в (а ве О,))-ввавшествавачвя). Однако эта Лавалввтгльвае условие аредетавляет аяреяелегвый нвгерес, э Ланвэвтельсгвэ ве услажевег. )10 Случай 2. Х()' и Х) )'. Поскольку Х()', мы, как и в случае 1, выводим, что Х=-.[йц'], где д' — состояние записи. С друтой стороны, если Х ' 1', то есть правило Л В7., где В~" аХ и 2~' У(). Вид правил таков, что если В=>ь а[дую'], то ц' — состояние стирания. Но мы уже нашли, что д'- — состояние записи. Отсюда заключаем, что конфликтов между ( н Уь нет. Случай 3: Х='У и ХйьУ.

Поскольку Х -У, мы, кэк и в случае 1, выводим, что Х=[дд'], где ц' — состояние чтении или записи. Но из Хйгу, как в случае 2, заключаем, что д' — состояние стирания. Таким образом, наноническая грамматика является грамматикой предшествования. Г) Теорема 8.11. Калоничегкич граммояита явеягтгя простой граллютокой со слмшлнлой гтратегией лредшеотвовонил. Доказательства. В соответствии с теоремой 8.!О и леммами 8.8 и 8.9 достаточно поквзатьч что для каждой канонической грамматики 6=(М, 2, Р, 3) (1) если А аХУ)) и В Уй принадлежат Р, то Хк1(В), (2) если А а и В а принадлежат Р, А~В, то )(А)6 В!(В) = 8. Справедливость утверждения (1) сразу следует из того, что если Х (В или Х вЂ” 'В, то Х(У. Но если существует правило Л аХ1'11, то Х ' 1', и потому есть конфликт отношений предшествовапия, что противоречит лемме 8.9.

Рассмотрим теперь утверждение (2). А а и В а ке могут быть различными пряяиламн типа 2, так кэк если А — [дд'], В = [рр'), а = [гг ) а и грамматика 6 построена па ДМП.автомату М =-(Я, 2, Г, й, ом Я,, (йг)), то 8 (г', а, 2) = (я', 2) = 0 ', Е) Следовательно, д' — р'.

Но из вида правил типа 2 вытекает, что д=-. р=г, так что А =. В вопреки условию. Аналогичное рассуж. денис, которое предлагаем читателю в качестве упражнения, показывает, что Л и и В а не могут быть различными правилами типа 4. Разберем теперь случай а — а, т. е. случвй, когда А а н  †.а -- правили типа 1. Вообще, если Х ' У или Х ' У, то, как мы видеян (доказлтельство теоремы 8.9, случай 1), Х должен быть нетсрминалом.

Итак, допустим, что С принадлежит и 1(А), и 1(В). Тогда существуют правила Р, СР, и Ег СЕм где Рг--о'Ай и Е,"— о*ВТ. Случай Л =-Р, или В =-Е, не исключается. Положим С-=-[йй'], А =[рр ] и В=[гг'). Тогда р и г— состояния чтения, так как [рр') а и [гт') а — правила типа 1. Согласно предыдущему рассужденикт, каждое из состояний р и г должно появиться в пни|у~ней последовательности для д' н, гл. з. теогия детсиминигованного глзвогл следовательно, должно заканчивать эту последовательность, Значит, Р=г. Так как 8 (р, о, 2) =(Р', 7) = (г', 7) то Р'==г', А=В вопреки условию. Таким образом, Л и и  — - в не могут быть правилами типа 1. Наконец, предположим, что А а и В а--правила типа 3.

Как и раисе, пусть С принаалежит 1(А)б((В), С=(дй'), А.= = (рр') и В=(гг'). Тогда каждое из состояний р и г должно появиться в пишущей последовательности для й'. Если Р=-г, положим 8(р, е, 2) =(з, У). Е этом случае а -)зт') для неиоторого з' и 8(з, е, 1')=-(р, а) =(г', е). С.тедовательно, г'=-Р' и опять А = В попреки условию, ПУсть тогда Рэмг. Если о=(зз'1, то з стоит в пиш)щей последовательности для й' и после р, и после г, а, заачит, появляется там дважды. Отсюда выводим, что А а и В и не являются правилами типа 3, Таким образом, утверждение (2) верно, н 6 в простая ССП-грамматика.

Из теоремы 8.11 следует, что язык Яй порождается простой ССП-грамматикой, если Ь вЂ” детерминированный язык, а 4 †коцпевой маркер. На самом деле верно более сильное утверждение: если 4 убрать с конца каждой цепочки, порождаемой канонической грамматикой, то измененная таким образом грамматика останется простой ССП-грамматикой. Учитывая, что построение, убирающее концевые маркеры, будет проводшься неоднократно, мы представим сто здесь в виде алгоритма.

Алгоритм 8.4. Удаление правого концевого маркера из слов, порождаемых приведеннов грамматикойй. Вход. Приведенная грамматика 6= (К, Е б (г), Р, 5), где 422 и Я(6) =-!щ для некоторого Я си 2 . Выход. Грамматика 6, = (Р)„Е, Р„5), для которой Я (бг) — !.. Метод. (1) Убрать из Р все пранила вида Л (2) Заменить в Р все правила вида Л ае, где атве, аа А и. (3) Если правило А аВ принадлежит Р, псле, и В~ой, добавить к Р правило Л а, (4) Исключить из )й и нз полученного множества правил бесполезные нетермяналы и правила.

Обозначить поные множсстоа нетсрминалов н правил Н, и Р, соответственна. Д Теорема 8.12. Если б,— гразсиаглпки, пссглроеинил алгариш. лом 8.4, ао Я(6,) (,. з з. гглммхтики. позождлющив детееминияавхиныв языки До к аз а тельство. Поско ~ьку каждое слово щ языка Я(6) имеет вид х!г для хЕЕ, то для любого АЕК нз А=оси следует, что либо и Е Е, либо и =об где об Е".

Назовем нетермипалы первого типа лрамеждточиыли, а нетермипалы второго типа — зовсршающили. Простви индукция по длине выводов пока. зывает, что если А — промежуточный нетерминал, то Л ~2 и тогда и только тогда, когда А~„, и, пЕ2*. Аналогично, если А — завершающий нетерминал, то .4 =ого( тогда и только тогда, когда А ~2 о.

Доказательство оставляел~ в качестве упражнения. Итак, 5Ею( тогда и только тогда, когда 5~о,ю. Следовательно, Я (6,) =- Я. Теорема 8. 13. Яс т Я вЂ” детермииирозоииый лзыь и е Т Я, шо Я порождоешсл лросшой ССП-грамлапшкси, Доказательство. Пусть ЯснЕ и и'ТЕ. Тогда, согласно следствию 2 теоремы 8.10, ЯС порождается канонической грамматикой б = (1М, Е, Р, 5), которая по теореме 8.11 является простой ССП.грамматикой. Пусть 6,.=-(5„ Е, Р„, 5)- .грамма. тика, построенная алгоритмом 8.4 нэ грахгматйки б.

Тогда 1 (6 ) = С. Мы докажем, что 6,— также простая ССП грамма|ика. Легко показать, что 6, не имеет е-правил и бесполезных сим. волов. Если бы грамматика б, содержала цикл, в ней было бы правило Л В, входящее в Р„ оо не в Р. Допустим, что правило А ВХ принадлежит Р для некоторого Х, для ко1орого Х ~с, щ Предволажим далее, что Л =зо, В~г А.

Тогда А =ьойшу дтя некоторой цепочки ш нз (2 6 (4))*; следовательно, 6 порождает цепочки, содержащие более одного символа й Поскольку это, как мы знаем, неверно, закяючаем, что 6,— ориведенная грамматика. Теперь надо показать, что 6, — грамматвка предшсствования.

Так как 4 встречается только йа правом конце цепочек, порождаемых в 6 символом 5, легко показатэи что в б не выполгппотся только те сост!гошен!гя, выполняющиеся в б„ которые содержат справа символ 8 (концевой маркер, встречавшийся при описании метода предшсствования). Но Х в 8 †единственн соотношение, имеющее справа К которое может выполняться, поэтому 6, должна быть грамматикой предшествования. Далее, покажем, что в б, пет новых конфликтов А аХУб и  — У(1, где ХЕ((В). Как и в теореме 8.11, свойства простого прсдшссгвовавия искзю!ают эту возможность. Наконец, мы должны доказать, что в Р, нет пары правил А — и и В и, где Л~В, Рассиотрим отдельно три случая.

Случай 1: Допустим, что а=С и правила А СХ и В С)', где Х =во р и у=вой, принадлежат Р. Пусть С=(йд'1, Если 4 — состояние чтения, то Х=.у — р. Как мы видели при доказательстве теоремы 8,11, левая часть правила типа 2 однозначно 173 гл. в, теоеия дктееминиэовлнного газзаев в > ггвммвтики.

погождвющие детсгминнговлпныа языки определяется его правой частью, поэтому вопреки условию А = В. Если д' †состоян записи, обозначим через р единственное состояние чтения в пишущей последовательности для 4' и положим 6(р,э, 2) = (р', 2), где 6 †функц переходов ДМП-автомата, по которому была построена грамматика 6. После того как ДМП-автомат попадает в состояние р', ои пе может выполнять никаких операций, кроме стирания содержимого магазина, потому что если он будет читать входную цепочку влн писать в магазин, то либо он допустит цепочку, содержащую в серсдине символ С, либо Х и Г окажутся бесполезными снмволамв. Существует единственное состояние р", в котором ДМ11-автомат находится после стирания сю>полов, записанпьж в магазин при прохонгденив пишущей последовательности для 4'.

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

Тип файла
DJVU-файл
Размер
3,44 Mb
Тип материала
Высшее учебное заведение

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

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