bridge/class-master/depend/pari/src/basemath/mftrace.c
/* Output 0 if not desired eta product: if flag=0 (default) require
 * holomorphic at cusps. If flag set, accept meromorphic, but sill in some
 * modular function space */
Output 0 if not desired eta product: if flag=0 (default) require
holomorphic at cusps. If flag set, accept meromorphic, but sill in some
modular function space
Output 0 if not desired eta product : if flag = 0 ( default ) require holomorphic at cusps . If flag set accept meromorphic but sill in some modular function space
GEN
mffrometaquo(GEN eta, long flag)
{
  pari_sp av = avma;
  GEN NK, N, k, BR, P;
  long v, cusp = 0;
  if (!etaquotype(&eta, &N,&k,&P, &v, NULL, flag? NULL: &cusp) || cusp < 0)
  {
    avma = av; return gen_0;
  }
  if (lg(gel(eta,1)) == 1) { avma = av; return mf1(); }
  BR = mkvec2(ZV_to_zv(gel(eta,1)), ZV_to_zv(gel(eta,2)));
  if (v < 0) v = 0;
  NK = mkgNK(N, k, get_mfchar(P), pol_x(1));
  return gerepilecopy(av, tag2(t_MF_ETAQUO, NK, BR, utoi(v)));
}
GEN mffrometaquo ( GEN eta , long flag ) { pari_sp av = avma ; GEN NK , N , k , BR , P ; long v , cusp = 0 ; if ( ! etaquotype ( & eta , & N , & k , & P , & v , NULL , flag ? NULL : & cusp ) || cusp < 0 ) { avma = av ; return gen_0 ; } if ( lg ( gel ( eta , 1 ) ) == 1 ) { avma = av ; return mf1 ( ) ; } BR = mkvec2 ( ZV_to_zv ( gel ( eta , 1 ) ) , ZV_to_zv ( gel ( eta , 2 ) ) ) ; if ( v < 0 ) v = 0 ; NK = mkgNK ( N , k , get_mfchar ( P ) , pol_x ( 1 ) ) ; return gerepilecopy ( av , tag2 ( t_MF_ETAQUO , NK , BR , utoi ( v ) ) ) ; }
Output 0 if not desired eta product: if flag=0 (default) require
 holomorphic at cusps.
Output 0 if not desired eta product : if flag = 0 ( default ) require holomorphic at cusps .