| 2 * m = 2 * n0 +1 + m0, m < n0 +1, ∀ m, m0. ¬(2 * m = 2 * n0 + m0 ∧ m < n0) ⊦ |
2 * m = (2 * n0 + 2) + m0, m ≤ n0, ∀ m1, m2. 2 * m1 ≠ 2 * n0 + m2 ∨ ¬ m1 < n0 ⊦
Used simplifier rules: dist: ⊦ m0 * (m + n) = m0 * m + m0 * n;%mult-a: ⊦ m0 * m * n = (m0 * m) * n;%mult-c: ⊦ m * n = n * m;% ⊦ m < n ↔ ¬ n ≤ m; (ss)% ⊦ m < n + 1 ↔ ¬ n < m; (s)%c: ⊦ m + n = n + m; from specification nat-basic%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic% ⊦ m +1 = m + 1; (s)