| # int2bytes(i >> 8) < n, # int2bytes(i >> 8) + 1 < n, 128 ≤ i, 0 ≤ i >> 8, 0 < i, 0 ≤ i ⊦ fillsgn(n, int2bytes(i >> 8) + i2b(i) ') = fillsgn(n - 1, int2bytes(i >> 8)) + i2b(i) ', n = # int2bytes(i >> 8) + 1 |
⊦ # bytes < n ∧ 0 ≤ bytes2int(bytes) → fillsgn(n, bytes) = mklist(i2b(0), n - # bytes) + bytes
# int2bytes(i >> 8) < n - 1 ∧ 0 ≤ bytes2int(int2bytes(i >> 8)), # int2bytes(i >> 8) < n, # int2bytes(i >> 8) + 1 < n, 128 ≤ i, 0 ≤ i >> 8, 0 < i, 0 ≤ i ⊦ fillsgn(n, int2bytes(i >> 8) + i2b(i) ') = (mklist(i2b(0), n - 1 - # int2bytes(i >> 8)) + int2bytes(i >> 8)) + i2b(i) ', n = # int2bytes(i >> 8) + 1
Used simplifier rules: int2int: ⊦ bytes2int(int2bytes(i)) = i;% ⊦ m < n → n ≠ 0;% ⊦ m < 1 ↔ m = 0;% ⊦ ¬ m ≤ n ↔ n < m;%n0 ≤ n ⊦ m < n - n0 ↔ m + n0 < n;% ⊦ m + n = n + m;% ⊦ m ≠ n → (¬ m < n ↔ n < m);% ⊦ m < n + 1 ↔ ¬ n < m;% ⊦ ¬ m < n ↔ n ≤ m;% ⊦ m < n → (n ≤ m ↔ false);% ⊦ (m + n0) + n1 = m + n0 + n1;% ⊦ ¬ i ≤ j ↔ j < i;% ⊦ 0 ≤ i → ¬ i >> j < 0; Used terms: int2bytes(i >> 8), n - 1