| gstore[lnum] = groupblock(gndx, lax, m), ginval ∩ elems nx0 = ∅, ax.toSet ∩ abs-log(nx0, gstore).toSet = ∅, adr ∈ lax.to-adr(lnum), adr ∈ ax, lnum ∈ gstore, elems nx0 ⊆ dom gstore, ∀ adr. adr ∈ ax → ¬ adr ∈ nodes(gstore, ginval) ⊦ #(ax.toSet ∩ ((lax.to-adr(lnum)).toSet ∪ abs-log(nx0, gstore).toSet)) = 0, #(ax.toSet ∩ (lax.to-adr(lnum)).toSet) = 0, lnum ∈ ginval |
gstore[lnum] = groupblock(gndx, lax, m), ax.toSet ∩ abs-log(nx0, gstore).toSet = ∅, ginval ∩ elems nx0 = ∅, lnum ∈ gstore, adr ∈ ax, adr ∈ lax.to-adr(lnum), elems nx0 ⊆ dom gstore, ∀ adr0. adr0 ∈ ax → ¬ adr0 ∈ gstore ∨ adr0.lnum ∈ ginval ⊦ #(ax.toSet ∩ (lax.to-adr(lnum)).toSet) = 0, #(ax.toSet ∩ ((lax.to-adr(lnum)).toSet ∪ abs-log(nx0, gstore).toSet)) = 0, lnum ∈ ginval
Used simplifier rules: nodes-gstore-in: ⊦ adr ∈ nodes(gstore, ginval) ↔ ¬ ¬(adr ∈ gstore ∧ ¬ adr.lnum ∈ ginval);