Function concrete_core::crypto::cross::blind_rotate[][src]

pub fn blind_rotate<OutCont, LweCont, BskCont, FftCont1, FftCont2, FftCont3, Scalar>(
    fft: &mut Fft,
    dec_i_fft: &mut FourierPolynomial<FftCont1>,
    tmp_dec_i_fft: &mut FourierPolynomial<FftCont2>,
    res_fft: &mut [FourierPolynomial<FftCont3>],
    output: &mut GlweCiphertext<OutCont>,
    lwe: &LweCiphertext<LweCont>,
    bootstrap_key: &BootstrapKey<BskCont>
) where
    GlweCiphertext<OutCont>: AsMutTensor<Element = Scalar>,
    GlweCiphertext<Vec<Scalar>>: AsMutTensor<Element = Scalar>,
    LweCiphertext<LweCont>: AsRefTensor<Element = Scalar>,
    BootstrapKey<BskCont>: AsRefTensor<Element = Complex64>,
    FourierPolynomial<FftCont1>: AsMutTensor<Element = Complex64>,
    FourierPolynomial<FftCont2>: AsMutTensor<Element = Complex64>,
    FourierPolynomial<FftCont3>: AsMutTensor<Element = Complex64>,
    Scalar: UnsignedTorus

Fills the output ciphertext with the result of the blind rotation of the bootstrap key by the LWE ciphertext.