Function: qfbred
Section: number_theoretical
C-Name: qfbred0
Prototype: GD0,L,DGDGDG
Help: qfbred(x,{flag=0},{D},{isqrtD},{sqrtD}): reduction of the binary
 quadratic form x. All other args. are optional. D, isqrtD and sqrtD, if
 present, supply the values of the discriminant, floor(sqrt(D)) and sqrt(D)
 respectively. If D<0, its value is not used and all references to Shanks's
 distance hereafter are meaningless. flag can be any of 0: default, uses
 Shanks's distance function d; 1: use d, do a single reduction step; 2: do
 not use d; 3: do not use d, single reduction step.

