arnaucube
arnaucube/poulpyPublic Self-hosted repository
poulpy/src/modulus/prime.rs
src/modulus/prime.rsRaw
 1use crate::modulus::montgomery::{MontgomeryPrecomp, Montgomery};
 2use crate::modulus::shoup::{ShoupPrecomp};
 3
 4
 5pub struct Prime<O> {
 6	pub q: O, /// q_base^q_powers
 7    pub q_base: O,
 8    pub q_power: O,
 9    pub factors: Vec<O>, /// distinct factors of q-1
10    pub montgomery: MontgomeryPrecomp<O>,
11    pub shoup:ShoupPrecomp<O>,
12    pub phi: O,
13}
14
15pub struct NTTFriendlyPrimesGenerator<O>{
16	pub size: f64,
17	pub next_prime: O,
18	pub prev_prime: O,
19	pub check_next_prime: bool,
20	pub check_prev_prime: bool,
21}