Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Книги / TURIN / ЛЕКЦИИ10.DOC
Скачиваний:
42
Добавлен:
10.12.2013
Размер:
151.04 Кб
Скачать

10.2. Формальные грамматики и их свойства

Одной из формальных систем является система подстановок или полусистема Туэ (в честь норвежского математика Акселя Туэ (1863-1922)), определяемая алфавитом А и конечным множеством подстановок вида

ai®bi,

где ai,bi- слова, возможно и пустые в А,®- символ подстановки (не путать с импликацией!).

В системе Туэ (в ассоциативном исчислении Туэ) используются соотношения вида

ai«bi,

понимаемые как пары подстановок

ai®bi(левая),

bi®ai(правая).

Например, пусть Р и Q- два разный слова. Предположим, что некоторое слово С1содержит вхождение слова Р и потому представляется в виде

С1=ХРY.

Такому слову С1можно поставить в соответствие слово С2, получаемое из С1подстановкой вхождениеQвместо вхождения Р:

С2=XQY.

Если Р - слово "пара", а Q- слово "по", то слову "парад" соответствует слово "плод".

В то же время можно поступить и наоборот: заменить любое вхождение Qвхождением Р:

Р«Q:

"ара"«"по".

для слов "парад" и "парк":

"ад"«"к".

Это соотношения Туэ.

Слова "парк" и "парад" называют смежными. Смежны слова "парад" и "плод", однако "парк" не смежно со словом "плод".

В полусистеме Туэ подстановка ai®biинтерпретируется как правило выводаRi. Используя эти полусистемы Хомский в 50-е годы сформировал и развил теорию так называемых формальных грамматик, являющихся их частным случаем.

Пусть V- непустое множество символов - алфавит (словарь) и тем самым множествоV*всех конечных слов в алфавитеV. Формальный языкlв алфавитеV- это произвольное подмножествоlÍV*. Так, еслиVсодержит буквы русского языка, знаки препинания, символы пробелов и т.д., тоV*- гипотетическое множество, включающее все произведения великой русской литературы как уже написанное, так и еще не написанное.

В качестве символов могут также использоваться слова, математические знаки, геометрические образы и т.п. Произвольная конечная последовательность символов wназывается цепочкой в алфавитеV. Число символов в цепочке называют ее длиной и обозначают|w|.

Цепочки получаются с помощью операции конкатенации (соединения). Например, w=a1a2a3, гдеaiÎV. Конкатенация ассоциативна, но не коммутативна.

Таким образом, язык- это множество всевозможных цепочек в словареV. Языки задаютсяграмматикой- системой правил, порождающих все цепочки данного языкаи только их.

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

Различают распознающие, порождающие и преобразующие формальные грамматики.

Формальная грамматика называется распознающей, если для любой рассматриваемой цепочки она решает, является ли эта цепочка правильной в смысле данной грамматики.

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

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

Рассмотрим класс порождающих формальных грамматик.

Порождающей грамматикой Gназывают четверку

G=<T,N,P,S>,

где Т - конечное непустое множество терминальных (основных) символов - терминальный (основной) словарь; N- конечное непустое множество нетерминальных (вспомогательных) символов - нетерминальный (вспомогательный) словарь; Р - конечное непустое множество правил вывода (продукций, правил переписывания);S- начальный символ.

Т - терминальный словарь - набор исходных символов, из которых строятся цепочки, порождаемые грамматикой; N- нетерминальный словарь - набор вспомогательных символов, обозначающих классы исходных символов; ТIN=Æ. Конечное множествоV=ТUN- есть полный словарь грамматикиG.

Правило вывода - конечное непустое множество двухместных отношений вида j®y, гдеjиy- цепочки в словареV, а символ "®" будем понимать как "заменить на".

Цепочка bнепосредственно выводима из цепочкиaв грамматикеG(обозначениеaÞGb; индексGопускается, если понятно, о какой грамматике идет речь), если

a=a1 ja2,b=a1ya2,{j®y}ÎР.

Цепочка bвыводима изa, если существует последовательностьe0=a,e1,e2,...en=b, такая, что"i=0,1,...,n-1eiÞei+1.

Эта последовательность называется выводом bизa, аn(число элементов, отличных отa) - длиной вывода.

Выводимость bизaобозначаетсяaÞnb(если нужно указать длину вывода).

Языком L(G), порождаемым грамматикойG, называется множество всех цепочек в терминальном словаре Т, выводимых изS, гдеS- начальный символ, обозначающий класс языковых объектов, для которых предназначена данная грамматика. Начальный символ называют целью грамматики или ее аксиомой.

Грамматики GиG'эквивалентны, еслиL(G)= L(G').

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

Рассмотрим примеры.

Пример 1. Пусть грамматика задана следующим образом:

Т={а,в},N={S,A,B}, S=S, Р{1. S®aB; 2. S®аВ;

Соседние файлы в папке TURIN