proposition: Lemma function_test_2 : forall (f : t -> t), forall (g : elt -> elt), forall (s1 s2 : t), forall (x1 x2 : elt), Equal s1 (f s2) -> E.eq x1 (g x2) -> In x1 s1 -> g x2 = g (g x2) -> In (g (g x2)) (f s2).
proof: Proof. intros until 3. intros g_eq. rewrite <- g_eq. fsetdec. Qed.
imports: Decidable Setoid DecidableTypeEx MSetFacts