| mon≤(nσ) ∧ m ≤ n0 ∧ ⌜n0⌝ < # nσ → nσ[m] ≤ nσ[n0], nσ[n] = nσ[n0], # nσ = ∞, n0 < n, m < n, stutf(nσ), n0 < m, nσ[n0] < nσ[m], n0 + 1 < n, ∀ m. ∃ m0. m < m0 ∧ nσ[m] < nσ[m0] ⊦ nσ[∞.n] = nσ[n0], n0 = 0 |
nσ[n] = nσ[n0], # nσ = ∞, n0 < n, m < n, stutf(nσ), n0 < m, nσ[n0] < nσ[m], n0 + 1 < n, ∀ m. ∃ m0. m < m0 ∧ nσ[m] < nσ[m0] ⊦ nσ[∞.n] = nσ[n0], n0 = 0
Used simplifier rules: stutf-monle: ⊦ stutf(nσ) → (¬ mon≤(nσ) ↔ false);%ls-le-simp: ⊦ m < n → (n ≤ m ↔ false); from specification nat