| count-i2j(i + 1, j) ≠ [], i ≤ j, i ≤ j, ∀ j0, i0. i→n(j0 - i0) < i→n(j - i) → i0 ≤ j0 → min(count-i2j(i0, j0)) = i0 ⊦ min(i, min(count-i2j(i + 1, j))) = i |
i < j, ∀ j0, i0. i→n(j0 - i0) < i→n(j - i) → i0 ≤ j0 → min(count-i2j(i0, j0)) = i0 ⊦ min(i, min(count-i2j(i + 1, j))) = i, i = j
Used simplifier rules: count-i2j-empty-02: ⊦ count-i2j(i, j) = [] ↔ j < i;%lels-02: ⊦ i ≠ j → (i ≤ j ↔ i < j); from specification int-abs%add-c: ⊦ i + j = j + i; from specification int-basic2%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%anti: ⊦ i ≤ j → (j ≤ i ↔ i = j); from specification int-abs%succ-02: ⊦ i < j + 1 ↔ i ≤ j; from specification int-abs