Function: rnfeltabstorel
Section: number_fields
C-Name: rnfeltabstorel
Prototype: GG
Help: rnfeltabstorel(rnf,x): transforms the element x from absolute to
 relative representation.
Doc: Let $\var{rnf}$ be a relative number field extension $L/K$ as output by
 \kbd{rnfinit} and let $x$ be an
 element of $L$ expressed either

 \item as a polynomial modulo the absolute equation \kbd{\var{rnf}.polabs},

 \item or in terms of the absolute $\Z$-basis for $\Z_{L}$ if \var{rnf}
 contains one (as in \kbd{rnfinit(nf,pol,1)}, or after a call to
 \kbd{nfinit(rnf)}).

 Computes $x$ as an element of the relative extension $L/K$ as a polmod with
 polmod coefficients. If $x$ is actually rational, return it as a rational
 number:
 \bprog
 ? K = nfinit(y^2+1); L = rnfinit(K, x^2-y);
 ? L.polabs
 %2 = x^4 + 1
 ? rnfeltabstorel(L, Mod(x, L.polabs))
 %3 = Mod(x, x^2 + Mod(-y, y^2 + 1))
 ? rnfeltabstorel(L, 1/3)
 %4 = 1/3
 ? rnfeltabstorel(L, Mod(x, x^2-y))
 %5 = Mod(x, x^2 + Mod(-y, y^2 + 1))

 ? rnfeltabstorel(L, [0,0,0,1]~) \\ Z_L not initialized yet
  ***   at top-level: rnfeltabstorel(L,[0,
  ***                 ^--------------------
  *** rnfeltabstorel: incorrect type in rnfeltabstorel, apply nfinit(rnf).
 ? nfinit(L); \\ initialize now
 ? rnfeltabstorel(L, [0,0,0,1]~)
 %6 = Mod(Mod(y, y^2 + 1)*x, x^2 + Mod(-y, y^2 + 1))
 ? rnfeltabstorel(L, [1,0,0,0]~)
 %7 = 1
 @eprog
