MonomialExtensionTools(F, UP)

intrf.spad line 109 [edit on github]

Tools for handling monomial extensions.

decompose : (Fraction(UP), Mapping(UP, UP)) -> Record(poly : UP, normal : Fraction(UP), special : Fraction(UP))

decompose(f, D) returns [p, n, s] such that f = p+n+s, all the squarefree factors of denom(n) are normal w.r.t. D, denom(s) is special w.r.t. D, and n and s are proper fractions (no pole at infinity). D is the derivation to use.

normalDenom : (Fraction(UP), Mapping(UP, UP)) -> UP

normalDenom(f, D) returns the product of all the normal factors of denom(f). D is the derivation to use.

split : (UP, Mapping(UP, UP)) -> Record(normal : UP, special : UP)

split(p, D) returns [n, s] such that p = n s, all the squarefree factors of n are normal w.r.t. D, and s is special w.r.t. D. D is the derivation to use.

splitSquarefree : (UP, Mapping(UP, UP)) -> Record(normal : Factored(UP), special : Factored(UP))

splitSquarefree(p, D) returns [n_1 n_2^2 ... n_m^m, s_1 s_2^2 ... s_q^q] such that p = n_1 n_2^2 ... n_m^m s_1 s_2^2 ... s_q^q, each n_i is normal w.r.t. D and each s_i is special w.r.t D. D is the derivation to use.