| ⊦ ¬ true ∈ bits → bits2int(true ' + bits) = ~(2 ^ n→i(# bits)) |
Used simplifier rules: bits2int-neg: ⊦ bits2int(true ' + bits) = ~ bits2uint(bitsinvert(true + bits) +1);%bits2uint-2pot: ⊦ ¬ true ∈ bits → bits2uint(true ' + bits) = 2 ^ n→i(# bits);% ⊦ ~ i = ~ j ↔ i = j;% ⊦ false ' +1 = true ';% ⊦ ¬ true ∈ bits0 → (bits + bitsinvert(bits0))+1 = bits +1 + bits0;% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;% ⊦ bitsinvert(true ' + bits) = false + bitsinvert(bits);% ⊦ boolvar + bits = boolvar ' + bits;