Error - Deltas should be same

Hi,

I am using concrete version 0.1.11. What I did was I have two ciphers c1 and c2. I first add them to get c1 = c1 + c2. c1 has used up one bit of padding. Now I try to subtract c1 and c2, but since c2 has one padding bit more than c1, I use remove_padding_inplace function to remove the extra padding bit. Now I try to subtract c1 and c2. But when I run this, I get Deltas are not same error.

How does concrete take care of deltas while removing the extra padding bits? Is there a function to make sure deltas are same too?

Here is the snippet

let encoder = Encoder(0., 10., 4, 2).unwrap();
let mut c1 = LWE::encode_encrypt(&sk, 4. &encoder).unwrap();
let mut c2 = LWE::encode_encrypt(&sk, 4. &encoder).unwrap();

c1.add_with_padding_inplace(&c2).unwrap();

c2.remove_padding_inplace(1).unwrap();
c2.sub_with_padding_inplace(&c1).unwrap();

Hi divyesh,

We are looking at your issue, and let you know asap!