| i ≤ max(i ' + ints), max(ints) ≤ max(i ' + ints), ∀ i0. i0 ∈ ints → i0 ≤ max(i ' + ints), i ∈ ints → i ≤ max(ints), ∀ i. i ∈ ints → i ≤ max(ints), max(i ' + ints) ∈ ints → max(ints) = max(i ' + ints) ⊦ ints = [], max(i ' + ints) = max(i, max(ints)) |
i ≤ max(i ' + ints), max(ints) ≤ max(i ' + ints), ∀ i0. i0 ∈ ints → i0 ≤ max(i ' + ints), i ∈ ints → i ≤ max(ints), ∀ i. i ∈ ints → i ≤ max(ints), max(i ' + ints) ∈ ints → max(ints) = max(i ' + ints) ⊦ max(i ' + ints) ∈ ints, ints = [], max(i ' + ints) = max(i, max(ints))
Used simplifier rules: max-in-not-ls: ⊦ i ∈ ints → ¬ max(ints) < i;%lels-01: ⊦ ¬ i ≤ j ↔ j < i; from specification int-abs%Max-right: ⊦ j < i → max(j, i) = i; from specification int-min%max-a: ⊦ max(i, max(j, j0)) = max(max(i, j), j0); from specification int-min%max-c: ⊦ max(i, j) = max(j, i); from specification int-min%lels-02: ⊦ i ≠ j → (i ≤ j ↔ i < j); from specification int-abs%transitivity: ⊦ i < i0 ∧ i0 < i1 → i < i1; (forward) from specification oelem[intlista]%forward-lele: ⊦ j ≤ j0 ∧ j0 ≤ j1 → j ≤ j1; (forward) from specification int-abs%max: ⊦ max(i, j) = j ↔ ¬ j < i; from specification int-min%lenls: ⊦ i ≤ j → ¬ j < i; from specification int-abs Used formulas: max(i ' + ints) ∈ ints