| n + i→n(i) = m0 + 1, n→i(m0) + 1 < n→i(n) + i, 0 ≤ i, 0 < n→i(n) + i, n→i(m0) < n→i(n) + i ⊦ |
m0 = n + i→n(i) -1, n + i→n(i) = m0 + 1, n→i(m0) + 1 < n→i(n) + i, 0 ≤ i, 0 < n→i(n) + i, n→i(m0) < n→i(n) + i ⊦
Used simplifier rules: num-i2n-le-02: 0 ≤ i ⊦ (* m) ≤ i→n(i) ↔ n→i(m) ≤ i;%ls-int-ls-nat: ⊦ i ≥ 0 → ((* i) + n→i(n) < n→i(m) ↔ i→n(i) + n < m);%num-n2i-ls-02: 0 ≤ i ⊦ (* i) < n→i(n) ↔ i→n(i) < n;%nat2int-04: ⊦ n→i(m) < n→i(n) ↔ m < n;%pred-03: ⊦ n -1 = n - 1; from specification nat%zero-gels-04: ⊦ i ≤ 0 ∧ 0 ≤ j → i ≤ j; from specification int-abs%leone: ⊦ 1 ≤ i ↔ 0 < i; from specification int-abs%lels: ⊦ ¬ i < j ↔ j ≤ i; from specification int-abs%anti: ⊦ i ≤ j → (j ≤ i ↔ i = j); from specification int-abs%add-base: ⊦ n + 0 = n; from specification nat-basic2%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic2%c: ⊦ m + n = n + m; from specification nat-basic2%add-zero-rev: ⊦ 0 + i = i; from specification int-basic2%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%add-c: ⊦ i + j = j + i; from specification int-basic2%zero: ⊦ 0 < m ↔ m ≠ 0; from specification nat-basic1%eqle-one: ⊦ m = n + 1 ∧ n < n0 → m ≤ n0; (forward) from specification nat%f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic1%lf-01: ⊦ m < n ∧ n = n0 → m < n0; (forward) from specification nat-basic1%lf-02: ⊦ m < n ∧ m = n0 → n0 < n; (forward) from specification nat-basic1%ls-le-simp: ⊦ m < n → (n ≤ m ↔ false); from specification nat%eq-02: n ≤ m ⊦ (m - n) + n0 = n1 ↔ m + n0 = n + n1; from specification nat Used formulas: m0 = n + i→n(i) -1