| 0 ≤ 8 ∧ 0 ≤ 8 ∧ 8 + 8 < 32, i >> (8 + 8) = b2i(i2b(i >> (8 + 8))), i >> 8 < ~128, i < ~128, i >> 8 < 0, i < 0 ⊦ i = b2i(i2b(i)), i2b(~1) = i2b(i >> 24) ∧ i2b(i >> (8 + 8)) = i2b(i >> 16) |
i >> 16 = b2i(i2b(i >> 16)), i >> 8 < ~128, i < ~128, i >> 8 < 0, i < 0 ⊦ i = b2i(i2b(i)), i2b(~1) = i2b(i >> 24)
Used simplifier rules: byte-equal-01: ⊦ b2i(by) = i → (i2b(i) ≠ by ↔ false); from specification byte%add-c: ⊦ i + j = j + i; from specification int-basic2%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2