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

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

Файл №1082244 Бильгаева Н.Ц. - Теория алгоритмов, формальных языков, грамматик и автоматов (Бильгаева Н.Ц. - Теория алгоритмов, формальных языков, грамматик и автоматов) 7 страницаБильгаева Н.Ц. - Теория алгоритмов, формальных языков, грамматик и автоматов (1082244) страница 72018-01-11СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

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

На основеэтого доказательства было показано, что проблема распознавания самоприменимостиалгоритмически неразрешима.3.11. Задания для самостоятельной работы1. Построить машину Тьюринга, выполняющую операцию конкатенации двух цепочек,заданных во входном алфавите А = {0, 1, *, ε}.2. Построить машину Тьюринга, выполняющую операцию копирования входнойцепочки, заданной в алфавите А = {1, *, ε }, где символ “*” используется в качестверазделителя двух цепочек.3. Построить машину Тьюринга в алфавите А={0, 1}, которая, начав работу с последнейединицы массива из единиц, сдвигает его на одну ячейку влево, не изменяя остальногосодержимого ленты.

Головка останавливается на первой единице перенесенного массива.4. По заданной совокупности команд машины Тьюринга Т и начальной конфигурации Кнайти заключительную конфигурацию.4.1.q01 → q01R,q10 → qz1E,q11 → q11L,q00 → q11R,а) К = 1101q001;б) К = 101q0010.4.2.q00 → q01L,q11 → q00R,q10 → qz0L,q01 → q11R,а) K = 1q1 0111; б) K = 1q11111.4.3.q10 → q11L,q00 → q10L,q11 → qz0R,q01 → q00R,а) K = 1000q1 01; б) K = 11q111101.5. Построить машину Тьюринга, которая во входной цепочке, заданной в алфавите А ={0, 1, ε}, переставляет единицы и нули так, чтобы все единицы были в начале, а нули в концецепочки.6. Построить композицию Т1⋅Т2 машин Тьюринга Т1 и Т2 по паре состояний (q1z, q20) инайти результат применения композиции Т1⋅Т2 к слову D.6.1.

Машины Т1 и Т2 заданы таблицами соответствия:T1:01q10q1z0Lq111Rq11q120Rq121Rq20q12q100Rq100Rq21T2:01q211Lq211Lа) D = 111100111011;q2z0Rq200Lб) D = 11010111.6.2. Машины Т1 и Т2 заданы таблицами соответствия:T1:T2:01q10q110Rq101Rq11q120Rq101Rq12q1z1L01q20q210Lq201Lq21q220Lq211Lq22q2z0Rq221Lа) D = 11000101001;б) D = 10100111110.7. Найти результат применения итерации машины Т по паре состояний (qz1, qi) к слову D.Заключительными состояниями машины Т являются qz1 и qz2. На ленте первоначальнозаписаны нули, а в начальной конфигурации головка указывает на левый символ входнойцепочки, состоящей из единиц.7.1.

Машина Тьюринга задана таблицей соответствия:T:01a) i = 1, D = 13k,q0qz10Eq10Rq1q30Eq20Rq2q40Eq00Rq3q41Rq4qz21Lб) i = 1, D = 13k+2, k ≥ 1.k ≥ 1;7.2. Машина Тьюринга задана таблицей соответствия:T:01a) i = 3, D = 12k+1, k ≥ 1;q0qz20Rq10Rq1qz20Rq20Rq2q30Rq21Rq3q41Lq10Eq4q50Lq41Lq5qz10Rq51Lб) i = 1, D = 13k+2, k ≥ 1.4. ФОРМАЛЬНЫЕ ГРАММАТИКИ И ЯЗЫКИ4.1. Общие сведенияВ последние три десятилетия появилось большое количество работ по общей теорииязыков и грамматик. Можно выделить четыре научных направления, которые удалосьобъединить по методам их исследования в одну общую задачу теории языков.Первое из этих направлений связано с построением формальной, или математической,лингвистики, которая начала особенно быстро развиваться в тот период, когда былисформулированы вопросы машинного перевода.

Эта проблема требовала формализациипонятий словарь, грамматика, язык, их классификации и умения относить конкретныесловари, грамматики, языки к определенному классу.Интерес к задачам такого рода еще более усилился с появлением искусственных языковпрограммирования. С появлением трансляторов проблема перевода во многом определилапостроение общей теории вычислительных машин, а сами языки программирования сталивсе более приближаться к формально построенным математическим конструкциям.Независимо от указанных двух направлений развивалось построение формальныхмоделей динамических систем. Для создания продуктивной теории эти модели должны былибыть, с одной стороны, достаточно узкими, а с другой - достаточно широкими, чтобыохватить некоторый общий класс прикладных задач.

Типичным примером такого родаявляется модель конечного автомата. Эта модель позволяет описать многие процессы,заданные на конечных множествах и развивающиеся в счетном времени, что позволилосоздать для нее продуктивную теорию. Если в эту модель ввести бесконечность по какомулибо параметру, то это приводит к общему классу систем, например, к машинам Тьюринга.Независимо и параллельно развивалась общая теория алгоритмов как ветвь современнойматематики. Развитие вычислительной техники поставило перед математической теориейалгоритмов новую задачу: стало необходимым классифицировать алгоритмы по различнымпризнакам. Эквивалентность понятий "алгоритм" и "машина Тьюринга" позволилапредположить, что поиски классификации алгоритмов окажутся связанными с поискамипромежуточных моделей между моделями конечного автомата и машиной Тьюринга.Таким образом, перечисленные четыре направления оказались тесно связанными.

