| ¬ # bytes2bits(bytes0) ≠ 0 ⊦ bytes2bits(bytes) + bytes2bits(bytes0) = [], bits2uint(bytes2bits(bytes) + bytes2bits(bytes0)) = bits2uint(bytes2bits(bytes)) * 256 ^ n→i(# bytes0) + band(bits2int(bytes2bits(bytes0)), 256 ^ n→i(# bytes0) - 1), bytes = [], bytes0 = [], bytes2bits(bytes).first |
8 * # bytes0 = 0 ⊦ bytes2bits(bytes) + bytes2bits(bytes0) = [], bits2uint(bytes2bits(bytes) + bytes2bits(bytes0)) = bits2uint(bytes2bits(bytes)) * 256 ^ n→i(# bytes0) + band(bits2int(bytes2bits(bytes0)), 256 ^ n→i(# bytes0) - 1), bytes = [], bytes0 = [], bytes2bits(bytes).first
Used simplifier rules: bytes2bits-length: ⊦ # bytes2bits(bytes) = i→n(8) * # bytes;