proposition: Lemma opp_functor_essentially_surjective : essentially_surjective F -> essentially_surjective (functor_opp F).
proof: Proof. intros HF d. set (TH := HF d). set (X:=@hinhuniv (∑ a : C, z_iso (F a) d)). use (X _ _ TH). intro H. clear TH. clear X. apply hinhpr. destruct H as [a X]. exists a. simpl in *. apply opp_z_iso. apply (z_iso_inv_from_z_iso X). Qed.
imports: UniMath.Foundations.PartD UniMath.Foundations.Propositions UniMath.MoreFoundations.All UniMath.CategoryTheory.Core.Categories UniMath.CategoryTheory.Core.Isos UniMath.CategoryTheory.Core.NaturalTransformations UniMath.CategoryTheory.Core.Univalence UniMath.CategoryTheory.Core.Functors UniMath.CategoryTheory.FunctorCategory