Proste zamykania dla typów indukcyjnych ze spacjami funkcyjnymi

9

Funkcje zbudowane z produktów i sum skończonych mają porządek zamknięcia ω, ładnie wyszczególnione w tym manuskrypcie Francoisa Metayera. tzn. możemy osiągnąć typ indukcyjnynat:=μX.1+X przez iterację funktora 1+X, który osiąga swój stały punkt po ω iteracje.

Ale kiedy pozwolimy na stałe potęgowanie, takie jak w μX.1+X+(natX), następnie ω nie wystarczy.

Szukam wyników obejmujących potęgowanie. Jakie porządki są wystarczające?

Szczególnie docenione byłoby odniesienie, które stanowi dowód, że takie funktory są α- ciągłe dla niektórych porządkowych α jak w powyższym manuskrypcie.

Andrew Cave
źródło

Odpowiedzi:

5

Odpowiedź na twoje pytanie zależy od kilku rzeczy, z których najważniejszą jest wielkość przestrzeni funkcji . Wytłumaczę. Definiować

O0=nzat
On+1=μX. 1+X+(OnX)
Jak zauważyłeś w swojej odpowiedzi, każdy Onmoże być uważany wewnętrznie zan-ty zwykły kardynał twojego systemu. W teorii mnogości ten typ danych może być reprezentowany przez rzeczywistą liczbę porządkową i jest odpowiednio ogromny.

Jednak takie konstrukcje mogą zostać dodane do niektórych wersji teorii typów, i powstaje pytanie: jaki porządek jest potrzebny, aby nadać interpretacji zestawu teoretycznej temu konstruktowi? Teraz, jeśli ograniczymy się do konstruktywnej semantyki, naturalną ideą jest próba interpretacji każdego typu przez zbiór „realizatorów” tego typu, który jest podzbiorem zbioruλ-terms lub równoważnie liczby naturalne N..

W takim przypadku łatwo jest wykazać, że porządek można policzyć dla dowolnego On, ale ten porządek rośnie bardzo szybko. Jak szybko? Znowu zależy to od ilości swobody, jaką masz, próbując budować funkcje. Teoria budowania takich porządków jest opisana w teorii dużych policzalnych porządków, o których Wikipedia ma zaskakująco wiele do powiedzenia. Zasadniczo łatwo jest wykazać, że omawiane porządki są mniejsze niż Ordinal kościelny-Kleene , chyba że dopuszczasz niekonstruktywne środki budowania funkcji (powiedzmybmizavmir(n) która oblicza numer zajętego bobra dla maszyn z n państwa).

Nie mówi to jednak wiele, poza tym, że w teorii konstruktywnej do budowania interpretacji potrzebne są jedynie konstruktywne porządki porządkowe. Jest jednak coś więcej do powiedzenia. Po pierwsze, jest bardzo ładna prezentacja Thierry'ego Coquanda, która opisuje, że przy braku eliminatora dla wszystkich innych typów, alenzat, możesz budować O1 Dokładnie ϵ0 kroki.

Zasadniczo wydaje się, że istnieje zgodność między siłą logiczną teorii typów a wielkością największej liczby porządkowej, którą może reprezentować w ten sposób. Ta korespondencja jest przedmiotem analizy porządkowej , która była badana od późnych lat sześćdziesiątych i jest nadal przedmiotem badań (niektóre niesamowite pytania otwarte). Ostrzeżenie: temat jest równie techniczny, co fascynujący.

Mam nadzieję że to pomoże.

cody
źródło
4

Myślę, że znalazłem odpowiedź, która działa w kategoriach wystarczająco podobnych do Seta. Jest to twierdzenie 3.1.12 w Pierwotnych algebrach i terminalnych węgielach: ankieta przeprowadzona przez Adamka, Miliusa i Mecha.

Odpowiedź jest taka, że ​​jeden porządek nie jest wystarczający dla wszystkich takich funktorów. Stają się dowolnie duże.

Dokładniej dla fa(X)=do0×(ZA0X)+do1×(ZA1X)+...+don×(ZAnX), odpowiedź jest pierwszą regularną porządkową większą niż wszystkieZAja. Mówimyα jest regularny, jeśli dla wszystkich β<α, wszystko β-indexed łańcuchy rzędnych < α mieć supremum < α. W przybliżeniu,α nie jest osiągalny z mniejszego łańcucha mniejszych porządków.

Kluczowym rezultatem jest to α zwykły porządek, uzasadniony α-gałęziające się drzewa mają nieskończoną głębokość < α.

Nieformalnie rozumiem to jak każdy fa:ZAkfaα(0) (to znaczy fa:ZAkja<αfaja(0)) "pasuje do" ZAkfajot(0) gdzie jot: =sup(za:ZAk)`` ja taki, że fa(za) pasuje do faja(0). Żejot<α trzyma się właśnie dlatego α jest regularny i |ZAk|<α.

Więc (ZAkja<αfaja(0))jot<α(ZAkfajot(0)) dla każdego k.

Rozszerzając to na +s i ×s mamy: fa(faα(0))jot<αfa(fajot(0))=jot<αfajot(0)=faα(0), a więc osiągnął ustalony punkt na α.

Jednak nie jest dla mnie jasne, jak uogólnić ten argument poza Setem. Jak bierzemyZAk-indexed colimits?

Andrew Cave
źródło