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

Online Help

All Products    Maple    MapleSim


Algebraic

  

ConvertRootOf

  

convert algebraic objects to RootOf notation

 

Calling Sequence

Parameters

Options

Description

Examples

Calling Sequence

ConvertRootOf(f, options)

Parameters

f

-

any Maple object

options

-

(optional) equation(s) of the form keyword = value, where keyword is either 'makeindependent' or 'substitutions'

Options

• 

If the option 'makeindependent' = true is given, ConvertRootOf will attempt to rewrite all algebraic objects, including RootOfs that are present in f, in terms of independent RootOfs, using the command evala/Algfield. Note that this computation can be very expensive. If 'makeindependent' = false is given, then ConvertRootOf will not perform any independence checking, and the RootOfs in the output may not be independent. By default, 'makeindependent' = FAIL is assumed, and a rewrite in terms of independent RootOfs will only be attempted if there are at most 4 distinct algebraic objects in f.

• 

If the option 'substitutions' = true is given (or 'substitutions' for short), then ConvertRootOf does not actually perform the conversion but instead returns an expression sequence F, B, S, where

– 

F is a set of forward substitutions, such that the result of subs(F, f) is equal to what ConvertRootOf returns without option substitutions,

– 

B is a set of backward substitutions, essentially the inverse of the substitution induced by F, and

– 

S, of type boolean, indicates whether the RootOfs in subs(F, f) are independent.

Description

• 

The ConvertRootOf command changes all occurrences of algebraic objects (typically radicals) in f to indexed RootOf notation.

• 

Usually, the radical apm, for integers p<m, is transformed into the equivalent expression RootOf_Zma&comma;index=1p.

• 

The imaginary unit I is replaced by RootOf_Z2+1&comma;index=1, unless it occurs in the second or third argument of a RootOf.

• 

This command descends recursively into subexpressions, including tables. In particular, nested radicals are converted.

• 

By default, this command performs a limited amount of independence checking, for efficiency reasons, unless the option 'makeindependent' is given (see below).

• 

If the input is a single algebraic object, then ConvertRootOf always returns an irreducible RootOf.

Examples

AlgebraicConvertRootOfsqrt5

RootOf_Z25&comma;index=1

(1)

AlgebraicConvertRootOfI+sqrt5

RootOf_Z2+1&comma;index=1+RootOf_Z25&comma;index=1

(2)

AlgebraicConvertRootOfI+sqrt5&comma;substitutions

I=RootOf_Z2+1&comma;index=1&comma;5=RootOf_Z25&comma;index=1,RootOf_Z25&comma;index=1=5&comma;RootOf_Z2+1&comma;index=1=I,true

(3)

AlgebraicConvertRootOfRootOf_Z2sqrt2_Z+1&comma;index=2

RootOf_Z2RootOf_Z22&comma;index=1_Z+1&comma;index=2

(4)

The imaginary unit I is replaced by RootOf_Z2+1&comma;index=1, unless it occurs in the second or third argument of a RootOf:

AlgebraicConvertRootOfx+I+RootOf_Z3I&comma;0..1+I

x+RootOf_Z2+1&comma;index=1+RootOf_Z2RootOf_Z2+1&comma;index=1_Z1&comma;index=1

(5)

If there are at most 4 algebraic numbers in the input, the output RootOfs will be independent by default:

AlgebraicConvertRootOfsqrt2&comma;sqrt3&comma;sqrt6

RootOf_Z22&comma;index=1&comma;RootOf_Z23&comma;index=1&comma;RootOf_Z23&comma;index=1RootOf_Z22&comma;index=1

(6)

AlgebraicConvertRootOfsqrt2&comma;sqrt3&comma;sqrt6&comma;substitutions

2=RootOf_Z22&comma;index=1&comma;3=RootOf_Z23&comma;index=1&comma;6=RootOf_Z23&comma;index=1RootOf_Z22&comma;index=1,RootOf_Z23&comma;index=1=3&comma;RootOf_Z22&comma;index=1=2,true

(7)

If the input contains more than 4 algebraic objects, the output RootOfs are not necessarily independent:

AlgebraicConvertRootOfI&comma;sqrt2&comma;sqrt3&comma;sqrt5&comma;sqrt6

RootOf_Z2+1&comma;index=1&comma;RootOf_Z22&comma;index=1&comma;RootOf_Z23&comma;index=1&comma;RootOf_Z25&comma;index=1&comma;RootOf_Z26&comma;index=1

(8)

AlgebraicConvertRootOfI&comma;sqrt2&comma;sqrt3&comma;sqrt5&comma;sqrt6&comma;makeindependent

RootOf_Z2+1&comma;index=1&comma;RootOf_Z22&comma;index=1&comma;RootOf_Z23&comma;index=1&comma;RootOf_Z25&comma;index=1&comma;RootOf_Z23&comma;index=1RootOf_Z22&comma;index=1

(9)

ConvertRootOf recognizes trigonometric algebraic numbers:

AlgebraicConvertRootOfsinπ5

RootOf_Z45_Z2+5&comma;index=12

(10)

Unless the only algebraic object in the input is a trigonometric algebraic number, ConvertRootOf first converts to radicals and then to RootOfs:

AlgebraicConvertRootOfsinπ5+I

RootOf_Z22&comma;index=1RootOf_Z25+RootOf_Z25&comma;index=1&comma;index=14+RootOf_Z2+1&comma;index=1

(11)

See Also

Algebraic

convert,radical

convert,RootOf

evala,Algfield

evala,Indep

radfield