| m ∈ gstore0 ↔ m ∈ gstore1, gstore1[m] = groupblock(gndx, lax, m2), m ∈ gstore1 → gndx = gstore0[m].gndlist ∧ lax = gstore0[m].ladrlist ⊦ (¬ m ∈ ginval → (@(m, m0, m1) ∈ gstore0 ↔ @(m, m0, m1) ∈ gstore1)) ∧ (@(m, m0, m1) ∈ gstore0 ∧ ¬ m ∈ ginval → nodes(gstore0, ginval)[@(m, m0, m1)] = nodes(gstore1, ginval)[@(m, m0, m1)]) |
m ∈ gstore0 ↔ m ∈ gstore1, gstore1[m] = groupblock(gndx, lax, m2), gstore0[m] = groupblock(gndx0, lax0, m3), m ∈ gstore1 → gndx = gndx0 ∧ lax = lax0 ⊦ (¬ m ∈ ginval → (@(m, m0, m1) ∈ gstore0 ↔ @(m, m0, m1) ∈ gstore1)) ∧ (@(m, m0, m1) ∈ gstore0 ∧ ¬ m ∈ ginval → nodes(gstore0, ginval)[@(m, m0, m1)] = nodes(gstore1, ginval)[@(m, m0, m1)])
Used simplifier rules: ⊦ (gndx = gblock.gndlist ∧ lax = gblock.ladrlist) ∧ m = gblock.ref-size ↔ gblock = groupblock(gndx, lax, m); (elim) Used terms: gstore0[m], gndx0, lax0, m3