Function: hyperellchangepoint
Section: elliptic_curves
C-Name: hyperellchangepoint
Prototype: GGG
Help: hyperellchangepoint(C,p,m): C being a hyperelliptic curve given by a
 Weierstrass equation, apply the change of coordinates given by m to the point p
 of C. C can be given either by a squarefree polynomial P such that
 C:y^2=P(x) or by a vector [P,Q] such that C:y^2+Q(x)*y=P(x) and Q^2+4P is
 squarefree.
Doc:
 $C$ being a hyperelliptic curve given by a Weierstrass equation,
 apply the change of coordinates given by $m = [e, [a,b;c,d], H]$
 to the point $p$ of $C$.

 $C$ can be given either by a squarefree polynomial $P$ such that
 $C: y^{2} = P(x)$ or by a vector $[P,Q]$ such that
 $C: y^{2} + Q(x)\*y = P(x)$ and $Q^{2}+4\*P$ is squarefree.

 The point $p$ can be given either

 \item in weighted projective coordinates: \kbd{[x,y,z]} stands for $[x:y:z]$,
 where $[x:y:z] = [\lambda\*x:\lambda^{g+1}\*y:\lambda\*z]$ for any non-zero
 $\lambda$,

 \item or in affine coordinates: \kbd{[x,y]} stands for $[x:y:1]$ and
 \kbd{[y]} stands for $[1:y:0]$.

 This function returns a point in the same system of coordinates as $p$.
