Czytam ten dobrze znany artykuł o wszechświatach w teorii typów . Na początku spodziewałem się czegoś podobnego do Setω
Agdy, ale okazuje się, że jest to nawet coś bardziej ogólnego. Wydaje się uogólniać konstrukcję wszechświata od zwykłego typu indukcyjno-rekurencyjnego do spoiwa (podobnego do i ). Główne pytanie, które chcę zadać, to jaki jest tego zamiar?
Oto kod Idris definiujący zwykłe wszechświaty w stylu Tarskiego:
mutual
public export data U : (level : Nat) -> Type where
GroundU : Ground -> U level
BinderU : Binder -> (a : U level) -> (b : (x : T {level} a) -> U level) -> U level
UnivU : U (S level)
LiftU : U level -> U (S level)
public export T : {level : Nat} -> (code : U level) -> Type
Próbuję uogólnić na coś takiego
mutual
public export data U : (a : Type) -> (b : (x : a) -> Type) -> Type where
GroundU : Ground -> U a ???
...
Co powinno ???
być Autor artykułu powiedział właśnie, że wszechświaty powinny być zamknięte pod ustalonymi twórcami.
edycja: Myślę, że ???
jest po prostu b
...
Setω
, więc poszukałem artykułów na temat superwszechświatów, aby sprawdzić, czy mogę się czegoś nauczyć. Jest naprawdę niewiele artykułów na ten temat, a ten jest najważniejszy. Aby to zrozumieć, sam próbowałem to wdrożyć. Chociaż teraz nie sądzę, by zapewniło to wgląd w mój nowy pomysł, nadal chcę to zrozumieć.
Nat
wiele wszechświatów? Nie jest jasne, o co pytasz.