[BACK]Return to mwl.rr CVS log [TXT][DIR] Up to [local] / OpenXM / src / asir-contrib / testing / noro

Diff for /OpenXM/src/asir-contrib/testing/noro/mwl.rr between version 1.1 and 1.2

version 1.1, 2009/10/25 12:46:48 version 1.2, 2009/10/28 00:44:58
Line 19  E7=y^2-(x^3+t*x)$
Line 19  E7=y^2-(x^3+t*x)$
 F5=y^2-(x^3+t^11-t)$  F5=y^2-(x^3+t^11-t)$
 /* F6ss1new2.txt */  /* F6ss1new2.txt */
 F6=y^2-(x^3+t^12-1)$  F6=y^2-(x^3+t^12-1)$
   /* OS8split4 */
   OS8=y^2-240*x*y-300*t^2*y-x^3+476*t*x^2+65*t^3*x-t^5$
 import("gr")$  import("gr")$
 module mwl$  module mwl$
 localf generate_coef_ideal$  localf generate_coef_ideal$
Line 40  def f4(A)
Line 42  def f4(A)
         else F4 = 0;          else F4 = 0;
 }  }
   
   /* if option simp=1 is given, we try simplifying the output ideal. */
   /* Remove an^3-bm^2 and an -> v^2, bm -> v^3                       */
   
 def generate_coef_ideal(F)  def generate_coef_ideal(F)
 {  {
           if ( type(Simp=getopt(simp)) == -1 ) Simp = 0;
         A1 = coef(coef(F,1,x),1,y);          A1 = coef(coef(F,1,x),1,y);
         A2 = -coef(coef(F,2,x),0,y);          A2 = -coef(coef(F,2,x),0,y);
         A3 = coef(coef(F,0,x),1,y);          A3 = coef(coef(F,0,x),1,y);
Line 51  def generate_coef_ideal(F)
Line 57  def generate_coef_ideal(F)
                 [deg(A1,t)/1,deg(A2,t)/2,deg(A3,t)/3,deg(A4,t)/4,deg(A6,t)/6]);                  [deg(A1,t)/1,deg(A2,t)/2,deg(A3,t)/3,deg(A4,t)/4,deg(A6,t)/6]);
         D = map(ceil,D);          D = map(ceil,D);
         for ( K = D[0], I = 1; I < 5; I++ ) if ( K < D[I] ) K = D[I];          for ( K = D[0], I = 1; I < 5; I++ ) if ( K < D[I] ) K = D[I];
         F1 = (y^2+A1*x*y+A3*y)-(x^3+A2*x^2+A4*x+A6);  
         VX = [];          VX = [];
         for ( I = 0, X = 0; I <= 2*K; I++ ) {          for ( I = 0, X = 0; I <= 2*K; I++ ) {
                 V = strtov("a"+rtostr(I));                  V = strtov("a"+rtostr(I));
Line 67  def generate_coef_ideal(F)
Line 72  def generate_coef_ideal(F)
         S = subst(F,x,X,y,Y);          S = subst(F,x,X,y,Y);
         N = deg(S,t);          N = deg(S,t);
         for ( R = [], I = 0; I <= N; I++ ) R = cons(coef(S,I,t),R);          for ( R = [], I = 0; I <= N; I++ ) R = cons(coef(S,I,t),R);
         return [R,append((VY),(VX))];          if ( Simp ) {
                   R0 = car(R); R = cdr(R);
                   VX0 = car(VX); VX = cdr(VX);
                   VY0 = car(VY); VY = cdr(VY);
                   if ( subst(R0,VX0,v^2,VY0,v^3)==0 ) {
                           R = subst(R,VX0,v^2,VY0,v^3);
                           return [R,append(append(VY,VX),[v])];
                   } else
                           error("The output ideal cannot be simplified");
           } else
                   return [R,append((VY),(VX))];
 }  }
   
 def pdecomp(B,V) {  def pdecomp(B,V) {

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>