Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Распознаватели и автоматы




 

Второй распространенный метод, обеспечивающий задание языка конечными средствами состоит в использовании распознавателей (автоматов). В сущности, распознаватель - это схематизированный алгоритм, определяющий некоторое множество. Он состоит из четырех частей: входной ленты, головки чтения (/записи), управляющего устройства с конечной памятью и внешней (вспомогательной, рабочей) памяти (рис. 2.1).

Входную ленту можно рассматривать как линейную последовательность клеток (ячеек). Причем, в каждой ячейке может содержаться только один входной символ из некоторого конечного алфавита S. Самую левую и самую правую ячейки могут занимать особые символы - концевые маркеры; маркер может стоять только на правом конце ленты; его может не быть совсем.

Входная головка в каждый данный момент читает (обозревает) одну входную ячейку. За один шаг работы распознавателя входная головка может сдвинуться на ячейку вправо R, остаться неподвижной N или сдвинуться влево L. Распознаватель, который никогда не передвигает свою входную головку влево, называется односторонним. Обычно предполагается, что входная головка только читает, т.е. в ходе работы распознавателя символы на входной ленте не меняются. Но можно рассматривать и такие распознаватели - преобразователи, входная головка которых не только читает, но и пишет, например, машина Тьюринга общего вида.

Внешняя память распознавателя - это хранилище информации (данных) некоторого типа. Алфавит памяти Z конечен и информация в памяти образована только из символов этого алфавита. Предполагается, что в любой момент времени можно конечными средствами описать содержимое и структуру памяти, хотя с течением времени и работы распознавателя, объем памяти может становиться сколь угодно большим.

Поведение вспомогательной памяти для заданного класса распознавателей можно охарактеризовать с помощью двух функций: функции доступа к памяти (ФДП) и функции преобразования памяти (ФПП).

ФДП - это отображение множества состояний (конфигураций) памяти в конечное множество информационных символов, которое может совпадать с алфавитом памяти. Например, единственная информация доступная в каждый данный момент в магазине (стеке) - верхний символ магазина. Таким образом функция доступа к магазинной памяти f - это такое отображение Z * в Z, где Z - алфавит памяти, что

f(z1z2...zn) = z1,

где z i Î Z для всех

ФПП - это отображение, описывающее изменение памяти. Она отображает состояние памяти и управляющую цепочку в состояние памяти. Если предполагается, что операция над магазинной памятью заменяет верхний символ конечной цепочкой символов памяти, то соответствующую ФПП можно определить как такое отображение g: Z + ´Z * ® Z *, что

g(z1z2...zn,x1x2...xm) = x1x2...xmz2...zn,

 

где z i , x j Î Z для всех и . Если верхний символ магазина z1 заменяется пустой цепочкой, то z2 станет верхним символом магазина.

Вообще именно тип внешней памяти определяет название распознавателя. Например, распознаватель, память которого организована как магазин, называется распознавателем с магазинной памятью. (Обычно его называют автоматом с магазинной памятью или МП-автоматом.)

Ядром же распознавателя является управляющее устройство с конечной памятью, под которым можно понимать программу, управляющую поведением распознавателя. Управляющее устройство представляет собой множество состояний Q вместе с отображением d, которое описывает как меняются состояния в соответствии с текущим входным символом (т.е. находящимся под входной головкой) и текущей информацией, извлеченной из внешней памяти. Управляющее устройство определяет также в каком направлении сдвинуть входную головку и какую информацию поместить в память.

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

(1) входная головка сдвигается на одну ячейку вправо, влево или сохраняет исходное положение;

(2) в память помещается некоторая информация;

(3) изменяется состояние управляющего устройства.

Поведение распознавателя удобно описывать в терминах конфигурации - мгновенного снимка распознавателя, на котором изображены:

(1) состояние устройства;

(2) содержимое входной ленты вместе с положением входной головки;

(3) содержимое памяти.

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

Конфигурация называется начальной, если управляющее устройство находится в заданном начальном состоянии q0, входная головка обозревает самый левый входной символ на ленте, а память имеет заранее установленное начальное содержимое.

Конфигурация называется заключительной, если управляющее устройство находится в одном из состояний заранее выделенного множествазаключительных состояний F Î Q, а головка обозревает правый концевой маркер, или, если маркер отсутствует, сошла с правого конца ленты. Часто требуют, чтобы память в заключительной конфигурации тоже удовлетворяла некоторым условиям.

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

Язык, определяемый распознавателем - это множество входных цепочек, которые он допускает.

Для каждого класса грамматик в иерархии Хомского существует естественный класс распознавателей, определяющий тот же класс языков. Справедливы следующие утверждения:

 

Язык L автоматный тогда и только тогда, когда он определяется односторонним детерминированным конечным автоматом.

 

Язык L контекстно свободный тогда и только тогда, когда он определяется односторонним недетерминированным МП - автоматом.

 

Язык L контекстно-зависимый тогда и только тогда, когда он определяется двухсторонним недетерминированным линейно-ограниченным (ЛО-) автоматом.

 

Язык L рекурсивно перечислимый (без ограничений) тогда и только тогда, когда он определяется машиной Тьюринга общего вида.

 

Заметим, что все интересующие нас распознаватели называются автоматами и неслучайно термин автомат вынесен в название данного раздела и всего пособия.

 




Поделиться с друзьями:


Дата добавления: 2015-06-27; Просмотров: 761; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.017 сек.