Теорияязыков, порожденная чисто лингвистическими задачами, оказалась в центре интересовматематиков,занимающихсятеорией алгоритмов, и ученых, разрабатывающихабстрактные модели динамических систем и теоретические основы автоматики.Теория формальных языков и грамматик является разделом математическойлингвистики - специфической математической дисциплины,ориентированнойнаизучение структуры естественных и искусственных языков. По характеру используемогоматематического аппарата теория формальных грамматик и языков близка к теорииалгоритмов и теории автоматов.На интуитивном уровне язык можно определить как некоторое множество предложенийс заданной структурой, имеющих определенное значение. Правила, определяющиедопустимые конструкции языка, составляют синтаксис языка. Значение, или смысл фразы,определяется семантикой языка.Если бы все языки состояли из конечного числа предложений, то не было бы проблемысинтаксиса.

Но, так как язык содержит неограниченное (или довольно большое) числоправильно построенных фраз, то возникает проблема описания бесконечных языков спомощью каких-либо конечных средств.Различают следующие виды описания языков:1) порождающее, которое предполагает наличие алгоритма,последовательнопорождающего все правильные предложения языка;2) распознающее, которое предполагает наличие алгоритма, определяющегопринадлежность любой фразы данному языку.4.2. Основные понятия порождающих грамматикАлфавит - это непустое конечное множество. Элементы алфавита называютсясимволами.Цепочка над алфавитом Σ={а1, а2, …, аn} есть конечная последовательность элементоваi. Множество всех цепочек над алфавитом Σ обозначается Σ*.Длина цепочки х равна числу ее элементов и обозначается |x|. Цепочка нулевой длиныназывается пустой и обозначается символом ε.

Соответственно, непустая цепочкаопределяется как цепочка ненулевой длины. Пусть имеется алфавит Σ={а, b}. Тогдамножество всех цепочек определяется следующим образом: Σ*={ ε, а, b, aa, ab, ba, bb, aaa,aab, aba, . . .}.Цепочки x и y равны, если они одинаковой длины и совпадают с точностью до порядкасимволов, из которых они состоят.Над цепочками x и y определена операция сцепления (конкатенации, произведения),которая получается дописыванием символов цепочки y за символами цепочки x.Язык L над алфавитом Σ представляет собой множество цепочек над Σ. Необходиморазличать пустой язык L=0 и язык, содержащий только пустую цепочку: L={ε}≠0.Формальный язык L над алфавитом Σ - это язык, выделенный с помощью конечногомножества некоторых формальных правил.Пусть M и L - языки над алфавитами. Тогда конкатенация LM = {xyx∈L, y∈M}. Вчастности, {ε}L = L{ε}=L.

Используя понятие произведения, определим итерацию L* иусеченную итерацию L+ множества L:L+ =L* =∞iUL ,i =1∞iUL ,i =1где i - степень языка, L определяется рекурсивно следующим образом:L0 = {ε};L1 = L;Ln+1 = Ln L = L Ln;{ε}L=L{ε}=L.Например, если задан язык L={a}, тогда L*={ε, а, аа, ааа, …}, L+={a, aa, aaa, …}.Порождающая грамматика - это упорядоченная четверка G= (VT, VN, P, S), гдеVT - конечный алфавит, определяющий множество терминальных символов;VN - конечный алфавит, определяющий множество нетерминальных символов;Р - конечное множество правил вывода, т.е. множество пар следующего вида:u → v,где u, v ∈(VT∪VN)*;S - начальный символ (аксиома грамматики), S∈VN.Из терминальных символов состоят цепочки языка, порожденного грамматикой.Аксиомой называется символ в левой части первого правила вывода грамматики.Для того чтобы различать терминальные и нетерминальные символы, принятообозначать терминальные символы строчными, а нетерминальные символы заглавнымибуквами латинского алфавита.В грамматике G цепочка х непосредственно порождает цепочку у, если х = αuβ, у = αvβи u→v ∈ Р, т.е.

цепочка у непосредственно выводится из х, что обозначается х => у.Языком, порождаемым грамматикой G = (VT, VN, Р, S), называется множествотерминальных цепочек, выводимых в грамматике G из аксиомы:L(G) = {х | х ∈ VT*; S => *х}, где =>*- выводимость.Пример. Дана грамматика G = (VT, VN, Р, S), в которой VT = {а, b}, VN = {S}, Р = {S →aSb, S → ab). Определить язык, порождаемый этой грамматикой.Решение. Используя рекурсию, выведем несколько цепочек языка, порождаемого даннойграмматикой:S → ab;S → aSb => aabb;S → aSb =>aaSbb => aaabbb; . .

.Определим язык, порожденный данной грамматикой:L(G) = {anbn | n > 0}.Говоря о представлении грамматик, нужно отметить, что множество правил выводаграмматики может приводиться без специального указания множеств терминалов инетерминалов. В таком случае обычно предполагается, что грамматика содержит в точностите терминальные и нетерминальные символы, которые встречаются в правилах вывода.Также предполагается, что правые части правил, для которых совпадают левые части,можно записать в одну строку с использованием разделителя.

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

Тип файла
PDF-файл
Размер
528,46 Kb
Тип материала
Высшее учебное заведение

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

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