| ∀ n. ii(n) ≤ ii(n + 1), ∀ n0, ii. n0 < n → (∀ n. ii(n) ≤ ii(n + 1)) → (∃ m. n0 ≤ ii(m)) ∨ (∃ n. (∀ m. ii(m) ≤ n) ∧ (∃ m. ii(m) = n)) ⊦ n = 0, ∃ m. n ≤ ii(m), (∀ m. ii(m) ≤ n - 1) ∧ (∃ m. ii(m) = n - 1), ∃ n. (∀ m. ii(m) ≤ n) ∧ (∃ m. ii(m) = n) |
∀ n. ii(n) ≤ ii(n + 1), ∀ n0, ii. n0 < n → (∀ n. ii(n) ≤ ii(n + 1)) → (∃ m. n0 ≤ ii(m)) ∨ (∃ n. (∀ m. ii(m) ≤ n) ∧ (∃ m. ii(m) = n)) ⊦ n = 0, ∃ m. n ≤ ii(m), ∃ n. (∀ m. ii(m) ≤ n) ∧ (∃ m. ii(m) = n), ii(m) < n ∧ (∃ m. ii(m) = n - 1)
Used simplifier rules: c: ⊦ m + n = n + m; from specification nat-basic2%a: ⊦ (m + n0) + n1 = m + n0 + n1; from specification nat-basic2%succ-01: ⊦ m + 1 ≤ n ↔ m < n; from specification nat%ls-02: n0 ≤ n ⊦ m ≤ n - n0 ↔ m + n0 ≤ n; from specification nat%one-01: ⊦ m < 1 ↔ m = 0; from specification nat-basic1%lels-01: ⊦ ¬ m ≤ n ↔ n < m; from specification nat