| 0 < i, ∀ i1, i0. i→n(i1) < i→n(i) → 0 ≤ i1 → mkDecimal(sqrt(mkDecimal(i1 * i1, 2 * abs(i0)).int), mkDecimal(i1 * i1, 2 * abs(i0)).scale / 2) = mkDecimal(i1, i0) ⊦ i = 0, mkDecimal(abs(i), abs(i0)) = mkDecimal(i, i0), i0 ≠ 0 ∧ i % 10 = 0, i % 10 = 0 ∧ i0 ≠ 0 |
0 < i, ∀ i1, i0. i→n(i1) < i→n(i) → 0 ≤ i1 → mkDecimal(sqrt(mkDecimal(i1 * i1, 2 * abs(i0)).int), mkDecimal(i1 * i1, 2 * abs(i0)).scale / 2) = mkDecimal(i1, i0) ⊦ i = 0, mkDecimal(i, abs(i0)) = mkDecimal(i, i0), i % 10 = 0, i0 = 0
Used simplifier rules: eq-same: ⊦ mkDecimal(i, j) = mkDecimal(i0, j) ↔ i = i0; from specification decimal%abs-16: ⊦ 0 < j → abs(j) = j; from specification int-abs