diff --git a/include/gate.hpp b/include/gate.hpp index a89dc43..dd85d03 100644 --- a/include/gate.hpp +++ b/include/gate.hpp @@ -6,7 +6,7 @@ namespace TFHEpp { template + int cbsign, std::make_signed_t offset> inline void HomGate(TLWE &res, const TLWE &ca, const TLWE &cb, const EvalKey &ek) diff --git a/include/params/128bit.hpp b/include/params/128bit.hpp index 1d8075c..ecfca1d 100644 --- a/include/params/128bit.hpp +++ b/include/params/128bit.hpp @@ -13,7 +13,7 @@ struct lvl0param { static constexpr ErrorDistribution errordist = ErrorDistribution::ModularGaussian; static const inline double α = 0.000'092'511'997'467'675'6; // fresh noise - using T = uint32_t; // Torus representation + using T = uint16_t; // Torus representation static constexpr T μ = 1U << (std::numeric_limits::digits - 3); static constexpr uint32_t plain_modulus = 8; static constexpr double Δ = diff --git a/include/params/concrete.hpp b/include/params/concrete.hpp index 6d296d9..77101d8 100644 --- a/include/params/concrete.hpp +++ b/include/params/concrete.hpp @@ -18,7 +18,7 @@ struct lvl0param { ErrorDistribution::ModularGaussian; static constexpr inline double α = 0.000'092'511'997'467'675'6; // fresh noise, 2^{-13.4} - using T = uint32_t; // Torus representation + using T = uint16_t; // Torus representation static constexpr T μ = 1U << (std::numeric_limits::digits - 3); static constexpr uint32_t plain_modulus = 8; static constexpr double Δ = diff --git a/thirdparties/cereal b/thirdparties/cereal index ddd4672..d1fcec8 160000 --- a/thirdparties/cereal +++ b/thirdparties/cereal @@ -1 +1 @@ -Subproject commit ddd467244713ea4fe63733628992efcdd6a9187d +Subproject commit d1fcec807b372f04e4c1041b3058e11c12853e6e