| n < m, adr ∈ asar[n] ⊦ # asar[n] = 0, asar[n] = ∅, adr ∈ union(asar, 0, m) |
n < m0 +1, adr ∈ asar[n], ∀ n, adr, asar. n < m0 ∧ adr ∈ asar[n] → # asar[n] = 0 ∨ asar[n] = ∅ ∨ adr ∈ union(asar, 0, m0) ⊦ # asar[n] = 0, asar[n] = ∅, adr ∈ union(asar, 0, m0 +1)
Used simplifier rules: nat freely generated by 0, +1;;% ⊦ ¬ m < 0; (s)