intros.
apply red_trans with (App u' v).
elim H; simpl in |- *; intros; auto with pts.
apply red_trans with (App y v); auto with pts.
elim H0; intros; auto with pts.
apply red_trans with (App u' y); auto with pts.
Qed.

(* Specifications: *)
Lemma red_red_prod :
forall (e : env) (A A' B B' : term),
red e A A' -> red (Ax A' :: e) B B' -> red e (Prod A B) (Prod A' B').