| # int2bits(i / 2) = 1, 0 ≤ i, i0 < 31, mklist(false, i→n(i0)).first, 0 < i, 1 < i, 0 < i0 ⊦ mklist(false, i→n(i0)) + int2bits(i / 2) = [], i0 = 0 |
⊦ 0 ≤ i → int2bits(i) = uint2bits(i)
0 ≤ i / 2, # uint2bits(i / 2) = 1, 0 ≤ i, i0 < 31, mklist(false, i→n(i0)).first, 0 < i, 1 < i, 0 < i0 ⊦ mklist(false, i→n(i0)) + uint2bits(i / 2) = [], i0 = 0
Used simplifier rules: ⊦ 0 ≤ i / 2 ↔ ~1 ≤ i;%i0 ≠ 0, i0 ≤ i ⊦ (* i) ≤ j → (* i0) ≤ j; Used terms: i / 2