Главная » Просмотр файлов » dzhon_khopkroft_radzhiv_motvani_dzheffri _ulman_vvedenie_v_teoriyu_avtomatov_yazy kov_i_vychisleniy_2008

dzhon_khopkroft_radzhiv_motvani_dzheffri _ulman_vvedenie_v_teoriyu_avtomatov_yazy kov_i_vychisleniy_2008 (852747), страница 58

Файл №852747 dzhon_khopkroft_radzhiv_motvani_dzheffri _ulman_vvedenie_v_teoriyu_avtomatov_yazy kov_i_vychisleniy_2008 (Введение в теорию автоматов) 58 страницаdzhon_khopkroft_radzhiv_motvani_dzheffri _ulman_vvedenie_v_teoriyu_avtomatov_yazy kov_i_vychisleniy_2008 (852747) страница 582021-10-05СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

6.10 показано, как последовательность символов Y1, Y2, …, Yk удаляется измагазина. До удаления Y1 прочитывается вход x1. Подчеркнем, что это “удаление” является окончательным результатом, возможно, многих переходов. Например, первый переход может изменить Y1 на некоторый другой символ Z, следующий — изменить Z на UV,дальнейшие переходы — вытолкнуть U, а затем V. Окончательный результат заключается в том, что Y1 изменен на ничто, т.е. вытолкнут, и все прочитанные к этому моментувходные символы образуют x1.На рис.

6.10 показано также окончательное изменение состояния. Предполагается,что МП-автомат начинает работу в состоянии p0 с Y1 на вершине магазина. После всехпереходов, результат которых состоит в удалении Y1, МП-автомат находится в состоянииp1. Затем он достигает окончательного удаления Y2, прочитывая при этом x2 и приходя,возможно, за много переходов, в состояние p2.

Вычисление продолжается до тех пор, пока каждый из магазинных символов не будет удален.6.3. ÝÊÂÈÂÀËÅÍÒÍÎÑÒÜ ÌÏ-ÀÂÒÎÌÀÒÎÂ È ÊÑ-ÃÐÀÌÌÀÒÈÊСтр. 255255Наша конструкция эквивалентной грамматики использует переменные, каждая из которых представляет “событие”, состоящее в следующем.1.Окончательное удаление некоторого символа X из магазина.2.Изменение состояния от некоторого p (вначале) до q, когда X окончательно заменяется ε в магазине.Такую переменную обозначим составным символом [pXq]. Заметим, что эта последовательность букв является описанием одной переменной, а не пятью символами грамматики. Формальное построение дается следующей теоремой.Теорема 6.14.

Пусть P = (Q, Σ, Γ, δ, q0, Z0) — МП-автомат. Тогда существует КСграмматика G, для которой L(G) = N(P).Доказательство. Построим G = (V, Σ, R, S), где V состоит из следующих переменных.1.Специальный стартовый символ S.2.Все символы вида [pXq], где p и q — состояния из Q, а X — магазинный символ из Γ.Грамматика G имеет следующие продукции:а) продукции S → [q0Z0p] для всех состояний p. Интуитивно символ вида[q0Z0p] предназначен для порождения всех тех цепочек w, которые приводятP к выталкиванию Z0 из магазина в процессе перехода из состояния q0 в со*стояние p. Таким образом, (q, w, Z0) |− (q, ε, ε). Эти продукции гласят, чтостартовый символ S порождает все цепочки w, приводящие P к опустошениюмагазина после старта в начальной конфигурации;б) пусть δ(q, a, X) содержит пару (r, Y1Y2…Yk), где a есть либо символ из Σ, либоε, а k — некоторое неотрицательное число; при k = 0 пара имеет вид (r, ε).Тогда для всех списков состояний r1, r2, …, rk в грамматике G есть продукция[qXrk] → a[rY1r1][r1Y2r2]…[rk–1Ykrk].Она гласит, что один из путей выталкивания X и перехода из состояния q всостояние rk заключается в том, чтобы прочитать a (оно может быть равно ε),затем использовать некоторый вход для выталкивания Y1 из магазина с переходом из состояния r в состояние r1, далее прочитать некоторый вход, вытолкнуть Y2 и перейти из r1 в r2, и т.д.Докажем корректность неформальной интерпретации переменных вида [qXp]:**• [qXp] ⇒ w тогда и только тогда, когда (q, w, X) |− (p, ε, ε).**(Достаточность) Пусть (q, w, X) |− (p, ε, ε).

