| st[m] = mkblock(x, lax, 0), inv(mkblock(x, lax, 0)), @(m, m0, 0) ∈ st, m ∈ st, @(m, m0, 0) ∈ as, as ⊆ dom nodes(st) ⊦ # as = 0, as = ∅, dom nodes(st) ⊆ dom nodes(remove-refsize0(st)) |
⊦ inv(ablock) ↔ # ablock.list = # ablock.ladrlist ∧ inv-flashsize(ablock.list, ablock.ladrlist) ∧ ¬ dups(ablock.ladrlist)
# mkblock(x, lax, 0).list = # mkblock(x, lax, 0).ladrlist, st[m] = mkblock(x, lax, 0), inv-flashsize(mkblock(x, lax, 0).list, mkblock(x, lax, 0).ladrlist), @(m, m0, 0) ∈ as, m ∈ st, @(m, m0, 0) ∈ st, as ⊆ dom nodes(st) ⊦ # as = 0, as = ∅, dups(mkblock(x, lax, 0).ladrlist), dom nodes(st) ⊆ dom nodes(remove-refsize0(st))
Used terms: mkblock(x, lax, 0)