我有三个相关的子问题,下面由要点突出显示(不,如果您想知道的话,不能将它们拆分)。安德烈·鲍尔(Andrej Bauer)在这里写道,某些功能可以通过图灵机实现,而不是通过lambda微积分实现。他推理的关键步骤是:
但是,如果使用lambda演算,则[c]程序应该从表示函数f的lambda项中计算出一个表示Turing机的数字。这是不可能做到的(如果您将其作为一个单独的问题来问,我可以解释为什么)。
- 我想查看解释/非正式证明。
我在这里看不到如何应用莱斯定理。因为将谓词应用于等效项会产生相同的结果,因此它适用于“此吐鲁吐机T和该λ项L是否相等?”的问题。但是,所需的函数可能针对不同但等效的λ项计算不同但等效的TM。
- 而且,如果问题在于反省lambda项,我认为传递lambda项的Gödel编码也是可以接受的,不是吗?
一方面,鉴于他的示例涉及到在lambda演算中计算图灵机完成给定任务所需的步骤数,所以我并不感到惊讶。
- 但是,由于lambda演算无法解决与Turing机相关的问题,因此我想知道是否可以为lambda演算定义一个类似的问题,并证明它不适用于Turing机,或者实际上在支持上存在差异图灵机(这会让我感到惊讶)。