3

这是什么意思,以及下一个类型的基数是什么,例如:

unit->int  

bool->(int->bool)
4

1 回答 1

2

类型的基数是可能属于该类型的合法值的数量。

对于函数类型,我们通常希望将每个输入返回相同值的两个函数视为“相同的函数”,至少出于基数目的(这称为“扩展相等”)。

我假设这是一个家庭作业问题,并且我将进一步假设不包含不终止或产生未定义值的函数(事实上,它们不会包含在典型的数学处理中) .

表达可以具有有限数量可能值的类型的基数原则上相当容易,因为您可以只给出一个数字作为基数。但是,对于无限基数,从技术上讲,不同种类的无限是有区别的。例如,不可数无穷大“大于”可数无穷大。(老实说,我不确定您是否应该知道这一点,或者您是否应该给出“无限”的答案 - 检查您的课程笔记。)因此,指定哪个无限是个好主意您正在谈论,例如通过引用“更简单”类型的基数。

因此 的基数与unit->int的基数int相同(对于您可能选择而不是 的任何其他目标类型也是如此int),因为类型的值unit->X必须是“忽略其输入”并返回常量的常量函数类型的值X

我希望这个不完整的答案足以让您入门。

于 2010-11-05T09:59:17.940 回答