bridge/class-master/depend/pari/src/basemath/elliptic.c
/* Reduction of a rational curve E to its standard minimal model, don't
 * update type-dependant components.
 * Set v = [u, r, s, t] = change of variable E -> minimal model, with u > 0
 * Set gr = [N, [u,r,s,t], c, fa, L], where
 *   N = arithmetic conductor of E
 *   c = product of the local Tamagawa numbers cp
 *   fa = factorization of N
 *   L = list of localred(E,p) for p | N. */
Reduction of a rational curve E to its standard minimal model, don't
update type-dependant components.
Reduction of a rational curve E to its standard minimal model don ' t update type - dependant components .
static GEN
ellQ_globalred(GEN e)
{
  long k, l, iN;
  GEN S, c, E, L, P, NP, NE, D;
  E = ellminimalmodel_i(e, NULL);
  S = obj_check(e, Q_MINIMALMODEL);
  P = gel(S,1); l = lg(P); 
  D  = ell_get_disc(E);
  for (k = 1; k < l; k++) (void)Z_pvalrem(D, gel(P,k), &D);
  if (!is_pm1(D)) P = ZV_sort( shallowconcat(P, gel(absZ_factor(D),1)) );
  l = lg(P); c = gen_1;
  iN = 1;
  NP = cgetg(l, t_COL);
  NE = cgetg(l, t_COL);
  L = cgetg(l, t_VEC);
  for (k = 1; k < l; k++)
  {
    GEN p = gel(P,k), q = localred(E, p), ex = gel(q,1);
    if (!signe(ex)) continue;
    gel(NP, iN) = p;
    gel(NE, iN) = ex;
    gel(L, iN) = q; iN++;
    gel(q,3) = gen_0; 
    c = mulii(c, gel(q,4));
  }
  setlg(L, iN);
  setlg(NP, iN);
  setlg(NE, iN);
  return mkvec4(factorback2(NP,NE), c, mkmat2(NP,NE), L);
}
static GEN ellQ_globalred ( GEN e ) { long k , l , iN ; GEN S , c , E , L , P , NP , NE , D ; E = ellminimalmodel_i ( e , NULL ) ; S = obj_check ( e , Q_MINIMALMODEL ) ; P = gel ( S , 1 ) ; l = lg ( P ) ; D = ell_get_disc ( E ) ; for ( k = 1 ; k < l ; k ++ ) ( void ) Z_pvalrem ( D , gel ( P , k ) , & D ) ; if ( ! is_pm1 ( D ) ) P = ZV_sort ( shallowconcat ( P , gel ( absZ_factor ( D ) , 1 ) ) ) ; l = lg ( P ) ; c = gen_1 ; iN = 1 ; NP = cgetg ( l , t_COL ) ; NE = cgetg ( l , t_COL ) ; L = cgetg ( l , t_VEC ) ; for ( k = 1 ; k < l ; k ++ ) { GEN p = gel ( P , k ) , q = localred ( E , p ) , ex = gel ( q , 1 ) ; if ( ! signe ( ex ) ) continue ; gel ( NP , iN ) = p ; gel ( NE , iN ) = ex ; gel ( L , iN ) = q ; iN ++ ; gel ( q , 3 ) = gen_0 ; c = mulii ( c , gel ( q , 4 ) ) ; } setlg ( L , iN ) ; setlg ( NP , iN ) ; setlg ( NE , iN ) ; return mkvec4 ( factorback2 ( NP , NE ) , c , mkmat2 ( NP , NE ) , L ) ; }
Reduction of a rational curve E to its standard minimal model, don't
 update type-dependant components.
Reduction of a rational curve E to its standard minimal model don ' t update type - dependant components .
/* some known prime divisors of D */ /*delete variable change*/