Главная » Просмотр файлов » 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), страница 67

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

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

КС-языки замкнуты относительно операции “пересечение с регулярным языком”. Формальное утверждение иего доказательство представлены в следующей теореме.Теорема 7.27. Если L — КС-язык, а R — регулярный язык, то L I R является КСязыком.Доказательство. Нам понадобится представление КС-языков с помощью МПавтоматов, а также конечноавтоматное представление регулярных языков.

Данное доказательство обобщает доказательство теоремы 4.8, где для получения пересечениярегулярных языков “параллельно запускались” два конечных автомата. Здесь конечный автомат запускается параллельно с МП-автоматом, и в результате получается ещеодин МП-автомат (рис. 7.9).СостояниеКАИВходДопустить/отвергнутьСостояниеМПАМагазинРис. 7.9. Для создания нового МП-автомата конечный автомати МП-автомат запускаются параллельно7.3. ÑÂÎÉÑÒÂÀ ÇÀÌÊÍÓÒÎÑÒÈ ÊÎÍÒÅÊÑÒÍÎ-ÑÂÎÁÎÄÍÛÕ ßÇÛÊÎÂСтр. 299299Формально, пустьP = (QP, Σ, Γ, δP, qP, Z0, FP) —МП-автомат, допускающий L по заключительному состоянию, и пустьA = (QA, Σ, δA, qA, FA) —ДКА для R.

Построим МП-автоматP′ = (QP × QA, Σ, Γ, δ, (qP, qA), Z0, FP × FA),∧где δ((q, p), a, X) определяется как множество всех пар ((r, s), γ), где s = δ A(p, a) и пара(r, γ) принадлежит δP(q, A, X).Таким образом, для каждого перехода МП-автомата P мы можем совершить такой жепереход в МП-автомате P′, дополнительно отслеживая состояние ДКА A во втором компоненте состояния P′. Отметим, что a может быть символом из Σ или ε. В первом случае∧∧δ A(p, a) = δA(p, a), но если a = ε, то δ A(p, a) = p, т.е. A не меняет состояние, когда P совершает ε-переход.С помощью простой индукции по числу переходов, совершаемых МП-автоматами,**PP′нетрудно доказать, что (qP, w, Z0) |− (q, ε, γ) тогда и только тогда, когда ((qP, qA), w, Z0) |−∧((q, p), ε, γ), где p = δ A(p, w).

Эти индукции оставляются в качестве упражнения. Но(q, p) является допускающим состоянием P′ тогда и только тогда, когда q — допускающее состояние P и p — допускающее состояние A. Отсюда заключаем, что P′ допускаетw тогда и только тогда, когда его допускают P и A вместе, т.е. w принадлежит L I R. †Пример 7.28. На рис. 6.6 был определен МП-автомат F, допускающий по заключительному состоянию множество цепочек, которые состоят из i и e. Такие цепочкипредставляют минимальные нарушения правил, определяющих, в каком порядке словаif и else могут встречаться в С-программах. Назовем этот язык L. МП-автомат Fбыл определен так:PF = ({p, q, r}, {i, e}, {Z, X0}, δF, p, X0, {r}),где δF состоит из следующих правил.1.δF(p, ε, X0) = {(q, ZX0)}.2.δF(q, i, Z) = {(q, ZZ)}.3.δF(q, e, Z) = {(q, ε)}.4.δF(q, e, X0) = {(r, ε)}.Теперь определим конечный автоматA = ({s, t}, {i, e}, δA, s, {s, t}),300Стр.

300ÃËÀÂÀ 7. ÑÂÎÉÑÒÂÀ ÊÎÍÒÅÊÑÒÍÎ-ÑÂÎÁÎÄÍÛÕ ßÇÛÊÎÂдопускающий цепочки языка i*e*, т.е. все цепочки, в которых символы e следуют за i. Назовем этот язык R. Функция переходов δA определяется следующими правилами:а) δA(s, i) = s;б) δA(s, e) = t;в) δA(t, e) = t.Строго говоря, A не является ДКА, как предполагается в теореме 7.27, поскольку в немотсутствует дьявольское состояние для случая, когда вход i получен в состоянии t. Однако такая же конструкция работает даже для НКА, так как МП-автомат, который строится,может быть недетерминированным. В данном же случае МП-автомат на самом деле детерминирован, хотя и “умирает” на некоторых входных последовательностях.Построим следующий МП-автомат.P = ({p, q, r} × {s, t}, {i, e}, {Z, X0}, δ, (p, s), X0, {r} × {s, t})Переходы δ перечислены ниже и проиндексированы номерами правил для МП-автоматаF (числа от 1 до 4) и правил для ДКА A (буквы а, б, в).

