fn decrypt()

in src/lib.rs [539:560]


    fn decrypt(&self, ct: &FVCiphertext<T>, sk: &SecretKey<T>) -> FVPlaintext<T> {
        let temp1 = (self.poly_multiplier)(&ct.0, &sk.0);
        let mut phase = ct.1.clone();
        phase.sub_inplace(&temp1);
        // then, extract value from phase.
        let tt: u64 = self.t.rep();
        let qq: u64 = self.q.rep();
        let qdivtwo = qq / 2;

        let my_closure = |elm: &T| -> T{
            let mut tmp:u64 = elm.rep();
            tmp *= tt;
            tmp += qdivtwo;
            tmp /= qq;
            tmp %= tt;
            T::from(tmp)
        };

        return phase.coeffs.iter()
        .map(my_closure)
        .collect();
    }