| bytes2int(i2b(0) ' + by ' + bytes1) < 2 ^ ((n→i(# bytes1) + 1) * 8), b2i(by) < 0, 2 ^ (8 * (1 + n→i(# bytes1))) * 256 ≤ 256 * bytes2int(i2b(0) ' + by ' + bytes1) + band(255, b2i(by0)), ∀ by, bytes0. # bytes0 < #(bytes1 + by0 ') → 2 ^ ((n→i(# bytes0) + 1) * 8) ≤ bytes2int(i2b(0) ' + by ' + bytes0) ∧ b2i(by) < 0 → false ⊦ 256 * 2 ^ (8 * (1 + n→i(# bytes1))) ≤ 256 * bytes2int(i2b(0) ' + by ' + bytes1) + band(255, b2i(by0)) ∧ abs(band(255, b2i(by0))) < 256 |
256 ≤ abs(band(255, b2i(by0))), 2 ^ (8 * (1 + n→i(# bytes1))) * 256 ≤ 256 * bytes2int(i2b(0) ' + by ' + bytes1) + band(255, b2i(by0)), b2i(by) < 0, bytes2int(i2b(0) ' + by ' + bytes1) < 2 ^ ((n→i(# bytes1) + 1) * 8), ∀ by, bytes0. # bytes0 < #(bytes1 + by0 ') → 2 ^ ((n→i(# bytes0) + 1) * 8) ≤ bytes2int(i2b(0) ' + by ' + bytes0) ∧ b2i(by) < 0 → false ⊦ b2i(by0) = 0
Used simplifier rules: ⊦ band(i, j) = band(j, i);% ⊦ band(i, band(i0, j)) = band(band(i, i0), j);%0 ≤ i, i < 128 ⊦ band(b2i(by), 255) = (* i) ↔ b2i(by) = i;% ⊦ 0 < abs(i) ↔ i ≠ 0;% ⊦ 0 ≤ abs(i);% ⊦ i ≤ j ∧ 0 < i → 0 < j; (forward)% ⊦ i ≤ j ∧ 0 ≤ i → 0 ≤ j; (forward)% ⊦ ¬ i < j ↔ j ≤ i;% ⊦ i ≤ j → (¬ ¬ j < i ↔ false);% ⊦ i + j = j + i;% ⊦ ¬ i ≤ j ↔ j < i;% ⊦ i * j = j * i;