Если МП-автомат F совершает εпереход, правило для A не используется. Отметим, что правила для автомата P строятся“ленивым” способом: правила для состояния строятся только тогда, когда обнаружено,что оно достигается из начального состояния P.1. δ((p, s), ε, X0) = {((q, s), ZX0)}.2, а. δ((q, s), i, Z) = {((q, s), ZZ)}.3, б. δ((q, s), e, Z) = {((q, t), ε)}.4. δ((q, s), ε, X0) = {(r, s), ε)}. Отметим, что это правило никогда не будет применяться,поскольку невозможно вытолкнуть символ из магазина без e на входе, но как толькоP видит e, вторым компонентом его состояния становится t.3, в.

δ((q, t), e, Z) = {((q, t), ε)}.4. δ((q, t), ε, X0) = {((r, t), ε)}.Язык L I R представляет собой множество цепочек с некоторым количеством симво-лов i, за которыми записаны символы e (на один больше), т.е. {inen+1 | n ≥ 0}. Как видим,такие блоки символов i с блоками символов e нарушают правила записи слов if и elseв языке С. Этот язык, очевидно, является КС-языком, порождаемым грамматикой с продукциями S → iSe | e.Заметим, что МП-автомат P допускает язык L I R. После помещения Z в магазин онзаносит новые символы Z в магазин при чтении символов i, оставаясь в состоянии (q, s).Как только на входе появляется e, он переходит в состояние (q, t) и начинает выталкивание из магазина.

Он умирает, если видит i до того, как X0 оказывается на вершине магазина. В последнем же случае он спонтанно переходит в состояние (r, t) и допускает. †7.3. ÑÂÎÉÑÒÂÀ ÇÀÌÊÍÓÒÎÑÒÈ ÊÎÍÒÅÊÑÒÍÎ-ÑÂÎÁÎÄÍÛÕ ßÇÛÊÎÂСтр. 301301Поскольку КС-языки не замкнуты по пересечению, но замкнуты по пересечению срегулярным языком, то становятся понятными и свойства замкнутости относительноопераций разности и дополнения. Перечислим эти свойства в следующей теореме.Теорема 7.29.

Пусть L1, L2 и L обозначают КС-языки, а R — регулярный язык. Справедливы следующие утверждения.1.L – R является контекстно-свободным языком.2.L может не быть КС-языком.3.L1 – L2 может не быть КС-языком.Доказательство. Для п. 1 заметим, что L – R = L I R . Если R регулярно, то по тео-реме 4.5 регулярно и R . Тогда по теореме 7.27 L – R — КС-язык.Для п. 2 предположим, что если L является КС-языком, то L — КС-язык. Но поскольку L1 I L2 = L1 ∪ L2 , и КС-языки замкнуты по объединению, получаем, что онизамкнуты и по пересечению.

Однако это невозможно (см. пример 7.26).Наконец, докажем п. 3. Очевидно, Σ* является КС-языком для любого алфавита Σ; нетрудно построить КС-грамматику или МП-автомат для этого регулярного языка. Такимобразом, если бы язык L1 – L2 был контекстно-свободным для любых КС-языков L1 и L2,то и Σ* – L должен быть КС-языком, если L — КС-язык. Однако Σ* – L = L при соответствующем алфавите Σ. Полученное противоречие к утверждению 2 доказывает, что L1 –L2 не обязательно является КС-языком. †7.3.5. Îáðàòíûé ãîìîìîðôèçìВспомним операцию “обратного гомоморфизма” из раздела 4.2.4.

Если h — гомоморфизм, а L — произвольный язык, то h–1(L) представляет собой множество таких цепочек w, для которых h(w) ∈ L. Доказательство того, что регулярные языки замкнуты относительно обратного гомоморфизма, представлено на рис. 4.6. Там показано, как строится конечный автомат, обрабатывающий свои входные символы a путем применения кним гомоморфизма h и имитации другого конечного автомата на цепочках h(a).Замкнутость относительно обратного гомоморфизма можно доказать подобным путем, используя МП-автоматы вместо конечных автоматов. Однако при использованииМП-автоматов возникает проблема, которой не было с конечными автоматами. Действиеконечного автомата при обработке входной цепочки заключается в изменении состояния,и это выглядит так же, как переход по одиночному входному символу.Однако для МП-автоматов последовательность переходов может быть не похожа напереход по одному входному символу.

