람다 미적분의 조합 해석


10

에 따르면 피터 셀린 , 람다 미적분은 대수이다 (PDF). 이 기사 초반에 그는 다음과 같이 말합니다.

그것은 만족하지 않기 때문에 람다 계산법의 조합 적 해석이 불완전한 것으로 알려져 - 규칙 : 해석 하에서, 의미하는 것은 아니다 (Barendregt, 1984).ξM=Nλx.M=λx.N

질문 :

  • 여기서 어떤 종류의 동등성이 의미됩니까?
  • 동등성에 대한 이러한 정의가 주어지면 그 의미에 대한 반례는 무엇입니까?

답변:


7

등가는 논의중인 방정식 lambda-이론에서 등가입니다 . 이 경우, 그것은 표 1에 요약 된 이론이다.이 이론은 포함하지 않는다는 것을 주목하라 : 그렇게하면 이론이 확장 될 것이며, 결국 의 강렬함을 존중 하고 CL을 만들 것이다. 부분적으로 연장되는. 왜 다른 답변에 언급되어 있는지 잘 모르겠습니다 .η ξ λ ηληξλη

참고한다는 점에서 :λ

(1)(M=βN)(λx.M=βλx.N)

이는 직관적으로 명백해야한다 : 만약 있다 에 -convertible 그 자체로 의미 할 때, 그것은 또한 에 -convertible 그것의 subterm 때 .β N β N λ x . 미디엄MβNβNλx.M

- 규칙으로 정의 은이 추론이 이론의 일부일 때이 추론을 직접 가능하게합니다 . CL 아날로그는 다음과 같습니다. Mξ λ M

M=N(ξλ)(λx.M)=(λx.N)
λ
M=N(ξCL)(λx.M)=(λx.N)

이제 요점은 CL에서 다음을 유지하지 않는다는 것입니다 .

(2)(M=wN)(λx.M=wλx.N)

두 용어는 약하게 동일한 경우 즉, 다음이 아닌 반드시 자신의 의사 추상화 된 버전의 사실.

결과적으로 CL 이론 에 을 추가하면 다른 정규형을 갖는 항을 동일시하기 시작합니다.ξCL


노트. 여기서, 은 약한 동등성을 나타낸다. 이는 일련의 및 수축 ( 이론의 일부인 경우 도 가능)에 의해 을 (또는 그 반대로) 변환 할 수 있음을 의미합니다 . 아시다시피, 는 의 CL 유사체입니다 .M N S K I = w = βM=wNMNSKI=w=β

λ 는 문서의 5 페이지에 정의 된 의사 차단기입니다. 다음과 같은 속성이 있습니다.

(3)(λx.M)Nw[N/x]M

이 속성은 쉽게 어떤위한 CL 아날로그 찾을 수 있습니다 단지 변화 : -term 에 하고의 정의에 따라 번역을 적용 .λ λ λ λλλλ


분명히, 이 답변 의 'counter-example'은 (2)에 대한 반례가 아닙니다. 우리가 가지고 있다면 :

N = ( λ * z . z ) x

(4)M=x
(5)N=(λz.z)x

그런 다음 실제로 5 페이지의 번역을 적용하고 가 4 페이지 끝에 로 정의되어 있음 을 나타냅니다.I S K KNISKK

(6)N=(λz.z)x=Ix=SKKx

이후 , 우리는 그 사실이 . 그러나 반대의 예라면 합니다. 그러나 우리가 번역하면 실제로 다음을 얻습니다.M = w N ( λ * y . M ) w ( λ * y . N )SKKxwKx(Kx)wxM=wN(λy.M)w(λy.N)

( λ * y . N ) = ( λ * y . S K K x ) = K ( S K K x )

(7)(λy.M)=(λy.x)=Kx
(8)(λy.N)=(λy.SKKx)=K(SKKx)

그리고 (7)과 (8)이 여전히 약한 지 확인하기 쉽습니다.

(9)K(SKKx)wK(Kx(Kx))wKx

이제 (2)에 대한 적절한 반례는 다음과 같습니다.

M=Kxy
N=x

