Singular https://www.singular.uni-kl.de/forum/ |
|
factorization of polynomials https://www.singular.uni-kl.de/forum/viewtopic.php?f=10&t=1422 |
Page 1 of 1 |
Author: | Katya [ Thu Aug 11, 2005 5:33 pm ] |
Post subject: | factorization of polynomials |
Hi! I would like to factorize a homogeneous polynomial in three variables (or more variables) in its splitting field. For example, x^2+y^2+z^2. Who knows how to do this? In order to factorize a homogeneous polynomial in two variables, e.g. x^2+y^2, I consider the polynomial x^2+1 and use command Roots in Singular. Thus, I get the roots of the polynomial and the minimal polynomial of the splitting field. But I can't factorize a polynomial in two variables using this command, it takes some time and then I recieve an error message. Thank you for any help. Katya email: [email protected] Posted in old Singular Forum on: 2004-12-17 11:38:53+01 |
Author: | wienand [ Tue Sep 20, 2005 5:31 pm ] |
Post subject: | |
Dear Katya, the new Singular 3.0 library "absfact.lib" provides the means to compute absolute factors of polynomials, that is irreducible factors over algebraic closure of the coefficient field. Your example x^2+y^2+z^2 is absolutely irreducible: Code: > ring r=0,(x,y,z),dp; > LIB "absfact.lib"; > poly f=x^2+y^2+z^2; > def S = absFactorize(f); // 'absFactorize' created a ring, in which a list absolute_factors (the // absolute factors) is stored. // To access the list of absolute factors, type (if the name S was assigned // to the return value): setring(S); absolute_factors; > setring(S); absolute_factors; [1]: _[1]=1 _[2]=x2+y2+z2 [2]: 1,1 [3]: _[1]=(a) _[2]=(a) [4]: 1 The last output (here: 1) is the number of absolutely irreducible factors. Below is an example which splits: Code: > ring r=0,(x,y,z),dp; > poly f=x^4+(y2+z2)^2; > def S = absFactorize(f); > setring(S); absolute_factors; [1]: _[1]=1/4 _[2]=(2a+1)*x2+2*y2+2*z2 [2]: 1,1 [3]: _[1]=(a) _[2]=(4a2+4a+5) [4]: 2 From the output you read one absolutely irreducible factor defined over the coefficient field Q[a]/(4a2+4a+5). The second factor is conjugate to this one. Note however that the extension field returned by absFactorize is usually not yet the splitting field (this would require additional computations over extension fields): Code: > ring r=0,x,dp; > poly f=x^3+2; > def S = absFactorize(f); > setring(S); absolute_factors; [1]: _[1]=1 _[2]=x+(-a) [2]: 1,1 [3]: _[1]=(a) _[2]=(a3+2) [4]: 3 > ring r1=(0,a),x,dp; > minpoly = a^3+2; > factorize(x^3+2); [1]: _[1]=1 _[2]=x2+(a)*x+(a2) _[3]=x+(-a) [2]: 1,1,1 Sincerely The Singular Team |
Page 1 of 1 | All times are UTC + 1 hour [ DST ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |