| i % 10 = 0, mkDecimal(i / 10, abs(j) - 1).int = i / (10 * 10 ^ (abs(j) - 1)), abs(j) ≤ maxScale(i / 10), ∀ i0, j. i→n(i0) < i→n(i) → abs(j) < maxScale(i0) → mkDecimal(i0, j).int = i0 / 10 ^ abs(j) ⊦ j = 0, mkDecimal(i / 10, abs(j) - 1).int = i / 10 ^ abs(j), i = 0 |
⊦ 0 ≤ i → j ^ (i + 1) = j ^ i * j
Used simplifier rules: Sub-def: ⊦ i + (j - i) = j; from specification int-abs%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%add-c: ⊦ i + j = j + i; from specification int-basic2%sub-le-01: ⊦ i ≤ j - i0 ↔ i + i0 ≤ j; from specification int-abs%leone: ⊦ 1 ≤ i ↔ 0 < i; from specification int-abs%abs-06: ⊦ 0 < abs(i) ↔ i ≠ 0; from specification int-abs%commutativity: ⊦ i * j = j * i; from specification int-mult Used terms: abs(j) - 1, 10