(** As a corollary, we show that all sources of [parmove mu]
    are sources of [mu] or temporaries,
    and likewise all destinations of [parmove mu] are destinations of [mu]
    or temporaries. *)

Remark wf_move_initial_reg_or_temp:
  forall mu s d,
  wf_move mu s d ->
  (In s (srcs mu) \/ is_temp s) /\ (In d (dests mu) \/ is_temp d).

(* Specifications: *)
Lemma parmove_initial_reg_or_temp: forall mu s d, In (s, d) (parmove mu) -> (In s (srcs mu) \/ is_temp s) /\ (In d (dests mu) \/ is_temp d).
Lemma parmove_initial_reg_or_temp: forall mu s d, In (s, d) (parmove mu) -> (In s (srcs mu) \/ is_temp s) /\ (In d (dests mu) \/ is_temp d).