Section Premier.
Variable H : Ensemble U.
Variable witness : U.
Variable inhabited : In U H witness.
Variable subset : Included U H G.
Variable hstar : endo_operation U H star.
Variable hinv : endo_function U H inv.
Hint Resolve inhabited subset hstar hinv.
Let assoc : associative U star.
Hint Resolve assoc.
Let eH : U := star (inv witness) witness.
Let eH_in_H : In U H eH.
Let eH_left_neutral : left_neutral U star eH.
Let eH_right_neutral : right_neutral U star eH.
Let inv_left_inverse : left_inverse U star inv eH.
Let inv_right_inverse : right_inverse U star inv eH.
Let GrH : Group U :=
group U H star inv eH hstar assoc eH_in_H eH_left_neutral eH_right_neutral
hinv inv_right_inverse inv_left_inverse.
Hint Resolve Definition_of_subgroup.
End Premier.
Definition exp : Z -> U -> U.
Hint Resolve exp_endo.
Hint Resolve exp_l1.
Hint Resolve exp_l2 exp_l2' exp_unfold_pos exp_unfold_neg.
Hint Immediate sym_eq.

Lemma exp_commut1 :
forall (a : U) (m : Z), In U G a -> star (exp m a) a = star a (exp m a).