| i2 + i = i3 + 1, i0 ∈ count-i2j(i, i3) ↔ i ≤ i0 ∧ i0 ≤ i3, 0 ≤ i2, i ≤ i0 ∧ i0 ≤ i3 ∨ i0 = i3 + 1, ∀ j0, i1, i0. i→n(j0 - i1) < i→n(i2) → true → (i0 ∈ count-i2j(i1, j0) ↔ i1 ≤ i0 ∧ i0 ≤ j0) ⊦ i ≤ i0 ∧ i0 ≤ i3 + 1 |
Used simplifier rules: lep-01: ⊦ i + j ≤ i ↔ j ≤ 0; from specification int-abs%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%add-c: ⊦ i + j = j + i; from specification int-basic2%le-add: ⊦ i + j ≤ i0 + j ↔ i ≤ i0; from specification int-abs%ler: ⊦ i ≤ i; from specification int-abs%lels-01: ⊦ ¬ i ≤ j ↔ j < i; from specification int-abs%lel: ⊦ i < i0 ∧ i = i1 → i1 < i0; (forward) from specification oelem[intlista]%ls: ⊦ i + j < j ↔ i < 0; from specification int-basic2%lenls: ⊦ i ≤ j → ¬ j < i; from specification int-abs%le-add-03: ⊦ i ≤ i0 ∧ j0 ≥ 0 → i ≤ i0 + j0; from specification int-abs