| (i2 + 1) * 2 ^ i0 = 2 ^ i0 + j, 2 ^ i1 = i2 + 1, 0 ≤ i0, 0 ≤ j, 0 ≤ i1 + i0, 0 ≤ i1 ⊦ 2 ^ i0 + j - 2 ^ i0 = j, j = 2 ^ i0 * i2 |
⊦ (* i) + i0 - (* j) = (i - j) + i0
Used simplifier rules: ⊦ i - i = 0; (s)% ⊦ i + 0 = i; (s)%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%add-c: ⊦ i + j = j + i; from specification int-basic2 Used terms: 2 ^ i0, j, 2 ^ i0