Главная » Все файлы » Просмотр файлов из архивов » PDF-файлы » Бильгаева Н.Ц. - Теория алгоритмов, формальных языков, грамматик и автоматов

Бильгаева Н.Ц. - Теория алгоритмов, формальных языков, грамматик и автоматов, страница 11

PDF-файл Бильгаева Н.Ц. - Теория алгоритмов, формальных языков, грамматик и автоматов, страница 11 Теория автоматов (18060): Книга - 4 семестрБильгаева Н.Ц. - Теория алгоритмов, формальных языков, грамматик и автоматов: Теория автоматов - PDF, страница 11 (18060) - СтудИзба2018-01-11СтудИзба

Описание файла

PDF-файл из архива "Бильгаева Н.Ц. - Теория алгоритмов, формальных языков, грамматик и автоматов", который расположен в категории "". Всё это находится в предмете "теория автоматов" из 4 семестр, которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "теория автоматов" в общих файлах.

Просмотр PDF-файла онлайн

Текст 11 страницы из PDF

Пусть A = (К, ∑, δ, p0, F) - произвольный конечный автомат. Построимавтомат:A1 = (K ∪ {q0}, Σ, δ ∪ {q0a → pi | p0a → pi ∈ δ}, q0, F ∪ {q0 | p0 ∈ F}).Любая цепочка x = a1 a2 ... ak принадлежит языку L(A) тогда и только тогда, когдасуществует следующая последовательность команд автомата А:p0a1 → p1; p1a2 → p2; . . . ; ph-1ah → ph, ph ∈ Fи соответствующая ей последовательность команд автомата А1:pk-1ak → ph.q0a1 → p1; p1a2 → p2; . . . ;Таким образом, имеем: A = A1.Теорема. Для произвольного конечного автомата существует эквивалентный автомат безциклов в заключительном состоянии.Доказательство. Будем считать, что автомат не имеет циклов в начальном состоянии.Сопоставим заданному произвольному конечному автомату A = (К, ∑, δ, p0, F) новыйавтомат A1:A1 = (K∪{f}, Σ, δ∪{qja → f | pja → pi∈δ & pi∈F}, p0, {f}∪{p0 | p0 ∈ F}).В результате имеем: A = A1.Теорема.

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

Операция итерации реализуется удалением циклов из начальных и заключительныхсостояний и объединения полученных состояний. Объединение начального изаключительного состояний означает, что построенный автомат допускает пустую цепочку.Однократный переход из начального в заключительное состояние исходного автоматасоответствует допуску цепочек языка L. Поскольку эти состояния объединены, автоматдопускает цепочки языков LL, LLL и т.д., т.е.

он распознает язык {ε}∪L∪L2∪ . . . =L*.2. Операция произведения над L(A1) и L(A2) выполняется с помощью двухпреобразований: а) удаляются циклы из начального состояния A2 и заключительногосостояния A1; б) каждому заключительному состоянию A1ставим в соответствие свойэкземпляр A2 и объединяем заключительные состояния A1 с начальным состояниемсоответствующего экземпляра A2.3. Объединение L(A1) и L(A2) строится с помощью удаления циклов в начальныхсостояниях A1 и A2 и объединения полученных начальных состояний.4. Усеченная итерация может быть построена двумя способами:а) L(A1)+ = L(A1)* L(A1),б) L(A1)+ = L(A1) L(A1)*.5.

Рассмотрим дополнение L(A1) до Σ*. Пусть автомат A1 детерминированный, тогдалюбая цепочка x=a1a2 . . an распознается по единственному маршруту:p0a1 → p1p1a2 → p2. . .pn-1an → pn, pn∈ F.Автомат не распознает только те цепочки, которые:1) либо представляют собой начальную часть цепочки a1a2 . . aj, при чтении которойавтомат переходит в состояние, не являющееся заключительным;2) либо имеют вид y = a1a2 . . akbc1c2 .

. cm (k < n), где начало цепочки a1a2 . . ak совпадает сначалом цепочки x∈L(A1), но за символом ak стоит такой символ b, что автомат A1 егопрочитать не может.Поэтому для того чтобы построить автомат, распознающий дополнение языка,необходимо:а) все заключительные состояния сделать незаключительными, а незаключительныесостояния - заключительными;б) ввести дополнительное состояние, сделать его заключительным и из каждогосостояния провести в это состояние такие дуги, каждая из которых соответствует символамалфавита, не читаемым в этом состоянии;в) в построенном дополнительном состоянии построить петли для всех символовалфавита, чтобы обеспечить чтение произвольного окончания цепочки c1c2 . .

