[−][src]Struct cyclotomic::fields::sparse::Number
Represents a polynomial in the order
th root of unity.
Fields
order: i64
coeffs: FxHashMap<i64, BigRational>
Implementations
impl Number
[src]
pub fn new(order: i64, coeffs: &FxHashMap<i64, BigRational>) -> Number
[src]
pub fn increase_order_to(z: &mut Self, new_order: i64)
[src]
pub fn match_orders(z1: &mut Number, z2: &mut Number)
[src]
Trait Implementations
impl AdditiveGroup for Number
[src]
fn add(&mut self, rhs: &mut Self) -> &mut Self
[src]
Simplest possible - term wise addition using hashing.
Purposely written so it is obviously symmetric in the parameters, thus commutative by inspection. Of course, there are tests for that.
fn add_invert(&mut self) -> &mut Self
[src]
impl Clone for Number
[src]
impl CyclotomicFieldElement for Number
[src]
fn e(n: i64, k: i64) -> Self
[src]
fn scalar_mul(&mut self, scalar: &BigRational) -> &mut Self
[src]
fn zero_order(n: i64) -> Number
[src]
fn one_order(n: i64) -> Number
[src]
impl Debug for Number
[src]
impl FieldElement for Number
[src]
impl MultiplicativeGroup for Number
[src]
fn mul(&mut self, rhs: &mut Self) -> &mut Self
[src]
Multiplies term by term, not bothering to do anything interesting.
fn mul_invert(&mut self) -> &mut Self
[src]
Gives the inverse of $z$ using the product of Galois conjugates.
I don't think there's a "trivial" or "stupid" way of doing this. The product of the Galois conjugates is rational, we can normalise to get the multiplicative inverse.
Auto Trait Implementations
impl RefUnwindSafe for Number
impl Send for Number
impl Sync for Number
impl Unpin for Number
impl UnwindSafe for Number
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,