zoukankan      html  css  js  c++  java
  • Computability 4: Decidability and R.E. Sets (I)

    1. Decidability

      A predicate is decidable iff its characteristic function is computable, otherwise it is undecidable. An algorithm to compute the characteristic function of a decidable predicate is a decision procedure.

      A set $A$ is a recursive set iff $xin A$ is a decidable predicate. Recursive sets are closed under union, intersection and complementation.

      Theorem. Problem '$xin W_x$' (i.e. $phi_x(x)$ is defined) is undecidable, which means $K={x|xin W_x}$ is not a recursive set.

      We prove that via the diagonal method: assume that $xin W_x$ is decidable, and then we can construct the following computable function, which is other than any unary computable function (contradiction):

          $g(x)simeqegin{cases} 0 & ext{ if } x otin W_x \  ext{undefined} & ext{ otherwise }end{cases}$

      Corollary 1. There is a computable function $h$ such that both '$xin Dom(h)$' and '$xin Ran(h)$' are undecidable.

          e.g. $h(x) = x (psi_U(x,x))$

      Corollary 2. (Halting Problem) Problem '$phi_x(y)$ is defined' is undecidable (whereas partailly decidable).

      Corollary 3. Problem '$phi_x$ is 0' is undecidable. To prove it, we define $f(x,y)simeq 0(psi_U (x,x))$, which is computable. According to the s-m-n theorem, there exists a total computable function $K(x)$ such that $phi_{K(x)}(y)simeq f(x,y)$, and hence $phi_{K(x)}simeq 0$ iff $xin W_x$. If $phi_xsimeq 0$ is decidable, then $phi_{K(x)}simeq 0$ is decidable and hence $xin W_x$ is decidable.

      Corollary 4. Problem '$phi_xsimeqphi_y$' is undecidable.

      Corollary 5. Given any number $c$, the following problems are undecidable:

        (1) (Acceptance Problem) $cin W_x$;  (2) (Printing Problem) $cin E_x$.

      Consider the following computable function and use the s-m-n theorem:

          $f(x,y)simeqegin{cases}y & ext{ if } x otin W_x \ ext{undefined} & ext{ otherwise }end{cases}$

      Corollary 6. (Rice's Theorem) For any proper subset of the unary function collection $eta$, '$phi_xineta$' is undecidable.

      We suppose there exists a unary computable function $c$ not in $eta$, and meanwhile function $b$ is in $eta$.

      The key point of this proof is to reduce the problem $xin W_x$ to the problem $phi_xineta$, which requires us to show that there is a unary computable function $K$ such that $xin W_xLeftrightarrowphi_{K(x)}ineta$, which can be proved by constructing the following function and then harness the s-m-n theorem:

          $f(x,y)simeqegin{cases}b(y) & ext{ if } x otin W_x \ c(y) & ext{ otherwise }end{cases}$

      To make this computable, it is desirable that function $c$ is $f_varnothing$. So a complete proof requires us to make proper restrictions (or rather some discussions) when we try to make use of the given conditions.

    2. Partial Decidability   

      A predicate is partially decidable iff its partial characteristic function is computable. An algorithm to compute the partial characteristic function of a predicate is a partial decision procedure.

      A set $A$ is a recursively enumerable set iff  $xin A$ is a partially decidable predicate. R.E. sets are closed under union and intersection.

      For instance, $xin W_x$ is partially decidable but $x otin W_x$ is not partially decidable. That is equal to say, $K$ defined above is an R.E. set, whereas $overline{K}$ isn't.

      Index Theorem.  

        A predicate $M(vec{x})$ is partially decidable iff there is a computable function $g(vec{x})$ such that $M(vec{x})Leftrightarrow vec{x}in Dom(g)$.

      Normal Form Theorem.  

        A predicate $M(vec{x})$ is partially decidable iff there is a decidable predicate $R(vec{x},y)$ such that $M(vec{x})Leftrightarrow(exists y)R(vec{x},y)$.

        Suppose $chi_A$ is the partial characteristic function of $M$: (1) $R(vec{x},t)equiv H_n(e,vec{x},t)$, where $phi_e=chi_A$; (2) $chi_A(vec{x})=1 (mu t R(vec{x},t))$

      Quantifier Contraction Theorem. 

        If predicate $M(vec{x},vec{y})$ is partially decidable, so is predicate $(exists vec{y})M(vec{x},vec{y})$. 

      Uniformisation Theorem.

        A partially decidable predicate $R(vec{x},y)$ owns a computable function such that:

         (1) $c(vec{x})downarrow$ iff $(exists y)R(vec{x},y)$;  and  (2) $c(vec{x})downarrow$ implies $R(vec{x},c(vec{x}))$

      Graph Theorem.

        A partial funciton $f$ is computable iff the predicate ‘$f(vec{x})simeq y$’ is partially decidable.

      Complementation Theorem.

        Predicate $M(vec{x})$ is decidable iff both $M(vec{x})$ and $ eg M(vec{x})$ are partially decidable.

        Therefore, '$P_x(y)$ is undefined' is not partially decidable, otherwise the halting problem is decidable.

      Set $A$ is many-one reducible to set $B$ ($A leq_m B$) iff there is a computable function $f$ such that $xin A$ iff $ f(x)in B$. 

      If $A$ is m-reducible to an r.e. set $B$, then $A$ must be r.e.

      A set is r.e. iff it is m-reducible to $K$, which means $K$ is the hardest r.e. set.

           

    P.S.

      (1) 欲证一个函数是不可计算的,通常用 diagonal method,构造一个“不同于所有 $phi_x$ 的可计算函数”进行归谬。

      (2) 欲证一个问题是undecidable的,通常要用s-m-n定理构造一个 total computable function 作为归约映射,将 $xin W_x$ 归约成该问题。采用这种方法得到的一个高级工具是Rice定理。

      (3) 欲证一个问题是partially decidable的,要么将该问题归约为 $xin W_x$,要么构造 patially decidable predicate $M$ 证明该问题等同于 $(exists y)M(x,y)$;欲证一个问题不是 partially decidable 的,通常将 $x otin W_x$ 归约成该问题(当然也可以用更高级的 Rice-Shapiro定理 进行归谬)。

    References:

      1. Cutland, Nigel. Computability: an introduction to recursive function theory[M]. Cambridge: Cambridge University Press, 1980

  • 相关阅读:
    多线程编程(二)--进程&&线程
    hdu2222 Keywords Search
    sqlserver 运行正則表達式,调用c# 函数、代码
    【Nutch2.2.1基础教程之2.2】集成Nutch/Hbase/Solr构建搜索引擎之二:内容分析
    ios学习之block初探
    PHP GD 生成图片验证码+session获取储存验证码
    ps 命令详解
    python --subprocess
    python --存储对象
    python --字符串格式化
  • 原文地址:https://www.cnblogs.com/DevinZ/p/4447538.html
Copyright © 2011-2022 走看看