context-free-grammar - 这种语言有下推自动机(PDA)吗?

标签 context-free-grammar formal-languages

语言是:{ An B(2n) Cn |其中 n>=0 }

我认为它有,因为你可以这样处理它:压入 A,压入 B,对于每个 C 从堆栈弹出 3 次,如果没有 C 并且堆栈为空,则返回 true,否则返回 false。

最佳答案

使用泵引理证明这不是上下文无关语言。

考虑 s = ap b2p cp
然后我们考虑vxy , |vxy|<=p, |vy|>0和 uvixyiz 在 L
我们有可能

  1. vxy = aj, j<=p
  2. vxy = aj bk, j+k<=p
  3. vxy = bj, j<=p
  4. vxy = bj ck, j+k<=p
  5. vxy = cj, j <=p

无论如何,没有常量uv英石。字符串在L中,因为vxy中只能有两个符号然后我们需要可变数量的三分之一来显示 uv

您提议的自动机在 AAAC 上失败,返回 true。它并不能保证 B 的数量是 A 的两倍。

关于context-free-grammar - 这种语言有下推自动机(PDA)吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16491361/

相关文章:

xml - DTD与XSD定义的XML语言范围

python - 确定第一组 CFG

computer-science - 是语言 {0^n 1^n 0^k | k != n} 上下文无关?

html - 需要一个用于 HTML 的简单 Bison 语法

java - 这个解析器生成器说这个语法不是 LR(1) 但我有疑问

bison - 尝试使用 bison 为 DirectX x 格式的子集制作语法的移位/减少冲突

math - 确保: Pumping lemma for infinite regular languages only?

python - PLY中双括号的含义

java - Java 8 CFG 中无法访问的规则?

python - 尝试生成简单形式语法的所有句子