| ii(m1) = ii(m0), m0 ≤ m1 + 1, ii(m1) ≤ ii(m1 + 1), ∀ m0, ii. m0 ≤ m1 ∧ (∀ n. ii(n) ≤ ii(n + 1)) ∧ (∀ m. ii(m) ≤ ii(m0)) → ii(m1) = ii(m0), ∀ n. ii(n) ≤ ii(n + 1), ∀ m. ii(m) ≤ ii(m0) ⊦ ii(m1 + 1) = ii(m0) |
ii(m1) = ii(m0), ii(m0) < ii(m1 + 1), m0 ≤ m1 + 1, ∀ m. ii(m) ≤ ii(m0), ∀ n. ii(n) ≤ ii(n + 1), ∀ m0, ii. m0 ≤ m1 ∧ (∀ n. ii(n) ≤ ii(n + 1)) ∧ (∀ m. ii(m) ≤ ii(m0)) → ii(m1) = ii(m0) ⊦ ii(m1 + 1) = ii(m0)
Used simplifier rules: ⊦ m < n → n ≠ 0; (s)%lf-02: ⊦ m < n ∧ m = n0 → n0 < n; (forward) from specification nat-basic%f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic% ⊦ m ≠ n → (m ≤ n ↔ m < n); (s)