Jan Willem Klop的"(L L L ...)" Y组合器如何工作?

时间:2020-03-06 14:30:30  来源:igfitidea点击:

我了解什么是Y组合器,但不了解维基百科页面上的"新型"组合器示例:

Yk = (L L L L L L L L L L L L L L L L L L L L L L L L L L)

Where:

    L = λabcdefghijklmnopqstuvwxyzr. (r (t h i s i s a f i x e d p o i n t c o m b i n a t o r))

这是如何运作的?

解决方案

定点组合器" C"的本质是" C f"减小为" f(C f)"。只要这样做,我们对C采取什么都没关系。所以代替

(\y f. f (y y f)) (\y f. f (y y f))

你也可以

(\y z f. f (y y y f)) (\y z f. f (y y y f)) (\y z f. f (y y y f))

基本上,我们需要某种形式的东西

C t1 t2 ... tN

其中,对于某些" i"," ti = C",并且

C = \x1 x2 .. xN f. f (xi u1 u2 ... xi ... u(N-1) f)

其他术语" tj"和" uj"实际上并未"使用"。我们可以看到Klop的L'具有这种形式(尽管他使用了所有ti都是L的事实,因此第二个xi也可以是任何其他xj`)。