rings
rings copied to clipboard
ZippelGCD rarely fails on some dense input.
Test case:
@Test
public void testSmallDomain6() throws Exception {
IntegersZp64 ring = Rings.Zp64(3);
MultivariatePolynomialZp64
a = MultivariatePolynomialZp64.parse("1 + a + 5*b + 7*c + d + 11*e + 13*f + g", ring),
b = MultivariatePolynomialZp64.parse("1 - a + 5*b - 7*c + d - 11*e + 13*f - g", ring),
g = MultivariatePolynomialZp64.parse("1 + a - 5*b + 7*c - d + 11*e - 13*f + g", ring);
int exp = 7;
a = PolynomialMethods.polyPow(a, exp);
b = PolynomialMethods.polyPow(b, exp);
g = PolynomialMethods.polyPow(g, exp);
MultivariatePolynomialZp64 ag = a.clone().multiply(g);
MultivariatePolynomialZp64 bg = b.clone().multiply(g);
System.out.println(PolynomialGCD(ag, bg));
}
EEZ-GCD works fine on this input.