Go to the first, previous, next, last section, table of contents.

### sp, sp_noalg

sp(poly)
sp_noalg(poly)
:: Finds the splitting field of polynomial poly and splits.
return
list
poly
polynomial
• Defined in the file `sp'.
• Finds the splitting field of poly, an uni-variate polynomial over with rational coefficients, and splits it into its linear factors over the field.
• The result consists of a two element list: The first element is the list of all linear factors of poly; the second element is a list which represents the successive extension of the field. In the result of sp_noalg all the algebraic numbers are replaced by the special indeterminate associated with it, that is t#i for #i. By this operation the result of sp_noalg is a list containing only integral polynomials.
• The splitting field is represented as a list of pairs of form [root,algptorat(defpoly(root))]. In more detail, the list is interpreted as a representation of successive extension obtained by adjoining root's to the rational number field. Adjoining is performed from the right root to the left.
• sp() invokes sp_norm() internally. Computation of norm is done by several methods according to the situation but the algorithm selection is not always optimal and a simple resultant computation is often superior to the other methods. By setting the global variable USE_RES to 1, the builtin function res() is always used.
[101] L=sp(x^9-54);
[[x+(-#2),-54*x+(#1^6*#2^4),54*x+(#1^6*#2^4+54*#2),54*x+(-#1^8*#2^2),
-54*x+(#1^5*#2^5),54*x+(#1^5*#2^5+#1^8*#2^2),-54*x+(-#1^7*#2^3-54*#1),
54*x+(-#1^7*#2^3),x+(-#1)],[[(#2),t#2^6+t#1^3*t#2^3+t#1^6],[(#1),t#1^9-54]]]
[102] for(I=0,M=1;I<9;I++)M*=L[0][I];
[111] M=simpalg(M);
-1338925209984*x^9+72301961339136
[112] ptozp(M);
-x^9+54
Reference
section asq, af, af_noalg, section defpoly, section algptorat, section sp_norm.

Go to the first, previous, next, last section, table of contents.