proposition: Lemma FooF_Foo_eq : forall a b x, FooF_to_Foo a b (Foo_to_FooF a b x) = x.
proof: Proof. intros. induction x; simpl; auto. unfold Foo_to_FooF, FooF_to_Foo; simpl. f_equal. destruct x; auto. Qed.
imports: Hask.Ltac Hask.Prelude Hask.Control.Applicative Hask.Control.Monad Hask.Control.Monad.Cont Hask.Control.Monad.State Hask.Data.Functor.Contravariant Hask.Data.Functor.Identity Hask.Data.Functor.Kan Hask.Data.Functor.Yoneda Hask.Control.Lens Coq.Classes.Morphisms Coq.Setoids.Setoid Coq.Init.Datatypes Coq.Relations.Relation_Definitions FunctionalExtensionality Hask.Data.Functor.Fix Hask.Control.Monad.Freer