- •Глава 8
- •8.1. Введение
- •8.2. Понятия теории формальных языков
- •8.2.1. Определения
- •8.2.2. Типы грамматик
- •8.2. Понятия теории формальных языков
- •8.3. Постановка задачи синтаксического распознавания образов
- •8.4. Синтаксическое описание образов
- •8.5. Грамматики, используемые в распознавании образов
- •8.5.2. Распознавание образов, представленных графами
- •8.5.3. Распознавание древовидных структур
- •8.6 Статистический анализ
- •8.6.1. Стохастические грамматики и языки
- •8.6.2. Оценка вероятностей правил подстановки с помощью процедур обучения
- •8.7.1. Вывод цепочечных грамматик
- •Часть I. Строится нерекурсивная грамматика, порождающая в точности заданное множество выборочных цепочек. Выборочные цепочки обрабатываются в порядке уменьшения длины.
- •8.7.2. Вывод двумерных грамматик
- •8.8. Автоматы как распознающие устройства
8.2.2. Типы грамматик
В этом пункте рассмотрим грамматики, являющиеся частным случаем (8.2.1). Все эти грамматики имеют форму G=(VN, VT, P. S) и различаются лишь по типу правил подстановки, допустимых в каждой из них').
Неограниченная грамматика характеризуется правилами подстановки α→β, где α—цепочка алфавита V+ а β—цепочка алфавита V*.
Грамматика непосредственно составляющих характеризуется правилами подстановки вида α1Aα2 → α1βα2 ,где α1 и α2—элементы алфавита V*, β принадлежит V+, а А принадлежит VN. Эта грамматика допускает замещение нетерминального символа А цепочкой β только в том случае, если А появляется в контексте α1Aα2, составленном из цепочек α1 и α2.
-------------------------------
') Наряду с приведенными ниже в отечественной литературе встречаются также следующие термины:
а) неограниченная грамматика—обобщенная грамматика;
б) грамматика непосредственно составляющих — грамматика составляющих, НС-грамматика, грамматика контекстная;
в) бесконтекстная грамматика — контекстно-свободная грамматика, КС-грамматика;
г) регулярная (автоматная) грамматика — грамматика конечно-автоматная, грамматика с конечным числом состояний. Английские эквиваленты этих терминов приведены в предметном указателе в конце книги.—Прим. перед.
-------------------------------
8.2. Понятия теории формальных языков
Бесконтекстная грамматика характеризуется правилами подстановки вида А—>β, где А принадлежит множеству VN и β принадлежит множеству V+. Само название «бесконтекстная» указывает на то, что переменная A может замещаться цепочкой β независимо от контекста, в котором появляется А.
Наконец, регулярная (или автоматная) грамматика — это грамматика с правилами подстановки вида А —>aB или А—>a, где А и В—переменные из VN, а—терминальный символ из VT. Альтернативными допустимыми правилами подстановки являются А —>Bα и А—>а. Выбор одного из этих двух типов правил исключает, однако, применение правил другого типа.
Эти грамматики называют иногда грамматиками типа 0, 1, 2 и 3 соответственно. Кроме того, их часто обозначают как грамматики структуры составляющих.
Если каждое правило подстановки бесконтекстной грамматики имеет вид
A—>xBw или A -> w, где A и В—нетерминальные символы, а х и w—терминальные цепочки, то грамматика считается линейной.
Интересно отметить, что все регулярные грамматики бесконтекстны, все бесконтекстные грамматики являются грамматиками непосредственно составляющих, а все грамматики непосредственно составляющих — неограниченны.
Пример. Способы функционирования обсуждаемых грамматик показаны на следующих простых примерах грамматик.
(а) Неограниченная грамматика
G=(VN, Vt, P, S)
при
VN ={S, А, В}, Vt = { a, Ь, с}
Р: S —> аAbc
Аb —> bA
Ac —> Bbcc
bB —> Bb
аB —> ааA
аB —> s0
порождает предложения вида х= anЬn+2c n+2, где п>=0 означает длину цепочки символов. Например, для порождения цепочки х = a0b2c2 = ЬЬсс мы применяем первые четыре правила и затем последнее, т, е,
S => аAbc => аbAc => аb Bbcc => аBbbcc =>bbcc.
Заметим, что последнее правило допустимо лишь в неограниченных грамматиках.
(б) Грамматика непосредственно составляющих
G=(VN, Vt, P, S)
при
VN ={S, А, В}, Vt = { a, Ь, с}
Р: S —> аbc
S —> аAbc
Аb —> bA
Ac —> Bbcc
bB —> Bb
аB —> ааA
аB —> аа
порождает предложения вида х = а п с п где п>= I
(в) Бесконтекстная грамматика
G=(VN, Vt, P, S)
при
VN ={S }, Vt = { a, Ь }
Р: S —> аb
S —> аSb
порождает цепочки вида х = а пb п где п>= 1,
(г) Регулярная грамматика
G=(VN, Vt, P, S)
при
VN ={S }, Vt = { a, Ь }
Р: S —> а
S —> b
S —> аS
S —> bS
порождает цепочки, состоящие из символов а и Ь.
Как и предполагалось, неограниченные грамматики обладают значительно большей мощностью, чем грамматики трех остальных типов. Однако степень общности этих грамматик создает ряд серьезных трудностей в их теоретических и практических приложениях. Это утверждение верно и для грамматик непосредственно составляющих.
Хотя в литературе часто встречаются и другие грамматические структуры, грамматики, представленные здесь, составляют основу для большей части исследований в этой области. В следующих разделах речь будет идти о расширении этих понятий и их приложении к распознаванию образов.