Cardinal Numbers
The CardinalNumber can be used for
values indicating the cardinality of sets, both finite and infinite. For
example, the dimension operation in the
category VectorSpace returns a cardinal
number.
The non-negative integers have a natural construction as cardinals
0=#{ }, 1={0}, 2={0,1}, ..., n={i | 0 <= i < n}
The fact that 0 acts as a zero for the multiplication of cardinals is
equivalent to the axiom of choice.
Cardinal numbers can be created by conversion from non-negative integers.
The can also be obtained as the named cardinal Aleph(n)
The finite? operation tests whether a value
is a finite cardinal, that is, a non-negative integer.
Similarly, the countable? operation
determines whether a value is a countable cardinal, that is, finite or
Aleph(0).
Arithmetic operations are defined on cardinal numbers as follows:
x+y = #(X+Y)
|
cardinality of the disjoint union
|
x-y = #(X-Y)
|
cardinality of the relative complement
|
x*y = #(X*Y)
|
cardinality of the Cartesian product
|
x+*y = #(X**Y)
|
cardinality of the set of maps from Y to X
|
Here are some arithmetic examples:
Subtraction is a partial operation; it is not defined when subtracting
a larger cardinal from a smaller one, nor when subtracting two equal
infinite cardinals.
The generalized continuum hypothesis asserts that
2**Aleph i = Aleph(i+1)
and is independent of the axioms of set theory. (Goedel, The consistency
of the continuum hypothesis, Ann. Math. Studies, Princeton Univ. Press,
1940) The CardinalNumber domain
provides an operation to assert whether the hypothesis is to be assumed.
When the generalized continuum hypothesis is assumed, exponentiation to
a transfinite power is allowed.
Three commonly encountered cardinal numbers are
a = #Z countable infinity
c = #R the continuum
f = #{g|g: [0,1]->R}
In this domain, these values are obtained under the generalized continuum
hypothesis in this way: