| mkDecimal(~(i / 10), abs(j) - 1).scale = mkDecimal(i / 10, abs(j) - 1).scale, i % 10 = 0, ∀ i0, j. i→n(i0) < i→n(i) → true → mkDecimal(~ i0, j).scale = mkDecimal(i0, j).scale ⊦ j = 0, mkDecimal(~ i, j).scale = mkDecimal(i / 10, abs(j) - 1).scale |
⊦ i % 10 = 0 ∧ j ≠ 0 → mkDecimal(i, j) = mkDecimal(i / 10, abs(j) - 1)
Used simplifier rules: mod-neg-01: j ≠ 0 ⊦ ~ i % j = ~(i % j); from specification int-div%neg-10: ⊦ ~ i = 0 ↔ i = 0; from specification int-abs%neg-01: j ≠ 0 ⊦ ~ i / j = ~(i / j); from specification int-div Used terms: j, ~ i