| j < 0, i ≤ abs(i) * j ⊦ i = 0, j = ~1 |
i + i * j = i * (1 + j), j < 0, i ≤ abs(i) * j ⊦ i = 0, j = ~1
Used simplifier rules: eq-dist: ⊦ (i + j) * i0 = j0 + j * i0 ↔ i * i0 = j0;%one: ⊦ 1 * i = i;%associativity: ⊦ i * j * j0 = (i * j) * j0;%commutativity: ⊦ i * j = j * i;%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%add-c: ⊦ i + j = j + i; from specification int-basic2 Used formulas: i + i * j = i * (1 + j)