| int2bytes(i).first = i2b(0), # int2bytes(i) < 2, 0 ≤ i, i < 2 ^ (8 * (1 + n→i(# int2bytes(i) - 1 - 1))) ⊦ int2bytes(i).rest = [], # int2bytes(i) = n ↔ ¬ i < 2 ^ ((n→i(n) - 1) * 8 - 1) ∧ ¬ 2 ^ ((n→i(n) - 1) * 8) ≤ i ∧ n ≠ 0 |
int2bytes(i) = by + bytes ∧ int2bytes(i) ≠ [], by = i2b(0), # int2bytes(i) < 2, 0 ≤ i, i < 2 ^ (8 * (1 + n→i(# int2bytes(i) - 1 - 1))) ⊦ bytes = [], # int2bytes(i) = n ↔ ¬ i < 2 ^ ((n→i(n) - 1) * 8 - 1) ∧ ¬ 2 ^ ((n→i(n) - 1) * 8) ≤ i ∧ n ≠ 0
Used simplifier rules: int2bytes-empty: ⊦ int2bytes(i) ≠ [];%⊦ bytes ≠ [] → (by = bytes.first ∧ bytes0 = bytes.rest ↔ bytes = by + bytes0); (elim) Used terms: int2bytes(i), by, bytes