intros U R; red in |- *.
intros x y z H'; elim H'; auto.
intros x0 y0 z0 H'0 H'1 H'2 H'3; apply Rstar_n with y0; auto.
Qed.

Theorem Rstar_cases :
forall (U : Type) (R : Relation U) (x y : U),
Rstar U R x y -> x = y :>U \/ (exists u : U, R x u /\ Rstar U R u y).