Ordinals
Eval
substitute values for parameters in an ordinal
Calling Sequence
Parameters
Description
Examples
Compatibility
Eval(o, x=v)
Eval(o, l)
o
-
ordinal
x
name
v
integer or polynomial with integer coefficients
l
list or set of equations of type x=v
The Eval(o, x=v) calling sequence substitutes the value v for the parameter x in the ordinal o, returning either an ordinal data structure, a nonnegative integer, or a polynomial with positive integer coefficients.
It is possible for v to be a negative integer or a polynomial with some negative integer coefficients, provided that the result is a valid ordinal, which means it does not have any negative integer coefficients.
The resulting ordinal is simplified, namely, any coefficients that become zero are removed, and if only a single term with exponent 0 is left after that, a nonnegative integer or a polynomial with positive integer coefficients is returned.
The Eval(o, l) calling sequence performs all the substitutions in l simultaneously.
This command can also be applied to a polynomial with positive integer coefficients representing a nonnegative integer ordinal.
with⁡Ordinals
`+`,`.`,`<`,<=,Add,Base,Dec,Decompose,Div,Eval,Factor,Gcd,Lcm,LessThan,Log,Max,Min,Mult,Ordinal,Power,Split,Sub,`^`,degree,lcoeff,log,lterm,ω,quo,rem,tcoeff,tdegree,tterm
o1≔Ordinal⁡ω,x,2,3,1,y+1,0,4
o1≔ωω⋅x+ω2⋅3+ω⋅y+1+4
Eval⁡o1,x=0
ω2⋅3+ω⋅y+1+4
Several substitutions can be done at once. It is also possible to substitute a polynomial for a parameter and not just an integer.
Eval⁡o1,x=x2+1,y=4
ωω⋅x2+1+ω2⋅3+ω⋅5+4
The result need not be an ordinal data structure.
o2≔Ordinal⁡2,x2+x,1,x,0,4
o2≔ω2⋅x2+x+ω⋅x+4
Eval⁡o2,x=0
4
Eval⁡ω·x,x=0
0
The attempt to substitute a negative integer or a polynomial with negative coefficients may result in an error if the result has negative coefficients.
o3≔Ordinal⁡1,2⁢x+2,0,3
o3≔ω⋅2⁢x+2+3
Eval⁡o3,x=−1
3
Eval⁡o3,x=−2
Error, (in Ordinals:-Eval) invalid substitution; result is not a valid ordinal
Eval⁡o3,x=x−1
ω⋅2⁢x+3
Eval⁡o3,x=x−2
The Eval command can also be applied to a polynomial with positive integer coefficients representing a constant ordinal.
Eval⁡x2+1,x=3=eval⁡x2+1,x=3
10=10
The Ordinals[Eval] command was introduced in Maple 2015.
For more information on Maple 2015 changes, see Updates in Maple 2015.
See Also
eval
Ordinals[Ordinal]
overload
Download Help Document