| st[n0] = mkblock(x, lax, m), as | n = ∅, n0 ∈ st[n, mkblock(a ', @(m0, m1) ', m1)], ∀ n. n ∈ st → st[n].ref-size = (as | n).size ⊦ m = ((as ++ @(n, m0, m1)) | n0).size, n0 = n, n ∈ st |
st[n0] = mkblock(x, lax, m), as | n = ∅, n0 ∈ st, ∀ n. n ∈ st → st[n].ref-size = (as | n).size ⊦ m = (as | n0).size, n ∈ st
Used simplifier rules: restrict-add-other: m ≠ m0 ⊦ (as ++ @(m0, m1, m2)) | m = as | m;% ⊦ n ≠ n0 → (n ∈ st[n0, ablock] ↔ n ∈ st); (s)