|
D.15.16.2 zeroReduce
Procedure from library ringgb.lib (see ringgb_lib).
- Usage:
- zeroReduce(f, [i = 0]); f - a polynomial, i - noise level (if != 0 prints all steps)
- Return:
- reduced normal form of f modulo zero polynomials
Example:
| LIB "ringgb.lib";
ring r = (integer, 65536), (y,x), dp;
poly f = 1024*x^8*y^2+11264*x^8*y+28672*x^8+45056*x^7*y^2+36864*x^7*y+16384*x^7+40960*x^6*y^2+57344*x^6*y+32768*x^6+30720*x^5*y^2+10240*x^5*y+8192*x^5+35840*x^4*y^2+1024*x^4*y+20480*x^4+30720*x^3*y^2+10240*x^3*y+8192*x^3+4096*x^2*y^2+45056*x^2*y+49152*x^2+40960*x*y^2+57344*x*y+32768*x;
zeroReduce(f);
==> 0
kill r;
ring r = (integer, 2, 32), (x,y,z), dp;
// Polynomial 1:
poly p1 = 3795162112*x^3+587202566*x^2*y+2936012853*x*y*z+2281701376*x+548767119*y^3+16777216*y^2+268435456*y*z+1107296256*y+4244635648*z^3+4244635648*z^2+16777216*z;
// Polynomial 2:
poly p2 = 1647678464*x^3+587202566*x^2*y+2936012853*x*y*z+134217728*x+548767119*y^3+16777216*y^2+268435456*y*z+1107296256*y+2097152000*z^3+2097152000*z^2+16777216*z;
zeroReduce(p1-p2);
==> 0
|
|