| 0 < j, j < n→i(# ints), ¬ dups(ints) ⊦ (∀ i. i ∈ mapFun(λ i. i |%| j, ints) → 0 ≤ i ∧ i < j) ∧ 0 ≤ j ∧ j < n→i(# mapFun(λ i. i |%| j, ints)), ∃ i1, i2. i1 ≠ i2 ∧ ≡mod(i1, i2, j) |
0 < j, i ∈ mapFun(λ i. i |%| j, ints), j < n→i(# ints), 0 ≤ j ⊦ ints = [], # ints = 1, dups(ints), 0 ≤ i ∧ i < j, ∃ i1, i2. i1 ≠ i2 ∧ ≡mod(i1, i2, j)
Used simplifier rules: one: ⊦ 1 < m ↔ ¬(m = 0 ∨ m = 1); from specification nat-basic1%l: ⊦ # ints = 0 ↔ ints = []; from specification list-data[intlista]%zero: ⊦ 0 < m ↔ m ≠ 0; from specification nat-basic1%num-n2i-ls-02: 0 ≤ i ⊦ (* i) < n→i(n) ↔ i→n(i) < n; from specification intnat%forward-le-05: ⊦ i < j ∧ 0 ≤ i → 0 < j; (forward) from specification int-abs%forward-pos: ⊦ i < j ∧ 0 < i → 0 < j ∧ 1 < j; (forward) from specification int-basic1%forward-le-01: ⊦ i ≤ j ∧ 0 ≤ i → 0 ≤ j; (forward) from specification int-abs%forward-lels: ⊦ i ≤ j ∧ j < j0 → i < j0; (forward) from specification int-abs%ls-01: ⊦ i < j → ¬ j < i; from specification int-basic1%lels-01: ⊦ ¬ i ≤ j ↔ j < i; from specification int-abs%map-length: ⊦ # mapFun(intfun, ints) = # ints; from specification intlist