我在网上找到了 Mike Gordon 的函数式编程 说明简介 ,我正在努力完成它。在第 9 页有这个问题:
Find an example to show that if V1 = V2 , then even if V2 is not free in E1,
it is not necessarily the case that:
(λ V1 V2 . E ) E1 E2 = E [E1/V1][E2/V2]
我猜我可以说因为 V1 和 V2 是相等的,我们可以这样重做:
(λ V2 V1 . E ) E1 E2
因此说
(λ V1 . E[E1/V2] ) E2
鉴于 E1 中 V2 不是免费的规定。但是我们不能说
E[E1/V2][E2/V1]
因为 E2 必然有 V1 免费。还是我错过了什么?