【问题标题】:How can I show reduction from every language in RE to HP如何显示从 RE 中的每种语言到 HP 的减少
【发布时间】:2015-02-01 12:53:12
【问题描述】:

如果对于 RE 中的每个 L',L 被认为是 Hard-RE,则从 L' 减少到 L (L'

如何证明 HP 是完全可重构的?我需要展示从 RE 中的每种语言到 HP 的减少..

【问题讨论】:

    标签: turing-machines computation


    【解决方案1】:

    (假设 RE 表示 recursively enumerable 而 HP 表示 halting problem

    HP 在 RE 中微不足道

    考虑图灵机,给定图灵机 M[a] 的描述 a 和一些输入 b,它只是模拟运行M[a] 输入 b 直到它停止;当它这样做时,它会输出 TRUE。这台机器将输出 TRUE iff M[a]b 时停止,并在 M[a] 时发散分歧;所以它是停止问题的部分决定因素。

    HP 是 RE-Hard

    也就是说,给定 RE 中的语言 L,它可以简化为 HP:因为 L 在 RE 中,所以存在一个图灵机 M[m(L)] 使得对于任何输入 b, M[m(L)](b) 将执行以下操作之一:

    1. 如果 b∈L,则 M[m(L)](b) 停止并输出 TRUE
    2. b∉L 和 M[m(L)](b) 停止并输出 FALSE
    3. b∉L 和 M[m(L)](b) 发散

    那么,在给定 HP 的情况下,我们如何将其变成 L 的正确决策者?十分简单!只需在 (m(L), b) 上运行您的 HP 预言机!

    • 如果 HP(m(L), b) 返回 TRUE,我们知道 M[m(L)](b)收敛,所以只需运行它并返回任何 TRUE/FALSE 答案。
    • 如果 HP(m(L), b) 返回 s_FALSE_,我们知道 M[m(L)](b) 发散,这是只允许的如果 b∉L (见上面的案例 3)。所以我们然后运行M[m(L)](b);相反,我们只输出 FALSE

    因此,HP 是 RE-Complete

    Q.E.D.

    【讨论】:

    • 仅从 RE 和可还原性的定义重构这个证明,我获得了很多乐趣。
    猜你喜欢
    • 2017-06-23
    • 1970-01-01
    • 1970-01-01
    • 2023-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多