| ~2147483648 ≤ i, i < 0, band(j, 31) ≤ 31, 0 < band(j, 31) ⊦ band(j, 31) = 0, bits2int(sublist(0, # fillsgn(32, int2bits(i)), mklist(false, i→n(band(j, 31))) + fillsgn(32, int2bits(i)))) = 2 ^ n→i(31 - i→n(band(j, 31))) * 2 + (i i>> j), false ∈ int2bits(31).rest |
⊦ n ≤ m → n→i(m - n) = n→i(m) - n→i(n)
i→n(band(j, 31)) ≤ 31, ~2147483648 ≤ i, i < 0, band(j, 31) ≤ 31, 0 < band(j, 31) ⊦ band(j, 31) = 0, bits2int(sublist(0, # fillsgn(32, int2bits(i)), mklist(false, i→n(band(j, 31))) + fillsgn(32, int2bits(i)))) = 2 ^ (n→i(31) - n→i(i→n(band(j, 31)))) * 2 + (i i>> j), false ∈ int2bits(31).rest
Used simplifier rules: band-commutativity: ⊦ band(i, j) = band(j, i);%band-associativity: ⊦ band(i, band(i0, j)) = band(band(i, i0), j);%band-ls-zero-01: ⊦ ¬ band(j, 31) < 0;% ⊦ ¬ i ≤ j ↔ j < i;%0 ≤ i ⊦ i→n(i) ≤ (* m) ↔ i ≤ n→i(m);%j0 ≠ 0, j ≤ j0 ⊦ i ≤ (* j) → i ≤ (* j0); Used terms: i→n(band(j, 31)), 31