SmallOrdinal¶
ordinal.spad line 1 [edit on github]
SmallOrdinal implements ordinal numbers up to epsilon_0
. +
and *
are “natural” addition and multiplication of ordinals. Available separately are “ordered” operataions.
- 0: %
from AbelianMonoid
- 1: %
from MagmaWithUnit
- *: (%, %) -> %
from LeftModule %
- *: (NonNegativeInteger, %) -> %
from AbelianMonoid
- *: (PositiveInteger, %) -> %
from AbelianSemiGroup
- +: (%, %) -> %
from AbelianSemiGroup
- <=: (%, %) -> Boolean
from PartialOrder
- <: (%, %) -> Boolean
from PartialOrder
- >=: (%, %) -> Boolean
from PartialOrder
- >: (%, %) -> Boolean
from PartialOrder
- ^: (%, %) -> %
o1^o2
returnso1
to powero2
, where power is inductively defined using successive natural multiplication from the left- ^: (%, NonNegativeInteger) -> %
from MagmaWithUnit
- ^: (%, PositiveInteger) -> %
from Magma
- antiCommutator: (%, %) -> %
- coerce: % -> OutputForm
from CoercibleTo OutputForm
- coerce: NonNegativeInteger -> %
- hash: % -> SingleInteger
from Hashable
- hashUpdate!: (HashState, %) -> HashState
from Hashable
- integerPart: % -> NonNegativeInteger
integerPart(o)
=n
wheno
=l
+n
andl
is a limit ordinal
- latex: % -> String
from SetCategory
- leftPower: (%, NonNegativeInteger) -> %
from MagmaWithUnit
- leftPower: (%, PositiveInteger) -> %
from Magma
- leftRecip: % -> Union(%, failed)
from MagmaWithUnit
- limitPart: % -> %
limitPart(o)
=l
wheno
=l
+n
andl
is a limit ordinal andn
is a nonnegative integer
- max: (%, %) -> %
from OrderedSet
- min: (%, %) -> %
from OrderedSet
- omega: () -> %
omega()
is the first infinite ordinal
- omegapower: % -> %
omegapower(p)
returns omega^p
- one?: % -> Boolean
from MagmaWithUnit
- opposite?: (%, %) -> Boolean
from AbelianMonoid
- ordinalAdd: (%, %) -> %
ordinalAdd(o1, o2)
returns sum ofo1
ando2
as ordered sets
- ordinalMul: (%, %) -> %
ordinalMul(o1, o2)
returns product ofo1
ando2
as ordered sets
- ordinalPower: (%, %) -> %
ordinalPower(o1, o2)
returnso1
to powero2
, where power is inductively defined using successive ordinal multiplication from the left
- recip: % -> Union(%, failed)
from MagmaWithUnit
- retractIfCan: % -> Union(NonNegativeInteger, failed)
- rightPower: (%, NonNegativeInteger) -> %
from MagmaWithUnit
- rightPower: (%, PositiveInteger) -> %
from Magma
- rightRecip: % -> Union(%, failed)
from MagmaWithUnit
- sample: %
from AbelianMonoid
- smaller?: (%, %) -> Boolean
from Comparable
- subtractIfCan: (%, %) -> Union(%, failed)
- zero?: % -> Boolean
from AbelianMonoid
BiModule(%, %)
CoercibleFrom NonNegativeInteger