cm.6. Разность L(A1) и L(A2) строится в соответствии со следующим преобразованием:L(A1) \ L(A2) = L(A1) ∩ L(A2) .7. Операция пересечения строится в соответствии со следующим преобразованием:L(A1) ∩ L(A2) = L(A1) ∪ L(A2) .На основании этой теоремы можно строить конечные автоматы, последовательносинтезируя их на основе уже построенных автоматов.5.3.4. Автоматные грамматикиЛинейные грамматики (праворекурсивные и леворекурсивные) называются автоматнымиграмматиками, так как языки, порождаемые ими, совпадают с языками, распознаваемымиконечными автоматами.Рассмотрим ряд теорем.Теорема. Для каждой праволинейной грамматики существует эквивалентный конечныйавтомат.Доказательство. Каждому нетерминалу произвольной праволинейной грамматики Gпоставим в соответствие одно состояние конечного автомата A.

Добавим еще одно состояние- единственное конечное состояние. Состояние, соответствующее аксиоме, назовемначальным состоянием.Каждому правилу A→aB поставим в соответствие команду Aa → B, а каждомутерминальному правилу A → a поставим в соответствие команду Aa → F.Таким образом, выводу цепочки в грамматикеS ⇒ a1A1 ⇒ a1a2A2 ⇒ ... ⇒ a1a2...ak-1Ak-1⇒ a1a2...ak взаимно однозначно соответствуетпоследовательность команд построенного автомата A:Aa1 → A1; A1a2 → A2; . .

. ; Ak-1ak → F. Таким образом, язык L(G) = L(A).Пример. Пусть для заданной грамматики G требуется построить конечный автомат.S → aS | bB;A → aA | bS;B → bB | с | cA.Решение. Граф автомата будет иметь четыре вершины, три из них помеченынетерминальными символами грамматики S, A, B, четвертая вершина, помеченная символомF, является единственным заключительным состоянием. Начальным состоянием являетсявершина, соответствующая аксиоме S.abSbBbcAcFaКаждому правилу грамматики поставим в соответствие команду конечного автомата:Sa → S - в начальном состоянии при поступлении на вход терминального символа аавтомат остается в том же состоянии S;Sb → B - из начального состояния при поступлении на вход терминала b автоматпереходит в состояние B;Bb → B - в состоянии В при поступлении на вход терминала b автомат остается в том жесостоянии B;Bc → F - из состояния В при поступлении на вход терминала c автомат переходит взаключительное состояние F;Bc → A - из состояния В при поступлении на вход терминала c автомат переходит всостояние А;Aa → A - в состоянии А при поступлении на вход терминала а автомат остается в этомже состоянии А;Ab → S - из состояния A при поступлении на вход терминала b автомат переходит всостояние S.Полученный недетерминированный конечный автомат распознает цепочки языка,порождаемые праворекурсивной грамматикой G.Теорема.

Для произвольного конечного автомата существует эквивалентнаяправолинейная грамматика.Доказательство. Каждому состоянию произвольного автомата поставлен в соответствиенетерминал грамматики, причем начальному состоянию будет соответствовать аксиома.Тогда для каждой команды Ac → B в множество правил грамматики включим правило A→ cB, причем в случае, если B - заключительное состояние, добавим правило A → c.Эквивалентность исходного конечного автомата и построенной грамматики очевидна.Теорема.

Для каждой леворекурсивной грамматики существует эквивалентныйконечный автомат.Доказательство. Каждому нетерминальному символу произвольной леворекурсивнойграмматики поставим в соответствие состояние конечного автомата, причем состояние,соответствующее аксиоме S, сделаем заключительным. Добавим еще одно состояние N исделаем его начальным состоянием.Каждому правилу грамматики A → Ba поставим в соответствие команду автомата Вa →A. Тогда каждому выводу в грамматике:S⇒A1ak⇒A2ak-1ak⇒ ...

⇒Ak-1a2a3...ak ⇒ a1a2 . . . ak однозначно соответствуетследующая последовательность команд построенного автомата A:Na1 → Ak-1; . . .; A2ak-1 → A1; A1ak → S.Таким образом, язык L(G) = L(A).Теорема. Для произвольного конечного автомата существует эквивалентнаялеворекурсивная грамматика.Доказательство. Каждому состоянию произвольного автомата поставим в соответствиенетерминальный символ грамматики, добавим нетерминал S и сделаем его аксиомой.Каждой команде Aa → B в множество правил включим соответствующее правило B →Aa, причем в том случае, если B - заключительное состояние, дополнительно введем правилоS → Aa, а если A - начальное состояние, то дополнительно введем правило B → a.Тогда последовательности команд:A0a1 → A1; A1a2 → A2; . .

. ; Ak-1ak → Fсоответствует следующий вывод:S ⇒ Ak-1ak ⇒ ... ⇒ A1a2a3...ak ⇒ a1a2a3...ak.Важной особенностью автоматных грамматик является возможность представления их спомощью конечных графов. По графу грамматики легко отыскивается вывод нужнойцепочки.Любой вывод цепочки в автоматной грамматике соответствует пути в графе этойграмматики, который начинается из вершины S (вершины, помеченной аксиомой) изаканчивается в конечной вершине.Пример. Построить конечный автомат, распознающий язык L(A) = {(ab)*}.Сначала построим некоторую грамматику G, которая бы порождала язык L(A):S → aA;A → bS | b.Проверим, действительно ли эта грамматика порождает язык L(A).

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