| dom remove-refsize0(gstore) ∩ ginval = ∅ ⊦ (@(m, m0, m1) ∈ remove-refsize0(gstore) ↔ @(m, m0, m1) ∈ gstore ∧ ¬ m ∈ ginval ∧ gstore[m].ref-size ≠ 0) ∧ ( @(m, m0, m1) ∈ remove-refsize0(gstore) → nodes(remove-refsize0(gstore), ∅)[@(m, m0, m1)] = (nodes(gstore, ginval) \ refsize0-addresses(gstore \ ginval))[@(m, m0, m1)]) |
gstore[m] = groupblock(gndx, lax, m2), dom remove-refsize0(gstore) ∩ ginval = ∅ ⊦ (@(m, m0, m1) ∈ remove-refsize0(gstore) ↔ @(m, m0, m1) ∈ gstore ∧ ¬ m ∈ ginval ∧ m2 ≠ 0) ∧ ( @(m, m0, m1) ∈ remove-refsize0(gstore) → nodes(remove-refsize0(gstore), ∅)[@(m, m0, m1)] = (nodes(gstore, ginval) \ refsize0-addresses(gstore \ ginval))[@(m, m0, m1)])
Used simplifier rules: ⊦ (gndx = gblock.gndlist ∧ lax = gblock.ladrlist) ∧ m = gblock.ref-size ↔ gblock = groupblock(gndx, lax, m); (elim) Used terms: gstore[m], gndx, lax, m2