想知道下推自动机解决方案是否正确

时间:2015-12-03 15:49:53

标签: computation-theory pushdown-automaton

我有一个问题说:

构建一个接受语言的PDA {a ^ i b ^ j | 0< = i< = j}

这是给定的解决方案:

  δ ( q0, a, z ) = ( q0, az )   read a, push a
  δ ( q0, a, a ) = ( q0, aa )
  δ ( q0, b, a ) = ( q1, λ )   read b, pop a
  δ ( q1, b, a ) = ( q1, λ )
  δ ( q1, λ, z ) = ( qf, z )   end of string, stack empty
  δ ( q1, b, z ) = ( q1, z )   check the additional b’s 

但根据我的理解,可能的输入字符串将以b开头,因为我可以是0而a ^ i可以是1,而j可以是1而b ^ j可以是b,这不意味着应该是一句话:

δ(q0,b,z)=(q1,z)?

还是我误解了什么?

1 个答案:

答案 0 :(得分:0)

是的,你是对的。

实际上,上述PDA接受{a ^ i b ^ j | 1< = i< = j}