| bits = boolvar + bits0, 0 ≤ bits2int(bits), boolvar ⊦ bits = [] |
bits2uint((false ' + bitsinvert(bits0))+1) = 0 ⊦
Used simplifier rules: bits2int-neg: ⊦ bits2int(true ' + bits) = ~ bits2uint(bitsinvert(true + bits) +1);%bits2uint-not-neg: ⊦ bits2uint(bits) ≤ 0 ↔ bits2uint(bits) = 0;% ⊦ i + j = j + i;% ⊦ i + j + i0 = (i + j) + i0;% ⊦ i + 0 = i;% ⊦ i ≤ ~ j ↔ i + j ≤ 0;% ⊦ bitsinvert(true ' + bits) = false + bitsinvert(bits);% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;% ⊦ boolvar ' + bits ≠ [];% ⊦ boolvar + bits = boolvar ' + bits;