marco.bodr...@tutanota.com writes: > And if I correctly patched and tested your proposed code. with equal numbers > I get t=0, instead of s=0.
Thanks for testing, I have to look into that case, then. > Shat about simply changing the test from > to >= ? > > /* Arrange so that |s| < |u| / 2g */ > mpz_add (s1, s0, s1); > - if (mpz_cmpabs (s0, s1) > 0) > + if (mpz_cmpabs (s0, s1) >= 0) I don't think that's right. My understanding is that if |s| = |s'| (notation from my mail, the variables in the code are reassigned several times, which is a bit confusing), then we ncessarily have |t| != |t'|, and we must choose candidate to get the smaller one. Regards, /Niels -- Niels Möller. PGP key CB4962D070D77D7FCB8BA36271D8F1FF368C6677. Internet email is subject to wholesale government surveillance. _______________________________________________ gmp-bugs mailing list gmp-bugs@gmplib.org https://gmplib.org/mailman/listinfo/gmp-bugs