W rozdziale 1 i załączniku A książki Hott przedstawiono kilka rodzin typów pierwotnych (typy wszechświatów, typy funkcji zależnych, typy par zależnych, typy koproduktów, typy puste, typy jednostek, typy liczb naturalnych i typy tożsamości), aby stworzyć podstawę dla teorii typów homotopii.
Wydaje się jednak, że biorąc pod uwagę typy wszechświata i typy funkcji zależnych, można skonstruować wszystkie inne typy „prymitywne”. Na przykład typ Pusty można zamiast tego zdefiniować jako
ΠT:U.T
Zakładam, że inne typy mogą być również skonstruowane podobnie jak w czystym CC , (tj. Po prostu wyprowadzić typ z indukcyjnej części definicji).
Wiele z tych typów zostało wyraźnie zwolnionych przez typy indukcyjne / W, które zostały wprowadzone w rozdziałach 5 i 6. Jednak typy indukcyjne / W wydają się być opcjonalną częścią teorii, ponieważ istnieją otwarte pytania dotyczące ich interakcji z HoTT (w przynajmniej w momencie ukazania się książki).
Jestem bardzo zdezorientowany, dlaczego te dodatkowe typy są przedstawiane jako prymitywne. Moją intuicją jest to, że podstawowa teoria powinna być jak najmniejsza, a redefiniowanie zbędnego typu pustego jako prymitywnego w teorii wydaje się bardzo arbitralne.
Czy dokonano tego wyboru?
- z jakichś metateoretycznych powodów, których nie jestem świadomy?
- z powodów historycznych, aby teoria typów wyglądała jak teorie typu przeszłego (które niekoniecznie próbowały być fundamentalne)?
- za „użyteczność” interfejsów komputerowych?
- dla jakiejś korzyści w poszukiwaniu dowodów, której nie jestem świadomy?
Podobne do: Minimalna specyfikacja teorii typów Martina-Löfa , /cs/82810/reducing-products-in-hott-to-church-scott-encodings/82891#82891
źródło
Odpowiedzi:
Pozwól mi wyjaśnić, dlaczego sugerowane kodowanie pustego typu nie działa. Musimy jasno określać poziomy wszechświata i nie zamiatać ich pod dywan.
Kiedy ludzie mówią „pusty typ”, mogą oznaczać jedną z dwóch rzeczy:
Pojedynczego typu , który jest pusty w odniesieniu do wszystkich typów. Taki typ ma zasadę eliminacji: dla każdej ni rodziny typów A : E → U n istnieje mapa e n , A : E → AE n A:E→Un en,A:E→A .
Rodzina typów , po jednym dla każdego poziomu k wszechświata , tak że E k jest „pustym typem U k ”. Taki typ musi spełniać E k : U k , oczywiście, a także: dla każdego typu rodziny A : E k → U k , jest mapa e k , : E k → A .Ek k Ek Uk Ek:Uk A:Ek→Uk ek,A:Ek→A
Bez żadnych zastrzeżeń, kiedy ludzie mówią „pusty typ”, oczekują pierwszego znaczenia powyżej.
Jak możemy uzyskać ? Pierwsza próba może być czymś w rodzaju E = Π ( T : U )E
ale właśnie taki zamiatanie pod dywan powoduje zamieszanie. Musimy zapisać wyraźne poziomy wszechświata. Jeśli napiszemy coś w rodzaju
E k = Π ( T : U k )
Kolejna próba to ale teraz musisz wyjaśnić, czympowinno być„ Π n ”. Możesz pokusić się o stwierdzenie, że istnieje typ L poziomów wszechświata, a więc E = Π ( n : L
Wszechświaty impredykatywne mogą być ustawione. Jednak słynne twierdzenie Thierry'ego Coquanda (jeśli się nie mylę) pokazuje, że posiadanie dwóch impredykatywnych wszechświatów, jednego zawartego w drugim, prowadzi do sprzeczności.
Morał tej historii jest taki: po prostu aksjatyzuj pusty typ bezpośrednio i przestań kodować rzeczy.
źródło
Zadajesz kilka pytań, które są podobne, ale różne.
Dlaczego książka HoTT nie używa kodowań kościelnych dla typów danych?
Kodowanie kościelne nie działa w teorii typów Martina-Löfa z dwóch powodów.
Po drugie, nawet jeśli zdefiniowałeś typy danych, takie jak liczby naturalne w kodowaniu kościelnym, aby wykonać dowody z tymi typami, potrzebujesz zasad indukcyjnych, aby udowodnić pewne rzeczy na ich temat. Aby wyprowadzić zasady indukcji dla kodowań kościelnych, musisz użyć argumentu opartego na parametryczności Reynoldsa, a pytanie, jak internalizować zasady parametryczności do teorii typów, wciąż nie jest w pełni rozstrzygnięte. (Najnowszym stanem techniki jest Nuyts, Vezzosi i Devriese's ICFP 2017 Paper Parametric Quantifiers for Dependent Type Theory - zauważ, że jest to dużo po napisaniu książki HoTT!)
Następnie pytasz, dlaczego podstawa nie jest minimalna. Jest to w rzeczywistości jedna z charakterystycznych cech socjologicznych podstaw teoretycznych typu - teoretycy typu uważają, że posiadanie małego zestawu reguł jest techniczną wygodą, bez większego znaczenia fundamentalnego. O wiele ważniejsze jest posiadanie odpowiedniego zestawu reguł niż najmniejszego zestawu reguł.
Opracowujemy teorie typów, które mają być stosowane przez matematyków i programistów, i bardzo, bardzo ważne jest, aby dowody wykonane w ramach teorii typów były tymi, które matematyki i programiści uważają za wykonane we właściwy sposób. Wynika to z tego, że argumenty, które matematycy zwykle uważają za posiadające dobry styl, są zazwyczaj ustrukturyzowane przy użyciu kluczowych zasad algebraicznych i geometrycznych w dziedzinie badań. Jeśli musisz korzystać ze skomplikowanych kodowań, wiele struktur jest traconych lub zasłanianych.
Dlatego nawet teoretyczne prezentacje klasycznej logiki zdań niezmiennie dają wszystkie logiczne połączenia, mimo że formalnie jest to równoważne logice z tylko NAND. Jasne, wszystkie łączniki boolowskie mogą być kodowane za pomocą NAND, ale to kodowanie zaciemnia strukturę logiki.
źródło