| 127 < i % 256 ∧ i % 256 ≤ 255, uint2bits(i) = uint2bits(i / 256) + fillsgn(9, uint2bits(i % 256)).rest, # uint2bits(i % 256) ≤ 9, 255 < i, 0 < i, 0 ≤ i ⊦ fillsgn(9, uint2bits(i % 256)) = [], i2b(bits2int(fillsgn(9, uint2bits(i % 256)).rest)) = (i2b(0) ' + i2b(i % 256 - 256) ').last |
uint2bits(i) = uint2bits(i / 256) + fillsgn(9, uint2bits(i % 256)).rest, i % 256 < i, 0 < i % 256, 0 ≤ i, 255 < i, # uint2bits(i % 256) ≤ 9, i % 256 ≤ 255, 127 < i % 256, 0 < i, 1 < i, 127 < i, 128 < i ⊦ i2b(bits2int(fillsgn(9, uint2bits(i % 256)).rest)) = i2b(i % 256 - 256), fillsgn(9, uint2bits(i % 256)) = [], i % 256 = bits2int(fillsgn(9, uint2bits(i % 256)).rest) + 256
Used simplifier rules: ⊦ i < j ∧ j < j0 → i < j0; (forward)% ⊦ i < j ∧ j < i0 → i +1 < i0; (forward)% ⊦ 0 < j ∧ 0 ≤ i → 0 ≤ i % j;% ⊦ i - j = i0 ↔ i = i0 + j;% ⊦ i2b(i) ≠ i2b(j) → i ≠ j; (forward)% ⊦ i < j ∧ j ≤ j0 → i < j0; (forward)% ⊦ (* i) < j ∧ 0 < i → 0 ≤ j ∧ 0 < j; (forward)% ⊦ i ≤ j ∧ j < j0 → i < j0; (forward)% ⊦ (bytes + bytes0) + bytes1 = bytes + bytes0 + bytes1;% ⊦ (bytes + by ').last = by;