мощность типа - PullRequest
       18

мощность типа

2 голосов
/ 05 ноября 2010

Что это значит, а также что такое количество элементов следующих типов, например:

unit->int  

bool->(int->bool)

1 Ответ

1 голос
/ 05 ноября 2010

Количество элементов типа - это число возможных допустимых значений этого типа.

С типами функций мы обычно хотим рассмотреть две функции, которые возвращают одно и то же значение для каждого входного значения "та же функция ", по крайней мере, для кардинальных целей (это известно как" равенство экстенсиональности ").

Я предполагаю, что это проблема домашней работы, и я также собираюсь предположить, что функции, которые неЗавершение или выдача неопределенных значений не должны включаться (так как они действительно не будут включены в типичную математическую обработку).

Выражение количества типов, которые могут иметь конечное число возможных значений,довольно легко в принципе, потому что вы можете просто дать число в качестве кардинальности.Однако, с бесконечным количеством элементов, технически существует различие между различными видами бесконечностей.Например, неисчислимая бесконечность «больше» счетной бесконечности.(Честно говоря, я не уверен, ожидаете ли вы, что вы это знаете, или вам просто нужно дать ответ «бесконечно» - проверьте примечания к курсу.) По этой причине рекомендуется указать, какая бесконечностьВы говорите, например, ссылаясь на количество элементов «более простого» типа.

Таким образом, количество элементов unit->int совпадает с количеством элементов int (и то же самое относится и к любому другому месту назначения).тип, который вы можете выбрать вместо int), поскольку значение типа unit->X обязательно должно быть константной функцией, которая «игнорирует свой ввод» и возвращает постоянное значение типа X.

Iнадеюсь, что этого неполного ответа достаточно, чтобы начать работу.

...