| ⊦ (ctrok(gs.ctr, gs.writers) ∧ writersOk(gs.p, gs.writers) ∧ pendingOk(gs.p)) ∧ firstPersistW(gs.p(l)) < # gs.p(l) ∧ gs0 = (gs.mem:= gs.mem(l := gs.p(l)[firstPersistW(gs.p(l))].val)).p:= gs.p(l := gs.p(l) -p firstPersistW(gs.p(l))) → (∀ t0. relyws(t0, gs.readers, gs0.readers) ∧ relyws(t0, gs.writers, gs0.writers) ∧ rely(t0, gs.p, gs0.p)) |