| (∅)[m] = mkblock(x, lax, m2), st[m] = mkblock(x0, lax0, 0), inv(st), m ∈ st, @(m, m0, m1) ∈ as, @(m, m0, m1) ∈ st, m ∈ st → st[m].ref-size = (as | m).size ⊦ # as = 0, as = ∅ |
0 = (as | m).size, (∅)[m] = mkblock(x, lax, m2), st[m] = mkblock(x0, lax0, 0), inv(st), m ∈ st, @(m, m0, m1) ∈ as, @(m, m0, m1) ∈ st ⊦ # as = 0, as = ∅
Used simplifier rules: ⊦ mkblock(x, lax, m).ref-size = m; (s)