Definition FLIP mu :=
  match mu with
    Build_SM_Injection locBSrc locBTgt pSrc pTgt local extBSrc extBTgt fSrc fTgt extern =>
    Build_SM_Injection extBSrc extBTgt fSrc fTgt extern locBSrc locBTgt pSrc pTgt local
  end.

Lemma RelyGuaranteeSrc: forall mu (WD: SM_wd mu) Esrc m m' (SrcHyp: forall b ofs, Esrc b ofs = true -> vis mu b = true) (Unch: Mem.unchanged_on (fun b z => Esrc b z = false) m m'), Mem.unchanged_on (fun b ofs => locBlocksSrc (FLIP mu) b = true /\ pubBlocksSrc (FLIP mu) b = false) m m'.