pub struct NttVector<F: Field, K: ArraySize>(pub Array<NttPolynomial<F>, K>);Expand description
An NttVector is a vector of polynomials from T_q of length K. NTT vectors can be
added and subtracted. If multiplication is defined for NTT polynomials, then NTT vectors
can be multiplied by NTT polynomials, and “multipled” with each other to produce a dot
product.
Tuple Fields§
§0: Array<NttPolynomial<F>, K>Implementations§
Trait Implementations§
Source§impl<F, D, K> Encode<D> for NttVector<F, K>
impl<F, D, K> Encode<D> for NttVector<F, K>
type EncodedSize = <D as VectorEncodingSize<K>>::EncodedVectorSize
fn encode(&self) -> Array<u8, Self::EncodedSize>
fn decode(enc: &Array<u8, Self::EncodedSize>) -> Self
Source§impl<F: Field, K: ArraySize> Mul<&NttVector<F, K>> for &NttVector<F, K>
impl<F: Field, K: ArraySize> Mul<&NttVector<F, K>> for &NttVector<F, K>
Source§type Output = NttPolynomial<F>
type Output = NttPolynomial<F>
The resulting type after applying the
* operator.impl<F: Field, K: ArraySize> StructuralPartialEq for NttVector<F, K>
Auto Trait Implementations§
impl<F, K> Freeze for NttVector<F, K>
impl<F, K> RefUnwindSafe for NttVector<F, K>
impl<F, K> Send for NttVector<F, K>
impl<F, K> Sync for NttVector<F, K>
impl<F, K> Unpin for NttVector<F, K>
impl<F, K> UnwindSafe for NttVector<F, K>
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