Decompose - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Mozilla Firefox.

Online Help

All Products    Maple    MapleSim


Ordinals

  

Decompose

  

exponentially decompose an ordinal number

 

Calling Sequence

Parameters

Returns

Description

Examples

Compatibility

Calling Sequence

Decompose(a, output=o)

Parameters

a

-

ordinal or non-negative integer

o

-

(optional) literal keyword; either list (default) or inert

Returns

• 

If output=list (the default), a list of ordinals and non-negative integers is returned. Unless a=0 or a=1, any integers in the list are strictly greater than 1.

• 

Otherwise, if output=inert is specified, an inert exponentiation of ordinal numbers using the inert operator &^ is returned.

Description

• 

The Decompose(a) calling sequence computes an exponential normal form a1a2⋰an of a as an iterated power of ordinals and non-negative integers a1,a2,…,an that cannot be decomposed any further as a power of strictly smaller ordinals.

• 

The composition factors have the following additional properties, which ensure uniqueness of the decomposition.

i. 

Trivial cases: a=1⇔n=0, and if a=0, then n=1 and a1=0.

ii. 

If a≥2 is an integer, then ak are all integers ≥2.

iii. 

If ak≥2 is an integer, then it is not a perfect power, that is, it cannot be written as bc for integers b,c≥2.

iv. 

If ak is not an integer, then either k=n=1 and a=ak=ω, or ak has at least two nonzero terms in the Cantor normal form.

v. 

If a is not an integer, then there is an index i∈1,…,n such that ai is not an integer and ai+1,…,an  are all integers ≥2.

vi. 

If i≥2, then a1=⋯=ai−2=2 and degree⁡ai≥1>0=tdegree⁡ai. (Moreover, either ai−1≥2 is an integer, or it has at least two nonzero terms.)

• 

Exponential decomposition is a one-sided inverse of powering, in the sense that value⁡Decompose⁡a,output=inert=a.

• 

The ordinal a can be parametric. However, if the complete decomposition cannot be computed in such a case, an error will be raised.

Examples

> 

with⁡Ordinals

`+`&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)
> 

Decompose⁡ωω

2&comma;2&comma;2&comma;ω&plus;1

(2)

Using output=inert. The result can be verified using value.

> 

Decompose⁡ωω&comma;output=inert

222ω&plus;1

(3)
> 

value⁡

ωω

(4)
> 

Decompose⁡ωω+1

2&comma;ω2&plus;ω

(5)

Any ordinal ≠ω with a single term can be decomposed.

> 

Decompose⁡ω·3

3&comma;ω&plus;1

(6)
> 

Decompose⁡ω3

2&comma;3&comma;ω&plus;1

(7)
> 

Decompose⁡ω2·3

3&comma;ω⋅2&plus;1

(8)
> 

Decompose⁡ωω+1·2&comma;output=inert

2ω&plus;12

(9)
> 

value⁡

ωω&plus;1⋅2

(10)

The following equality is not a decomposition into strictly smaller ordinals, and therefore ω is indecomposable.

> 

2&ˆω=2ω

2ω=ω

(11)
> 

Decompose⁡ω

ω

(12)

More than one term.

> 

b≔ω2+ω

b≔ω2&plus;ω

(13)
> 

a≔ωb+2+ωb+1

a≔ωω2&plus;ω&plus;2&plus;ωω2&plus;ω&plus;1

(14)
> 

Decompose⁡a&comma;output=inert

ω2&plus;ωω&plus;12

(15)
> 

c≔a+ωb·3

c≔ωω2&plus;ω&plus;2&plus;ωω2&plus;ω&plus;1&plus;ωω2&plus;ω⋅3

(16)
> 

Decompose⁡c&comma;output=inert

ω2&plus;ω&plus;3ω&plus;12

(17)
> 

p≔ω+22

p≔ω2&plus;ω⋅2&plus;2

(18)
> 

Decompose⁡p&comma;output=inert

ω&plus;22

(19)
> 

q≔ω+3p

q≔ωω2&plus;ω⋅2&plus;2&plus;ωω2&plus;ω⋅2&plus;1⋅3&plus;ωω2&plus;ω⋅2⋅3

(20)
> 

Decompose⁡q&comma;output=inert

ω&plus;3ω&plus;22

(21)
> 

r≔ω+5q

r≔ωωω2&plus;ω⋅2&plus;2&plus;ωω2&plus;ω⋅2&plus;1⋅3&plus;ωω2&plus;ω⋅2⋅3

(22)
> 

Decompose⁡r&comma;output=inert

2ω&plus;3ω&plus;22

(23)
> 

f≔Ordinal⁡8&comma;1&comma;7&comma;2&comma;6&comma;3&comma;5&comma;2&comma;4&comma;3&comma;3&comma;2&comma;2&comma;3&comma;1&comma;2&comma;0&comma;3

f≔ω8&plus;ω7⋅2&plus;ω6⋅3&plus;ω5⋅2&plus;ω4⋅3&plus;ω3⋅2&plus;ω2⋅3&plus;ω⋅2&plus;3

(24)
> 

Decompose⁡f&comma;output=inert

ω2&plus;ω⋅2&plus;322

(25)

Non-negative integers can be decomposed as well.

> 

Decompose⁡2417851639229258349412352&comma;output=inert

2322

(26)

Parametric examples.

> 

u≔Ordinal⁡2&comma;x&comma;1&comma;3⁢x&comma;0&comma;3

u≔ω2⋅x&plus;ω⋅3⁢x&plus;3

(27)
> 

Decompose⁡u

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

> 

Decompose⁡Eval⁡u&comma;x=x+1&comma;output=inert

ω⋅x+1&plus;32

(28)
> 

v≔Ordinal⁡ω+3&comma;1&comma;ω+2&comma;x&comma;ω+1&comma;1

v≔ωω&plus;3&plus;ωω&plus;2⋅x&plus;ωω&plus;1

(29)
> 

Decompose⁡v&comma;output=inert

ω3&plus;ω2⋅x&plus;ωω&plus;1

(30)

Compatibility

• 

The Ordinals[Decompose] command was introduced in Maple 2015.

• 

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

See Also

Ordinals

Ordinals[Factor]

Ordinals[Ordinal]

Ordinals[Power]

value