Proposition terminal_functor_unit_laws : is_nat_trans _ _ terminal_functor_unit_data. Proof. intros x y f ; unfold terminal_functor_unit_data ; cbn. use total2_paths_f ; cbn. - exact (id_right _ @ !(id_left _)). - unfold terminal_mor_lift. rewrite mor_disp_transportf_prewhisker. rewrite assoc_disp. unfold transportb. rewrite transport_f_f. refine (!_). etrans. { apply maponpaths. exact (terminal_mor_factorization_eq (!(id_right _)) (!(id_right _)) _ (pr2 f ;; TerminalArrow (terminal_in_fib T (pr1 y)) (pr2 y))%mor_disp). } unfold transportb. rewrite transport_f_f. apply maponpaths_2. apply homset_property. Qed.
Require Import UniMath.Foundations.All. Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Prelude. Require Import UniMath.CategoryTheory.Adjunctions.Core. Require Import UniMath.CategoryTheory.DisplayedCats.Core. Require Import UniMath.CategoryTheory.DisplayedCats.Univalence. Require Import UniMath.CategoryTheory.DisplayedCats.Total. Require Import UniMath.CategoryTheory.DisplayedCats.Functors. Require Import UniMath.CategoryTheory.DisplayedCats.NaturalTransformations. Require Import UniMath.CategoryTheory.DisplayedCats.Fibrations. Require Import UniMath.CategoryTheory.DisplayedCats.Fiber. Require Import UniMath.CategoryTheory.Limits.Terminal. Require Import UniMath.CategoryTheory.Limits.Preservation. Section RightAdjointFromTerminal. End RightAdjointFromTerminal.