标签: functional-programming lambda-calculus
给出两个lambda项,如果它们的(可能是无限的)Bohm树相等,则它们相等。在此定义下,例如(Y λr.λt.(t r))和(Y λr.λt.t (λt. t r)相等,尽管没有正规形式,因为两个术语具有相同的无限Bohm树。由于这减少了停顿问题,因此我们能拥有的最好功能是概率函数。我的问题是:有没有一种有效的,最好是简单的算法,能够确定某些大型公共项中两个λ项是否相等?
(Y λr.λt.(t r))
(Y λr.λt.t (λt. t r)