| st[n] = mkblock(x, lax, m), n ∈ st, ¬ n ∈ ns → # x = # lax ∧ inv-flashsize(x, lax) ∧ ¬ dups(lax) ⊦ m = 0, n ∈ dom remove-refsize0(st) ∩ ns, inv-flashsize(x, lax) ∧ ¬ dups(lax) |
Used simplifier rules: in-remove-refsize0: ⊦ n ∈ remove-refsize0(st) ↔ n ∈ st ∧ st[n].ref-size ≠ 0;% ⊦ n ∈ ns ∩ ns0 ↔ n ∈ ns ∧ n ∈ ns0; (ws)% ⊦ n ∈ dom st ↔ n ∈ st; (s)%int-a: ⊦ (ns ∩ ns0) ∩ ns1 = ns ∩ ns0 ∩ ns1; from specification set-union[nat-set]%int-c: ⊦ ns ∩ ns0 = ns0 ∩ ns; from specification set-union[nat-set]%ne-01: ⊦ n ∈ ns → ns ≠ ∅; (forward) from specification set-basic[nat-set]% ⊦ mkblock(x, lax, m).ref-size = m; (s) Used formulas: n ∈ ns