You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Basically, rmint<K> is a Modular<ruint<K>,ruint<K+1>>, and should behave similarly (if they don't, we should specilized the Modular one);
There are two variants rmint<K, MG_INACTIVE> and rmint<K, MG_ACTIVE> that have underlying montgomery variant active or not. The second one should be equal to Montgomery<ruint<K>>, with specialization if needed for performances;
rmint<K> are storing modules as static static ruint<K> p which means that you cannot have two rmints with different modules at the same time (!);
rmint are breaking the current design of Givaro by having no Field class.
The text was updated successfully, but these errors were encountered:
I think the last 2 points are strong enough to motivate this change. I kind of remember discussing this with @jgdumas who had a good argument for the existence of this design. Let's wait for his feedback.
Rationale is that:
rmint<K>
is aModular<ruint<K>,ruint<K+1>>
, and should behave similarly (if they don't, we should specilized the Modular one);rmint<K, MG_INACTIVE>
andrmint<K, MG_ACTIVE>
that have underlying montgomery variant active or not. The second one should be equal toMontgomery<ruint<K>>
, with specialization if needed for performances;rmint<K>
are storing modules as staticstatic ruint<K> p
which means that you cannot have two rmints with different modules at the same time (!);rmint
are breaking the current design of Givaro by having noField
class.The text was updated successfully, but these errors were encountered: