Jaka jest zależność i różnica między rachunkiem konstrukcji indukcyjnych a teorią typu intuicyjnego?

25

Jak stwierdzono w tytule, zastanawiam się nad jakąkolwiek relacją i różnicą między CIC a ITT. Czy ktoś mógłby mi wyjaśnić lub wskazać mi literaturę porównującą te dwa systemy? Dzięki.

dzień
źródło
3
Dla mnie ITT oznacza „Intuitionnistic Type Theory”, co może oznaczać wiele rzeczy. W szczególności istnieje wiele subtelnych odmian w stosunku do oryginalnego opisu Martina-Lofa! Pomógłbyś w dyskusji, gdybyś podał odniesienie, które opisuje ITT, o którym myślisz. Krótka odpowiedź brzmi: ITT w sensie Martina-Lofa bez wszechświata jest sub-teorią CoC. W obecności wszechświatów, ale bez typów indukcyjnych, możesz zmiażdżyć wszystkie wszechświaty do jednego impredykatywnego wszechświata CoC. Przy dużych typach indukcyjnych i dużej eliminacji rzeczy są bardziej złożone.
cody
1
Ah i dobrą dyskusję na temat niektórych z tych rzeczy można znaleźć w Geuvers: cs.ru.nl/~herman/PUBS/CC_CHiso.ps.gz
cody
Dzięki za komentarze i powiązany artykuł, Cody. Wygląda na to, czego szukam.
dzień
1
Wersja pdf artykułu wymienionego przez @cody: cs.ru.nl/~herman/PUBS/CC_CHiso.pdf
Steven Shaw

Odpowiedzi:

24

Odpowiedziałem już nieco, ale jeśli tak, postaram się przedstawić bardziej szczegółowy przegląd horyzontów teoretycznych typu.

Jestem trochę rozmyślany nad historycznymi szczegółami, więc bardziej świadomi czytelnicy będą musieli mi wybaczyć (i poprawić mnie!). Podstawowa historia polega na tym, że Curry odkrył podstawową zgodność między kombinatorami prostego typu (lub ) a logiką zdań, która została poszerzona przez Howarda o logikę pierwszego rzędu, oraz IIRC niezależnie odkryte przez de Bruijna w dochodzeniach wokół ogromnie wpływowy system Automath .λ

System Automath był udoskonaleniem prostej teorii typu Kościoła, która sama w sobie była dramatycznym uproszczeniem teorii typów Russela i Whitehead z wszechświatami i aksjomatem redukowalności . Był to stosunkowo dobrze znany logiczny teren w latach 60.

ABAB

Określa odpowiednią regułę eliminacji. Następnie podał bardzo potężny system fundamentalny oparty na takich osądach, pozwalając mu na stworzenie systemu fundamentalnego podobnego do Automath przy użyciu bardzo niewielu konstrukcji składniowych. Girard stwierdził, że ten system jest sprzeczny, co skłoniło Martina-Löfa do przyjęcia predykatywnych wszechświatów w stylu Russel , poważnie ograniczając ekspresję teorii (poprzez skuteczne usunięcie aksjomatu redukowalności) i czyniąc ją nieco bardziej złożoną (ale miała tę zaletę, że dzięki czemu jest spójny).

Eleganckie konstrukcje pozwalające na zdefiniowanie symboli logicznych już nie działały, co skłoniło ML do wprowadzenia ich w innej formie jako indukcyjnie zdefiniowanych rodzin . Jest to bardzo skuteczny pomysł, ponieważ pozwala zdefiniować wszystko, od osądowej równości i operatorów logicznych po liczby naturalne i funkcjonalne typy danych, jakie pojawiają się w informatyce. Zauważ, że każda dodana przez nas rodzina przypomina dodawanie pewnej liczby aksjomatów, które należy uzasadnić jako spójne w każdym przypadku. Ten system (typy zależne + wszechświaty + rodziny indukcyjne) jest zwykle nazywany ITT .

Wystąpiła jednak pewna frustracja, ponieważ potężny, ale prosty system fundamentalny był niespójny, a wynikowy system był bardziej złożony i nieco słaby (w tym sensie, że trudno było w nim rozwinąć wiele nowoczesnych ram matematycznych). Wchodzi Thierry Coquand, który wraz ze swoim przełożonym Gerardem Huetem przedstawił Rachunek konstrukcji (CoC) , który w większości rozwiązał te problemy: ujednolicone podejście do dowodów i typów danych, potężny (impredykatywny) system fundamentalny oraz możliwość definiowania „konstrukcji” „odmiany logicznej lub matematycznej. To ostatecznie przekształciło się w faktyczną implementację systemu zaprojektowanego jako nowoczesna alternatywa dla Automath, którego kulminacją jest znany i kochany system Coq .

Zdecydowanie sugeruję ten fundamentalny artykuł na temat CoC, ponieważ Thierry zna absurdalną ilość na temat historycznego rozwoju teorii typów i prawdopodobnie wyjaśnia to znacznie lepiej niż ja. Możesz także zajrzeć do jego artykułu na temat teorii typów, chociaż nie wyjaśnij szczegółowo korespondencję CH.

cody
źródło
5
Warto zauważyć, że CoC, pomimo całej swojej impredywacyjnej konstrukcji typów danych, nie może udowodnić indukcji, a później autorzy (np. Paulin-Mohring) rozszerzyli CoC o konstrukcje indukcyjne a la Martin-Löf, uzyskując rachunek różniczkowy konstrukcji indukcyjnych, który jest używany w Coq.
Martin Berger
1
10
1
Dodano typy indukcyjne, aby dodatkowo poprawić zachowanie obliczeniowe .
cody
1
Cóż, funkcji poprzednika nie można obliczyć w stałym czasie za pomocą impredykatywnej definicji liczb naturalnych. Zobacz np. Tutaj lub tutaj .
cody
1
Tak, cyfry kościelne, ale podobny wynik zachowa się w przypadku bardziej sensownych typów danych, takich jak listy połączone. Przykład maszyny Turinga sugeruje, że maszyny Turinga również nie nadają się do praktycznych obliczeń! :)
cody