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