| m * n + n0 = m0 * n + n1, n0 < n, n1 < n ⊦ n = 0, m = m0 ∧ n0 = n1 |
∀ n, n0, m0, n1. m1 * n + n0 = m0 * n + n1 ∧ n0 < n ∧ n1 < n → n = 0 ∨ m1 = m0 ∧ n0 = n1, m1 +1 * n + n0 = m0 * n + n1, n0 < n, n1 < n ⊦ n = 0, m1 +1 = m0 ∧ n0 = n1
Used simplifier rules: zero: ⊦ 0 * n = 0;%mult-a: ⊦ m0 * m * n = (m0 * m) * n;%mult-c: ⊦ m * n = n * m;%ls-08: ⊦ m * n + n0 < n ↔ m = 0 ∧ n0 < n;%zero-06: ⊦ m ≠ 0 → (m * n = 0 ↔ n = 0);%nat freely generated by 0, +1;;%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%lf-02: ⊦ m < n ∧ m = n0 → n0 < n; (forward) from specification nat-basic1%eq: ⊦ m = m + n ↔ n = 0; from specification nat-basic2