#include "FHE/P2Data.h" #include "Math/Setup.h" #include "Math/fixint.h" #include "Processor/OnlineOptions.h" #include "Tools/CodeLocations.h" #include void P2Data::forward(vector& ans,const vector& a) const { CODE_LOCATION_NO_SCOPE int n=gf2n_short::degree(); BitVector bv(A.size()); ans.resize(A.size()); for (int i=0; i>=1; } } for (size_t i = 0; i < bv.size(); i++) ans[i] = bv.get_bit(i); } void P2Data::backward(vector& ans,const vector& a) const { CODE_LOCATION_NO_SCOPE int n=gf2n_short::degree(); BitVector bv(a.size()); for (size_t i = 0; i < a.size(); i++) bv.set_bit(i, a[i].get_limb(0)); ans.resize(slots); word y; for (int i=0; i