(*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 foreign_DomRng: forall mu (WD:SM_wd mu) b1 b2 d (L:foreign_of mu b1 = Some(b2,d)), pubBlocksSrc mu b1 = false /\ pubBlocksTgt mu b2 = false /\ locBlocksSrc mu b1 = false /\ locBlocksTgt mu b2 = false /\ frgnBlocksSrc mu b1 = true /\ frgnBlocksTgt mu b2 = true /\ extBlocksSrc mu b1 = true /\ extBlocksTgt mu b2 = true /\ DomSrc mu b1 = true /\ DomTgt mu b2 = true.