| remove-refsize0(crash(istore, istore0))[n] = indexblock(indx0, lax0, m0), istore0[n] = indexblock(indx, lax, m), crash(istore, istore0)[n] = indexblock(indx1, lax1, m1), istore0 = remove-refsize0(istore0), n ∈ istore, n ∈ istore0, istore0 ⊑ istore ⊦ m1 = 0, indx ⊑ indx0 ∧ lax ⊑ lax0 ∧ # indx = # lax ∧ # indx0 = # lax0 |
⊦ istore ⊑ istore0 ↔ dom istore ⊆ dom istore0 ∧ (∀ n. n ∈ istore ∧ n ∈ istore0 → istore[n].indlist ⊑ istore0[n].indlist ∧ istore[n].ladrlist ⊑ istore0[n].ladrlist ∧ # istore[n].indlist = # istore[n].ladrlist ∧ # istore0[n].indlist = # istore0[n].ladrlist)
crash(istore, istore0)[n] = indexblock(indx1, lax1, m1), istore0[n] = indexblock(indx, lax, m), remove-refsize0(crash(istore, istore0))[n] = indexblock(indx0, lax0, m0), istore0 = remove-refsize0(istore0), n ∈ istore0, n ∈ istore, dom istore0 ⊆ dom istore, ∀ n. n ∈ istore0 ∧ n ∈ istore → istore0[n].indlist ⊑ istore[n].indlist ∧ istore0[n].ladrlist ⊑ istore[n].ladrlist ∧ # istore0[n].indlist = # istore0[n].ladrlist ∧ # istore[n].indlist = # istore[n].ladrlist ⊦ m1 = 0, indx ⊑ indx0 ∧ lax ⊑ lax0 ∧ # indx = # lax ∧ # indx0 = # lax0
Used terms: istore, istore0