| 0 ≤ j0, 0 < j0, # int2bits(j0) = 17, 16 = # int2bits(j0).rest, 0 < i0, j0 < 65536, 32767 < i0 * 65536 + j0, 32767 < j0, 0 ≤ j0, 0 ≤ i0, 0 < i0 * 65536 + j0, 0 < j0 ⊦ j0 = s2i(i2s(j0 - 2 ^ (n→i(# int2bits(j0)) - 1))) + 65536 |
16 = # int2bits(j0).rest, # int2bits(j0) = 17, 0 < j0, 0 < i0 * 65536 + j0, 0 ≤ i0, 0 ≤ j0, 32767 < j0, 32767 < i0 * 65536 + j0, j0 < 65536, 0 < i0 ⊦ j0 = s2i(i2s(j0 - 65536)) + 65536
Used simplifier rules: add-c: ⊦ i + j = j + i; from specification int-basic2%commutativity: ⊦ i * j = j * i; from specification int-mult