| ⌜min(nσ, nσ[n])⌝ < # nσ, nσ[n] ≤ nσ[min(nσ, nσ[n])], ⌜n⌝ < # nσ, mon<(nσ), # nσ = ∞ ∨ ¬ nσ[(# nσ).n - 1] < nσ[n], ⌜n⌝ < # nσ ∧ nσ[n] ≤ nσ[n] → min(nσ, nσ[n]) ≤ n, ∀ m. ⌜m⌝ < # nσ ∧ nσ[n] ≤ nσ[m] → min(nσ, nσ[n]) ≤ m ⊦ min(nσ, nσ[n]) = n, nσ = [] |
⌜min(nσ, nσ[n])⌝ < # nσ, nσ[n] ≤ nσ[min(nσ, nσ[n])], ⌜n⌝ < # nσ, mon<(nσ), min(nσ, nσ[n]) < n, ∀ m. ⌜m⌝ < # nσ ∧ nσ[n] ≤ nσ[m] → min(nσ, nσ[n]) ≤ m, # nσ = ∞ ∨ ¬ nσ[(# nσ).n - 1] < nσ[n] ⊦ min(nσ, nσ[n]) = n, nσ = [], n = 0
Used simplifier rules: f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic1%lels-02: ⊦ m ≠ n → (m ≤ n ↔ m < n); from specification nat%ler: ⊦ m ≤ m; from specification nat