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

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

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

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

Применив утверждение 2 к х, получим, что 6 (дь, х) содержит дь Поскольку по символу 1 существует переход из д, в дз, приходим к выводу, что 6 (дь, ю) содержит щ. (Необходихюсть) Допустим, что 6 (дь, и) содержит дь По диаграмме на рис. 2.9 видно, что в состояние дз можно попасть тогда и только тогда, когда эе имеет вид х! 76 ГЛАВА 2. КОНЕЧНЫЕ АВТОМАТЫ и б (дм х) содержит дь Применяя утверждение 2 к х, получим, что х оканчивается на О.

Таким образом, и оканчивается на 01, и утверждение 3 доказано. 2.3.5. Эквивалентность детерминированных и недетерминированных конечных автоматов Для многих языков, в частности, для языка цепочек, оканчивающихся на 01 (пример 2,6), построить соответствующий НКА гораздо легче, чем ДКА. Несмотря на это, всякий язык, который описывается некоторым НКА, можно также описать и некоторым ДКА. Кроме того, этот ДКА имеет, как правило, примерно столько же состояний, сколько и НКА, хотя часто содержит больше переходов. Однако в худшем случае наименьший ДКА может содержать 2" состояний, в то время как НКА для того же самого языка имеет всего п состояний.

В доказательстве того, что ДКА обладают всеми возможностями НКА, используется одна важная конструкция, называемая конструкцией лоджножеспгв, поскольку включает построение всех подмножеств множества состояний НКА. Вообще, в доказательствах утверждений об автоматах часто по одному автомату строится другой. Для нас конструкция подмножеств важна в качестве примера того, как один автомат описывается в терминах состояний и переходов другого автомата без знания специфики последнего. Построение подмножеств начинается, исходя из НКА %= Як, Х, 4,, г),, Р;~). Целью является описание ДКА ьЗ = Яо, Х, 4э, (д,), г"о), у которого С(Лг) = 7.(Р). Отметим, что входные алфавиты этих двух автоматов совпалают, а начальное состояние !) есть множество, содержащее только начальное состояние Ф.

Остальные компоненты В строятся следующим образом. ° До есть множество всех подмножеств Дн или булеан множества Дн Отметим, что если Дв содержит и состояний, то До будет содержать уже 2" состояний. Однако часто не все они достижимы из начального состояния автомата О. Такие недостижимые состояния можно "отбросить", поэтому фактически число состояний !Э может быть гораздо меньше, чем 2". ° го есть множество подмножеств э множества Дн, для которых э П г"и в 8, т.е. Р'о состоит из всех множеств состояний Ф, солержащих хотя бы одно допускающее состояние Ж. ° Для каждого множества Я ~ Дн и каждого входного символа а из Х Дэ(э, а) = ( ) бг(р, а). Таким образом, для того, чтобы найти Дэ(о, а), мы рассматриваем все состояния р из о, ищем те состояния Ж, в которые можно попасть из состояния р по 2.3.

НЕДЕТЕРМИНИРОВАННЫЕ КОНЕЧНЫЕ АВТОМАТЫ 77 символу а, а затем берем объединение множеств найденных состояний по всем состояниям р. Пример 2.10. Пусть У вЂ” автомат на рис. 2.9, допускающий цепочки, которые окан- чиваютсЯ на 01. ПосколькУ множество состоЯний У есть 19т дь дз1, то констРУкциа подмножеств дает ДКА с 2' = 8 состояниями, отвечающими всем подмножествам, составленным из этих трех состояний. На рис. 2.12 приведена таблица переходов для полученных восьми состояний.

Объясним вкратце, как были получены элементы этой таблицы. Рис. 2.12. Полная конструкция нодмноясеств дяя автомата на рис. 2.9 Заметим, что данная таблица, элементами которой являются множества, соответствует детерминированному конечному автомату, поскольку состояния построенного ДКА сами являются множествами.

Для ясности можно переобозначить состояния. Например, 0 обозначить как А, (до1 — как В и т.д. Таблица переходов для ДКА на рис. 2.13 определяет в точности тот же автомат, что и на рис. 2.12, и из ее вида понятно, что элементами таблицы являются одиночные состояния ДКА. Рис. 2.13. Переименование состояний на рис. 2.

12 78 ГЛАВА 2. КОНЕЧНЫЕ АВТОМАТЫ Начиная в состоянии В, из всех восьми состояний мы можем попасть только в со- стояния В, Е и Е. Остальные пять состояний из начального недостижимы, и поэтому их можно исключить из таблицы. Часто можно избежать построения элементов таблицы переходов для всех подмножеств, что требует экспоненциального времени. Для этого выполняется следующее "ленивое вычисление" подмножеств.

Базис. Мы точно знаем, что одноэлементное множество, состояшее из начального состояния Аг, является достижимым. Индукции. Предположим, мы установили, что множество состояний 5 является достижимым. Тогда для каждого входного символа а нужно найти множество состояний бо(5, а). Найденные таким образом множества состояний также будут достижимы.

ЭлементаРный пРимеР: нам известно, что (Че) есть одно из состоЯний ДКА с). Находам, что глг((Че), 0) = (Чы Ч1) и гх>((Чо), 1) = (Че). Оба эти факта следуют из диаграммы переходов для автомата на рис. 2.9; как видно, по символу 0 есть переходы из Чо в Чс и Ч„ а по символу 1 — только в Чы Таким образом, получена вторая строка таблицы переходов ДКА на рис. 2.12. Одно из найденных множеств, (Чо), Уже РассматРивалось. Но втоРое, (Чо, Ч ), — новое, и переходы для него нужно найти: бо((Чо, Чг), 0) = (суы Ч~) н ечг((Чо Чд, 1) = (Чо Чг). Проследить последние вьгчисления можно, например, так: А~((Чы ЧЖ), 1) = МЧо, 1) 0 бч(Чь 1) = (Чо) 0 (Чг) = (Чо, Чг).

