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

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

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

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

2.22 дьявольское состояние И и все переходы в него. Поэтому, глядя на рис. 2.22, следует иметь в виду, что у каждого состояния есть еще дополнительные переходы в состояние Я по тем входным символам, л,чя которых переход на рисунке отсутствует. Кроме того, у состояния Я есть переход в себя по любому входному символу. 0,1,...,9 0,1,,,.,9 Рис.

2.22. ДКА Р, полученный усгпранением е-переходов на рис. 2ЛВ Поскольку начальное состояние Š— это с)о„начальным состоянием 1э является ЕС(.ОБЕ(с10), т.е. множество (до, д,). В первую очередь нужно найти состояния, в которые переходят 90 и г), по различным символам из Т.; напомним, что это знаки плюс и минус, точка и цифры от 0 до 9. Как видно на рис. 2.18, по символам + и — а, никуда не переходит, в то время как до переходит в с)ь Таким образом, чтобы вычислить бо((с)„сн), н.), нужно взять в-замыкание (еп), Поскольку к-переходов, выходящих из дн нет, получаем, что бо((с)о, сп), +) = (Ч,).

Точно так же находится 4э((с)о, с)~), -) = (су,). Эти два перехода изображены одной дугой на рис. 2.22. Теперь найдем ~з((е)о, с)1), .). Как видно на рис. 2.18, по точке с(о никуда не переходит, а д, переходит в дь Поэтому нужно взять замыкание (д,).

Но состояние дз является собственным замыканием, так как г-переходов из него нет. И, наконец, в качестве примера перехода из (ао, дД по произвольной цифре найдем бо((до с)~), 9). По цифре с(в никуда не переходит, а 111 переходит сразу в сн н с(л. Так как ни одно из этих состояний не имеет выходящих к-переходов, делаем вывод, что сеэ((с)в, с)~), 9) = (дь 11л). Последнее равенство справедливо лля всех цифр. Итак, мы объяснили, как строятся дуги на рис.

2.22. Остальные переходы находятся аналогично; проверка предоставляется читателю. Поскольку с)з есть единственное допускающее состояние Е, допускающими состояниями 0 являются те его достижимые со- 95 2.5. КОНЕЧНЫЕ АВТОМАТЫ С ЭПСИЛОН-ПЕРЕХОДАМИ стояния, которые содержат о)н На рис. 2.22 эти два состояния, (ан о!о) и (дь дн дз), отмечены двойными кружками. С) Теорема 2.22. Язык Л допускается некоторым я-НКА тогда и только тогда, когда Т, допускается некоторым ДКА. Доказательство. (Достаточность) Доказательство в эту сторону просто. Допустим, !,=ЦВ) для некоторого ДКА Р.

Преобразуем Р в я-НКА Е, добавив переходы б(9, в) = !а для всех состояний й автомата Р. Чисто технически нужно также преобразовать переходы Р по входным символам к виду НКА-переходов. Например, ~э(д, а) = р нужно превратить в множество, содержащее только состояние р, т.е. бе(о), а) = (р). Таким образом, Е и Р имеют одни и те же переходы, но при этом, совершенно очевидно, Е не содержит переходов по я, выходящих из какого-либо состояния.

(Необходкность) Пусть Е = Ят Х, ба, де, Рк) — некоторый я-НКЛ. Применим описанную выше модифицированную конструкцшо подмгюжеств для построения ДКА Р=(Ро: Е, 4о, 7о, Ро). Нужно доказать, что ЦВ) = ЦЕ). Для этого покажем, что расширенные функции переходов Е и В совпадают. Формально покажем индукцией по длине н, что б с(до, и) = о о(чо н'). Базис. Если Ро) = О, то зо = ж По определению замыкания б я(о!о, я) = ЕСЬОБЕ(ао).

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

По определению б для я-НКЛ находим б к(9о, зо) следующим образом. !. Пусть ( )а р(ро а) есть (гь гз.. г ). 2. Тогда д г(о!о, н) = ( ) ЕСЬОЕЕ(г„.). Внимательно рассмотрев, как ДКА Р строится посредством описанной выше модифнцированной конструкции подмножеств, мы видим, что д о((рь рь ..., ро), а) построено с помощью описанных только что шагов (!) и (2).

Таким образом, значение б ойо и') те б о((р~ рь ." рь), а), совпадает с б я(9о, ж). Тем самым доказаны равенстао б я(9о, н) = б о(Чо, н) и индуктивная часть теоремы С) 96 ГЛАВА 2. КОНЕЧНЫЕ АВТОМАТЫ 2.5.6. Упражнения к разделу 2.5 2.5.1. (в) Рассмотрите следующий е-НКА и: а) найдите е-замыкание каждого из состояний; б) выпишите все цепочки, длина которых не более 3, допустимые данным ав- томатом; в) преобразуйте данный автомат в ДКА. 2.5.2. Выполните задание упражнения 2.5.1 со следующим е-НКА. 2.5.3. Постройте е-НКА, которые попускают следующие языки.

Для упрощения построений используйте, по возможности, е-переходы: а) множество всех цепочек, состоящих из нуля или нескольких символов а, после которых стоит нуль или несколько символов Ь, и вслед за ними нуль или несколько символов с; б) П) множество цепочек, состоящих либо из повторяющихся один или несколько раз фрагментов 01, либо из повторяющихся один или несколько раз фрагментов 010; в) (!) множество цепочек из 0 и 1, в которых хотя бы на одной из последних де- сяти позиций стоит 1.

