| n ∈ dom gstore0 ∪ elems nx ↔ n ∈ dom gstore ∪ ginval, (∅)[n] = groupblock(gndx0, lax0, m), n ∈ ginval, fi.lebs ⊆ dom gstore0 ⊦ # ginval = 0, ginval = ∅, m = 0, n ∈ gstore0, n ∈ nx |
(∅)[n] = groupblock(gndx0, lax0, m), n ∈ dom gstore ∪ ginval, n ∈ dom gstore0 ∪ elems nx, n ∈ ginval, fi.lebs ⊆ dom gstore0 ⊦ # ginval = 0, #(dom gstore ∪ ginval) = 0, #(dom gstore0 ∪ elems nx) = 0, ginval = ∅, m = 0, dom gstore ∪ ginval = ∅, dom gstore0 ∪ elems nx = ∅, n ∈ nx, n ∈ gstore0
Used simplifier rules: size-zero-01: ⊦ ns ≠ ∅ → # ns ≠ 0; (forward) from specification set-basic[nat-set]%ne-01: ⊦ n ∈ ns → ns ≠ ∅; (forward) from specification set-basic[nat-set]%unc: ⊦ ns ∪ ns0 = ns0 ∪ ns; from specification set-union[nat-set]%una: ⊦ (ns ∪ ns0) ∪ ns1 = ns ∪ ns0 ∪ ns1; from specification set-union[nat-set]% ⊦ n ∈ dom gstore ↔ n ∈ gstore; (s)% ⊦ n ∈ ns ∪ ns0 ↔ ¬(¬ n ∈ ns ∧ ¬ n ∈ ns0); (ss)