| gstore[n] = groupblock(gndx, lax, m0), n ∈ gstore, ∀ gstore, n, gndx, lax, m0, m. gstore[n] = groupblock(gndx, lax, m0) ∧ n ∈ gstore → abs-log(nx0, gstore[n, groupblock(gndx, lax, m)]) = abs-log(nx0, gstore) ⊦ gstore[n, groupblock(gndx, lax, m)][lnum].ladrlist.to-adr(lnum) + abs-log(nx0, gstore[n, groupblock(gndx, lax, m)]) = gstore[lnum].ladrlist.to-adr(lnum) + abs-log(nx0, gstore) |
gstore[n] = groupblock(gndx, lax, m0), gstore[n, groupblock(gndx, lax, m)][lnum] = groupblock(gndx0, lax0, m1), n ∈ gstore, ∀ gstore, n, gndx, lax, m0, m. gstore[n] = groupblock(gndx, lax, m0) ∧ n ∈ gstore → abs-log(nx0, gstore[n, groupblock(gndx, lax, m)]) = abs-log(nx0, gstore) ⊦ lax0.to-adr(lnum) + abs-log(nx0, gstore[n, groupblock(gndx, lax, m)]) = gstore[lnum].ladrlist.to-adr(lnum) + abs-log(nx0, gstore)
Used simplifier rules: ⊦ (gndx = gblock.gndlist ∧ lax = gblock.ladrlist) ∧ m = gblock.ref-size ↔ gblock = groupblock(gndx, lax, m); (elim) Used terms: gstore[n, groupblock(gndx, lax, m)][lnum], gndx0, lax0, m1