Coq가 계산할 수있는 함수 클래스


22

비 종료 계산을 허용하지 않기 때문에 Coq는 반드시 Turing-complete가 아닙니다. Coq가 계산할 수있는 함수 클래스는 무엇입니까? (재미있는 흥미로운 특징이 있습니까?)

답변:


18

Benjamin Werner는 그의 논문에서 Set in Types, Types in Sets에서 ZFC의 수많은 접근 불가능 성과 유도 구조 계산법을 통해 상호 해석 성을 입증했습니다 .

이는 대략적으로 액세스 할 수없는 많은 수의 ZFC에서 보여 질 수있는 모든 기능이 Coq. 따라서 큰 카디널에서 작업하는 세트 이론가가 아니라면 Coq에서 원하는 계산 기능을 정의 할 수 없을 것입니다.


7
Coq 통역사 제외 ...
Jules

6
실제로 Coq 내부에 Coq 인터프리터 (실제로 임의의 일반적인 재귀 함수)를 구현할 수 있습니다 . CIC가 일관성이 있다면 통역사가 전체 기능이라는 것을 증명할 수는 없지만 확실히 구현할 수는 있습니다.
Neel Krishnaswami

2
건설 용 리프트 모나드 A ν α를 사용할 수 있습니다 .일반적인 재귀 함수를 작성 하는 A + α 그러면 타입 체커는 c o n t e x tt e r mAνα.A+α. 이것은 기본적으로 Bove / Capretta 방식입니다. (또한 벤톤, 케네디와 Varming의 "COQ의 일부 도메인 이론과 Denotational 의미"를 참조하십시오. dl.acm.org/citation.cfm?id=1616077.1616090)contexttermtypebool
닐 Krishnaswami

1
@Neel : 부정 행위입니다. 그리고 정당한 이유가 있다면, 우리는 불일치가있을 것입니다.
Andrej Bauer

2
평가 기능이 당신을 대답하지 않고 물건 을 평가 해야하기 때문에 부정 행위 입니다.
Andrej Bauer
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.