Теперь получена пятая строка таблицы на рис. 2.12 и одно новое состояние (Чо, Чг). Аналогичные вычисления показывают, что гспг((Чо Чг), О) = бч(Чо О) 0 бч(Чг О) = (Чо, Ч1) 0 юг = (Чы Чд Й((Чо Чг) 1) = генг(Чо 1) 0 4~(Чг 1) = (Чо) 0 8 = (Чо) . Зти вычисления дают шестую строку таблицы на рис. 2.12, но при этом не получено ни одного нового множества состояний.

Итак, конструкция подмножеств сошлась; известны все допустимые состояния и соотаетствуюшне им переходы. Полностью ДКА показан на рис. 2.14. Заметим, что он имеет лишь три состояния. Это число случайно оказалось равным числу состояний НКА на рис. 2.9, по которому строился этот ДКА. Но ДКА на рис. 2.14 имеет шесть переходов, а автомат на рис. 2.9 — лишь четыре. П нач Рис. 2.14. ДКА, построенный по НКА на рис. 2,9 2.3. НЕДЕТЕРМИНИРОВАННЫЕ КОНЕЧНЫЕ АВТОМАТЫ 29 На последнем примере мы убедились, что конструкция подмножеств успешно работает. Теперь докажем это формально.

По прочтении последовательности символов зо построенный нами ДКА находится в состоянии, представляющем собой множество состояний НКА, в которые тот попадает, прочитав эту цепочку. Но допускающие состояния ДКА — это состояния, которые содержат хотя бы одно допускающее состояние НКА, а допустимыми для НКА являются цепочки, приводящие его хотя бы в одно из допускающих состояний.

Поэтому можно заключить, что ДКА и НКА допускают в точности одни и те же цепочки. Следовательно, они допускают один и тот же язык. Теорема 2.11. Если ДКА О = (До, Х, до, о)о, го) построен по НКА Ж = (Ь)оь Х, дн, о)о, гч) посредством конструкции подмножеств, то Цьо) = ь(дг). Доказательство. Вначале с помощью индукции по )ч( покажем, что б о((чо), эо) = бил зо) Заметим, что как для одной, так и для другой функции б, значением является множество состояний из Дн.

При этом б о интерпретирует его как состояние из Ь)о (являющегося булеаном Дн), а б н — как подмножество Дн. Базис. Пусть ~н1 — — О, т.е. н = ж Из базисных частей определений б для ДКА и НКА имеем, что как 6 о((с)о), я), так и б н(с)о е) равны (о)о) Индукция. Пусть н имеет длину и + 1, и предположим, что утверждение справедливо для цепочки длины и. Разобьем н на эо = ха, где а — последний символ цепочки и. Согласно гипотезе индукции б р((с)о), х) = д н(до, х). Пусть оба этн множества состояний Ф представляют собой (рь рь ..., ро). По индуктивной части определения для НКА б нйо, ж) = Цб н(рь а).

гм С другой стороны, конструкция подмножеств дает б ((рь рк ." р о), а) = Об н(р, а). (2.3) Теперь, подставляя (2.3) в индуктивную часть определения для ДКА и используя тот факт, что б о((о)о), х) = (рь р„..., рь), получаем; б о((суо), зо) = бо( б о(о)о, х), а)) = бо((рь рь ..., ро) а) = Цб н(рь а). Таким образом, из уравнений (2,2) и (2.4) видно, что б о((до), м ) = 6 к(до, зо).

Далее, замечая, что и 11, н Ф допускают и тогда и только тогда, когда б о((до), н') или б н(до, н ) соответственно содержат некоторое состояние из Е;„, получаем полное доказательство того, что ь(В) = ь(Ф). С) Теорема 2.12. Язык 1, допустим некоторым ДКА тогда и только тогда, когда он допускается некоторым НКА. 80 ГЛАВА 2. КОНЕЧНЫЕ АВТОМАТЫ Доказательство. Достаточность следует из конструкции подмножеств и теоремы 2.11. (Необходимость) Доказательство этой части не представляет трудности; нам нужно лишь перейти от ДКА к идентичному НКА. Диаграмму переходов для некоторого ДКА можно рассматривать неформально как диаграмму переходов для некоторого НКА, причем последний имеет по любому входному символу лишь один переход. Точнее, пусть 0 = Я, Х, б!„!/„Р) есть некоторый ДКА.

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

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

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