[BACK]Return to fff CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / lib

Diff for /OpenXM_contrib2/asir2000/lib/fff between version 1.3 and 1.7

version 1.3, 2000/08/22 05:04:21 version 1.7, 2003/10/20 00:58:47
Line 45 
Line 45 
  * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,   * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE,
  * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.   * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE.
  *   *
  * $OpenXM: OpenXM_contrib2/asir2000/lib/fff,v 1.2 2000/08/21 08:31:41 noro Exp $   * $OpenXM: OpenXM_contrib2/asir2000/lib/fff,v 1.6 2001/09/03 07:01:09 noro Exp $
 */  */
 /*  /*
         fff : Univariate factorizer over a finite field.          fff : Univariate factorizer over a finite field.
Line 56 
Line 56 
     99/06/11    noro      99/06/11    noro
     99/07/27    noro      99/07/27    noro
 */  */
   module fff $
     /* Empty for now. It will be used in a future. */
   endmodule $
   
 #include "defs.h"  #include "defs.h"
   
Line 112  def sqfr_ff(F)
Line 115  def sqfr_ff(F)
                 F2 = ugcd(F,F1);                  F2 = ugcd(F,F1);
                 /* FLAT = H/gcd(H,H') : square free part of H */                  /* FLAT = H/gcd(H,H') : square free part of H */
                 FLAT = sdiv(F,F2);                  FLAT = sdiv(F,F2);
                   FLAT /= LCOEF(FLAT);
                 I = 0;                  I = 0;
                 /* square free factorization of H */                  /* square free factorization of H */
                 while ( deg(FLAT,V) ) {                  while ( deg(FLAT,V) ) {
Line 126  def sqfr_ff(F)
Line 130  def sqfr_ff(F)
                                 FLAT1 = simp_ff(1);                                  FLAT1 = simp_ff(1);
                         else                          else
                                 FLAT1 = ugcd(F,FLAT);                                  FLAT1 = ugcd(F,FLAT);
                           FLAT1 /= LCOEF(FLAT1);
                         G = sdiv(FLAT,FLAT1);                          G = sdiv(FLAT,FLAT1);
                         FLAT = FLAT1;                          FLAT = FLAT1;
                         L = cons([G,I],L);                          L = cons([G,I],L);
Line 467  def lnf_insert(P,L,V)
Line 472  def lnf_insert(P,L,V)
 def c_z_ff(F,E)  def c_z_ff(F,E)
 {  {
         Type = field_type_ff();          Type = field_type_ff();
         if ( Type == 1 || Type == 3 )          if ( Type == 1 || Type == 3 || Type == 4 || Type == 5 )
                 return c_z_lm(F,E);                  return c_z_lm(F,E);
         else          else
                 return c_z_gf2n(F,E);                  return c_z_gf2n(F,E);
Line 498  def find_root_ff(P)
Line 503  def find_root_ff(P)
 def c_z_one_ff(F,E)  def c_z_one_ff(F,E)
 {  {
         Type = field_type_ff();          Type = field_type_ff();
         if ( Type == 1 || Type == 3 )          if ( Type == 1 || Type == 3 || Type == 4 || Type == 5 )
                 return c_z_one_lm(F,E);                  return c_z_one_lm(F,E);
         else          else
                 return c_z_one_gf2n(F,E);                  return c_z_one_gf2n(F,E);

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.7

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