AlgebraicManipulations(R, F)

manip.spad line 198 [edit on github]

AlgebraicManipulations provides functions to simplify and expand expressions involving algebraic operators.

ratDenom : F -> F

ratDenom(f) rationalizes the denominators appearing in f by moving all the algebraic quantities into the numerators.

ratDenom : (F, F) -> F

ratDenom(f, a) removes a from the denominators in f if a is an algebraic kernel.

ratDenom : (F, List(F)) -> F

ratDenom(f, [a1, ..., an]) removes the ai's which are algebraic kernels from the denominators in f.

ratDenom : (F, List(Kernel(F))) -> F

ratDenom(f, [a1, ..., an]) removes the ai's which are algebraic from the denominators in f.

ratPoly : F -> SparseUnivariatePolynomial(F)

ratPoly(f) returns a polynomial p such that p has no algebraic coefficients, and p(f) = 0.

rootFactor : F -> F if R has UniqueFactorizationDomain and F has FunctionSpace(R) and R has Comparable and R has GcdDomain and R has RetractableTo(Integer)

rootFactor(f) transforms every radical of the form (a1*...*am)^(1/n) appearing in f into a^(1/n)*...*am^(1/n). This transformation is not in general valid for all complex numbers a and b.

rootKerSimp : (BasicOperator, F, NonNegativeInteger) -> F if R has RetractableTo(Integer) and R has Comparable and F has FunctionSpace(R) and R has GcdDomain

rootKerSimp(op, f, n) should be local but conditional.

rootPower : F -> F if R has RetractableTo(Integer) and R has Comparable and F has FunctionSpace(R) and R has GcdDomain

rootPower(f) transforms every radical power of the form (a^(1/n))^m into a simpler form if m and n have a common factor.

rootProduct : F -> F if R has RetractableTo(Integer) and R has Comparable and F has FunctionSpace(R) and R has GcdDomain

rootProduct(f) combines every product of the form (a^(1/n))^m * (a^(1/s))^t into a single power of a root of a, and transforms every radical power of the form (a^(1/n))^m into a simpler form.

rootSimp : F -> F if R has RetractableTo(Integer) and R has Comparable and F has FunctionSpace(R) and R has GcdDomain

rootSimp(f) transforms every radical of the form (a * b^(q*n+r))^(1/n) appearing in f into b^q * (a * b^r)^(1/n). This transformation is not in general valid for all complex numbers b.

rootSplit : F -> F

rootSplit(f) transforms every radical of the form (a/b)^(1/n) appearing in f into a^(1/n) / b^(1/n). This transformation is not in general valid for all complex numbers a and b.