Function: qfbsolve
Section: number_theoretical
C-Name: qfbsolve
Prototype: GG
Help: qfbsolve(Q,p): return [x,y] so that Q(x,y)=p where Q is a binary
 quadratic form and p a prime number, or 0 if there is no solution.
Doc: Solve the equation $Q(x,y)=p$ over the integers,
 where $Q$ is a binary quadratic form and $p$ a prime number.

 Return $[x,y]$ as a two-components vector, or zero if there is no solution.
 Note that this function returns only one solution and not all the solutions.

 Let $D = \disc Q$. The algorithm used runs in probabilistic polynomial time
 in $p$ (through the computation of a square root of $D$ modulo $p$); it is
 polynomial time in $D$ if $Q$ is imaginary, but exponential time if $Q$ is
 real (through the computation of a full cycle of reduced forms). In the
 latter case, note that \tet{bnfisprincipal} provides a solution in heuristic
 subexponential time in $D$ assuming the GRH.
