Definition strong_fully_faithful_on_points_to_preserve_underlying {V₁ V₂ : monoidal_cat} {F : strong_monoidal_functor V₁ V₂} (HF : ∏ (x : V₁), isweq (λ (f : I_{V₁} --> x), #F f)) : preserve_underlying F. Proof. use make_preserve_underlying. - exact (λ v f, invmap (make_weq _ (HF v)) (strong_functor_unit_inv F · f)). - split. + abstract (intros v f ; refine (maponpaths (λ z, _ · z) (homotweqinvweq (make_weq _ (HF v)) _) @ _) ; rewrite !assoc ; rewrite strong_functor_unit_unit_inv ; apply id_left). + abstract (intros v f ; rewrite !assoc ; rewrite strong_functor_unit_inv_unit ; rewrite id_left ; apply (homotinvweqweq (make_weq _ (HF v)) _)). Defined.
Require Import UniMath.Foundations.All. Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Isos. Require Import UniMath.CategoryTheory.Core.Univalence. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.EnrichedCats.Enrichment. Require Import UniMath.CategoryTheory.EnrichedCats.EnrichmentFunctor. Require Import UniMath.CategoryTheory.EnrichedCats.EnrichmentTransformation. Require Import UniMath.CategoryTheory.Monoidal.Categories. Require Import UniMath.CategoryTheory.Monoidal.Functors. Import MonoidalNotations.