pub struct NttMatrix<F: Field, K: ArraySize, L: ArraySize>(pub Array<NttVector<F, L>, K>);Expand description
A K x L matrix of NTT-domain polynomials.
Each vector represents a row of the matrix, so that multiplying on the right just requires iteration.
Multiplication on the right by vectors is the only defined operation, and is only defined when multiplication of NTT polynomials is defined.
Tuple Fields§
§0: Array<NttVector<F, L>, K>Implementations§
Trait Implementations§
Source§impl<F: Clone + Field, K: Clone + ArraySize, L: Clone + ArraySize> Clone for NttMatrix<F, K, L>
impl<F: Clone + Field, K: Clone + ArraySize, L: Clone + ArraySize> Clone for NttMatrix<F, K, L>
Source§impl<F: Field, K: ArraySize, L: ArraySize> CtEq for NttMatrix<F, K, L>
Available on crate feature ctutils only.
impl<F: Field, K: ArraySize, L: ArraySize> CtEq for NttMatrix<F, K, L>
Available on crate feature
ctutils only.Source§impl<F: Field<Int: CtEq>, K: ArraySize, L: ArraySize> CtEqSlice for NttMatrix<F, K, L>
Available on crate feature ctutils only.
impl<F: Field<Int: CtEq>, K: ArraySize, L: ArraySize> CtEqSlice for NttMatrix<F, K, L>
Available on crate feature
ctutils only.Source§fn ct_eq_slice(a: &[Self], b: &[Self]) -> Choice
fn ct_eq_slice(a: &[Self], b: &[Self]) -> Choice
Determine if
a is equal to b in constant-time.Source§fn ct_ne_slice(a: &[Self], b: &[Self]) -> Choice
fn ct_ne_slice(a: &[Self], b: &[Self]) -> Choice
Determine if
a is NOT equal to b in constant-time.Source§impl<F: Debug + Field, K: Debug + ArraySize, L: Debug + ArraySize> Debug for NttMatrix<F, K, L>
impl<F: Debug + Field, K: Debug + ArraySize, L: Debug + ArraySize> Debug for NttMatrix<F, K, L>
Source§impl<F: Default + Field, K: Default + ArraySize, L: Default + ArraySize> Default for NttMatrix<F, K, L>
impl<F: Default + Field, K: Default + ArraySize, L: Default + ArraySize> Default for NttMatrix<F, K, L>
Source§impl<F: PartialEq + Field, K: PartialEq + ArraySize, L: PartialEq + ArraySize> PartialEq for NttMatrix<F, K, L>
impl<F: PartialEq + Field, K: PartialEq + ArraySize, L: PartialEq + ArraySize> PartialEq for NttMatrix<F, K, L>
impl<F: Field, K: ArraySize, L: ArraySize> StructuralPartialEq for NttMatrix<F, K, L>
Auto Trait Implementations§
impl<F, K, L> Freeze for NttMatrix<F, K, L>
impl<F, K, L> RefUnwindSafe for NttMatrix<F, K, L>
impl<F, K, L> Send for NttMatrix<F, K, L>
impl<F, K, L> Sync for NttMatrix<F, K, L>
impl<F, K, L> Unpin for NttMatrix<F, K, L>
impl<F, K, L> UnsafeUnpin for NttMatrix<F, K, L>
impl<F, K, L> UnwindSafe for NttMatrix<F, K, L>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more