| ¬(0 < bytes2int(bytes1) * 256 ∧ 0 < ub2i(by0)), bytes2int(bytes1) * 256 + ub2i(by0) = 0, ∀ by, bytes0. # bytes0 < #(bytes1 + by0 ') → bytes2int(bytes0) = 0 ∧ by ∈ bytes0 → by = i2b(0) ⊦ by = i2b(0), bytes1 = [], ¬ by ∈ bytes1 ∧ by ≠ by0 |
bytes2int(bytes1) * 256 + ub2i(by0) = 0, ∀ by, bytes0. # bytes0 < #(bytes1 + by0 ') → bytes2int(bytes0) = 0 ∧ by ∈ bytes0 → by = i2b(0) ⊦ by = i2b(0), bytes1 = [], ¬ by ∈ bytes1 ∧ by ≠ by0, ¬ bytes2int(bytes1) ≤ 0 ∧ ub2i(by0) ≠ 0
Used simplifier rules: ⊦ ub2i(by) ≤ 0 ↔ ub2i(by) = 0;% ⊦ i + j = j + i;% ⊦ i + j + i0 = (i + j) + i0;% ⊦ i * j = j * i;% ⊦ i * j * j0 = (i * j) * j0;% ⊦ ¬ i < j ↔ j ≤ i;% ⊦ 0 < i → (0 < i * j ↔ 0 < j);