| 2 * 2 ^ (31 - band(j, 31)) = 2 ^ (32 - band(j, 31)), 32 < # int2bits(~1), 0 < band(j, 31), band(j, 31) ≤ 31 ⊦ bits2int(sublist(0, # fillsgn(32, int2bits(~1)), mklist(false, i→n(band(j, 31))) + fillsgn(32, int2bits(~1)))) = (~1 i>> j) + 2 ^ (32 - band(j, 31)), band(j, 31) = 0, false ∈ int2bits(31).rest |
⊦ i + 1 = 0 → int2bits(i) = true '
Used simplifier rules: ⊦ 0 < n → fillsgn(n, boolvar ') = mklist(boolvar, n);%n ≠ 0 ⊦ mklist(true, (* n)) = true ' + mklist(true, n -1);% ⊦ mklist(boolvar, 0) = [];% ⊦ bits + [] = bits;% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;% ⊦ #(bits + bits0) = # bits + # bits0;% ⊦ # boolvar ' = 0 +1; Used terms: ~1