Skip to main content

GGSWLayout

Struct GGSWLayout 

Source
pub struct GGSWLayout {
    pub n: Degree,
    pub base2k: Base2K,
    pub k: TorusPrecision,
    pub rank: Rank,
    pub dnum: Dnum,
    pub dsize: Dsize,
}
Expand description

Plain-data snapshot of the parameters that describe a GGSW ciphertext.

Fields§

§n: Degree

Ring degree.

§base2k: Base2K

Base-2-log of the limb width.

§k: TorusPrecision

Torus precision.

§rank: Rank

GLWE rank (number of mask polynomials per row).

§dnum: Dnum

Number of decomposition rows.

§dsize: Dsize

Decomposition digit size.

Trait Implementations§

Source§

impl Clone for GGSWLayout

Source§

fn clone(&self) -> GGSWLayout

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for GGSWLayout

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl DeclaredK for GGSWLayout

Source§

impl GGSWInfos for GGSWLayout

Source§

fn dsize(&self) -> Dsize

Returns the decomposition digit size.
Source§

fn dnum(&self) -> Dnum

Returns the number of decomposition rows.
Source§

fn ggsw_layout(&self) -> GGSWLayout

Returns a plain-data GGSWLayout snapshot of the current parameters.
Source§

impl GLWEInfos for GGSWLayout

Source§

fn rank(&self) -> Rank

Returns the GLWE rank (number of mask polynomials).
Source§

fn glwe_layout(&self) -> GLWELayout

Returns a plain-data GLWELayout snapshot of the current parameters.
Source§

impl LWEInfos for GGSWLayout

Source§

fn base2k(&self) -> Base2K

Returns the base-2-log of the limb width used for the RNS/CRT representation.
Source§

fn n(&self) -> Degree

Returns the LWE dimension, i.e. the number of mask elements (= GLWE ring degree N).
Source§

fn size(&self) -> usize

Returns the number of limbs, i.e. ceil(k / base2k).
Source§

fn log_n(&self) -> usize

Returns log2(n).
Source§

fn max_k(&self) -> TorusPrecision

Returns the maximum torus precision representable with the current limb decomposition.
Source§

fn lwe_layout(&self) -> LWELayout

Returns a plain-data LWELayout snapshot of the current parameters.
Source§

impl PartialEq for GGSWLayout

Source§

fn eq(&self, other: &GGSWLayout) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for GGSWLayout

Source§

impl Eq for GGSWLayout

Source§

impl StructuralPartialEq for GGSWLayout

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V