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