일관되고 Turing이 완료된 유형화 된 람다 미적분학이 있습니까?


20

Curry-Howard 대응 하의 해당 논리가 일관되고 모든 계산 가능한 함수에 대해 입력 가능한 람다식이있는 형식화 된 람다 미적분학이 있습니까?

이것은 "유형 람다 미적분학"에 대한 정확한 정의가 결여되어있어 부정확 한 질문입니다. 나는 기본적으로 (a) 이것의 알려진 예 또는 (b)이 영역의 어떤 것에 대한 알려진 불가능한 증거가 있는지 궁금합니다.

편집 : @cody는 아래의 답변 에서이 질문의 정확한 버전을 제공합니다. 논리적 순수 유형 시스템 (LPTS)이 일관성 있고 Turing (아래 정의 된 의미)입니까?


2
전체 재귀 함수가 모두 재귀 함수 인 재귀 적으로 axiomatizable 미적분학 (lambda 또는 else)이 없으므로 미적분학은 비 종료 항을 포함해야합니다.
에밀 예라 벡은 모니카 지원

2
이 대답은 당신이 가질 수 없습니다라는 이론이 어떤 모두 튜링 완료 미적분의 종류 총.
Andrej Bauer

1
충분히 정확하면 질문에 대답 할 것입니다. Andrej의 증거는 불필요하게 복잡하다고 생각합니다 (그러나 더 많이 보여줍니다). 요점은 모든 재귀 함수가 표현 적으로 정직한 표현임을 구문 적으로 증명할 수있는 방식으로 모든 재귀 함수를 표현할 수있는 효과적으로 설명 된 시스템이 있다면 간단합니다. 재귀 함수 (예 : 시스템에 올바르게 입력되었는지 확인)를 수행하면 범용 총 재귀 함수를 얻을 수 있습니다. 이는 불가능합니다.
Emil Jeřábek은 Monica를 지원합니다.

1
물론 이런 종류의 질문에 대한 고전적인 대답은 다음과 같습니다. -calculus with crossing types , 그것은 강력하게 정규화되는 모든 용어를 입력하기 때문에. 미적분이 "Curry-Howard 해석"을 인정하는지 여부를 묻는 것은 철학적 인 질문에 더 가깝습니다. λ
cody

2
질문이 정확하지 않기 때문에 여기에서 더 정확하기는 어렵습니다.
Andrej Bauer

답변:


21

좋아, 나는 그것에 균열을 줄 것이다 : 일반적으로 주어진 타입 시스템 에 대해, 다음은 사실이다 :T

경우 미적분에서 잘 형 용어 정상화되어, 다음 것입니다 일관된 논리로 볼 때.TTT

일반적으로 증명은 유형의 이라는 용어가 있고 주제 축소를 사용하여 정규 양식을 얻은 다음 이러한 용어의 구조에 대해 유도하여 모순을 얻는 것으로 가정합니다.F a l s eabsurdFalse

대화가 유지되는지 궁금해하는 것은 당연합니다. 즉

모든 종류의 시스템의 경우 경우, 이다 논리적 일관성 , 다음의 모든 잘 입력 된 용어 정상화이다.TTT

이것의 문제점은 "유형 시스템"에 대한 가장 일반적인 개념이 없으며, 그러한 시스템에 대한 논리적 일관성의 의미에 대한 동의가 훨씬 적다는 것입니다. 그러나 우리는 경험적으로 확인할 수 있습니다

들어 가장 알려진 유형의 시스템을 논리적 인 해석을 가지고, 그 반대는 참으로 개최 않습니다.

이것이 튜링 완전성과 어떻게 관련이 있습니까? 글쎄, 유형 검사가 결정 가능한 경우 Andrej의 주장 은 다음 중 하나가 반드시 지켜야 함을 보여줍니다 .

  1. 잘 입력 된 모든 프로그램이 Turing Complete 가 아닙니다 .
  2. 잘 종료되지 않은 형식의 프로그램이 있습니다.

이것은 다음을 제안하는 경향이 있습니다.

