| ⊦ (allReadsOK(gs.h) ∧ allWritesOK(gs.h) ∧ gs.vm = ∅ ⊕ gs.h ∧ gs.pm = ∅ ⊕ (gs.h | true)) ∧ pre(gs, ls, invWrite, a) ∧ pcstepf(gs, ls, invWrite, a) = resWrite → ( allReadsOK(gstepf(gs, ls, invWrite, a).h) ∧ allWritesOK(gstepf(gs, ls, invWrite, a).h) ∧ gstepf(gs, ls, invWrite, a).vm = ∅ ⊕ gstepf(gs, ls, invWrite, a).h ∧ gstepf(gs, ls, invWrite, a).pm = ∅ ⊕ (gstepf(gs, ls, invWrite, a).h | true)) ∧ ( (gstepf(gs, ls, invWrite, a).h | lstepf(gs, ls, invWrite, a).t) | false = [] ∨ (gstepf(gs, ls, invWrite, a).h | lstepf(gs, ls, invWrite, a).t) | false = (W(lstepf(gs, ls, invWrite, a).t, lstepf(gs, ls, invWrite, a).il, lstepf(gs, ls, invWrite, a).iv), false) ') |