По-перше, зауважте, що в результаті зазначено, що єдиний бета-перенастроювання, де права частина дорівнює (конверсія модуля альфа) до лівої, є ( λ x . X x ) . Є й інші терміни, які зводяться до себе, проводячи це перенастроювання в контексті.( λ x . x x ) ( λ x . x x )
Я бачу, як працює більшість доказів Лерчера, хоча є моменти, коли я не можу пройти, не змінивши доказів. Припустимо , що (я використовую = для альфа - еквівалентності), і відповідно з змінної конвенції припустимо , що х не відбувається вільно в B .( λ x . A ) B = [ B / x ] A=хБ
Порахуйте кількість в лівій та правій частині. Зменшення видаляє один з Redex, а також тих , B , і додає стільки , скільки є в B раз число входжень х в А . Іншими словами, якщо L ( M ) - число λ 's у M, а # x ( M ) - кількість вільних входжень x у M, то 1 + L ( B ) = # x (λББхАЛ ( М)λМ#х( М)хМ . Єдиним рішенням цього рівняння Діофантіна є # x ( A ) = 2 (і L ( B ) = 1, але ми не будемо використовувати цей факт).1 + L ( B ) = #х( A ) × L ( B )#х( А ) = 2L ( B ) = 1
Я не розумію аргументу Лерчера для вищевказаного абзацу. Він підраховує кількість і атомних термінів; запишемо це # ( М ) . Рівняння - # ( B ) + 1 = # x ( A ) × ( # ( B ) - 1 ) , яке має два рішення: # x ( A ) = 2 , # ( B ) = 3 і # x ( Aλ# ( М)# ( B ) + 1 = #х( A ) × ( # ( B ) - 1 )#х( A ) = 2 , # ( B ) = 3 . Я не бачу очевидного способу усунути другу можливість.#х( A ) = 3 , # ( B ) = 2
Застосуємо тепер те ж міркування до кількості підрядів, рівних з обох сторін. Зменшення видаляє один біля вершини і додає стільки, скільки є заміщених випадків x в A , тобто 2. Отже, ще одне виникнення B повинне зникнути; оскільки ті, що знаходяться в A, залишаються (оскільки B не містить вільного x ), додаткове виникнення B у лівій частині має бути λ x . .БхАБАБхBλx.A
Я не розумію, як Лерчер виводить, що не має B як підтерміну, але це насправді не має відношення до доказу.AB
З початкової гіпотези - додаток. Це не може бути випадком, якщо A = x , тому A є додатком M N , при λ x . M N = [ ( λ x . M N ) / x ] M = [ ( λ x . M N ) / x ] N[(λx.A)/x]AA=xAMNλx.MN=[(λx.MN)/x]M=[(λx.MN)/x]N. Оскільки не може мати себе як підтермін, M не може мати вигляд λ x . P , тому M = x . Аналогічно N = x .MMλx.PM=xN=x
Я вважаю за краще доказ без аргументів підрахунку. Припустимо , що .(λx.A)B=[B/x]A
Якщо то маємо ( λ x . A ) B = B , що неможливо, оскільки B не може бути самою підтерміною. Таким чином, оскільки права частина гіпотези дорівнює додатку, A повинен бути додатком A 1 A 2 , а λ x . A = [ B / x ] A 1 і B = [ B / x ] A 2 .A=x(λx.A)B=BBAA1A2λx.A=[B/x]A1B=[B/x]A2
З колишньої рівності або або A 1 = λ x . [ В / х ] . У другому випадку A 1 = λ x . ( λ x . A 1 A 2 ) B , що неможливо, оскільки $ A_1 не може бути самою підтерміною.A1=xA1=λx.[B/x]AA1=λx.(λx.A1A2)B
З останньої рівності або або A 2 не має вільного x (інакше B буде підметою самого себе). В останньому випадку, 2 = B .A2=xA2xBA2=B
Ми показали, що . Права частина початкової гіпотези, таким чином, B B , а B = λ x . A = λ x . х х .A=xxBBB=λx.Aλx.xx