Резюме + Детерминированные конечные автовазы. ДКА имеет конечное число состояний и конечное множество входных символов. Одно из состояний выделено как на- чальное, и нуль или несколько состояний являются допускающими. Функция переходов определяет, как изменяются состояния при обработке входных символов. + Диаераммы переходов. Автомат удобно представлять в виде графа, в котором вершины соответствуют состояниям, а дуги, отмеченные входными символами, РЕЗЮМЕ соответствуют переходам из состояния в состояние. Начальное состояние отмеча- ется стрелкой, а допускающие состояния выделяются двойными кружками.

в Язык автомата. Автомат допускает цепочки. Цепочка является допустимой, если, стартуя в начальном состоянии и обрабатывая символы этой цепочки по одному, автомат переходит в некоторое допускающее состояние. В терминах диаграмм переходов цепочка является допустимой, если она состоит из символов, отме- чающих путь из начального состояния в одно из допускающих. е Оедетермииированиый конечный аетомапь НКА отличается от ДКА тем, что НКА может иметь любое число переходов (в том числе, ни одного) нз данного со- стояния в по данному входному символу.

+ Конструкция подмножеств. Множества состояний НКА можно рассматривать как состояния некоторого ДКА. Таким образом, мы можем преобразовать НКА в ДКА, допускающий тот же самый язык. е е-переходы. Можно расширить понятие НКА, разрешив переходы по пустой цепочке, т.е. вообще без входных символов. Расширенные таким образом НКА могут быть преобразованы в ДКА, допускающие те же самые языки. + Приложения типа "поиск е тексте". Недетерминнрованнью конечные автоматы представляют собой удобный способ моделирования программы поиска одного или нескольких ключевых слов в больших массивах текста. Эти автоматы либо непосредственно имитируются с помощью программы, либо вначале преобразу- ются в ДКА, а затем уже реализуются в виде программы.

Литература Принято считать, что начало формальному изучению систем с конечным числом состояний было положено в работе [2]. Однако эта работа была посвящена не теперешним ДКА, а так называемой вычислительной модели "нейронных сетей'*. ДКА, в общепринятом смысле слова, были введены независимо в нескольких различных вариантах в работах [1], [3] и [4]. Материал по недетерминированным автоматам и конструкции подмножеств взят из работы [5].

1. О. А. Ни%пап, "ТЛе зупйеяз о( зейцепйа! ззг!гсй!пй с!гсц!гз", .У««апА!!и Ьи!. 257:3 — 4 (1954), рр. 161-190 апд 275-303. 2. Ч/. 5. МсСцйосй апд Ч!. Р!пз, "А 1оя!са!са1сп1ов о(йе !деаз 'пппзапепс !и пегчпоца аспчйу", Ви!!. Май. В!арбуз!сз 5 (1943), рр. 1! 5 — 133. (Маккалок У.С., Питтс Э. Логическое исчисление идей, относящихся к нервной активности.

! сб. "Аетоматы".— Мз ИЛ, 1956. — С. 362-384.) 3. С. Н. Меа]у, "А шейод [ог зупйеяьдпй зег[цепг!а] с|гсш1з", ВеП Вузгет Тесйп!са! ./ои«па! 34:5 (1955), рр. 1045 — 1079. 98 ГЛАВА 2. КОНЕЧНЫЕ АВТОМАТЫ 4. Е.Р.Мооге, "Оебап)гоп ехрепшепгз оп зецпепг)а1 шасЫпез", 1п (6], рр.129 — 153. (Мур Э.Ф. Умозрительные эксперименты с последовательностными машинами.

/ сб. "Автоматы". — Мл ИЛ, 1956. — С. 179-210.) 5. М. О. КаЫп апг) О. $соп, '"Р)п]ге ап1оша1а апг) 1Ье]г бес)з]оп ргоЫешз", /ВЛ/./. Яезеагс/з апс/ Рече/ортепг 3:2 (1959), рр. 115-125. (Рабин М.О., Скотт Д. Конечные автоматы и задачи их разрешения. — Кибернетический сборник, вы. 4. — Мл ИЛ, 1962.— С. 56-71,) 6. С. Е. БЬаппоп апг) 1. МсСаггЬу, Аи/атаги В/иаЧев, Рппсесоп 1)ппп Ргезз, 1956. (Шен- нон К.Э., Мак-Карти Дж.

Теория автоматов. / сб. "Автоматы". — Мз ИЛ, 1956.) ЛИТЕРАТУРА ГЛАВА 3 Регулярные выражения и язьпси В этой главе вводится система записи "регулярных выражений". Такие выражения представляют собой еше один способ определения языков, рассмотренный вкратце в разделе 1.1.2. Регулярные выражения можно рассматривать также как "язык программирования" для описания некоторых важных приложений, например, программ текстового поиска или компонентов компилятора. Регулярные выражения тесно связаны с НКА и могут служить удобной альтернативой для описания программных компонентов. Определив регулярные выражения, покажем, что они могут задавать регулярные, и только регулярные, языки.

Обсудим также, каким образом регулярные выражения используются в различных системах программного обеспечения. Затем исследуем алгебраические законы для регулярных выражений. Эти законы во многом подобны алгебраическим законам арифметики, однако между алгебрами регулярных и арифметических выражений есть и существенные различия. 3.1. Регулярные выражения Перейдем от "машинного" задания языков с помощью ДКА и НКА к алгебраическому описанию языков с помощью регулярных выражений. Установим, что регулярные выражения определяют точно те же языки, что и различные типы автоматов, а именно, регулярные языки.

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

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

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