Формальные грамматики — различия между версиями
Filchenko (обсуждение | вклад) (Определение вывода за 1 шаг исправил) |
Filchenko (обсуждение | вклад) (Определение вывода за ноль или более шагов исправил) |
||
Строка 25: | Строка 25: | ||
{{Определение | {{Определение | ||
|definition = | |definition = | ||
− | <tex>\alpha \Rightarrow^* \beta</tex> (<tex>\beta</tex> выводится из <tex>\alpha</tex> за ноль или более шагов) | + | <tex>\alpha \Rightarrow^* \beta</tex> ('''<tex>\beta</tex> выводится из <tex>\alpha</tex> за ноль или более шагов'''):<br/> |
− | + | <tex>\exists \gamma_1, \gamma_2,...,\gamma_n : \alpha \Rightarrow \gamma_1 \Rightarrow \gamma_2 \Rightarrow ... \Rightarrow \gamma_n \Rightarrow \beta</tex> | |
− | <tex>\alpha \Rightarrow \gamma_1 \Rightarrow \gamma_2 \Rightarrow ... \Rightarrow \gamma_n \Rightarrow \beta</tex> | ||
}} | }} | ||
Версия 03:54, 10 ноября 2011
Определение: |
Нетерминал - элемент, представляющий некоторую сущность языка (например часть формулы) и не имеющий конкретного значения. |
Определение: |
Формальная грамматика - это способ описания формального языка, представляющий собой четверку алфавит, - набор нетерминалов, - начальный символ грамматики, - набор правил вывода | , где -
Определение: |
Терминал - элемент фалфавита |
Определение: |
| ( выводится из за один шаг):
Определение: |
Определение: |
Язык грамматики - все последовательности терминалов, которые можно получить из начального символа по правилам вывода. |
Примеры грамматик
Правильные скобочные последовательности
Вывод строки
:Арифметические выражения