Докажем, что [qXp] ⇒ w, используя инPдукцию по числу переходов МП-автомата.256Стр. 256ÃËÀÂÀ 6. ÀÂÒÎÌÀÒÛ Ñ ÌÀÃÀÇÈÍÍÎÉ ÏÀÌßÒÜÞБазис. Один шаг. Пара (p, ε) должна быть в δ(q, w, X), и w есть либо одиночныйсимвол, либо ε. Из построения G следует, что [qXp] → w является продукцией, поэтому [qXp] ⇒ w.*Индукция. Предположим, что последовательность (q, w, X) |− (p, ε, ε) состоит из nпереходов, и n > 1. Первый переход должен иметь вид*(q, w, X) |− (r0, X, Y1Y2…Yk) |− (p, ε, ε),где w = aX для некоторого a, которое является либо символом из Σ, либо ε.

Отсюда следует, что пара (r0, Y1Y2…Yk) должна быть в δ(q, a, X). Кроме того, по построению G существует продукция [qXrk] → a[r0Y1r1][r1Y2r2]…[rk–1Ykrk], у которой rk = p и r1, r2, …, rk–1 — некоторые состояния из Q.На рис. 6.10 показано, что символы Y1, Y2, …, Yk удаляются из магазина по очереди, идля i = 1, 2, …, k – 1 можно выбрать состояние pi, в котором находится МП-автомат приудалении Yi.

Пусть X = w1w2…wk, где wi — входная цепочка, которая прочитывается до*удаления Yi из магазина. Тогда (ri–1, wi, Yi) |− (ri, ε, ε).Поскольку ни одна из указанных последовательностей переходов не содержит более,чем n переходов, к ним можно применить предположение индукции. Приходим к выво*ду, что [ri–1Yiri] ⇒ wi. Соберем эти порождения вместе.*[qXrk] ⇒ a[r0Y1r1][r1Y2r2]…[rk–1Ykrk] ⇒*aw1[r1Y2r2]…[rk–1Ykrk] ⇒*aw1w2[r2Y3r3]…[rk–1Ykrk] ⇒…aw1w2…wk = wЗдесь rk = p.(Необходимость) Доказательство проводится индукцией по числу шагов в порождении.Базис. Один шаг.

Тогда [qXp] → w должно быть продукцией. Единственная возможность для существования этой продукции — если в P есть переход, в котором X выталкивается, а состояние q меняется на p. Таким образом, пара (p, ε) должна быть вδ(q, a, X), и a = w. Но тогда (q, w, X) |− (p, ε, ε).*Индукция. Предположим, что [qXp] ⇒ w за n шагов, где n > 1. Рассмотрим подробно первую выводимую цепочку, которая должна выглядеть следующим образом.*[qXrk] ⇒ a[r0Y1r1][r1Y2r2]…[rk–1Ykrk] ⇒ wЗдесь rk = p.

Эта продукция должна быть в грамматике, так как (r0, Y1Y2…Yk) есть вδ(q, a, X).6.3. ÝÊÂÈÂÀËÅÍÒÍÎÑÒÜ ÌÏ-ÀÂÒÎÌÀÒÎÂ È ÊÑ-ÃÐÀÌÌÀÒÈÊСтр. 257257*Цепочку w можно разбить на w = aw1w2…wk так, что [ri–1Yiri] ⇒ wi для всех i = 1, 2, …,k – 1. По предположению индукции для всех этих i верно следующее утверждение.*(ri–1, wi, Yi) |− (ri, ε, ε)Используя теорему 6.5 для того, чтобы поместить нужные цепочки вокруг wi на входе ипод Yi в магазине, получим*(ri–1, wiwi+1…wk, YiYi+1…Yk) |− (ri, wi+1…wk, Yi+1…Yk).Соберем все эти последовательности вместе и получим следующее порождение.(q, aw1w2…wk, X)|−*(r0, w1w2…wk, Y1Y2…Yk) |−***(r1, w2w3…wk, Y2Y3…Yk) |− (r2, w3…wk, Y3…Yk) |− … |− (rk, ε, ε)*Поскольку rk = p, мы доказали, что (q, w, X) |− (p, ε, ε).**Завершим доказательство.

S ⇒ w тогда и только тогда, когда [q0Zp0] ⇒ w для некоторого p в соответствии с построенными правилами для стартового символа S. Выше уже**доказано, что [q0Zp0] ⇒ w тогда и только тогда, когда (q, w, Z0) |− (p, ε, ε), т.е. когда Pдопускает w по пустому магазину. Таким образом, L(G) = N(P).

