Главная » Просмотр файлов » XIX Белоусов А.И., Ткачев СБ. Дискретная математика

XIX Белоусов А.И., Ткачев СБ. Дискретная математика (1081422), страница 108

Файл №1081422 XIX Белоусов А.И., Ткачев СБ. Дискретная математика (Зарубин В.С., Крищенко А.П. - Комплекс учебников из 21 выпуска) 108 страницаXIX Белоусов А.И., Ткачев СБ. Дискретная математика (1081422) страница 1082018-01-11СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Д.В.1. О методах сиитаксивесхого ввалила КС-лвыхов 689 2) существует не более одной команды с левой частью дЛа, причем если такая команда существует, то не существует ни одной команды с левой частью два', где а е У 0(Л) и а'— конец цепочки а, и не существует ни одной команды с левой частью даа, а Е У. Связь между ДМП-автоматами и Ьхс(и)-грамматиками устанавливается следующей теоремой. Теорема 8.14. Язык допускается ДМП-автоматом тогда и только тогда, когда он порождается некоторой Асс(х)-грамма тикой. Определение 8.14. Язык называют детперлепипровамныи ХС-лзыиоле, если он допускается некоторым ДМП-автоматом. Заметим, что поскольку для произвольного МП-автомата (в отличие от конечных автоматов), вообще говоря, не может быть построен эквивалентный ему ДМП-автомат, то класс детерминированных КС-языков строго содержится в классе всех КС-языков.

Для детерминированных КС-языков может быть предложена стратегия восходящего анализа, называемая стпрптпегиеб „перенос — свершиа". Суть ее состоит в следующем: входная цепочка посимвольно переписывается в магазин до тех пор, пока в магазине не сформируется основа (однозначно определяемая прочитанной частью цепочки и не более чем й буквами непрочитанной части для некоторого фиксированного й > О). Сформированная в магазине основа заменяется соответствующим нетерминалом.

Если после этой замены в верхних ячейках магазина опять получилась основа, то она вновь всвертываетсяв в нетерминал, и так до тех пор, пока не окажется, что либо вся входная цепочка прочитана, а в магазине кроме начального символа в верхней ячейке осталась аксиома грамматики, либо цепочка еще не прочитана, а в верху магазина основы нет, либо, наконец, цепочка прочитана, а в верху магазина ни аксиомы, ни основы нет. 690 8. КОНТЕКСТНО-СВОБОДНЫЕ ЯЗЫКИ В первом случае мы имеем „допуск" цепочки (успешный результат синтаксического анализа), во втором необходимо возобновить процесс „переноса", т.е. продолжить переписывание входной цепочки в магазин, а в третьем констатировать „недопуск" (синтаксическую ошибку). Согласно теореме 8.14, подобный алгоритм может быть запрограммирован в системе команд некоторого ДМП-автомата (точнее, ДМП-автомата с выходной лентой, на которой записываются номера применяемых правил грамматики и/или сигнал ошибки).

Строгая теория ЬВ(я)-грамматик весьма сложна и никак не может быть даже фрагментарно изложена в рамках настоящего учебника. Мы рассмотрим в заключение один пример. Пример 8.26. Приведем ДМП-автомат для анализа языка. правильных скобочных структур, порождаемых грамматикой Я -~ () ~ (о') ~ о'о'. Точнее, мы рассмотрим язык правильных скобочных структур с „концевым маркером" *: записывая на ленту правильную скобочную структуру, в конце ставим символ *. Система команд анализирующего ДМП-автомата имеет следующий вид: В этой системе команд до и дэ — соответственно начальное заключительное состояния; а Е ((,)); а' Е ((, ),Я); П вЂ” на- 9оаП -+ 91 Па, доаа' -+ 91 а'а, 91ЛО -+ 918, 91Л(Я) -+ 918, 91ЛЯЯ-+ д,Я, 91Л7 + 9071 91ЛПа -+ 90Па, 91аПЯ -+ 91ПЯа, 91*Пэ" -+ 90П.

(1) (2) (8) (4) (5) (6) (7) (8) (9) Д.8.1. О методак снптакснческого анллнэа КС-клыков 691 чальный символ магазина (нззываемый иногда „маркером дна магазина"); у — произвольная цепочка, длина которой равна 3 и которая не равна (Я) и не оканчивается цепочкой 0 или ЯЯ. Легко убедиться в том, что записанная система команд действительно определяет ДМП-автомат (см. теорему 8.13). Команды (1) и (2) обеспечивают перенос в магазин входной цепочки, команды (3) — (5) — команды свертки, команды (6) — (8) обеспечивают переход нз фазы свертки в фазу переноса, если в магазине нет основы, а команда (9) переводит автомат в заключительное („допускающее") состояние в случае правильной входной цепочки.

Проанализируем на данном ДМП-автомате цепочку х = Ц))0*, которая является правильной скобочной структурой. Имеем последовательность конфигураций": ) (чо 0) 0* пО ~ (91 )) О* п(0 ) (чо )) О* п(0 ) е (91 )О* п(0> е (91,>0*,п(Я> ) (4уо,)0*,п(з> ) )- (дм О*, п(Я)) Е- (91, О*, ПЯ) $- (д1 )* и еО ) )- (бо,)*,П,90 )- (9,+,пят> )- (91,*,пят> )- )-( м,~,пя>)-(9„Л,П>. у Рассмотрение перехода от ЬВ(к)-грамматик к ДМП-автоматам и наоборот выходит за рамки нашего изложения.