В частности, за n переходов МП-автомат можетвытолкнуть n символов из своего магазина, тогда как при одном переходе выталкиваетсятолько один. Таким образом, конструкция МП-автоматов, аналогичная представленнойна рис. 4.6, будет существенно сложнее; она изображена эскизно на рис. 7.10. Дополни302Стр. 302ÃËÀÂÀ 7. ÑÂÎÉÑÒÂÀ ÊÎÍÒÅÊÑÒÍÎ-ÑÂÎÁÎÄÍÛÕ ßÇÛÊÎÂтельная ключевая идея заключается в том, что, когда прочитан вход a, цепочка h(a) помещается в “буфер”. Символы h(a) используются по одному и подаются на вход имитируемому МП-автомату. Когда буфер опустошается, основной МП-автомат читает свойследующий входной символ и применяет гомоморфизм к нему. Эта конструкция уточняется в следующей теореме.БуферВходahh(a)СостояниеМПАДопустить/отвергнутьМагазинРис.

7.10. Построение МП-автомата, допускающего обратный гомоморфизмтого, что допускает данный МП-автоматТеорема 7.30. Пусть L — КС-язык, h — гомоморфизм. Тогда h–1(L) является КСязыком.Доказательство. Пусть h применяется к символам из алфавита Σ и порождает цепочки из T*. Предположим также, что L — язык в алфавите T, допускаемый по заключительному состоянию МП-автоматом P = (Q, T, Γ, δ, q0, Z0, F). Построим следующий новыйМП-автомат P′.P′ = (Q′, Σ, Γ, δ′, (q0, ε), Z0, F × {ε})(7.1)Обозначения в определении P′ имеют следующий смысл.1.Q′ есть множество пар (q, x), где q — состояние из Q, а x — суффикс (не обязательнособственный) некоторой цепочки h(a) для символа a из Σ. Таким образом, первыйкомпонент состояния P′ является состоянием P, а второй — компонентом буфера.Предполагается, что буфер периодически загружается цепочкой h(a), а затем сокращается с головы по мере чтения его символов, которые подаются на вход имитируемому МП-автомату P.7.3.

ÑÂÎÉÑÒÂÀ ÇÀÌÊÍÓÒÎÑÒÈ ÊÎÍÒÅÊÑÒÍÎ-ÑÂÎÁÎÄÍÛÕ ßÇÛÊÎÂСтр. 303303δ′ определяется следующими правилами:2.а) δ′((q, ε), a, X) = {((q, h(a)), X)} для всех символов a из Σ, всех состояний q изQ и магазинных символов X из Γ. Отметим, что здесь a не может быть ε. Когда буфер пуст, P′ может прочитать свой следующий входной символ a и поместить h(a) в буфер;б) если δ(q, b, X) содержит (p, γ), где b ∈ T или b = ε, то δ′((q, bx), ε, X) содержит((p, x), γ). Таким образом, P′ всегда имеет возможность имитации перехода P,используя голову буфера. Если b ∈ T, то буфер должен быть непустым, ноесли b = ε, то буфер может быть пустым.3.Отметим, что в соответствии с определением (7.1) начальным состоянием P′ является (q0, ε), т.е.

P′ стартует в начальном состоянии P с пустым буфером.4.Аналогично, допускающими состояниями P′ являются такие состояния (q, ε), у которых q — допускающее состояние P.Следующее утверждение характеризует взаимосвязь P′ и P.**PP′• (q0, h(w), Z0) |− (p, ε, γ) тогда и только тогда, когда ((q0, ε), w, Z0) |− ((p, ε), ε, γ).Доказательство в обоих направлениях проводится индукцией по числу переходов, совершаемых автоматами. При доказательстве достаточности заметим, что если буфер P′не пуст, то он не может читать свой следующий входной символ, а должен имитироватьP до тех пор, пока буфер не опустошится (хотя когда буфер пуст, он все еще может имитировать P).

Детали оставляются в качестве упражнения.Приняв указанную взаимосвязь P и P′, заметим, что вследствие способа, которым определены допускающие состояния P′, P допускает h(w) тогда и только тогда, когда P′ допускает w. Таким образом, L(P′) = h–1(L(P)). †7.3.6. Óïðàæíåíèÿ ê ðàçäåëó 7.37.3.1.Докажите, что КС-языки замкнуты относительно следующих операций:а) (∗) Init, определенная в упражнении 4.2.6, в. Указание. Начните с НФХграмматики для языка L;б) (∗!) операция L/a, определенная в упражнении 4.2.2. Указание.

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

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

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