elim H; intros; elim H0; intros; elim H3; intros.
elim H5; intros. split. exact H6. clear H H0 H2 H3 H4 H5 H6.
elim H1; intros; elim H; intros; elim H3; intros; elim H5; intros. exact H6.
elim H6; intros; elim H7; reflexivity.
elim H6; intros; elim H7; reflexivity.
Qed.

(***************)
Lemma gcd_null2 : is_ring -> forall d : S, is_gcd O O d -> d = O.
unfold is_gcd in |- *. intros.