+ - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


Ordinals[Add]

ordinal addition

Ordinals[`+`]

ordinal addition

&+

inert ordinal addition

 

Calling Sequence

Parameters

Description

Examples

Compatibility

Calling Sequence

Add(a, b, ...)

a + b + ...

a &+ b &+ ...

Parameters

a, b, ...

-

ordinals, nonnegative integers, or polynomials with positive integer coefficients

Description

• 

The Add and + calling sequences add the given ordinal numbers according to the rules of ordinal arithmetic:

– 

a+0=a and 0+b=b.

– 

If degreeadegreeb, where  denotes the strict ordering of ordinals, then a+b=b.

– 

If a=l+ωem, where l=0 or tdegreele, and b=ωen+r, where edegreer, then a+b=l+ωem+n+r.

– 

If tdegreeadegreeb, then a+b is just the concatenation (formal sum) of all terms of a and b, in that order.

• 

Mathematically, addition of two ordinals a+b corresponds to the disjoint union ab of the two well-orderings represented by a and b, respectively, such that every element of b is strictly larger than every element of a.

• 

If the arguments a,b,... contain at least one ordinal data structure, that is, an ordinal number greater or equal to ω, then the result is an ordinal data structure. Otherwise, the result is a nonnegative integer or a polynomial with positive integer coefficients.

• 

The &+ calling sequence is the inert form of ordinal addition. No actual addition is performed, but the result will be rendered as an inert sum, with parentheses around the arguments if necessary.

• 

Applying the value command will turn the inactive &+ operator into the active + operator, causing the ordinal addition to be computed as described above.

• 

In general, ordinal addition is not commutative, and the order of the operands does matter, for both calling sequences.

• 

If some of the arguments are parametric ordinals and it cannot be determined whether a leading coefficient is nonzero, an error will be raised.

Examples

withOrdinals

`+`&comma;`.`&comma;`<`&comma;<=&comma;Add&comma;Base&comma;Dec&comma;Decompose&comma;Div&comma;Eval&comma;Factor&comma;Gcd&comma;Lcm&comma;LessThan&comma;Log&comma;Max&comma;Min&comma;Mult&comma;Ordinal&comma;Power&comma;Split&comma;Sub&comma;`^`&comma;degree&comma;lcoeff&comma;log&comma;lterm&comma;ω&comma;quo&comma;rem&comma;tcoeff&comma;tdegree&comma;tterm

(1)

aOrdinalω&comma;1&comma;3&comma;2&comma;1&comma;4&comma;0&comma;5

aωω&plus;ω32&plus;ω4&plus;5

(2)

bOrdinal2&comma;3&comma;0&comma;2

bω23&plus;2

(3)

cOrdinal3&comma;3&comma;2&comma;1&comma;1&comma;7

cω33&plus;ω2&plus;ω7

(4)

Adda&comma;b&comma;c=a+b+c

ωω&plus;ω35&plus;ω2&plus;ω7=ωω&plus;ω35&plus;ω2&plus;ω7

(5)

a+c+b

ωω&plus;ω35&plus;ω24&plus;2

(6)

c+b+a=a

ωω&plus;ω32&plus;ω4&plus;5=ωω&plus;ω32&plus;ω4&plus;5

(7)

The inert addition operator is useful for display purposes.

resulta&+b&+c&colon;

result=valueresult

ωω&plus;ω32&plus;ω4&plus;5&plus;ω23&plus;2&plus;ω33&plus;ω2&plus;ω7=ωω&plus;ω35&plus;ω2&plus;ω7

(8)

Any of the arguments can be a nonnegative integer. It will be absorbed if the term to the right is an ordinal greater or equal to ω.

b+2

ω23&plus;4

(9)

b+2+c=c

ω33&plus;ω2&plus;ω7=ω33&plus;ω2&plus;ω7

(10)

Parametric examples.

dOrdinal3&comma;x&comma;2&comma;1&comma;1&comma;7

dω3x&plus;ω2&plus;ω7

(11)

d+b

ω3x&plus;ω24&plus;2

(12)

b+d

Error, (in Ordinals:-Add) cannot determine if x is nonzero

b+Evald&comma;x=x+1

ω3x+1&plus;ω2&plus;ω7

(13)

Compatibility

• 

The Ordinals[Add], Ordinals[`+`] and &+ commands were introduced in Maple 2015.

• 

For more information on Maple 2015 changes, see Updates in Maple 2015.

See Also

Ordinals

Ordinals[Eval]

Ordinals[LessThan]

Ordinals[Mult]

Ordinals[Ordinal]

Ordinals[Power]

Ordinals[Sub]

value