Что это за грамматика? Контекстно-зависимый или контекстно-зависимый
Я изучаю Формальные Языки и Теорию автоматов, и у меня есть вопрос о проблеме в книге, на которую нет ответа. вопрос в том:
Является ли этот язык контекстным, регулярным или контекстно-зависимым?
L = {an wwR bn| w является (a + b) *, wR является обратным к w и n>=0 }
Я думаю, что этот язык является контекстно-зависимым, потому что для его принятия требуется как минимум два стека.
Кто-нибудь может это прокомментировать?
Благодарю.
1 ответ
Язык a n ww R b n является языком Context Free. Мы можем написать контекстную грамматику для этого языка.
S --> aSb | R
R --> aRa | bRb | ^
^
является нулевым символом
КПК: для языка a n ww R b n
- строка префикса push
a
n
- От себя
w
- поп
w
в то время как сопоставить каждый символ с символом вw
R
- поп все
a
положить в стек и сопоставить сb
в суффиксеb
n
Примечание: при обработке строки языка a n ww R b n через PDA мы не знаем, где префикс a
n
заканчивается тогда, где w
заканчивается раньше w
R
Начнем с того, что для этого языка мы не можем нарисовать детерминированную модель КПК, хотя недетерминированный КПК возможен. И важно то, что класс недетерминированного КПК не совпадает с классом детерминированного КПК, что означает, что языки, свободные от детерминированного контекста, не равны недетерминированному свободному контексту. (фактически детерминированный является подмножеством недетерминированного КЛЛ)