| # apebs2 = # apebs0, # apebs1 = # apebs0, ∀ m. m < # apebs0 ∧ m ≠ n → apebs1[m] = apebs2[m], ∀ n0. n0 ∈ ns ∧ n0 < # apebs0 → apebs2[n0] = apebs0[n0] ⊦ n ∈ ns, ∀ n0. n0 ∈ ns ∧ n0 < # apebs0 → apebs1[n0] = apebs0[n0] |
# apebs2 = # apebs0, # apebs1 = # apebs0, n0 < # apebs0, n0 ∈ ns, ∀ m. m < # apebs0 ∧ m ≠ n → apebs1[m] = apebs2[m], ∀ n0. n0 ∈ ns ∧ n0 < # apebs0 → apebs2[n0] = apebs0[n0] ⊦ # ns = 0, apebs1[n0] = apebs0[n0], ns = ∅, n ∈ ns
Used simplifier rules: size-zero-01: ⊦ ns ≠ ∅ → # ns ≠ 0; (forward) from specification set-basic[nat-set]% ⊦ m < n → n ≠ 0; (s)%ne-01: ⊦ n ∈ ns → ns ≠ ∅; (forward) from specification set-basic[nat-set]%lf-01: ⊦ m < n ∧ n = n0 → m < n0; (forward) from specification nat-basic%f: ⊦ m < n → n ≠ 0; (forward) from specification nat-basic