Innanzitutto, si noti che il risultato indica che l'unico beta redex in cui il lato destro è uguale (modulo conversione alfa) al lato sinistro è . Ci sono altri termini che si riducono a se stessi, avendo questo redex in un contesto.( λ x . x x ) ( λ x . x x )
Vedo come funziona la maggior parte delle prove di Lercher, anche se ci sono punti in cui non posso superare senza modificare leggermente le prove. Supponiamo che (uso = per alpha equivalenza), e secondo la convenzione variabile supponga che x non si verifica trasporto B .( λ x . A ) B = [ B / x ] A=XB
Contare il numero di sul lato sinistro e sul lato destro. La riduzione rimuove uno dalla Redex, oltre a quelli di B , e aggiunge come molti come ci sono in B volte il numero di occorrenze di x in A . In altre parole, se L ( M ) è il numero di λ in M e # x ( M ) è il numero di occorrenze libere di x in M, allora 1 + L ( B ) = # x (λBBXUNL ( M)λM#X( M)XM . L'unica soluzione a tale equazione diofantea è # x ( A ) = 2 (e L ( B ) = 1 ma non useremo questo fatto).1 + L ( B ) = #X(A)×L(B)#x(A)=2L(B)=1
Non capisco l'argomento di Lercher per il paragrafo sopra. Conta il numero di e termini atomici; scriviamo questo # ( M ) . L'equazione è # ( B ) + 1 = # x ( A ) × ( # ( B ) - 1 ) , che ha due soluzioni: # x ( A ) = 2 , # ( B ) = 3 e # x ( )λ#(M)#(B)+1=#x(A)×(#(B)−1)#x(A)=2,#(B)=3#x(A)=3,#(B)=2. I don't see an obvious way to eliminate the second possibility.
Let us now apply the same reasoning to the number of subterms equal to B on both sides. The reduction removes one near the top, and adds as many as there are substituted occurrences of x in A, i.e. 2. Hence one more occurrence of B must disappear; since the ones in A remain (because B contains no free x), the extra occurrence of B on the left-hand side must be λx.A.
I don't understand how Lercher deduces that A does not have B as a subterm, but this is not in fact relevant for the proof.
Dall'ipotesi iniziale, è un'applicazione. Questo non può essere il caso se A = x , quindi A stessa è un'applicazione M N , con λ 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. Since M can't have itself as a subterm, M cannot have the form λx.P, so M=x. Similarly, N=x.
I prefer a proof with no counting arguments. Suppose that (λx.A)B=[B/x]A.
A=x(λx.A)B=BBAA1A2λx.A=[B/x]A1 and B=[B/x]A2.
From the former equality, either A1=x or A1=λx.[B/x]A. In the second case, A1=λx.(λx.A1A2)B, which is not possible since $A_1 cannot be a subterm of itself.
From the latter equality, either A2=x or A2 has no free x (otherwise B would be a subterm of itself). In the latter case, A2=B.
We have shown that A=xx. The right-hand side of the initial hypothesis is thus BB, and B=λx.A = λx.xx.