이후 , 우리는 확실히 그이 . 그러나 추상화 된 버전을주의 깊게 번역하면 둘 다 고유 한 일반 형식이며 교회-로서 정리에 따라 변환 할 수 없습니다.KxywxM=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)PwPλ

이제 우리는 을 확인합니다 : N

N=λx.x=I=SKK

이것은 분명히 과 다른 정상적인 형태 이므로 Church-Rosser 정리에 의해 입니다. 또한 , 즉 및 '은 임의의 입력 대해 동일한 출력을 생성합니다 .M ' w N ' N ' P w P M ' N ' PMMwNNPwPMNP

우리는 이제 (2)가 CL을지지하지 않으며 포함하는 CL 이론 이 약하게 같지 않은 용어와 동일하다는 것을 증명했다. 그러나 왜 우리는 관심이 있습니까?ξ

글쎄, 우선, 이것은 의 조합 해석을 불완전 하게 만듭니다 .λ

또한 더 중요한 것은 와 CL 의 확장 이론이 있지만 원래는 일반적으로 강렬하게 유지된다는 것입니다. 와 CL 모델 계산은 프로세스로서, 그리고 이러한 관점에서 항상 동일한 결과 (동일한 입력 값을 제공함)를 생성하는 두 개의 다른 프로그램 (구체적으로 다른 정규형을 갖는 항)은 동일하지 않아야하기 때문에 강렬 성은 좋은 특성 입니다. 는 에서이 원칙을 존중하며 , 확장 하려면 추가하면 됩니다. 그러나 의 소개λ ξ λ λ η ξ ξλλξλληξCL에서 더 이상 완전히 강렬하지는 않습니다 (사실 부분적으로 만). 그리고 이것이 기사가 말한 것처럼 ' '의 이유입니다 .ξ


1
나는 주제에 대해 거의 알지 못하기 때문에 품질에 대해 언급 할 수 없지만 약간의 작업처럼 보입니다. 감사합니다!
Raphael

실제로 게시물이 예상보다 오래되었습니다. 귀하의 의견에 감사드립니다. :)
Roy O.

2

3

편집 다른 답변자가 올바르게 지적 했으므로이 답변이 잘못되었습니다. 나는 Asperti & Longo의 조합 논리로의 변환을 사용했는데, 이는 Selinger와는 조금 다릅니다.

실제로 이것은 중요한 점을 보여줍니다. 람다 미적분의 "조합 해석"은 단일 한 것이 아닙니다! 저자마다 약간 씩 다릅니다.

나는 후손을 위해 여기에 내 대답을 남기고 있지만 다른 대답은 더 낫습니다.


이러한 맥락에서의 동등성은 Selinger의 논문에서 표 1과 2에 의해 정의된다. 그러나 약간 다른 axiomatisation는 일을 좀 더 명확하게 만들 수 있습니다.

실제로 의미하는 것은 이론 에서 두 용어를 변환 할 수 있다는 것 입니다. 다음 두 가지 공리로 "전환성"을 정의 할 수 있습니다.λ

  • ( λ x . M ) N = [ N / x ] M x N Mβ . , 만약 무료 의(λx.M)N=[N/x]MxNM
  • λ y . M y = M y Mη . , 경우 무료하지λy.My=MyM

플러스 물론, 필요한 일반적인 공리와 추론 규칙을 만들려면 적합성. 이것으로부터 모든 반대의 예는 규칙이 깨졌을 때 자유 변수 조건에 의존한다는 것이 명백해야합니다 .η=η

아마도 이것이 가장 간단하다고 생각합니다.

N = ( λ z . z ) x

M=x
N=(λz.z)x

임을 직접 확인할 수 있습니다 이지만 각각의 조합 해석은 표 2의 규칙에 따라 동일하지 않습니다.λy.M=λy.N


내가 당신의 대답에 대해 이해하지 못하는 것 : 1) 왜 언급 합니까? 표 1의 이론은 그것을 포함하지 않고 분명히 강렬합니까? 2) 방법의 조합 적 해석이다 및 같지 않습니까? 내 대답의 파생은 그들이 있음을 보여줍니다. 3) -rule은 다루지 않지만 문제의 원인입니다. λ y . M λ y . N ξηλy.Mλy.Nξ
Roy O.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.