†Пример 6.15. Преобразуем в грамматику МП-автомат PN = ({q}, {i, e}, {Z}, δN, q, Z)из примера 6.10. Напомним, что PN допускает все цепочки, которые нарушают правило,что каждое e (else) должно соответствовать некоторому предшествующему i (if). Так какPN имеет только одно состояние и один магазинный символ, грамматика строится просто. В ней есть лишь следующие две переменные:а) S — стартовый символ, который есть в каждой грамматике, построенной методом теоремы 6.14;б) [qZq] — единственная тройка, которую можно собрать из состояний и магазинных символов автомата PN.Грамматика G имеет следующие продукции.1.Единственной продукцией для S является S → [qZq].

Но если бы у МП-автомата было n состояний, то было бы и n продукций такого вида, поскольку последним можетбыть любое из n состояний. Первое состояние должно быть начальным, а магазинный символ — стартовым, как в нашей продукции выше.2.Из того факта, что δN(q, i, Z) содержит (q, ZZ), получаем продукцию[qZq] → i[qZq][qZq]. В этом простом примере есть только одна такая продукция.

Ноесли бы у автомата было n состояний, то одно такое правило порождало бы n2 продукций, поскольку как промежуточным состоянием в теле, так и последним состоянием в голове и теле могли быть любые два состояния. Таким образом, если бы r и p258Стр. 258ÃËÀÂÀ 6. ÀÂÒÎÌÀÒÛ Ñ ÌÀÃÀÇÈÍÍÎÉ ÏÀÌßÒÜÞбыли двумя произвольными[qZp] → i[qZr][rZp].3.состояниями,тосоздаваласьбыпродукцияИз того, что δN(q, e, Z) содержит (q, ε), получаем продукцию [qZq] → e. Заметим, что вэтом случае список магазинных символов, которыми заменяется Z, пуст, поэтому единственным символом в теле является входной символ, приводящий к этому переходу.Можно для удобства заменить тройку [qZq] каким-либо простым символом,например A.

В таком случае грамматика состоит из следующих продукций.S→AA → iAA | eВ действительности можно заметить, что S и A порождают одни и те же цепочки, поэтому их можно обозначить одинаково и записать грамматику в окончательном виде.G = ({S}, {i, e}, {S → iSS | e}, S)†6.3.3. Óïðàæíåíèÿ ê ðàçäåëó 6.36.3.1.(∗) Преобразуйте грамматикуS → 0S1 | AA → 1A0 | S | εв МП-автомат, допускающий тот же язык по пустому магазину.6.3.2.Преобразуйте грамматикуS → aAAA → aS | bS | aв МП-автомат, допускающий тот же язык по пустому магазину.6.3.3.(∗) Преобразуйте МП-автомат P = ({p, q}, {0, 1}, {X, Z0}, δ, q, Z0) в КС-грамматику, где δ задана следующим образом.1.δ(q, 1, Z0) = {(q, XZ0)}.2.δ(q, 1, X) = {(q, XX)}.3.δ(q, 0, X) = {(p, X)}.4.δ(q, ε, X) = {(q, ε)}.5.δ(p, 1, X) = {(p, ε)}.6.δ(p, 0, Z0) = {(q, Z0)}.6.3.4.Преобразуйте МП-автомат из упражнения 6.1.1 в КС-грамматику.6.3.5.Ниже приведены КС-языки. Постройте для каждого из них МП-автомат, допускающий этот язык по пустому магазину.

При желании можно сначала построитьКС-грамматику для этого языка, а затем преобразовать ее в МП-автомат.6.3. ÝÊÂÈÂÀËÅÍÒÍÎÑÒÜ ÌÏ-ÀÂÒÎÌÀÒÎÂ È ÊÑ-ÃÐÀÌÌÀÒÈÊСтр. 259259а) {anbmc2(n+m) | n ≥ 0, m ≥ 0};б) {aibjck | i = 2j или j = 2k};в) {0n1m | n ≤ m ≤ 2n}.6.3.6.(∗!) Докажите, что если P — МП-автомат, то существует МП-автомат P1 с одним состоянием, для которого N(P1) = N(P).6.3.7.(!) Пусть у нас есть МП-автомат с s состояниями, t магазинными символами, вправилах которого длина цепочки, замещающей символ в магазине, не превышает u. Дайте как можно более точную верхнюю оценку числа переменныхКС-грамматики, которая строится по этому МП-автомату с помощью методаиз раздела 6.3.2.6.4. Äåòåðìèíèðîâàííûå àâòîìàòû ñ ìàãàçèííîéïàìÿòüþХотя МП-автоматы по определению недетерминированы, их детерминированныйслучай чрезвычайно важен. В частности, синтаксические анализаторы в целом ведут себякак детерминированные МП-автоматы, поэтому класс языков, допускаемых этими автоматами, углубляет понимание конструкций, пригодных для языков программирования.

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

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

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