두 가지 반례는 다음과 같습니다.
- (λx.bx(bc))c 및 (Plotkin).(λx.xx)(bc)
- (λx.a(bx))(cd) 및 (Van Oostrom).a((λy.b(cy))d)
아래의 자세한 예는 Lambda Calculus : Syntax and Semantics by HP Barenredgt, 개정판 (1984), 연습 3.5.11 (vii)에 나와 있습니다. Plotkin (정확한 참조가 아님)에 기인합니다. 나는 Take Five : Easy Expansion Exercise (1996) [ Voltage van Oostrom]의 다른 반례에 대한 증거로 수정 된 불완전한 증거를 제시 한다 .
증명의 기초는 표준화 정리이며, 특정 형식의 베타 확장 만 고려할 수 있습니다. 직관적으로 말하면 표준 축소 는 모든 축소를 왼쪽에서 오른쪽으로 만드는 축소입니다. 보다 정확하게는, 감소는 비표준이며, 단계 이의 레 덱스가 이전 단계 의 레 덱스의 좌측에 대한 레 독스의 잔류 ; redex에 대한 "left"와 "right" 는 redex가 계약 될 때 제거 되는 의 위치에 의해 정의됩니다 . 표준화 정리는 이면 에서 표준 축소가 있음 을 나타 냅니다.MiMjλM→∗βNMN
이고 이라고하자 . 두 가지 용어 모두 한 단계 로 로 줄어 듭니다 .L=(λx.bx(bc))cR=(λx.xx)(bc)bc(bc)
과 같은 공통 조상 가 있다고 가정합니다 . 표준화 정리 덕분에 두 감소가 모두 표준이라고 가정 할 수 있습니다. 일반성을 잃지 않고 가 이러한 감소가 다른 첫 번째 단계 라고 가정하십시오 . 이 두 감소 중에서 첫 단계의 redex가 다른 쪽의 왼쪽에있는 것으로하고 쓰십시오 여기서 은이 수축의 맥락입니다. 은 redex입니다. 다른 감소로 보자 .AL←∗βA→∗βRAσA=C1[(λz.M)N]C1(λz.M)Nτ
는 표준이고 첫 번째 단계는 의 구멍 오른쪽에 있기 때문에 이나 왼쪽 에서 수축 할 수 없습니다 . 따라서 최종 용어 양식이다 의 부분 및 그들의 구멍의 왼쪽이 동일, 및 입니다. 이후 에서 감소시킴으로써 시작 상기 좌측 줄이고 결코 최종 기간은 형태이어야 의 위치를 부분τC1C1τC2[(λz.M′)N′]C1C2M→∗βM′N→∗βN′σC1C3[S]C3C 1 C 2 M [ z ← N ] → ∗ β S구멍의 왼쪽에있는 및 의 왼쪽 부분 과 합니다.C1C2M[z←N]→∗βS
과 각각 에는 최상위 수준에서 응용 연산자 왼쪽에 단일 람다가 포함되어 있습니다. 는 의 람다를 보존 하기 때문에 ,이 람다는 또는 이 의 최종 항 중 어느 하나 이고,이 항에서 감소에 의해 적용의 인수가 얻어진다 . redex는 최상위 수준에 있으며 이는 입니다.LRτλz.MLRτNC1=C2=C3=[]
만약 만료 , 다음 , 및 . 경우 있는 하위 갖는 다음이 자손은 또한 줄여야 의 정상적인 형태 . 특히, 어떠한 하위 람다는 그렇게 할 수 없다 형태의 수축 subterm 수 의 하위 . 감소하는 의 유일한 하위 항 이후τRM→∗βzzN→∗βbcM[z←N]→∗β(λx.bx(bc))cNLbcNNσN P N N의 L의 B c b c N L b cNˇPNˇNLbc인 , 유일한 가능한 하위 의 전적으로 발생 인 자체.bcNLbc
만약 만료 , 다음 , 및 . 에 의 자손이 있으면 이 자손도 합류에 의해 로 감소해야합니다 .τLM→∗βbz(bc)N→∗βcM[z←N]→∗β(λx.xx)(bc)NRc
이 시점에서 van Oostrom에 따르면 결론은 쉽게 따라야하지만 뭔가 빠졌습니다 의 자손을 추적하면 대한 정보를 얻는 방법을 알 수 없습니다 . 불완전한 게시물에 대한 사과, 나는 그것을 하룻밤 생각합니다.NM