haskell对象的Hask类别是局部小类别的一个例子吗?
http://ncatlab.org/nlab/show/locally+small+category
也许不是..伪装成首席执行官http://www.cs.gunma-u.ac.jp/~hamana/Papers/cpo.pdf
haskellwiki,http://www.haskell.org/haskellwiki/Hask有非常好的信息,说明Hask不是笛卡尔闭合的。
发布于 2013-04-03 23:45:43
尤其是@PhillipJF,这是一个尝试。我并不是想做Hask最精确或最优雅的模型,我只是想做一个模型。请给我评论。
如果A是Haskell类型,则在Hask中将类型A的值定义为类型A的良好类型Haskell术语的等价类(类型检查器将接受x :: A的字符串x),模扩展相等。也就是说,如果两个项扩展到相同的(可能是无限的)范式,那么它们被认为是相等的,并且两个没有hnf的项也是相等的。事实上,这是不可决定的,这是无关紧要的,我们只需要说明这些条件集-理论上,我几乎怀疑我们可以做到。
假设Haskell Hask的对象是Haskell类型(原始类型和用户定义的类型;我们将假设所有用户定义的类型都存在并具有不同的名称。用户定义的类型定义是源代码,因此它们是可计数的。把它们命名为D0,D1,..。根据该计数。)。
设态射A_ -> _B为A_型-> _B的值
设A上的恒等式是id :: A -> A的等价类,同样地,设g和f的合成是g . f的等价类。
所有值的集合是一个可数集合,因为术语只是有限字母表上的字符串。所以这个Hask的模型很小。
这是错的吗?
https://stackoverflow.com/questions/15775646
复制相似问题