LweCiphertextVectorFusingAdditionEngine

Trait LweCiphertextVectorFusingAdditionEngine 

Source
pub trait LweCiphertextVectorFusingAdditionEngine<InputCiphertextVector, OutputCiphertextVector>: AbstractEngine
where InputCiphertextVector: LweCiphertextVectorEntity, OutputCiphertextVector: LweCiphertextVectorEntity<KeyDistribution = InputCiphertextVector::KeyDistribution>,
{ // Required methods fn fuse_add_lwe_ciphertext_vector( &mut self, output: &mut OutputCiphertextVector, input: &InputCiphertextVector, ) -> Result<(), LweCiphertextVectorFusingAdditionError<Self::EngineError>>; unsafe fn fuse_add_lwe_ciphertext_vector_unchecked( &mut self, output: &mut OutputCiphertextVector, input: &InputCiphertextVector, ); }
Expand description

A trait for engines adding (fusing) LWE ciphertexts vectors.

§Semantics

This fusing operation adds the input LWE ciphertext vector to the output LWE ciphertext vector.

§Formal Definition

Required Methods§

Source

fn fuse_add_lwe_ciphertext_vector( &mut self, output: &mut OutputCiphertextVector, input: &InputCiphertextVector, ) -> Result<(), LweCiphertextVectorFusingAdditionError<Self::EngineError>>

Add two LWE ciphertext vectors.

Source

unsafe fn fuse_add_lwe_ciphertext_vector_unchecked( &mut self, output: &mut OutputCiphertextVector, input: &InputCiphertextVector, )

Unsafely add two LWE ciphertext vectors.

§Safety

For the general safety concerns regarding this operation, refer to the different variants of LweCiphertextVectorFusingAdditionError. For safety concerns specific to an engine, refer to the implementer safety section.

Implementors§