Functional programming 什么是Lambda定义?

Functional programming 什么是Lambda定义?,functional-programming,lambda-calculus,Functional Programming,Lambda Calculus,当我阅读有关lambda微积分的内容时,我偶然发现了lambda可定义性这个词。有人可以解释一下这是什么,因为我找不到任何好的资源 谢谢参见论文,其中lambda可定义函数(来自Church)是那些赋予我们函数的函数。图灵表明,可在图灵机器上实现的程序相当于lambda可定义函数。更一般地说,有一系列研究试图在一大类语言上描述“lambda可定义性”。“lambda可定义性”本身通常是相对于以集合形式给出的语言语义而言的。对于我们语言中的类型T,编写|T |,将其解释为一个集合。现在,取|T的一

当我阅读有关lambda微积分的内容时,我偶然发现了lambda可定义性这个词。有人可以解释一下这是什么,因为我找不到任何好的资源


谢谢

参见论文,其中lambda可定义函数(来自Church)是那些赋予我们函数的函数。图灵表明,可在图灵机器上实现的程序相当于lambda可定义函数。

更一般地说,有一系列研究试图在一大类语言上描述“lambda可定义性”。“lambda可定义性”本身通常是相对于以集合形式给出的语言语义而言的。对于我们语言中的类型
T
,编写
|T |
,将其解释为一个集合。现在,取
|T
的一个元素——称它为
e
。我们想知道在我们的语言中是否有一个术语——称它为
x:T
(T类型的x),这样| x|就是
e
。如果有这样一个术语,那么我们说,
t
是lambda可定义的

现在,在我们的完美世界中,当我们将一种语言解释为集合时,我们想说,与每种类型相关联的集合正是那些包含该类型的lambda可定义元素的集合,并且只包含lambda可定义元素(完备性)。这也很好,也许可以说,我们可以提供一种算法来确定集合中声明的元素是否具有相关的lambda项(可判定性)

现在,我们通常不只是建模成集合,而是建模成其他有趣的数学结构。我们不只是从lambda演算中建模,而是从其他相关系统中建模,如Plotkin的PCF或类似系统。但研究中的属性通常仍被称为“lambda可定义性”


经过几十年的研究,在这方面仍然存在许多悬而未决的问题——尽管某些低阶项已被证明具有可判定的lambda可定义性(经典结果涉及高达二阶的项),但许多项并不容易产生。本文(“Ralph Loader的lambda可定义性的不可判定性”)给出了一个重要的不可判定性结果,并描述了一些结果:

你能给出一个引用和来源吗?