Lambda约化证明sk=ki
您好,我在证明这些组合子S K=K I时遇到困难 括号[]中的步骤只是告诉你我正在做的步骤。例如,λyz.x z(y z)中的[λxy.x/x]意味着我将用(λxy.x)替换表达式λyz.x z(y z)中的每个x 到目前为止,我尝试的是降低S K,我得到了以下结果:Lambda约化证明sk=ki,lambda,lambda-calculus,proof-of-correctness,k-combinator,s-combinator,Lambda,Lambda Calculus,Proof Of Correctness,K Combinator,S Combinator,您好,我在证明这些组合子S K=K I时遇到困难 括号[]中的步骤只是告诉你我正在做的步骤。例如,λyz.x z(y z)中的[λxy.x/x]意味着我将用(λxy.x)替换表达式λyz.x z(y z)中的每个x 到目前为止,我尝试的是降低S K,我得到了以下结果: S K (λxyz.x z(y z)) (λxy.x) [λxy.x / x] in λyz.x z(y z) (λyz. (λxy.x) z(y z)) [z/x] in λy.x (λyz. (λy.z) (y z)) [y
S K
(λxyz.x z(y z)) (λxy.x)
[λxy.x / x] in λyz.x z(y z)
(λyz. (λxy.x) z(y z))
[z/x] in λy.x
(λyz. (λy.z) (y z))
[y/y] in λy.z
(λyz. z z)
K I
(λxy.x) (λx.x)
[λx.x / x] in λy.x
λy. λx.x
然后减少K I,我得到:
S K
(λxyz.x z(y z)) (λxy.x)
[λxy.x / x] in λyz.x z(y z)
(λyz. (λxy.x) z(y z))
[z/x] in λy.x
(λyz. (λy.z) (y z))
[y/y] in λy.z
(λyz. z z)
K I
(λxy.x) (λx.x)
[λx.x / x] in λy.x
λy. λx.x
虽然这两个答案似乎不等于我(λyz.z z)和λy。λx.x
有人能给我解释一下我做错了什么吗?谢谢。
(λy.z)(y z)
减少到只z
,而不是z
,所以(λyz.(λy.z)(y z))
就是λyz。z
,与λy相同。λx。x
(λy.z)(y z)
减少到仅z
,而不是z
,因此(λyz.(λy.z)(y z))
是λyz。z
,与λy相同。λx。x
啊,好的,谢谢!你能解释一下为什么(λy.z)(y z)被简化为z吗?第二个z发生了什么?在(λy.z)(y z)
中,(λy.z)
λλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλ。我认为在(λy.z)中被替换的只是y,而另一个z只是剩下的。谢谢你的澄清。啊,好的,谢谢你!你能解释一下为什么(λy.z)(y z)被简化为z吗?第二个z发生了什么?在(λy.z)(y z)
中,(λy.z)
λλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλλ。我认为在(λy.z)中被替换的只是y,而另一个z只是剩下的。谢谢你澄清这一点。