논리적으로 해석 되고 일관성 있고 재귀 적으로 열거 가능한 유형 시스템 은 Turing Complete 가 아닙니다 .

제안이 아닌 실제 정리를 제공하려면 유형 시스템의 개념과 논리적 해석을 수학적으로 정확하게 만들어야합니다.

이제 두 가지 언급이 떠 오릅니다.

  1. 결정 불가능한 타입 시스템의 교차 형식 시스템 논리적 인 해석을 가지고 있으며, 모든 정상화 나타낼 수 -term은. 언급했듯이, 원하는 함수에 적용하기 전에 전체 함수의 유형을 업데이트 (사실 조정)해야 할 수 있으므로 Turing Complete와 완전히 다릅니다. 미적분은 "카레 스타일"미적분이며 STLC + 및 "통역" 가 분명하다Γ M : τλ ΓM:τσ

    ΓM:τΓM:σΓM:τσ
    =
    ΓM:τσΓM:τΓM:τσΓM:σ
    = 일관된 논리적 해석으로 이어집니다.
  2. 퓨어 타입 시스템 (Pure Type Systems )이라는 종류의 유형 시스템 이 있는데, 이러한 질문은 정확할 수 있습니다. 그러나이 프레임 워크에서 논리적 해석은 덜 명확합니다. "무인 유형의 PTS는 일관성이 있습니다." 그러나 유형이 서로 다른 "우주"에 존재할 수 있으므로 일부는 일관되고 일부는 그렇지 않을 수 있으므로 작동하지 않습니다. Coquand 및 Herbelin는 의 개념 정의 논리 순수 형 시스템 문제는 의미가있는을, 그리고 쇼

    일관되지 않은 비 종속 LPTS에는 루핑 콤비 네이터가 있으며 튜링 완료도 마찬가지입니다.

    이 경우 한 방향 (일관되지 않은 TC) 으로 질문에 대답합니다 . 내가 아는 한, 일반 LPTS에 대한 질문은 여전히 ​​열려 있고 상당히 어렵습니다.


편집 : Coquand-Herbelin 결과의 대화는 생각만큼 쉽지 않습니다! 여기까지 내가 생각해 낸 것이 있습니다.

논리 순수 형 시스템 (적어도)와 PTS 종류입니다 와 (적어도), 공리 과 (적어도)에 규칙 에는 유형이 필요하지 않은 추가 요구 사항이 있습니다 .T y p e P r o p : T y p e ( P r o p , P r o p , P r o p ) P r o pPropTypeProp:Type(Prop,Prop,Prop)Prop

이제 Turing Completeness의 특정 문장을 가정 하겠습니다 . LPTS 수정하고 컨텍스트로 설정하십시오.ΓLΓ

Γ=nat:Prop, 0:nat, S:natnat

f : NN t f Γ t f : n a tn a t n N t f ( S n 0 ) β S f ( n ) 0L 된다 튜링 마다 총 계산 가능한 기능에 대한 IFF를 용어가 되도록 및 모든f:NNtf

Γtf:natnat
nN
tf (Sn 0)βSf(n) 0

이제 Andrej의 대각선 인수는 유형의 종료되지 않은 가 있음을 보여줍니다 .n a ttnat

이제 우리가 반쯤있는 것 같습니다! 비 종료 기간을 감안할 때 , 우리는의 발생 대체 할 일부 제네릭 형식에 의해 및 제거 및 에서 , 그리고 우리 일관성이 없을 것입니다 ( 는 문맥에 거주합니다 )!n a t A 0 S Γ A A : P r o pΓloop:natnatA0SΓAA:Prop

불행히도 는 ID로 쉽게 대체 할 수 있기 때문에 내가 붙어있는 곳 이지만 은 제거하기가 훨씬 어렵습니다. 이상적으로 우리는 일부 Kleene 재귀 정리를 사용하고 싶지만 아직 이해하지 못했습니다.0S0


