| # gndx = # lax, # gndx1 = # lax1, gstore[n] = groupblock(gndx, lax, m0), n ∈ gstore, adr ∈ gstore ↓ ⊦ adr.lnum ∈ ginval, adr ∈ gstore ↓[n, groupblock(gndx + gndx1, lax + lax1, m0)] ∧ nodes(gstore ↓, ginval)[adr] = nodes(gstore ↓[n, groupblock(gndx + gndx1, lax + lax1, m0)], ginval)[adr] |
# gndx1 = # lax1, # gndx = # lax, gstore[n] = groupblock(gndx, lax, m0), adr = @(m, m1, m2), adr ∈ gstore ↓, n ∈ gstore ⊦ m ∈ ginval, adr ∈ gstore ↓[n, groupblock(gndx + gndx1, lax + lax1, m0)] ∧ nodes(gstore ↓, ginval)[adr] = nodes(gstore ↓[n, groupblock(gndx + gndx1, lax + lax1, m0)], ginval)[adr]
Used simplifier rules: ⊦ (m = adr.lnum ∧ m0 = adr.pos) ∧ m1 = adr.size ↔ adr = @(m, m0, m1); (elim) Used terms: adr, m, m3, m4