| ¬(0 ≤ j ∧ ¬ false ∈ int2bits(i).rest ∧ 0 ≤ i), 0 ≤ i ⊦ band(i - j, i) + band(j, i) = i, false ∈ int2bits(i).rest |
j < 0, 0 ≤ i ⊦ band(i - j, i) + (j + 1) % 2 ^ n→i(# int2bits(i) - 1) + 2 ^ n→i(# int2bits(i) - 1) = i + 1, false ∈ int2bits(i).rest
Used simplifier rules: band-011x-neg-01: ⊦ j < 0 ∧ ¬ false ∈ int2bits(i).rest ∧ 0 ≤ i → band(j, i) = (j + 1) % 2 ^ n→i(# int2bits(i) - 1) + 2 ^ n→i(# int2bits(i) - 1) - 1;%band-associativity: ⊦ band(i, band(i0, j)) = band(band(i, i0), j);%band-commutativity: ⊦ band(i, j) = band(j, i);% ⊦ i < 0 ∧ 0 ≤ j → i < j;% ⊦ j < i ∧ i ≤ 0 → j < 0; (forward)% ⊦ i < j ∧ j ≤ j0 → i < j0; (forward)% ⊦ i - j = i0 ↔ i = i0 + j;% ⊦ i + j = j + i;% ⊦ i + j + i0 = (i + j) + i0;% ⊦ i + (j - i0) = i + j - i0;% ⊦ i ≤ j → (¬ ¬ j < i ↔ false);% ⊦ ¬ i ≤ j ↔ j < i;