【问题标题】:What is the language accepted by the PDA shown below下图所示的 PDA 接受的语言是什么
【发布时间】:2020-08-24 03:09:39
【问题描述】:

我不确定我对这个问题的回答。 当我关注这个问题时,我的答案是

{a^nb^ma^n | m,n∈ N,m,n>=0}

这是对的吗?有人可以检查我的答案吗?

【问题讨论】:

    标签: pushdown-automaton


    【解决方案1】:

    假设这个 PDA 只接受状态,堆栈内容无关紧要。

    然后它接受以下所有内容:

    1. bb*,立即从状态 0 看到 b
    2. (aa)*,通过在状态 0 和 2 之间循环
    3. (a^n)b*(a^n) for n > 0 通过在状态 0 和 2 中读取 na,然后在状态 3 中读取任意数量的 b,然后在状态 4 中读取 na。

    第 3 项是您确定的,但它不包含空字符串。但是,我们的第 2 项包含空字符串,因此您没问题。因此,您的语言不包含任何非该语言的内容;你的语言是我的一个子集。

    但我的语言也是你的语言的一个子集,因为第 1 项仅对应于你的语言中 n = 0 的所有非空字符串,而我的第 2 项对应于你语言中的所有 m = 0 的字符串。

    因为你和我的语言是彼此的子集,它们是相同的,而且你的渲染比我的更紧凑和优雅。所以,我们同意您的答案是正确的。

    【讨论】:

      猜你喜欢
      • 2017-09-04
      • 2019-03-15
      • 2011-09-03
      • 1970-01-01
      • 1970-01-01
      • 2021-04-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多