Еквівалентність - це просто еквівалентність в еквівалентній теорії, що обговорюється. У цьому випадку це теорія, викладена в Таблиці 1. Зауважте, що ця теорія не включає : це зробить теорію розширеною, і справа зрештою, що поважає інтенсивність , тоді як це зробить CL частково розширення. Я не впевнений, чому інша відповідь згадує .ληξλη
Зауважте, що в :λ
(M=βN)⟹(λx.M=βλx.N)(1)
Це повинно бути інтуїтивно зрозуміло: якщо є -convertible до , коли він стоїть сам по собі, то він також -convertible до , коли це подтерм .MβNβNλx.M
-права, визначається як
робить цей висновок безпосередньо можливим, коли він є частиною теорії. Його аналогом CL було б:
ξ
M(λx.M)=N=(λx.N)(ξλ)
λM(λ∗x.M)=N=(λ∗x.N)(ξCL)
Тепер справа в тому, що в CL не виконується наступне :
(M=wN)⟹(λ∗x.M=wλ∗x.N)(2)
Іншими словами, якщо два терміни слабо рівні, то це не обов'язково справедливо для їх псевдо-абстрагованих версій.
Отже, якщо до теорії CL додати , тоді ми почнемо рівняти терміни, які мають різні нормальні форми.ξCL
Примітка. Тут позначає слабку рівність. Це означає, що може бути перетворено в (і навпаки) за допомогою ряду і скорочень (можливо, також , якщо це частина теорії). Як ви, мабуть, знаєте, - це аналог CL .M=wNMNSKI=w=β
λ∗ - псевдоабстрактор, як визначено на сторінці 5 вашого документа. Він має таке властивість:
(λ∗x.M)N⊳w[N/x]M(3)
Ця властивість дозволяє легко знайти аналог CL для будь-якого -term: просто змініть на і застосуйте переклади відповідно до визначення .λλλ∗λ∗
Щоб було зрозуміло, "зустрічний приклад" у цій відповіді не є протилежним прикладом до (2). Тому що якщо ми маємо:
M=x(4)
N=(λ∗z.z)x(5)
Тоді дійсно позначає (застосувавши переклади сторінки 5, і той факт, що визначається як в кінці сторінки 4):NISKK
N=(λ∗z.z)x=Ix=SKKx(6)
Так , ми дійсно маємо , що . Однак, якщо це зустрічний приклад, ми повинні мати це . Але якщо ми перекладаємо, ми фактично отримуємо:SKKx⊳wKx(Kx)⊳wxM=wN(λ∗y.M)≠w(λ∗y.N)
(λ∗y.M)=(λ∗y.x)=Kx(7)
(λ∗y.N)=(λ∗y.SKKx)=K(SKKx)(8)
І легко перевірити, що (7) і (8) все ще слабо рівні, для:
K(SKKx)⊳wK(Kx(Kx))⊳wKx(9)
Тепер правильним зустрічним прикладом до (2) буде:
M=Kxy
N=x
Так , ми , безумовно , є , що . Однак якщо уважно перекласти абстраговані версії, то ви побачите, що обидві є різними нормальними формами - і вони не можуть бути конвертованими згідно з теоремою Церкви-Россера.Kxy⊳wxM=wN
Спочатку перевіряємо :M′
M′=λ∗x.Kxy=S(λ∗x.Kx)(λ∗x.y)=S(λ∗x.Kx)(Ky)=S(S(λ∗x.K)(λ∗x.x))(Ky)=S(S(λ∗x.K)(I))(Ky)=S(S(λ∗x.K)(SKK))(Ky)=S(S(KK)(SKK))(Ky)
Тут ви можете переконатися, що є нормальною формою.
Тут ви можете перевірити, що , як і слід було очікувати, якщо поводиться як абстрактор для CL.
M′(λ∗x.Kxy)P⊳wPλ∗
Тепер перевіряємо :
N′
N′=λ∗x.x=I=SKK
Яка нормальна форма, відмінна від , тому за теоремою Церкви-Роззера. Відзначимо також , що , тобто і "дають однаковий вихід" для довільних входів .M′M′≠wN′N′P⊳wPM′N′P
Зараз ми довели, що (2) не має місце в CL, і що теорія CL, що включає , тому прирівнюватиме терміни, які не є рівними. Але чому нас хвилює?ξ
Ну, по-перше, це робить комбінаційну інтерпретацію недосконалою: мабуть, не всі метатеоретичні властивості переносяться.λ
Крім того, і, можливо, що важливіше, хоча існують теорії розширень і CL, вони спочатку і зазвичай зберігаються в інтенсивному режимі. Інтенсивність - це приємна властивість, оскільки обчислення моделей та CL як процес, і з цієї точки зору дві різні програми (зокрема, терміни, що мають іншу нормальну форму), які завжди дають однакові результати (з рівними введеннями), не повинні рівнятися. поважає цей принцип у , і якщо ми хочемо зробити розширенням, ми можемо просто додати, наприклад, . Але введенняλλξλληξв CL більше не зробить це повністю інтенсивним (насправді, лише частково так). І це є причиною знаменитості , як зазначено в статті.ξ