ГЕНЕРАТИВНАЯ ГРАММАТИКА
Порождающая грамматика (генеративная грамматика, англ. generative grammar) — формализм генеративной лингвистики, связанный с изучением синтаксиса. В рамках подхода порождающей грамматики формулируется система правил, при помощи которых можно определить, какая комбинация слов оформляет грамматически правильное предложение. Термин впервые введён в научный оборот американским лингвистом Ноамом Хомским в конце 1950–х годов. Цель лингвистической теории по Хомскому заключается в том, чтобы объяснить факт поразительно быстрого усвоения родного языка ребенком на основе явно недостаточного внешнего стимула, то есть той информации, которая может быть извлечена из речи окружающих.
Отсюда пошло другое направление — формальная грамматика. Формальная грамматика или просто грамматика в теории формальных языков — способ описания формального языка, то есть выделения некоторого подмножества из множества всех слов некоторого конечного алфавита.
Различают порождающие и распознающие (или аналитические) грамматики — первые задают правила, с помощью которых можно построить любое слово языка, а вторые позволяют по данному слову определить, входит оно в язык или нет. Далее приведем основные термины. Терминал (терминальный символ) — объект, непосредственно присутствующий в словах языка, соответствующего грамматике, и имеющий конкретное, неизменяемое значение (обобщение понятия «буквы»). В формальных языках, используемых на компьютере, в качестве терминалов обычно берут все или часть стандартных символов ASCII — латинские буквы, цифры и спец. символы. Нетерминал (нетерминальный символ) — объект, обозначающий какую–либо сущность языка (например: формула, арифметическое выражение, команда) и не имеющий конкретного символьного значения.
Словами языка, заданного грамматикой, являются все последовательности терминалов, выводимые (порождаемые) из начального нетерминала по правилам вывода.
Чтобы задать грамматику, требуется задать алфавиты терминалов и нетерминалов, набор правил вывода, а также выделить в множестве нетерминалов начальный.
Итак, грамматика определяется следующими характеристиками:
1) — набор (алфавит) терминальных символов;
2) N — набор (алфавит) нетерминальных символов;
3) P — набор правил вида: «левая часть» → «правая часть», где:
a) «левая часть» — непустая последовательность терминалов и нетерминалов, содержащая хотя бы один нетерминал;
b) «правая часть» — любая последовательность терминалов и нетерминалов.
4) S — стартовый (начальный) символ из набора нетерминалов.
В качестве первого примера использования картирования формальных грамматик в пространство музыкальных событий можно привести уже описанный в одной из первых статей метод Гвидо д’Ареццо.
Заинтересованные люди могут обратиться к работам, описывающим процесс работы грамматических систем. В алгоритмической композиции самое частое применение нашло одно из ответвлений генеративной грамматики — системы Линденмайера.