| gstore[m, groupblock([], [], m0)][m1] = groupblock(gndx, lax, m4) ⊦ m ∈ gstore, ((m1 = m ∨ m1 ∈ gstore) ∧ @(m2, m3) ∈ lax ∧ (m1 = m ∨ ¬ m1 ∈ ginval) → @(m1, m2, m3) ∈ gstore ∧ ¬ m1 ∈ ginval) ∧ ( (m1 = m ∨ m1 ∈ gstore) ∧ @(m2, m3) ∈ lax ∧ (m1 = m ∨ ¬ m1 ∈ ginval) → nodes(gstore[m, groupblock([], [], m0)], ginval -- m)[@(m1, m2, m3)] = nodes(gstore, ginval)[@(m1, m2, m3)]) |
⊦ adr ∈ gstore ↔ adr.lnum ∈ gstore ∧ @(adr.pos, adr.size) ∈ gstore[adr.lnum].ladrlist
gstore[m, groupblock([], [], m0)][m1] = groupblock(gndx, lax, m4) ⊦ m ∈ gstore, ( (m1 = m ∨ m1 ∈ gstore) ∧ @(m2, m3) ∈ lax ∧ (m1 = m ∨ ¬ m1 ∈ ginval) → (@(m1, m2, m3).lnum ∈ gstore ∧ @(@(m1, m2, m3).pos, @(m1, m2, m3).size) ∈ gstore[@(m1, m2, m3).lnum].ladrlist) ∧ ¬ m1 ∈ ginval) ∧ ( (m1 = m ∨ m1 ∈ gstore) ∧ @(m2, m3) ∈ lax ∧ (m1 = m ∨ ¬ m1 ∈ ginval) → nodes(gstore[m, groupblock([], [], m0)], ginval -- m)[@(m1, m2, m3)] = nodes(gstore, ginval)[@(m1, m2, m3)])
Used terms: gstore, @(m1, m2, m3)