| gstore0[@(m, m0, m1)] = mkgnode(nd, m4, boolvar, boolvar0), gstore0[m] = groupblock(gndx0, lax0, m3), gstore1[m] = groupblock(gndx0, lax0, m2), gstore1[@(m, m0, m1)] = mkgnode(nd0, m5, boolvar1, boolvar2), @(m, m0, m1) ∈ gstore1, m ∈ gstore0, m ∈ gstore1, @(m0, m1) ∈ lax0, @(m, m0, m1) ∈ gstore0 ⊦ nd = nd0, m ∈ ginval |
⊦ adr ∈ gstore → gstore[adr] = gstore[adr.lnum].gndlist[pos(@(adr.pos, adr.size), gstore[adr.lnum].ladrlist)]
gstore1[@(m, m0, m1).lnum].gndlist[pos(@(@(m, m0, m1).pos, @(m, m0, m1).size), gstore1[@(m, m0, m1).lnum].ladrlist)] = mkgnode(nd0, m5, boolvar1, boolvar2), gstore1[m] = groupblock(gndx0, lax0, m2), gstore0[m] = groupblock(gndx0, lax0, m3), gstore0[@(m, m0, m1)] = mkgnode(nd, m4, boolvar, boolvar0), @(m, m0, m1) ∈ gstore0, @(m0, m1) ∈ lax0, m ∈ gstore1, m ∈ gstore0, @(m, m0, m1) ∈ gstore1 ⊦ nd = nd0, m ∈ ginval
Used terms: @(m, m0, m1), gstore1