| # mklist(false, 8) ≠ 0 ∧ # int2bits(b2i(byi)) ≠ 0 ∧ ¬ int2bits(b2i(byi)).first ⊦ s2i(i2s(bor(bits2uint(int2bits(b2i(byi))) * 2 ^ n→i(# mklist(false, 8)) + bits2uint(mklist(false, 8)), band(b2i(byj), 255)))) = bor(bits2uint(int2bits(b2i(byi))) * 2 ^ n→i(# mklist(false, 8)) + bits2uint(mklist(false, 8)), band(b2i(byj), 255)), ¬ bor(bits2uint(int2bits(b2i(byi))) * 2 ^ n→i(# mklist(false, 8)) + bits2uint(mklist(false, 8)), band(b2i(byj), 255)) < ~32768 ∧ ¬ 32767 < bor(bits2uint(int2bits(b2i(byi))) * 2 ^ n→i(# mklist(false, 8)) + bits2uint(mklist(false, 8)), band(b2i(byj), 255)) |
0 ≤ b2i(byi) ⊦ s2i(i2s(bor(256 * bits2uint(int2bits(b2i(byi))), band(b2i(byj), 255)))) = bor(256 * bits2uint(int2bits(b2i(byi))), band(b2i(byj), 255)), ¬ bor(256 * bits2uint(int2bits(b2i(byi))), band(b2i(byj), 255)) < ~32768 ∧ ¬ 32767 < bor(256 * bits2uint(int2bits(b2i(byi))), band(b2i(byj), 255))
Used simplifier rules: ⊦ i * j = j * i;% ⊦ ¬ i < j ↔ j ≤ i;% ⊦ int2bits(j).first ↔ j < 0;% ⊦ int2bits(j) ≠ [];% ⊦ # bits = 0 ↔ bits = [];% ⊦ i + j = j + i;% ⊦ i + j + i0 = (i + j) + i0;% ⊦ i + 0 = i;% ⊦ # mklist(boolvar, n) = n;% ⊦ bits2uint(mklist(false, n)) = 0;