Контекстно-зависимая генерация в прологе - PullRequest
0 голосов
/ 01 февраля 2019

Я заинтересован в создании элементов контекстно-зависимого языка, описанного Хомским, как описано в Классификации грамматик Хомского в разделе «Тип - грамматика 1».

(В основном, аналогично стандартной контекстно-свободной грамматике, но допускает использование нескольких символов в левой части производственного правила, включая терминалы).

Я знаю о грамматиках с определенным предложением в Прологе, но не вижу очевидногоотображение между этими и контекстно-зависимыми языками Хомского.Существует ли «универсальный» способ использования структуры DCG для описания производственных правил с несколькими символами слева или мне нужен специальный подход для каждого отдельного языка?

1 Ответ

0 голосов
/ 05 февраля 2019

Контекст с правой стороны может быть закодирован напрямую с использованием полуконтекста:

nt1, "context" --> nt2, "context".

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

...