На простейшем примере мы продемонстрировали только работу детерминированного восходящего анализатора. 'Здесь мы нспольэоваен угловые скобкн () дле обоэначеннл конфнгурацвй, чтобы не путать с круглыми скобкамн (), лвллввцнмнса термнналамн грамматики. 692 а кОнтекстнО-сВОБОдные языки Дополнение 8.2. Семантика формальных языков Классическая теория формальных языков, как уже отмечалось, занималась исключительно синтаксисом языков, изучая методы порождения н распознавания множеств слов. Семантиика формальных языков, сравнительно молодал ветвь теории, занимается способами сопоставленнл некоего „смысла" словам (цепочкам) языка. Необходимость в построении точного математического понлтня „смысла" днктуется развитием информационных технологнй, прежде всего тютнологнн проектирования компнллторов.

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

Так как лексемы обычно являются элементамн некоторого регулярного языка, то базовой моделью для лексического анализатора является модель конечного автиоматиа. Если текст программы успешно прошел этап лексического анализа, то тогда проверяетсл его глобальнгл сннтакснческгл правильность. Прн этом каждая лексема рассматрнваетсл как буква. Здесь применяются методы синтаксического англнз, в частности рассмотренные вьппе (см. Д.8.1).

В предположении, что синтаксис языка программирования описан КС-граммапти- Д.8.2 Семавтнка формальных язьпсов 693 кой, основой для построения синтаксических анализаторов, как мы уже видели, выбирается модель МП-автиомаща. По завершении синтаксического анализа строится дерево вывода входной программы. После этого переходят к этапу генерации объектного кода, т.е. внутреннего машинного представления входного текста. Это значит, что выполняется перевод с некоторого языка программирования на язык машинных кодов. Но чтобы выполнить перевод текста на другой язык, необходимо каким-то образом понять его „смысл". Следовательно, анализ уже синтаксически проверенной программы с точки зрения ее „смысла" (семантический аналю) необходимо предшествует самой генерации объектного кода.

И прежде всего необходимо уточнить математически, что такое „смысл" (как раньше мы математически определяли синтаксис в терминах грамматик и автоматов). В этом дополнении мы рассмотрим некоторые методы формального (математического) определения семантики для КС- языков. Тем самым мы всюду в дальнейшем предполагаем, что язык, семантика которого определяется, может быть задан некоторой КС-грамматикой. Сразу же необходимо сделать уточнение. Как мы уже заметили ранее, исследуя явление неоднозначное~ив в КС-языках, „смысл" следует сопоставлять не самим словам языка, а деревьям их вывода: меняя дерево вывода данной цепочки, мы меняем и ее „смысл", понимаем ее по-другому (см.

8.1). Далее, можно сопоставлять „смысл" не только словам языка, точнее, деревьям вывода этих слов из аксиомы грамматики, но и так называемым фразам языка — терминальным цепочкам, выводимым ю разных нетерминалов грамматики. Например, фраза „...а так как мне бумаги не хватило" не является законченным предложением русского языка, но имеет, очевидно, какой-то „смысл". Точно так же оператор присваивания, „вынутый" из какой-то программы на какомто языке программирования, не является „программой", не может рассматриваться как элемент данного языка, но мы 694 8. КОНТЕКСТНО-СВОБОДНЫЕ ЯЗЫКИ в состоянии сопоставить ему тот или иной „смысл".

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

Тип файла
DJVU-файл
Размер
5,42 Mb
Тип материала
Высшее учебное заведение

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

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