
What do you mean with "modulus version"? When the modulus is a constructor argument, then I suppose each object can have its own modulus. Then it is not clear to me how arithmetic between different objects with different moduli should be done. Regards, Maarten. "Sebastian Redl" <sebastian.redl@getdesigned.at> wrote in message news:447B2789.3060304@getdesigned.at...
Maarten Kronenburg wrote:
In my opinion the unsigned integer with a modulus is required, which is generalizing the base type unsigned int (which is modular) to any modulus. So the unsigned_integer would have a static method void set_modulus( const integer & ). The only problem is what an unsigned_integer is when a modulus is not providid, that is when the modulus is zero. Then I propose that as the user did not provide any modulus, only in this case negating a non-zero unsigned_integer will be an error. Also I propose that such an unsigned_integer will be provided by implementations, and be added to the specification.
Or you drop unsigned_integer completely (David convinced me that it is not really needed) and only have a modulus version, which takes the modulus as a constructor argument. Then negation is always defined.
Sebastian Redl _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost