(*The join of all four components - useful for stating
  match_state conditions*)
Definition as_inj (mu: SM_Injection) : meminj :=
  join (extern_of mu) (local_of mu).

Lemma pub_locBlocks: forall mu (WD:SM_wd mu) b1 b2 z (L: pub_of mu b1 = Some(b2,z)), pubBlocksSrc mu b1 = true /\ pubBlocksTgt mu b2 = true /\ locBlocksSrc mu b1 = true /\ locBlocksTgt mu b2 = true /\ extBlocksSrc mu b1 = false /\ extBlocksTgt mu b2 = false /\ frgnBlocksSrc mu b1 = false /\ frgnBlocksTgt mu b2 = false /\ DomSrc mu b1 = true /\ DomTgt mu b2 = true.