simpl in |- *; auto with algebra.
intros G A y H'; try assumption.
elim H'; intros x E; elim E; intros H'0 H'1; try exact H'1; clear E H'.
exists x; try assumption.
Qed.

(* Specifications: *)
Lemma generated_group_prop_rev :
forall (G : GROUP) (A : part_set G) (y : G),
(exists x : FG A, Equal y (FG_lift (inj_part A) x)) ->
in_part y (generated_group A).