wrap-around interface
bodrato at mail.dm.unipi.it
bodrato at mail.dm.unipi.it
Wed Oct 24 16:50:13 CEST 2012
Ciao,
Il Dom, 21 Ottobre 2012 9:44 am, Zimmermann Paul ha scritto:
>> Date: Sat, 20 Oct 2012 17:31:33 +0200 (CEST)
>> Il Gio, 18 Ottobre 2012 11:06 am, Zimmermann Paul ha scritto:
>>
>> >> > void mpn_mulmod_bnm1 (mp_ptr rp, mp_size_t rn, mp_srcptr ap,
...
>> >> > Multiplies {ap, an} by {bp, bn} mod B^rn-1 where
>> Moreover, if an + bn < rn, the result is stored in {rp, an+bn} (the
> this is fine. We won't use the wrap-around trick for an+bn < rn.
It is fine for your code, but is it for a public interface?
>> * The result is expected to be ZERO if and only if one of the operand
>> * already is. Otherwise the class [0] Mod(B^rn-1) is represented by
>> * B^rn-1.
> no, I thought about the classical non-redundant representation 0 <= r <
> B^rn-1.
On the other side... this redundancy shouldn't hurt your wrap-around
trick, does it?
Best regards,
Marco
--
http://bodrato.it/software/strassen.html
More information about the gmp-devel
mailing list