| gstore0[m] = groupblock(gndx0, lax0, m3), gstore1[m] = groupblock(gndx0, lax0, m2), m ∈ gstore0, m ∈ gstore1, @(m0, m1) ∈ lax0 ⊦ nodes(gstore0, ginval)[@(m, m0, m1)] = nodes(gstore1, ginval)[@(m, m0, m1)], m ∈ ginval |
⊦ adr ∈ nodes(gstore, ginval) → nodes(gstore, ginval)[adr] = gstore[adr].nd
gstore1[m] = groupblock(gndx0, lax0, m2), gstore0[m] = groupblock(gndx0, lax0, m3), @(m0, m1) ∈ lax0, m ∈ gstore1, m ∈ gstore0, @(m, m0, m1) ∈ nodes(gstore0, ginval) ⊦ gstore0[@(m, m0, m1)].nd = nodes(gstore1, ginval)[@(m, m0, m1)], m ∈ ginval
Used simplifier rules: nodes-gstore-in: ⊦ adr ∈ nodes(gstore, ginval) ↔ ¬ ¬(adr ∈ gstore ∧ ¬ adr.lnum ∈ ginval);% ⊦ ¬ adr ∈ fs → fs[adr] = (∅)[adr]; (s)%⊦ gstore[n] = groupblock(gndx, lax, m0) ∧ n ∈ gstore ∧ @(n0, n1) ∈ lax → @(n, n0, n1) ∈ gstore; (ss)% ⊦ @(m, m0, m1).lnum = m; (s) Used terms: @(m, m0, m1), ginval, gstore0