Definition lenses_double_cat (C : category) (PC : BinProducts C) : double_cat. Proof. use make_double_cat. - exact C. - exact (twosided_disp_cat_of_lenses C PC). - exact (lenses_double_cat_hor_id C PC). - exact (lenses_double_cat_hor_comp C PC). - exact (lenses_double_cat_lunitor C PC). - exact (lenses_double_cat_runitor C PC). - exact (lenses_double_cat_associator C PC). - abstract (intro ; intros ; apply discrete_lenses_twosided_disp_cat). - abstract (intro ; intros ; apply discrete_lenses_twosided_disp_cat). Defined.
Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Prelude. Require Import UniMath.CategoryTheory.Core.Setcategories. Require Import UniMath.CategoryTheory.Limits.BinProducts. Require Import UniMath.CategoryTheory.TwoSidedDisplayedCats.TwoSidedDispCat. Require Import UniMath.CategoryTheory.TwoSidedDisplayedCats.Isos. Require Import UniMath.CategoryTheory.TwoSidedDisplayedCats.Strictness. Require Import UniMath.CategoryTheory.TwoSidedDisplayedCats.Univalence. Require Import UniMath.CategoryTheory.TwoSidedDisplayedCats.Examples.Lenses. Require Import UniMath.Bicategories.Core.Bicat. Import Bicat.Notations. Require Import UniMath.Bicategories.Core.Examples.BicatOfUnivCats. Require Import UniMath.Bicategories.DoubleCategories.Basics.StrictDoubleCatBasics. Require Import UniMath.Bicategories.DoubleCategories.Basics.DoubleCategoryBasics. Require Import UniMath.Bicategories.DoubleCategories.Core.DoubleCats. Require Import UniMath.Bicategories.DoubleCategories.Core.UnivalentDoubleCats. Require Import UniMath.Bicategories.DoubleCategories.Core.StrictDoubleCats.