#include <modular_polynomial.hpp>
Definition at line 225 of file modular_polynomial.hpp.
static void mul_mod | ( | polynomial< C, V > & | dest, | |
const polynomial< C, V > & | s1, | |||
const polynomial< C, V > & | s2, | |||
const M & | m, | |||
polynomial< C, V > & | carry | |||
) | [inline, static] |
Definition at line 259 of file modular_polynomial.hpp.
References modulus_polynomial_mul_power_of_the_variable< X, W >::mul_mod().
00260 { 00261 dest = s1; 00262 mul_mod (dest, s2, m, carry); }
static void mul_mod | ( | polynomial< C, V > & | dest, | |
const polynomial< C, V > & | s1, | |||
const polynomial< C, V > & | s2, | |||
const M & | m | |||
) | [inline, static] |
Definition at line 253 of file modular_polynomial.hpp.
References modulus_polynomial_mul_power_of_the_variable< X, W >::mul_mod().
00254 { 00255 dest = s1; 00256 mul_mod (dest, s2, m); }
static void mul_mod | ( | polynomial< C, V > & | dest, | |
const polynomial< C, V > & | s, | |||
const M & | m, | |||
polynomial< C, V > & | carry | |||
) | [inline, static] |
Definition at line 238 of file modular_polynomial.hpp.
References mmx::degree(), mmx::is_exact_zero(), Polynomial, and mmx::range().
00239 { 00240 if (is_exact_zero (*m)) { 00241 dest = dest * s + carry; 00242 carry = 0; 00243 } 00244 else { 00245 int d= degree (*m); 00246 Polynomial a= dest * s + carry; 00247 carry= range (a, d, 2*d-1); 00248 dest= range (a, 0, d); 00249 } 00250 }
static void mul_mod | ( | polynomial< C, V > & | dest, | |
const polynomial< C, V > & | s, | |||
const M & | m | |||
) | [inline, static] |
Definition at line 228 of file modular_polynomial.hpp.
References mmx::degree(), mmx::is_exact_zero(), Polynomial, and mmx::range().
Referenced by modulus_polynomial_mul_power_of_the_variable< X, W >::mul_mod().
00228 { 00229 if (is_exact_zero (*m)) dest *= s; 00230 else { 00231 int d= degree (*m); 00232 Polynomial a= dest * s; 00233 dest = range (a, 0, d); 00234 } 00235 }