| ¬(0 ≤ bits2int(bytes2bits(bytes0)) ∧ 0 ≤ 8 * n→i(# bytes0)), 0 ≤ 2 ∧ 0 ≤ 8 ∧ 0 ≤ n→i(# bytes0) ⊦ bytes = [], bytes0 = [], bytes2bits(bytes) + bytes2bits(bytes0) = [], bits2uint(bytes2bits(bytes0)) = band(bits2int(bytes2bits(bytes0)), 2 ^ (8 * n→i(# bytes0)) - 1), bytes2bits(bytes).first |
bits2int(bytes2bits(bytes0)) < 0 ⊦ bytes = [], bytes0 = [], bytes2bits(bytes) + bytes2bits(bytes0) = [], bits2uint(bytes2bits(bytes0)) = band(bits2int(bytes2bits(bytes0)), 2 ^ (8 * n→i(# bytes0)) - 1), bytes2bits(bytes).first
Used simplifier rules: ⊦ j < i ∧ i ≤ 0 → j < 0; (forward)% ⊦ i * j = j * i;% ⊦ i * j * j0 = (i * j) * j0;% ⊦ 0 < i → (0 ≤ i * j ↔ 0 ≤ j);% ⊦ ¬ i ≤ j ↔ j < i;% ⊦ 0 ≤ n→i(n);