Ist Hask lokal klein?

9

Ist die Kategorie Hask von Haskell-Objekten ein Beispiel für eine lokal kleine Kategorie?

Ссылка

Vielleicht nicht .. hask als cpo Ссылка

Das Haskellwiki, Ссылка hat sehr gute Informationen, die zeigen, dass Hask kein kartesisches Closed ist.

    
edeast 02.04.2013, 22:35
quelle

3 Antworten

2

Was ist Hask? Wenn es alle Haskell definierbaren "Funktionen" als Morphismus enthält, dann definitiv nicht

%Vor%

Der "hom set" von Big -> Big enthält den gesamten untypisierten Lambda-Kalkül! Ich bezweifle, dass es lokal klein ist, selbst wenn Sie nur abschließende Funktionen zulassen - ich denke, es gibt keine mengentheoretischen Modelle von System-f.

    
Philip JF 03.04.2013 03:56
quelle
1

Hask-Objekte sind Haskell-Typen, die abzählbar unendlich sind. Hask-Pfeile sind Haskell-Funktionen, die auch abzählbar unendlich sind. Deshalb ist Hask nicht nur lokal klein, sondern auch klein.

Karte (ob (Hask)) = Karte (hom (Hask)) = Karte (N)

Weitere Details über Hask hier:

Ссылка

    
yogsototh 03.04.2013 03:54
quelle
0

Besonders @PhillipJF, hier ist ein Versuch. Ich versuche nicht, das genaueste oder eleganteste Modell von Hask zu machen, ich versuche nur ein ein Modell zu machen. Kritik, bitte.

Wenn A ein Haskell-Typ ist, definieren Sie einen -Wert vom Typ A in Hask als eine Äquivalenzklasse gut typisierter Haskell-Terme vom Typ A (Strings x, für die x :: A akzeptiert würde) vom Typ Checker), modulo extensional equality. Das heißt, zwei Terme gelten als gleich, wenn sie sich auf die gleiche (möglicherweise unendliche) Normalform ausdehnen, und zwei Terme, die kein Hnf haben, sind ebenfalls gleich. Die Tatsache, dass dies nicht entscheidbar ist, ist irrelevant, wir müssen diese Bedingungen nur theoretisch festlegen, was ich kaum bezweifeln kann.

Lassen Sie die Objekte von Hask Haskell-Typen sein (primitive Typen und amp; benutzerdefinierte Typen; wir nehmen an, dass alle benutzerdefinierten Typen existieren und unterschiedliche Namen haben. Benutzerdefinierte Typdefinitionen sind Quelle Code, so dass sie zählbar sind. Benennen Sie sie einfach mit D0 , D1 , ... entsprechend dieser Zählung.).

Lassen Sie die Morphismen A - & gt; B sind Werte vom Typ A - & gt; B

Lassen Sie die Identität auf A die Äquivalenzklasse von id :: A -> A sein und lassen Sie die Zusammensetzung von g und f ebenfalls die Äquivalenzklasse von g . f sein.

Die Menge aller Werte ist eine zählbare Menge, da die Begriffe nur Strings über ein endliches Alphabet sind. Dieses Modell von Hask ist also klein.

Ist das falsch?

    
luqui 03.04.2013 15:45
quelle

Tags und Links