проблема создания простой контекстно-свободной грамматики, которая имеет некоторые условия

Документация использует literal_binds для печати запроса q, включая параметры:

print(q.statement.compile(compile_kwargs={"literal_binds": True}))

, упомянутый выше подход имеет оговорки, что он поддерживается только для базовых типов, таких как ints и strings, и, кроме того, если bindparam () без предварительно заданного значения используется напрямую, он также не сможет выполнить это.

1
задан Raduan Santos 18 January 2019 в 11:23
поделиться

1 ответ

Начните с языка, подобного {a^n c b^n | n >= 0}, который будет иметь правило, которое потребляет a для каждого b, и наоборот:

S -> A | ε
A -> aAb | c

Затем используйте тот факт, что другой способ сказать m >= n значит сказать m = n + k | k >= 0. Таким образом, вы можете выразить свой язык как {a^n c b^n b^k | n >= 0, k >= 0}, который я оставлю вам в качестве упражнения для построения.

0
ответ дан Welbog 18 January 2019 в 11:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: