pub struct GGLWEToGGSWKeyBackendRef<'a, BE: Backend + 'a> { /* private fields */ }Implementations§
Source§impl<'a, BE: Backend + 'a> GGLWEToGGSWKeyBackendRef<'a, BE>
impl<'a, BE: Backend + 'a> GGLWEToGGSWKeyBackendRef<'a, BE>
pub fn from_inner(inner: GGLWEToGGSWKey<BE::BufRef<'a>, BE::ZnxWord>) -> Self
pub fn into_inner(self) -> GGLWEToGGSWKey<BE::BufRef<'a>, BE::ZnxWord>
pub fn at_view(&self, i: usize) -> GGLWEBackendRef<'_, BE>
Methods from Deref<Target = GGLWEToGGSWKey<BE::BufRef<'a>, BE::ZnxWord>>§
Trait Implementations§
Source§impl<'a, BE: Backend + 'a> Deref for GGLWEToGGSWKeyBackendRef<'a, BE>
impl<'a, BE: Backend + 'a> Deref for GGLWEToGGSWKeyBackendRef<'a, BE>
Source§impl<'a, BE: Backend + 'a> GGLWEInfos for GGLWEToGGSWKeyBackendRef<'a, BE>
impl<'a, BE: Backend + 'a> GGLWEInfos for GGLWEToGGSWKeyBackendRef<'a, BE>
Source§fn k_aux(&self) -> TorusPrecision
fn k_aux(&self) -> TorusPrecision
Auxiliary guard precision (in bits) stored below the gadget region and
used for noise management during key operations. Free value, need not be
a multiple of
base2k. In practice dsize*base2k + logN.fn rank_in(&self) -> Rank
fn rank_out(&self) -> Rank
fn dsize(&self) -> Dsize
Source§fn stride(&self) -> usize
fn stride(&self) -> usize
Row stride into the stored matrix: digit
i is stored row
(i + 1) * stride - 1. A key used as stored has stride 1; a
GGLWEView coarsening it to dsize reports
dsize / stored dsize.fn gglwe_layout(&self) -> GGLWELayout
Source§impl<'a, BE: Backend + 'a> GLWEInfos for GGLWEToGGSWKeyBackendRef<'a, BE>
impl<'a, BE: Backend + 'a> GLWEInfos for GGLWEToGGSWKeyBackendRef<'a, BE>
Source§fn glwe_layout(&self) -> GLWELayout
fn glwe_layout(&self) -> GLWELayout
Returns a plain-data
GLWELayout snapshot of the current parameters.Source§impl<'a, BE: Backend + 'a> LWEInfos for GGLWEToGGSWKeyBackendRef<'a, BE>
impl<'a, BE: Backend + 'a> LWEInfos for GGLWEToGGSWKeyBackendRef<'a, BE>
Source§fn n(&self) -> Degree
fn n(&self) -> Degree
Returns the LWE dimension, i.e. the number of mask elements (= GLWE ring degree N).
Source§fn base2k(&self) -> Base2K
fn base2k(&self) -> Base2K
Returns the base-2-log of the limb width used for the RNS/CRT representation.
Source§fn max_size(&self) -> usize
fn max_size(&self) -> usize
Returns the allocated limb capacity of the backing container: the
physical width operations may compute at (
size() <= max_size()).
Together with k() this fully describes an object: k is the claimed
precision and max_size the allocation. Layout/spec types without a
buffer report their metadata-derived width.Source§fn k(&self) -> TorusPrecision
fn k(&self) -> TorusPrecision
Returns the Torus precision used by the object.
Source§fn max_k(&self) -> TorusPrecision
fn max_k(&self) -> TorusPrecision
Returns the Torus precision the allocation can hold
(
Self::max_size * base2k).Source§fn lwe_layout(&self) -> LWELayout
fn lwe_layout(&self) -> LWELayout
Returns a plain-data
LWELayout snapshot of the current parameters.Auto Trait Implementations§
impl<'a, BE> Freeze for GGLWEToGGSWKeyBackendRef<'a, BE>
impl<'a, BE> RefUnwindSafe for GGLWEToGGSWKeyBackendRef<'a, BE>
impl<'a, BE> Send for GGLWEToGGSWKeyBackendRef<'a, BE>
impl<'a, BE> Sync for GGLWEToGGSWKeyBackendRef<'a, BE>
impl<'a, BE> Unpin for GGLWEToGGSWKeyBackendRef<'a, BE>
impl<'a, BE> UnsafeUnpin for GGLWEToGGSWKeyBackendRef<'a, BE>
impl<'a, BE> UnwindSafe for GGLWEToGGSWKeyBackendRef<'a, BE>
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
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