Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is Hask locally small?

Tags:

haskell

Is the category Hask of haskell objects an example of a locally small category?

http://ncatlab.org/nlab/show/locally+small+category

Maybe not.. hask as cpo http://www.cs.gunma-u.ac.jp/~hamana/Papers/cpo.pdf

The haskellwiki, http://www.haskell.org/haskellwiki/Hask has very good information, showing that Hask is not Cartesian Closed.

like image 533
edeast Avatar asked Apr 02 '13 22:04

edeast


2 Answers

What is Hask? If it includes all the haskell definable "functions" as morphism then definitly not

data Big = Big (Big -> Big)

the "hom set" of Big -> Big contains the entire untyped lambda calculus! I doubt it is locally small even if you only allow terminating functions--I think there are no set theoretic models of system-f.

EDIT: seven years later I can't make heads or tails of what I was trying to say here. Hask has no set theoretic models, in the sense of models which interpret function types as the full sets of functions. That is true, but I don't know what that has to do with the question. It isn't really clear what "Hask" is, but any reasonable answer seems to me would have small homsets (that is, it is locally small).

The strangeness of my answer from many years past is slightly embarrassing to me. I'm sure I meant something very insightful--I just have no idea what that was, and as worded it seems rather wrong.

like image 75
Philip JF Avatar answered Sep 17 '22 19:09

Philip JF


Hask objects are Haskell types which are countably infinite. Hask arrows are Haskell functions which are also countably infinite. Therefore Hask is not only locally small, Hask is small.

card(ob(Hask))=card(hom(Hask))=card(N)

More details about Hask here:

http://yannesposito.com/Scratch/en/blog/Category-Theory-Presentation/

like image 29
yogsototh Avatar answered Sep 18 '22 19:09

yogsototh