형식 이론에서 비 종료 및 정지 증명에 대한 좋은 개념이 있습니까?


10

카레 하워드 대응 하의 기본 해석을 가진 구성 유형 이론은 총 계산 가능한 함수로만 구성됩니다. 문헌에서 일부는 기능적 프로그램에서 비 종료를 나타 내기 위해 "계산 형 이론"을 사용하는 것에 대해 언급되었지만, 내가 본 논문에서는 이론에 대한 주요 동기가 아닌 것으로 보입니다 (예 : Benton 은 비 종결에 대해 자세히 설명하지 않고 비결정론 , 연속성 및 예외에 대해 언급하고 있으므로 계산 유형 이론을 사용하여 비 종결에 대한 강력한 해석을 제공하는 논문을 아직 찾지 못했습니다.

구체적으로, 내가 찾고있는 것은 , T ( A ) 유형 비 종료 계산을 나타내는 유형이 주어지면 x : T ( A )H 유형 ( x )으로 끝나는 증거대한 개념이 있어야합니다 . x : T ( A )p : H ( x ) 가 주어지면 ~ x : A 라는 용어를 만들 수 있습니다 .AT(A)x:T(A)H(x)x:T(A)p:H(x)x~:A

이것에 대한 나의 동기는 결국 계산 복잡도 이론의 개념을 건설적인 형식 이론과 더 공식적으로 연관시킬 수 있기를 원합니다. 특히, 나는 공식적인 이론적 구성 유형으로서 어떤 것이 정지 오라클에 접근하여 얻을 수있는 힘에 관심이 있으며, 그렇게하기 위해서는 실제로 비 종료 가능성에 대한 공식적인 개념과 정지 증거가 필요하다. 형식 이론 프레임 워크와 함께 진행하십시오.


3
fAB dom(f)xAdom(f)(x)fx

3
당신은 지연 모나드 를 찾고 있습니까?
Andrej Bauer

AB

답변:


11

형식화에서 형식 이론의 주요 응용 프로그램 중 하나는 일반적으로 프로그래밍 언어와 계산을 연구하는 것이 었으므로 종료되지 않는 프로그램을 나타내는 방법에 대한 많은 생각이있었습니다.

나는 여기서 완전한 설문 조사를하지는 않지만 다른 방향의 주요 추력에 대한 포인터를 제공하려고 노력할 것입니다.

  • F x yfxf(x)=yx(y,F x y)(¬y,F x y)

    이를 수행하는보다 복잡한 방법은 "Bove-Capretta"방법입니다 ( 각각의 재귀 함수에 대해 주어진 계산이 유한하다는 사실을 인코딩하는 "접근 가능한 술어"를 정의하는 유형 이론의 재귀 모델링 참조) . 주어진 입력에 액세스 할 수 있다는 증거인 추가 인수이 추가 술어없이 함수를 정의하려면 가능한 모든 입력 조합에 액세스 할 수 있음을 증명해야합니다.

  • A

    codata Delay A =
    | Now : A -> Delay A
    | Later (Delay A)
    

    이것은 무한한 Later토큰 스트림 ( "계산의"틱 ")을 결과로 끝낼 수 있습니다 Now a. 비 종료는 프로그램과 이분법에 해당합니다.

    loop = 이후 루프 및 종료는 다음에 대한 유도 술어에 의해 정의 될 수 있습니다 Delay A.

    data Terminates : Data A -> Prop =
    | Term_now : forall x, Terminates (Now x)
    | Term_later : forall d, Terminates d -> Terminates (Later d)
    

    나는 agda-istas가 부분 성 모나드 ( partiality monad) 라고 부르는 것에 대해 많은 것을 가지고 있다고 생각합니다 (예 : Danielsson 참조 ).

  • "부분 형 이론"접근법 : 이것은 좀 더 실험적이지만 (이론은 여전히 ​​해결되고 있지만) 본질적으로 우리가 원하는 두 가지 유형의 함수가 있다는 사실에 대처하기 위해 개발되고있는 일부 유형 이론이 있습니다. 유형 이론으로 작성하십시오 : 증명 용어 및 프로그램. 이러한 것들에 대한 합리적인 이론을 얻고 (이론의 일관성을 유지하기는) 어려운 것으로 판명되었지만 Casinghino 은 심각한 노력을 기울이고 있으며 Kimmel 은 이와 비슷한 노력을 기울이고 있다 .

내가 알지 못하는 다른 접근법이 있다고 확신하며 누군가이 목록을 작성하고 싶다면 기쁠 것입니다.

Π10

유형 이론과 복잡성 이론 사이에는 일반적으로 암시적인 계산 복잡성 의 우산 아래에 상당히 유익한 다른 상호 작용이 있습니다 .


흥미로운 정보를 주셔서 감사합니다! 부분 유형 이론 접근법은 아마도 내가 찾고있는 것에 가장 근접한 것으로 생각합니다. 그리고 최소한 Kimmel 논문은 내가 찾고있는 것을 어느 정도 수준에서 제공하는 것 같습니다 ( "tcast"에 대한 타이핑 규칙 참조). ).
Nathan BeDell
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.