순수형제
Pure type system증명 이론과 유형 이론으로 알려진 수학 논리의 가지에서, 이전에 일반화된 유형 시스템(GTS)으로 알려진 순수 유형 시스템(PTS)은 이들 중 어느 것에도 임의의 수의 종류와 의존성을 허용하는 타입 람다 미적분학의 한 형태다.이 프레임워크는 두 가지 종류만 있으면 큐브의 모든 모서리가 PTS의 인스턴스로 표현될 수 있다는 점에서 바렌트레트의 람다 큐브를 일반화한 것으로 볼 수 있다.[1][2]사실, 바렌트레트(1991)는 이 환경에서 자신의 큐브를 틀에 넣었다.[3]순수형 시스템은 구성의 미적분처럼 형식과 용어의 구분을 모호하게 하고 형식 계층을 붕괴시킬 수 있지만, 일반적으로는 그렇지 않다. 예를 들어 단순하게 타이핑된 람다 미적분학은 용어에 의존하는 용어만을 허용한다.
순수형 시스템은 스테파노 베라르디(1988년)와 얀 테루(1989년)가 독자적으로 도입했다.[1][2]바렌트레트는 후속 논문에서 그것들을 상세히 논했다.[4]베라르디는 박사학위 논문에서 람다 큐브와 유사한 건설적 로직의 큐브를 정의했다([5]이 사양들은 의존성이 없다).후에 이 큐브의 수정은 Geuvers에 의해 L-큐브라고 불리게 되었는데, 그는 박사 논문에서 Curry-Howard의 서신을 이 설정으로 확장시켰다.[6]이러한 사상을 바탕으로 바르테 등은 이중 부정 연산자를 추가하여 고전적인 순수형 시스템(CPTS)을 정의했다.[7]마찬가지로, 1998년에 Tijn Borghuis는 모달 순수형 시스템(MPTS)을 도입했다.[8]Roorda는 기능 프로그래밍에 순수형 시스템의 적용을 논의했고, Roorda와 Jeuring은 순수형 시스템에 기반한 프로그래밍 언어를 제안했다.[9]
람다 큐브의 시스템은 모두 강하게 정상화되고 있는 것으로 알려져 있다.일반적으로 순수한 타입 시스템은 필요하지 않다. 예를 들어 Girard의 역설에서 나온 System U는 그렇지 않다. (확실히, Girard는 "유형이 형태를 이루고 있다"라는 문장을 표현할 수 있는 순수한 시스템을 발견했다.)더욱이 강하게 정상화되지 않고 있는 순수형 시스템의 알려진 모든 예는 심지어 (약하게) 정상화가 되지 않는다: 그것들은 정형화되지 않은 람다 미적분처럼[citation needed] 정상적인 형태를 가지고 있지 않은 표현들을 포함하고 있다.PTS의 정상화가 항상 유효한지 여부, 즉 PTS의 정상화가 항상 강력한 정상화 속성을 가지는지는 현장에서 중요한 개방적인 문제다.이것은 바렌트레트-지우버스-클롭 추측[10](Henk Barendregt, Herman Geuvers, Jan Willem Klop의 이름을 따서 명명)으로 알려져 있다.
정의
A pure type system is defined by a triple where is the set of sorts, is the set of axioms, and 은(는) 규칙 집합이다.pure type 시스템에 입력하는 것은 다음 규칙에 의해 결정되며, 서s {\ s은(는) 모든 종류의 것이다.[4]
구현
다음 프로그래밍 언어는 순수형 시스템을 가지고 있다.[citation needed]
- SAGE [11]
- 야로
- 헨크 2000
참고 항목
메모들
- ^ a b Pierce, Benjamin (2002). Types and Programming Languages. MIT Press. p. 466. ISBN 0-262-16209-1.
- ^ a b Kamareddine, Fairouz D.; Laan, Twan; Nederpelt, Rob P. (2004). "Section 4c: Pure type systems". A modern perspective on type theory: from its origins until today. Springer. p. 116. ISBN 1-4020-2334-0.
- ^ Barendregt, H. P. (1991). "Introduction to generalized type systems". Journal of Functional Programming. 1 (2): 125–154. doi:10.1017/s0956796800020025. hdl:2066/17240.
- ^ a b Barendregt, H. (1992). "Lambda calculi with types". In Abramsky, S.; Gabbay, D.; Maibaum, T. (eds.). Handbook of Logic in Computer Science. Oxford Science Publications.
- ^ Berardi, S. (1990). Type dependence and Constructive Mathematics (PhD thesis). University of Torino.
- ^ Geuvers, H. (1993). Logics and Type Systems (PhD thesis). University of Nijmegen. CiteSeerX 10.1.1.56.7045.
- ^ Barthe, G.; Hatcliff, J.; Sørensen, M. H. (1997). "A Notion of Classical Pure Type System". Electronic Notes in Theoretical Computer Science. 6: 4–59. CiteSeerX 10.1.1.32.1371. doi:10.1016/S1571-0661(05)80170-7.
- ^ Borghuis, Tijn (1998). "Modal Pure Type Systems". Journal of Logic, Language and Information. 7 (3): 265–296. doi:10.1023/A:1008254612284. S2CID 5067584.
- ^ Jan-Willem Roorda; Johan Jeuring. "Pure Type Systems for Functional Programming". Archived from the original on 2011-10-02. Retrieved 2010-08-29. 로오르다의 석사 논문(인기된 페이지에서 연결)도 순수형 시스템에 대한 일반적인 소개를 담고 있다.
- ^ Sørensen, Morten Heine; Urzyczyn, Paweł (2006). "Pure type systems and the lambda cube § 14.7". Lectures on the Curry–Howard isomorphism. Elsevier. p. 358. ISBN 0-444-52077-5.
- ^ SAGE
- ^ 야로
- ^ 헨크 2000
참조
- Berardi, Stefano (1988). Towards a mathematical analysis of the Coquand–Huet calculus of constructions and the other systems in Barendregt's cube (Technical report). Department of Computer Science, CMU, and Dipartimento Matematica, Universita di Torino. CMU-CS-88-131.
- Terlouw, J. (1989). "Een nadere bewijstheoretische analyse van GSTTs" (in Dutch). Netherlands: University of Nijmegen.
{{cite journal}}:Cite 저널은 필요로 한다.journal=(도움말)
추가 읽기
- Schmidt, David A. (1994). "§ 8.3 Generalized Type Systems". The structure of typed programming languages. MIT Press. pp. 255–8. ISBN 0-262-19349-3.
외부 링크
- 순수형 시스템(nLab)
- Jones, Roger Bishop (1999). "Pure Type Systems overview".
