Definition coprods_to_cocartesian_coprod_via_adj_counit : bindelta_pair_functor (functor_identity _) (functor_identity _) ∙ coprods_to_cocartesian_coprod_via_adj_adj ⟹ functor_identity _. Proof. use make_nat_trans. - exact (λ x, BinCoproductArrow _ (identity x) (identity x)). - abstract (intros x y f ; cbn ; use BinCoproductArrowsEq ; [ rewrite !assoc ; rewrite BinCoproductOfArrowsIn1 ; rewrite BinCoproductIn1Commutes ; rewrite !assoc' ; rewrite BinCoproductIn1Commutes ; rewrite id_left, id_right ; apply idpath | rewrite !assoc ; rewrite BinCoproductOfArrowsIn2 ; rewrite BinCoproductIn2Commutes ; rewrite !assoc' ; rewrite BinCoproductIn2Commutes ; rewrite id_left, id_right ; apply idpath ]). Defined.
Require Import UniMath.Foundations.All. Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.Core.Isos. Require Import UniMath.CategoryTheory.Core.Univalence. Require Import UniMath.CategoryTheory.Categories.StandardCategories. Require Import UniMath.CategoryTheory.Limits.Terminal. Require Import UniMath.CategoryTheory.Limits.Initial. Require Import UniMath.CategoryTheory.Limits.BinProducts. Require Import UniMath.CategoryTheory.Limits.BinCoproducts. Require Import UniMath.CategoryTheory.Limits.Preservation. Require Import UniMath.CategoryTheory.Adjunctions.Core. Require Import UniMath.CategoryTheory.PrecategoryBinProduct. Require Import UniMath.Bicategories.Core.Bicat. Import Bicat.Notations. Require Import UniMath.Bicategories.Core.Invertible_2cells. Require Import UniMath.Bicategories.Core.BicategoryLaws. Require Import UniMath.Bicategories.Core.Unitors. Require Import UniMath.Bicategories.Core.Univalence. Require Import UniMath.Bicategories.Core.AdjointUnique. Require Import UniMath.Bicategories.Core.UnivalenceOp. Require Import UniMath.Bicategories.Core.Examples.BicatOfUnivCats. Require Import UniMath.Bicategories.Morphisms.Adjunctions. Require Import UniMath.Bicategories.Limits.Final. Require Import UniMath.Bicategories.Limits.Products. Require Import UniMath.Bicategories.Limits.Examples.BicatOfUnivCatsLimits. Require Import UniMath.Bicategories.Objects.CartesianObject. Require Import UniMath.Bicategories.Objects.CocartesianObject. Section AdjFromProducts. End AdjFromProducts. Section ProductsFromAdj. End ProductsFromAdj.