有谁见过这种问题...可能关于函数理论方面的

邀请我干啥,你把它想复杂了,说的就是一个halt函数,如果停机返回1,否则返回0,然后下文估计就是说明这玩意没法实现(至少图灵机和lc没法实现),我看了半天还以为是讲type theory的
■网友
第一段
一个前提:对任何程序段p及其中的一元函数h,存在自然数 有谁见过这种问题...可能关于函数理论方面的
到它的单射
一个假设:程序段 有谁见过这种问题...可能关于函数理论方面的
中的函数halt,有如下性质:
对任意程序段p以及其中的一元函数h,如果对任意自然数m,函数h(m)p中正常结束,则halt( 有谁见过这种问题...可能关于函数理论方面的
,m)在程序段 有谁见过这种问题...可能关于函数理论方面的
中赋值为1,否则赋值为0。
要我们证明:此假设中的函数halt不存在。

第二段
证明:
首先假设存在这样的程序段 有谁见过这种问题...可能关于函数理论方面的
和函数halt
考虑如下程序段p
h(x) = ifz halt(x,x) then 0 else loop()
loop() = loop()
要使h(x)正常结束不循环,显然halt(x,x) = 0,而由假设可知,halt(x,x)赋值为0当前仅当h(x)p中正常结束。如上描述中出现矛盾,显然假设错误。

【有谁见过这种问题...可能关于函数理论方面的】 其实就是要求你构造一个程序段和函数,来举个反例。

■网友
这种表达在lisp,hsskell中见过,就是把if看成一个有返回值的闭包,有些花哨,没什么用,用函数也能实现。


    推荐阅读