공용체 유형을 갖는 람다 용어의 특성


29

많은 교과서는 람다 미적분의 교점 유형을 다룹니다. 교차에 대한 타이핑 규칙은 다음과 같이 정의 할 수 있습니다 (하위 유형이있는 단순 유형 람다 미적분법 상단).

ΓM:T1ΓM:T2ΓM:T1T2(I)ΓM:(I)

교차점 유형에는 정규화와 관련하여 흥미로운 속성이 있습니다.

  • 람다 용어 는 강력하게 정규화되는 경우 I 규칙 을 사용하지 않고 입력 할 수 있습니다 .
  • 람다 용어는 함유하지 않는 형식 인정 는 정상 형태를 갖는다 IFF에있다.

교차로를 추가하는 대신 유니온을 추가하면 어떻게됩니까?

ΓM:T1ΓM:T1T2(I1)ΓM:T2ΓM:T1T2(I2)

간단한 유형, 하위 유형 지정 및 조합을 가진 람다 미적분학에 흥미로운 유사한 속성이 있습니까? 노조로 대표되는 용어의 특징은 무엇입니까?


흥미로운 질문입니다. OOP의 인터페이스가 이것에 해당한다고 말할 수 있습니까?
Raphael

답변:


11

첫 번째 시스템에서 서브 타이핑이라고하는 것은 다음 두 규칙입니다.

Γ,x:T1M:SΓ,x:T1T2M:S(E1)Γ,x:T2M:SΓ,x:T1T2M:S(E2)

그것들은 제거 규칙에 해당한다 . 그것들이 없으면 결합 은 다소 쓸모가 없습니다.

두 번째 시스템에서 (접속사와 및 우리는 또한 추가 할 수있는에, 규칙이 무관, 나는 당신이 마음에 따르고 있었다 첨부 규칙을 생각 하위 유형 위) :

Γ,x:T1M:SΓ,x:T2M:SΓ,x:T1T2M:S(E)Γ,x:M:S(E)

가치가있는 것을 위해,이 시스템은 ( 규칙 사용)를 입력 할 수 있습니다. 이것은 간단한 형식으로는 입력 할 수 없으며 정상적인 형식이지만 강력하게 정규화되지는 않습니다 . E(λx.I)Ω:AAE


임의의 생각 : (아마도 TCS에 요청할 가치가 있습니다)

이것은 관련 속성이 다음과 같다고 추측하게합니다.

  • λ 기간 형식이 함유되지 인정 IFF에 모두 정상적인 형태 갖는 일반적인 형태를 갖는다. ( 는 두 테스트에 모두 실패하지만 위의 λ- 기간은 통과합니다)M N N δMMNNδ
  • λ-term 은 규칙 을 사용하지 않고 타이핑 할 수 있습니다. 이 모든 정규화 에 대해 강력히 정규화 됩니다. E M N NMEMNN

연습 : 틀렸다는 것을 증명하십시오.

또한 그것은 퇴화 된 사건 인 것 같습니다. 아마도 우리는 이 사람 을 그림에 추가하는 것을 고려해야 합니다. 내가 기억하는 한, 을 얻을 수 있습니까?A(A)


하위 유형 지정 규칙에 대한 좋은 점은 조합 유형이 교차점 (화살표에 직교하여 입력 됨)만큼 자연스럽지 않다는 것을 보여줍니다. 두 번째 부분에 대해서는 좀 더 생각해야합니다.
Gilles 'SO- 악마 그만해'

유니온 유형에 대해 이야기하고 있다면 가 운동에 응답 한다고 생각 합니다. M=(λx.xx)(λy.y)
jmad

콜 / CC (Call / cc) : 람다 용어 나 다른 프레임 워크와 같은 단순한 람다 용어 이상이 필요하지만 형식 시스템은 더 복잡한 논리 시스템이며 통합 형식과 관련이 없을 수 있습니다.
jmad

@jmad : 사실, 교차로 유형은이 용어를 입력 :-( 아마도 함께 통합 및 교차을 고려 흥미로운 일이 될 것입니다 필요합니까?
스테판 히메네스

나는 λ 용어에 관심이있을 것입니다. 유니온 유형 (교차 유형을 가진 rs)으로 입력 할 수 있지만 간단한 유형 (교차 유형을 가진 rs)으로는 입력 할 수 없습니다.
jmad

16

교차 유형이 정규화 클래스 (강점, 헤드 또는 약점)를 특성화하는 데 왜 적합한 지 설명하고 싶지만 다른 유형 시스템은 그렇지 않습니다. (간단한 유형 또는 시스템 F).

"내가 입력 할 수있는 경우 : 키 차이가 무슨 말을해야한다는 것입니다 및 그때 입력 할 수 있습니다 ". 항을 복제 할 수 있기 때문에 비교 차 유형에서는 종종 그렇지 않습니다.M 1M 2 M 1M2M1M2M1

(λx.Mxx)NMNN

을 입력 하면 모두 입력 할 수 있지만 동일한 유형 을 사용하여 입력 할 수는 없습니다 (예 교차 유형을 사용하여 그리고 중요한 단계는 이제 정말 쉽습니다 : 따라서 은 교차 유형으로 유형별로 지정할 수 있습니다.N M : T 1T 2T 3MNNN

M:T1T2T3N:T1N:T2
M:T1T2T1T2T3N:T1T2
(λx.Mxx):T1T2T3N:T1T2
(λx.Mxx)N

이제 유니온 타입에 대해 : 어떤 유니온 타입으로 를 입력하고 입력 한 다음 타입을 얻을 수 있다고 가정합니다 그러나 여전히 모든 에 대해 가 라고 해도 불가능하다는 것을 증명해야 합니다.λ x . x x S , T 1 , x : T 1T 2T nx x : S i x : T ix x : S S(λx.xx)(λy.y)λx.xxS,T1,

x:T1T2Tnxx:S
ix:Tixx:SS

이것이 노동 조합 유형의 정규화에 대한 쉬운 특성화가 없다고 생각하는 이유입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.