secp256k1GeXFracOnCurveVar static method
Implementation
static int secp256k1GeXFracOnCurveVar(Secp256k1Fe xn, Secp256k1Fe xd) {
Secp256k1Fe r = Secp256k1Fe(), t = Secp256k1Fe();
_cond(
secp256k1FeNormalizesToZeroVar(xd) == 0, "secp256k1GeXFracOnCurveVar");
secp256k1FeMul(r, xd, xn);
secp256k1FeSqr(t, xn);
secp256k1FeMul(r, r, t);
secp256k1FeSqr(t, xd);
secp256k1FeSqr(t, t);
_cond(Secp256k1Const.secp256k1B <= 31, "secp256k1GeXFracOnCurveVar");
secp256k1FeMulInt(t, Secp256k1Const.secp256k1B);
secp256k1FeAdd(r, t);
return secp256k1FeIsSquareVar(r);
}