| b2i(byi) < 0 ⊦ s2i(i2s(bor(256 * b2i(byi), band(b2i(byj), 255)))) = bor(256 * b2i(byi), band(b2i(byj), 255)), ¬ bor(256 * b2i(byi), band(b2i(byj), 255)) < ~32768 ∧ ¬ 32767 < bor(256 * b2i(byi), band(b2i(byj), 255)) |
⊦ j0 < 256 ∧ 0 ≤ j0 → bor(j * 256, j0) = j * 256 + j0
band(b2i(byj), 255) < 256 ∧ 0 ≤ band(b2i(byj), 255), b2i(byi) < 0 ⊦ s2i(i2s(b2i(byi) * 256 + band(b2i(byj), 255))) = b2i(byi) * 256 + band(b2i(byj), 255), ¬ b2i(byi) * 256 + band(b2i(byj), 255) < ~32768 ∧ ¬ 32767 < b2i(byi) * 256 + band(b2i(byj), 255)
Used simplifier rules: byte-and-le-256: ⊦ ¬ 256 ≤ band(b2i(by), 255);%byte-and-lsz: ⊦ ¬ band(b2i(by), 255) < 0;% ⊦ ¬ i < j ↔ j ≤ i;% ⊦ band(i, band(i0, j)) = band(band(i, i0), j);% ⊦ ¬ i ≤ j ↔ j < i;% ⊦ i * j = j * i;% ⊦ band(i, j) = band(j, i); Used terms: band(b2i(byj), 255), b2i(byi)