Определение формальной грамматики

Формальная грамматика – это математическая система, определяющая язык посредством порождающих правил.

Определение Формальной грамматикой называется четверка вида:

,

где VN - конечное множество нетерминальных символов грамматики (обычно прописные латинские буквы);

VT - множество терминальных символов грамматики (обычно строчные латинские буквы, цифры, и т.п.), VT Ç VN;

Р – множество правил вывода грамматики, являющееся конечным подмножеством множества (VTÈ VN) + ´ (VTÈ VN) *; элемент (a, b) множества Р называется правилом вывода и записывается в виде a ® b (читается: «из цепочки a выводится цепочка b»);

S - начальный символ грамматики, S Î VN.

Для записи правил вывода с одинаковыми левыми частями вида используется сокращенная форма записи .

Пример Грамматика G 1 = ({0, 1}, { A, S }, P1, S), где множество Р состоит из правил вида: 1) 0 A 1;2)0 00 A 1;3) A®e.

Определение Цепочка b Î (VTÈVN) * непосредственно выводима из цепочки в грамматике (обозначается: a Þ b), если и , где , и правило вывода содержится во множестве Р.

Определение Цепочка b Î (VTÈVN) * выводима из цепочки в грамматике (обозначается a Þ* b), если существует последовательность цепочек (n ³ 0) такая, что .

Пример В грамматике G 1 S Þ*000111, т.к. существует вывод .

Определение Языком, порожденным грамматикой , называется множество всех цепочек в алфавите VT, которые выводимы из начального символа грамматики S c помощью правил множества Р, т.е. множество .

Пример Для грамматики G 1 язык L (G 1) = {0 n 1 n | n ³0}.

Определение Цепочка , для которой существует вывод SÞ*a, называется сентенциальной формой или сентенцией в грамматике .

Определение Языком, порожденным грамматикой G называется множество терминальных сентенциальных форм грамматики.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: