Proposition is_cartesian_cartesian_monoidalcat : is_cartesian cartesian_monoidalcat. Proof. refine (is_semicartesian_cartesian_monoidalcat ,, _). intros x y ; cbn. use (isBinProduct_eq_arrow _ _ (pr2 (CP x y))). - abstract (unfold semi_cart_tensor_pr1 ; cbn ; unfold monoidal_cat_tensor_mor ; unfold functoronmorphisms1 ; cbn ; rewrite !assoc' ; rewrite BinProductOfArrowsPr1 ; rewrite id_right ; rewrite BinProductOfArrowsPr1 ; rewrite id_right ; apply idpath). - abstract (unfold semi_cart_tensor_pr2 ; cbn ; unfold monoidal_cat_tensor_mor ; unfold functoronmorphisms1 ; cbn ; rewrite !assoc' ; rewrite BinProductOfArrowsPr2 ; rewrite id_right ; rewrite BinProductOfArrowsPr2 ; rewrite 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.Isos. Require Import UniMath.CategoryTheory.exponentials. Require Import UniMath.CategoryTheory.Monoidal.WhiskeredBifunctors. Require Import UniMath.CategoryTheory.Monoidal.Categories. Require Import UniMath.CategoryTheory.Monoidal.Structure.Cartesian. Require Import UniMath.CategoryTheory.Monoidal.Structure.Symmetric. Require Import UniMath.CategoryTheory.Monoidal.Structure.Closed. Require Import UniMath.CategoryTheory.Limits.BinProducts. Require Import UniMath.CategoryTheory.Limits.Terminal. Require Import UniMath.CategoryTheory.Categories.HSET.Core. Require Import UniMath.CategoryTheory.Categories.HSET.Limits. Import BifunctorNotations. Import MonoidalNotations. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.Adjunctions.Core.