| b2i(firstn(# int2bytes(i) - i→n(j), int2bytes(i)).first) < 0, 0 ≤ i, i→n(j) < # int2bytes(i) ⊦ bytes2int(firstn(# int2bytes(i) - i→n(j), int2bytes(i))) = bytes2int(mklist(i2b(0), i→n(j)) + firstn(# int2bytes(i) - i→n(j), int2bytes(i))), j = 0 |
⊦ n ≠ 0 ∧ bytes ≠ [] → firstn(n, bytes).first = bytes.first
Used simplifier rules: int2bytes-empty: ⊦ int2bytes(i) ≠ [];%int2bytes-empty: ⊦ int2bytes(i) ≠ [];%bytes2int-first-lez: ⊦ b2i(int2bytes(i).first) < 0 ↔ i < 0;% ⊦ n < m → m - n ≠ 0;% ⊦ i ≤ j → (¬ ¬ j < i ↔ false); Used terms: int2bytes(i), # int2bytes(i) - i→n(j)