Определение формальной грамматики
Формальная грамматика – это математическая система, определяющая язык посредством порождающих правил.
ОпределениеФормальной грамматикой называется четверка вида:
,
где VN - конечное множество нетерминальных символов грамматики (обычно прописные латинские буквы);
VT - множество терминальных символов грамматики (обычно строчные латинские буквы, цифры, и т.п.), VT ÇVN =Æ;
Р – множество правил вывода грамматики, являющееся конечным подмножеством множества (VTÈ VN)+ ´ (VTÈ VN)*; элемент (a, b) множества Р называется правилом вывода и записывается в виде a®b (читается: «из цепочки a выводится цепочка b»);
S - начальный символ грамматики, S ÎVN.
Для записи правил вывода с одинаковыми левыми частями вида используется сокращенная форма записи .
ПримерГрамматика G1=({0, 1}, {A, S}, P1, S), где множество Р состоит из правил вида: 1) S® 0A1;2)0A® 00A1;3) A®e.
ОпределениеЦепочка b Î (VTÈVN)* непосредственно выводима из цепочки в грамматике (обозначается:aÞb), если и , где , и правило вывода содержится во множестве Р.
Определение Цепочка b Î (VTÈVN)* выводима из цепочки в грамматике (обозначается aÞ*b), если существует последовательность цепочек (n³0) такая, что .
ПримерВ грамматике G1 SÞ*000111, т.к. существует вывод .
ОпределениеЯзыком, порожденным грамматикой ,называется множество всех цепочек в алфавите VT, которые выводимы из начального символа грамматики S c помощью правил множества Р, т.е. множество .
ПримерДля грамматики G1 язык L(G1)={0n1n | n³0}.
Определение Цепочка , для которой существует вывод SÞ*a, называется сентенциальной формой или сентенцией в грамматике .
ОпределениеЯзыком, порожденным грамматикой G называется множество терминальных сентенциальных форм грамматики.
Дата добавления: 2016-03-27; просмотров: 1021;