【问题标题】:How to determine which class these languages belong to?如何确定这些语言属于哪个类?
【发布时间】:2012-12-16 23:30:36
【问题描述】:

{WW} - 可判定但不是上下文无关
{WW^R} - 上下文无关,但不是常规
Σ* - 正则语言
如何确定它们属于哪个类?

【问题讨论】:

    标签: automation context-free-grammar regular-language turing-machines pushdown-automaton


    【解决方案1】:

    我的回答可能对你有帮助:

    L1 = {ww | w ∈ {a, b}* }

    不是上下文无关语言,因为(下推自动机)PDA 是不可能的(甚至是 Non-Deterministic-PDA )。为什么?假设您首先将w 推入堆栈。要将第二个w 与第一个w 匹配,您必须以相反的顺序推送第一个w(或者您需要将第二个w 与堆栈内容以相反的顺序匹配),这是堆栈无法实现的(我们可以' t 以相反的顺序读取输入)。虽然它是可判定的,因为它可以为 L1 绘制一个Turing Machine,它总是在有限步数之后减半。

    L3 = {wwR | w ∈ {a, b}* }

    语言 L3 是一种非确定性上下文无关语言,因为 n-PDA 是可能的,但对于 L3 来说有限自动是不可能的。您还可以使用 Pumping Lemma for Regular Languages 来证明这一点。

    Σ* - 正则语言(RL)

    Σ* 是正则表达式 (RE) 例如 如果Σ = {a, b} then RE is (a + b)* RE 仅适用于 RL。

    my question 中的示例可能对您更有帮助。

    【讨论】:

    • 绝对!一直在等待答案。非常感谢你帮我!!!!
    猜你喜欢
    • 2010-10-27
    • 1970-01-01
    • 1970-01-01
    • 2022-06-17
    • 1970-01-01
    • 1970-01-01
    • 2017-11-19
    • 1970-01-01
    • 2017-10-18
    相关资源
    最近更新 更多