자, 당신의 말에 대한 첫 두 가지 설명 (1). 이 교차 유형 시스템을 재귀 적으로 열거 할 수 없다고 말할 때 무엇을 의미합니까? 시스템의 정리는 간단하고 연속적인 미적분학으로 주어 졌기 때문에 확실히 정리되었다. 또한, 귀하가 링크 한 논문에서 입증 된 결과는 시스템에서 입력 가능한 용어가 정확히 정규화되는 용어라는 것입니다. 그러나 계산 가능한 총 함수를 정확하게 입력 할 수 있다고 말하는 것과 다르지 않습니까? 예를 들어, 가 아닙니다 강력하게 정규화되었지만 전체가 아닌가? λx.xx
Morgan Thomas

이제 귀하의 의견에 대한 질문 (2). 그것은 당신이 인용 한 정리가 우리가 관심있는 것이 아닌 것처럼 보입니다. 그것은 모든 비 종속 LPTS에 대해 일관성이 없다면 튜링이 완료되었다고 말합니다. 그러나 우리는 모든 LPTS에 대해 튜링이 완료되면 일관성이 없는지 알고 싶습니다. 여기에 뭔가 오해가 있습니까?
Morgan Thomas

@MorganThomas : 아, 당신은 첫 번째 점에 대한 올바른 : 내가 무슨 말을 의미하는 타입 시스템이 될 수 없다는 것입니다 decidable , 주어진 그, 명령문은 결정 불가능하다 . 나는 이것을 포스트에서 고칠 것이다. Γ t : AΓ,t,AΓt:A
코디

두 번째 요점 : 또한 잘 입력 된 비 총계 함수를 가질 수 있다는 것도 정확합니다 (물론 주어진 인수에 반드시 적용 할 필요는 없음). 답변을 수정하겠습니다.
코디

1
세번째 요점. 다시 맞아! 그러나 대화 (LPTS의 특별한 경우)는 다소 사소합니다. 나는 논쟁의 개요를 설명 할 것이다.
코디

11

다음은 @cody의 내 질문에 대한 정확한 변형에 대한 답변입니다. 추가적인 공리와 -reduction 규칙 의 도입을 허용한다면 대략 @cody의 관점에서 튜링 완료 된 일관된 LPTS가 있습니다. 따라서 엄격히 말해서 시스템은 LPTS 가 아닙니다 . 그것은 단지 하나와 비슷한 것입니다.β

구조물의 미적분 (또는 -cube 의 좋아하는 멤버)을 고려하십시오 . 이것은 LPTS이지만 LPTS가 아닌 추가 항목을 추가 할 것입니다. 상수 기호 를 선택하고 공리를 추가하십시오.nat , 0 , Sλnat,0,S

0 : nat S : nat nat

nat:
0:nat
S:natnat

Turing 머신 프로그램을 자연수로 색인화하고 각 자연수 에 대해 상수 기호 선택 하고 공리 를 추가하고 모든 , -reduction 규칙을 추가하십시오f e f e : nat nat e , x N βefefe:natnate,xNβ

fe(x)βΦe(x),

여기서, 정상적으로 의 출력 인 에 튜링 기계 프로그램 번째 . 분기 되면 이 규칙은 아무 작업도 수행하지 않습니다. 이러한 공리와 규칙을 추가함으로써 시스템의 정리는 재귀 적으로 열거 가능하지만 -reduction 규칙 세트 는 더 이상 결정 가능하지 않지만 단순히 재귀 적으로 열거 가능합니다. 시스템의 구문과 규칙에서 계산 모델의 세부 사항을 명시 적으로 설명함으로써 -reduction 규칙 집합을 쉽게 결정할 수 있다고 생각 합니다.Φe(x)exΦe(x)ββ

이제이 이론은 명백하게 튜링이 대략 @cody의 의미에서 무차별 한 힘으로 완성되었습니다. 그러나 주장은 또한 일관성이 있다는 것입니다. 모델을 만들어 봅시다.

하자 3 개 세트 있도록 수 :U1U2U3

  • ,N,0,SU1 (여기서 는 후속 함수 임)S
  • 각 세트는 전 이적입니다. 경우 다음 .abUiaUi
  • 각 세트는 기능 공간이 형성되면 닫힙니다. 즉, 이면 입니다.A,BUiBAUi
  • 각 세트는 종속 제품이 형성되면 닫힙니다. 즉, 및 인 경우 입니다.AUif:AUiaAf(a)Ui

