pub trait LweCiphertextVectorDiscardingLoadingEngine<InputCiphertextVector, OutputCiphertextVector>: AbstractEnginewhere
InputCiphertextVector: LweCiphertextVectorEntity,
OutputCiphertextVector: LweCiphertextVectorEntity<KeyDistribution = InputCiphertextVector::KeyDistribution>,{
// Required methods
fn discard_load_lwe_ciphertext_vector(
&mut self,
output_vector: &mut OutputCiphertextVector,
input_vector: &InputCiphertextVector,
output_range: LweCiphertextRange,
input_range: LweCiphertextRange,
) -> Result<(), LweCiphertextVectorDiscardingLoadingError<Self::EngineError>>;
unsafe fn discard_load_lwe_ciphertext_vector_unchecked(
&mut self,
output_vector: &mut OutputCiphertextVector,
input_vector: &InputCiphertextVector,
output_range: LweCiphertextRange,
input_range: LweCiphertextRange,
);
}Expand description
A trait for engines loading (discarding) a sub LWE ciphertext vector from another one.
§Semantics
This discarding operation fills a piece of the output_vector lwe
ciphertext vector with a piece of the input_vector LWE ciphertext vector.
§Formal Definition
Required Methods§
Sourcefn discard_load_lwe_ciphertext_vector(
&mut self,
output_vector: &mut OutputCiphertextVector,
input_vector: &InputCiphertextVector,
output_range: LweCiphertextRange,
input_range: LweCiphertextRange,
) -> Result<(), LweCiphertextVectorDiscardingLoadingError<Self::EngineError>>
fn discard_load_lwe_ciphertext_vector( &mut self, output_vector: &mut OutputCiphertextVector, input_vector: &InputCiphertextVector, output_range: LweCiphertextRange, input_range: LweCiphertextRange, ) -> Result<(), LweCiphertextVectorDiscardingLoadingError<Self::EngineError>>
Loads a subpart of an LWE ciphertext vector into another LWE ciphertext vector.
Sourceunsafe fn discard_load_lwe_ciphertext_vector_unchecked(
&mut self,
output_vector: &mut OutputCiphertextVector,
input_vector: &InputCiphertextVector,
output_range: LweCiphertextRange,
input_range: LweCiphertextRange,
)
unsafe fn discard_load_lwe_ciphertext_vector_unchecked( &mut self, output_vector: &mut OutputCiphertextVector, input_vector: &InputCiphertextVector, output_range: LweCiphertextRange, input_range: LweCiphertextRange, )
Unsafely loads a subpart of an LWE ciphertext vector into another LWE ciphertext vector.
§Safety
For the general safety concerns regarding this operation, refer to the different variants
of LweCiphertextVectorDiscardingLoadingError. For safety concerns specific to an
engine, refer to the implementer safety section.