Function: bnfisnorm
Section: number_fields
C-Name: bnfisnorm
Prototype: GGD1,L,
Help: bnfisnorm(bnf,x,{flag=1}): tries to tell whether x (in Q) is the norm
 of some fractional y (in bnf). Returns a vector [a,b] where x=Norm(a)*b.
 Looks for a solution which is a S-unit, with S a certain list of primes (in
 bnf) containing (among others) all primes dividing x. If bnf is known to be
 Galois, you may set flag=0 (in this case, x is a norm iff b=1). If flag is
 nonzero the program adds to S all the primes: dividing flag if flag<0, or
 less than flag if flag>0. The answer is guaranteed (i.e x norm iff b=1)
 under GRH, if S contains all primes less than 4log(disc(Bnf))^2, where
 Bnf is the Galois closure of bnf.
Doc: tries to tell whether the
 rational number $x$ is the norm of some element y in $\var{bnf}$. Returns a
 vector $[a,b]$ where $x=Norm(a)*b$. Looks for a solution which is an $S$-unit,
 with $S$ a certain set of prime ideals containing (among others) all primes
 dividing $x$. If $\var{bnf}$ is known to be \idx{Galois}, you may set $\fl=0$
 (in this case, $x$ is a norm iff $b=1$). If $\fl$ is nonzero the program adds
 to $S$ the following prime ideals, depending on the sign of $\fl$. If $\fl>0$,
 the ideals of norm less than $\fl$. And if $\fl<0$ the ideals dividing $\fl$.

 Assuming \idx{GRH}, the answer is guaranteed (i.e.~$x$ is a norm iff $b=1$),
 if $S$ contains all primes less than $4\log(\disc(\var{Bnf}))^{2}$, where
 $\var{Bnf}$ is the Galois closure of $\var{bnf}$.

 See also \tet{bnfisintnorm}.