그러한 집합의 존재는 예를 들어 ZFC와 모든 추기경이 접근 할 수없는 추기경에 의해 구속된다는 공리를 더한 것이다. 각 세트 를 Grothendieck 유니버스로 사용할 수 있습니다.Ui

변수 이름 세트에서 요소로의 맵핑 가되도록 "해석"을 정의합니다 . 해석 주어지면 시스템의 용어에 대한 해석 를 분명한 방식으로 정의 할 수 있습니다 .vU2vIv

  • Iv(x)=v(x) , 경우 변수 이름.x
  • Iv()=U1,Iv()=U2 입니다.
  • Iv(nat)=N,Iv(0)=0,Iv(S)=S 입니다.
  • Iv(fe)=Φe 즉, 번째 Turing 프로그램에 의해 정의 된 기능NNe
  • Iv(AB)=Iv(A)(Iv(B)) 가 도메인에서 와의 함수 이면 이고, 그렇지 않으면 입니다 (임의의 선택).Iv(A)Iv(B)Iv(AB)=0
  • Iv(λx:A.B) 는 요소 를 매핑하는 함수입니다 .aIv(A)Iv[x:=a](B)
  • Iv(Πx:A.B)=aIv(A)Iv[x:=a](B) .

모든 용어 , 있습니다. 이제 해석 는 인 경우 작성된 충족 한다고합니다 . 우리는 말을 그 의 경우 모든 해석을 위해 , 만약 모든 , 다음 .AIv(A)U3vA:BvA:BIv(A)Iv(B)ΓA:Bvvx:C(x:C)ΓvA:B

이면 이면 시스템 모델 인지 확인하는 것이 간단 합니다. 그러나 변수 의 경우 는 그렇지 않습니다. 왜냐하면 를 해석 할 수 있기 때문에 시스템은 일관성이 있습니다.Γ A : B x , y y : x : y y ΓA:BΓA:Bx,yy:x:yy

자, 이것은 원래의 질문에 대한 대답입니다. 이것은 일관성 있고 Turing이 완료된 유형화 된 람다 calulus를 호출하는 것이 합리적이라는 점에서 의미가 있습니다. 그러나 이것은 여분의 공리와 -reduction 규칙 이 추가되어 LPTS가 아니기 때문에 @cody의 질문에 대한 대답은 아닙니다 . @cody의 질문에 대한 대답이 훨씬 어렵다고 생각합니다.β


2
이것은 좋은 대답이지만 일관성을 증명하기 위해 모든 미용술을 거쳐야할지는 확실하지 않습니다 . 빈 컨텍스트에서 유형 용어는 CoC의 용어에 대해 "설탕 제거"될 수 있습니다. 부르는 규칙 - 규칙 및 유지 일반적인 것들에 대한. 모든 수행 -reductions (만 상수를 추가 한 이후이 종료를) 및 양식의 모든 용어를 대체 그 reduct에 의해 이 하나가있는 경우 . 여기서의 아이디어는 -rules는 지상 용어로만 작동하므로 모든 -reductions을 먼저 수행하여 방해를받지 않도록하는 것입니다.f e ( x ) Φ e ( x ) ιAfe(x)Φe(x)ιβ f e ( x ) ι βββfe(x)ιβ
코디

내 생각 엔 당신이 맞다. 이것은 내 분야가 아니기 때문에 일을 조금 어색합니다. :-) 나는 당신의 증거가 효과가 있다고 생각합니다. 그리고 제가 옳다면,이 이론은 일관성이 매우 높지 않다는 것입니다. 그것은 유형 이론과 자연수를 가지고 있기 때문에 잠재적으로 매우 강력한 이론처럼 보입니다. 그러나 강력한 세트 이론을 사용하지 않고 일관성을 증명할 수 있기 때문에 분명히 할 수 없습니다!
Morgan Thomas
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.