| mkDecimal(i / 10, abs(j) - 1).int < 0 ↔ i / 10 < 0, i % 10 = 0, ∀ i0, j. i→n(i0) < i→n(i) → true → (mkDecimal(i0, j).int < 0 ↔ i0 < 0) ⊦ j = 0, mkDecimal(i / 10, abs(j) - 1).int < 0 ↔ i < 0 |
i % 10 = 0, ~10 < i, i < 0, ∀ i0, j. i→n(i0) < i→n(i) → true → (mkDecimal(i0, j).int < 0 ↔ i0 < 0) ⊦ j = 0
Used simplifier rules: getint-pos-01: ⊦ 0 ≤ mkDecimal(i, j).int ↔ 0 ≤ i;%forward-le-02: ⊦ j < i ∧ i ≤ 0 → j < 0; (forward) from specification int-abs%numlelsdel-01: i0 ≠ 0, i0 ≤ i ⊦ (* i) < j → (* i0) < j; from specification int-abs%lels-01: ⊦ ¬ i ≤ j ↔ j < i; from specification int-abs%lenls: ⊦ i ≤ j → ¬ j < i; from specification int-abs%numls-02: ⊦ (* j) < i0 + (* j0) ↔ j - j0 < i0; from specification int-abs%neg-13: ⊦ ~ i < j ↔ 0 < j + i; from specification int-abs%abs-08: ⊦ i < 0 → abs(i) = ~ i; from specification int-abs%div-ngr-zero: ⊦ i < 0 ∧ 0 < j → (0 ≤ i / j ↔ abs(i) < j); from specification int-div%lels: ⊦ ¬ i < j ↔ j ≤ i; from specification int-abs%zero-gels-03: ⊦ i < 0 ∧ 0 ≤ j → i ≤ j; from specification int-abs%zero-gels-01: ⊦ i < 0 ∧ 0 ≤ j → i < j; from specification int-abs%forward-le-03: ⊦ j ≤ i ∧ i < 0 → j < 0; (forward) from specification int-abs%forward-le-04: ⊦ j ≤ i ∧ i ≤ 0 → j ≤ 0; (forward) from specification int-abs%add-c: ⊦ i + j = j + i; from specification int-basic2%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%numle-03: ⊦ i + (* j) ≤ (* j0) ↔ i ≤ j0 - j; from specification int-abs%div-ls-zero: 0 < j ⊦ i / (* j) < 0 ↔ i + j ≤ 0; from specification int-div