【发布时间】:2018-02-02 22:44:01
【问题描述】:
如何使用下面给出的加法表示法在 lambda 演算中将两个数字相加?
m + n = λx.λy.(m x) (n x) y
2 = λa.λb.a (a b)
3 = λa.λb.a (a (a b))
【问题讨论】:
标签: lambda-calculus
如何使用下面给出的加法表示法在 lambda 演算中将两个数字相加?
m + n = λx.λy.(m x) (n x) y
2 = λa.λb.a (a b)
3 = λa.λb.a (a (a b))
【问题讨论】:
标签: lambda-calculus
你知道什么是 2,什么是 3,什么是加法。取值,然后将它们粘贴到操作中!
2 + 3 = (λx.λy.(m x) (n x) y) (λa.λb.a (a b)) (λa.λb.a (a (a b)))
|-------- + --------| |----- 2 -----| |------- 3 -------|
这是一个左侧带有 lambda 的应用程序。这样的术语称为redex,它可以是β-reduced。实际的减少留给读者作为练习。
【讨论】: