Definition parmove (mu: moves) : moves :=
  List.rev (parmove_aux (State mu nil nil)).

(* Specifications: *)
Theorem parmove_correctness: forall mu, move_no_temp mu -> is_mill mu -> forall e, env_equiv (exec_seq (parmove mu) e) (exec_par mu e).
Theorem parmove_correctness: forall mu, move_no_temp mu -> is_mill mu -> forall e, env_equiv (exec_seq (parmove mu) e) (exec_par mu e).