Definition target_accessible mu m tm args b ofs :=
  Mem.valid_block tm b /\
  (locBlocksTgt mu b=false ->
    exists b0 d,
      foreign_of mu b0 = Some (b, d)
      /\ REACH m (getBlocks args) b0=true
      /\ Mem.perm m b0 (ofs-d) Max Nonempty).Definition incr mu mu' :=
  inject_incr (as_inj mu) (as_inj mu')
  /\ (forall b, DomSrc mu b=true -> DomSrc mu' b=true)
  /\ (forall b, DomTgt mu b=true -> DomTgt mu' b=true).Notation tr_source := (TraceSemantics.coopsem z_init source spec).Notation tr_target := (TraceSemantics.coopsem z_init target spec).

(* Specifications: *)
Lemma tr_src_det : corestep_fun tr_source.
Lemma tr_tgt_det : corestep_fun tr_target.