| remove-refsize0(gstore)[@(m, m0, m1)] = mkgnode(nd, m3, boolvar, boolvar0), gstore[m] = groupblock(gndx, lax, m2), m ∈ ginval, m ∈ gstore, @(m0, m1) ∈ lax, @(m, m0, m1) ∈ remove-refsize0(gstore), ∀ n. ¬ n ∈ dom remove-refsize0(gstore) ∩ ginval ⊦ # ginval = 0, ginval = ∅, m2 = 0, nd = (∅)[@(m, m0, m1)], @(m, m0, m1) ∈ gstore \ ginval |
Used simplifier rules: ⊦ n ∈ ns ∩ ns0 ↔ n ∈ ns ∧ n ∈ ns0; (ws)% ⊦ n ∈ dom gstore ↔ n ∈ gstore; (s)% ⊦ n ∈ remove-refsize0(gstore) ↔ n ∈ gstore ∧ gstore[n].ref-size ≠ 0; (ws)%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]% ⊦ groupblock(gndx, lax, m).ref-size = m; (s) Used terms: m