| i2s(16384) = i2s (bits2int ( ( ( ( ( ((((((((((true ' + true ') + false ') + false ') + false ') + false ') + false ') + false ') + false ') + false ') + false ') + false ') + false ') + false ') + false ') + false ')) ⊦ |
⊦ bits.first ∧ bits ≠ [] → bits2int(bits) = ~ bits2uint(bitsinvert(bits) +1)
Used simplifier rules: notequal-01: ~32768 ≤ i, i ≤ 32767, ~32768 ≤ j, j ≤ 32767, i ≠ j ⊦ i2s((* i)) ≠ i2s((* j));% ⊦ boolvar ' ≠ [];% ⊦ ¬ bits + bits0 ≠ [] ↔ bits = [] ∧ bits0 = [];% ⊦ (boolvar ' + bits).first ↔ boolvar;% ⊦ bitsinvert(true ' + bits) = false + bitsinvert(bits);% ⊦ bitsinvert(false ' + bits) = true + bitsinvert(bits);% ⊦ bitsinvert(false ') = true ';% ⊦ boolvar + bits = boolvar ' + bits;% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;% ⊦ (bits + true ')+1 = bits +1 + false;% ⊦ (bits + false ')+1 = bits + true;% ⊦ bits + boolvar = bits + boolvar ';% ⊦ bits2uint(bits + false ') = bits2uint(bits) * 2;% ⊦ bits2uint(bits + true ') = bits2uint(bits) * 2 + 1;% ⊦ bits2uint(false ') = 0; Used terms: ( ( ( ( ( ( ( ( ( ( ( ( ((true ' + true ') + false ') + false ') + false ') + false ') + false ') + false ') + false ') + false ') + false ') + false ') + false ') + false ') + false ') + false '