| ⊦ mkDecimal((i * 10 ^ abs(i2) + i1 * 10 ^ abs(i0)) * 10 ^ abs(i2) - i1 * 10 ^ (abs(i0) + abs(i2)), 2 * abs(i2) + abs(i0)) = mkDecimal(i, abs(i0)) |
⊦ 0 ≤ j0 → mkDecimal(i, j) = mkDecimal(i * 10 ^ j0, abs(j) + j0)
0 ≤ 2 * abs(i2) ⊦ mkDecimal((i * 10 ^ abs(i2) + i1 * 10 ^ abs(i0)) * 10 ^ abs(i2) - i1 * 10 ^ (abs(i0) + abs(i2)), 2 * abs(i2) + abs(i0)) = mkDecimal(i * 10 ^ (2 * abs(i2)), abs(abs(i0)) + 2 * abs(i2))
Used simplifier rules: zero-ge: ⊦ 0 < i → (0 ≤ i * j ↔ 0 ≤ j); from specification int-mult%abs-03: ⊦ 0 ≤ abs(i); from specification int-abs%associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult%commutativity: ⊦ i * j = j * i; from specification int-mult Used terms: 2 * abs(i2), abs(i0), i