| ∀ i1, i0. i→n(i1) < i→n(i) → true → even(mkDecimal(i1 * i1, 2 * abs(i0)).scale) ⊦ even(mkDecimal(i * i, 2 * abs(i0)).scale) |
⊦ ¬(i % 10 = 0 ∧ j ≠ 0 ∧ i ≠ 0) → mkDecimal(i, j).scale = abs(j)
¬ ¬((i * i) % 10 = 0 ∧ 2 * abs(i0) ≠ 0 ∧ i * i ≠ 0), ∀ i1, i0. i→n(i1) < i→n(i) → true → even(mkDecimal(i1 * i1, 2 * abs(i0)).scale) ⊦ even(mkDecimal(i * i, 2 * abs(i0)).scale)
Used simplifier rules: abs-eqall: ⊦ abs(i * j) = abs(i) * abs(j); from specification int-mult%abs-01: ⊦ abs(abs(i)) = 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%even-mult: ⊦ even(i * j) ↔ even(i) ∨ even(j); from specification int-min%even-2: ⊦ even(2); from specification int-min Used terms: 2 * abs(i0), i * i