질문에"튜토리얼의 구현을 독립적으로 입력한 람다 미적분학"
-
29-09-2020 - |
문제
제가 약간의 기술적 투쟁과 이 놀라운습니다.5 페이지에 자 회담에 대해 입력하는 규칙은 단순히 입력한 람다고 선물 다음과 같은 판정으로 파생 가능한 규칙을 통해서 그림 3.
었을 증명할 수 없도 id
도 const
여 같은 이유입니다.을 위해 인스턴스 id
예입니다.
- 말하는 내가 찾는 것에서 유형을 확인 규칙
CHK
.그것을 말하기 위해서는check types
내가 먼저 수행을 추론하고 다음을 비교 결과 내가 무엇을 기대합니다. - 을 추론 응용 프로그램에,시작하는 명령을 사용할 수 있습니다
APP
는 규칙이 즉시 내게 강론하는 유형의 왼쪽의 즉,응용 프로그램(id :: α -> α)
- 그렇게 나를 사용하는
ANN
하는 규칙을 확인하는α -> α
은 유형(그리고 그것을 증명할 수 있습니 아무 문제 없).그때 나는 알몸id
징은 그것을 증명해야의 유형α -> α
. - 마지막으로,여기에는 문제입니다.그러기 위해서는 나를 사용해야 할 것입니다
var
규칙이 필요합의 유형id
을 설정할 수 컨텍스트에서 명시적으로 감마지만,이 완료되지 않고,따라서 증명은 붕괴되고 있다.
해결책
$\mathsf{id}$ 고 $\mathsf{const}$ 하지 않은 변수의 미적분,그러나 구문 설탕 $\lambda x ightarrow x$ 고 $\lambda x ightarrow\lambda y ightarrow x$ 각각합니다.이것은 명시의 끝에서§2.2 및 미묘하게 전달의 사용에 의해 sans-serif 글꼴을 보다는 오히려 이탤릭체(이것은 인쇄회의 이 특별한 문서를 일반적인 협약).
그래서 예를 들어,유형이 판정 $$ \alpha::\ast,y::\alpha\vdash(\mathsf{id}::\alpha ightarrow\alpha)\:y:: ightarrow\alpha $$ 또한 유형을 판단 $$ \alpha::\ast,y::\alpha\vdash(\lambda x ightarrow x::\alpha ightarrow\alpha)\:y:: ightarrow\alpha .$$ 그것은 다른 표기 위해 동일한 수학적 개체입니다.
제휴하지 않습니다 cs.stackexchange