| inv(st), @(m, m0, m1) ∈ st, @(m, m0, m1) ∈ as, as ⊆ dom nodes(st), m ∈ st → st[m].ref-size = (as | m).size ⊦ # as = 0, as = ∅, @(m, m0, m1) ∈ remove-refsize0(st), dom nodes(st) ⊆ dom nodes(remove-refsize0(st)) |
st[m].ref-size = (as | m).size, inv(st), @(m, m0, m1) ∈ st, @(m, m0, m1) ∈ as, m ∈ st, as ⊆ dom nodes(st) ⊦ # as = 0, as = ∅, @(m, m0, m1) ∈ remove-refsize0(st), dom nodes(st) ⊆ dom nodes(remove-refsize0(st))
Used simplifier rules: ⊦ ¬ n ∈ st → ¬ @(n, n0, n1) ∈ st; (s)