Build_IsPointedFunctor' {A B : Type} (F : A -> B) `{Is1Cat A, Is1Cat B, !Is0Functor F, !Is1Functor F} `{!IsPointedCat A, !IsPointedCat B, !HasEquivs A, !HasEquivs B} (p : F zero_object $<~> zero_object) : IsPointedFunctor F. Proof. apply Build_IsPointedFunctor. + intros x inx. rapply isinitial_cate. symmetry. refine (p $oE _). rapply (emap F _). rapply cate_isinitial. + intros x tex. rapply isterminal_cate. refine (p $oE _). rapply (emap F _). rapply cate_isterminal. Defined.
Require Import Basics.Overture Basics.Tactics. Require Import WildCat.Core WildCat.Opposite. Require Import WildCat.Equiv.