proposition: Proposition spans_double_cat_pentagon : pentagon_law spans_double_cat_associator.
proof: Proof. intro ; intros. use span_sqr_eq. rewrite transportb_disp_mor2_span ; cbn. use (MorphismsIntoPullbackEqual (isPullback_Pullback (PC _ _ _ _ _))) ; cbn. - unfold span_associator_mor, mor_of_comp_span_mor ; cbn. rewrite !assoc'. rewrite !PullbackArrow_PullbackPr1. use (MorphismsIntoPullbackEqual (isPullback_Pullback (PC _ _ _ _ _))) ; cbn. + rewrite !assoc'. unfold span_associator_mor. rewrite !PullbackArrow_PullbackPr1. refine (!_). etrans. { apply maponpaths. refine (assoc _ _ _ @ _). rewrite PullbackArrow_PullbackPr1. apply idpath. } use (MorphismsIntoPullbackEqual (isPullback_Pullback (PC _ _ _ _ _))) ; cbn. * rewrite !assoc'. rewrite !PullbackArrow_PullbackPr1. apply id_right. * rewrite !assoc'. rewrite !PullbackArrow_PullbackPr2. etrans. { apply maponpaths. refine (assoc _ _ _ @ _). rewrite !PullbackArrow_PullbackPr2. apply idpath. } rewrite !assoc. rewrite !PullbackArrow_PullbackPr2. rewrite !assoc'. apply maponpaths. rewrite !assoc. rewrite !PullbackArrow_PullbackPr1. apply idpath. + rewrite !assoc'. unfold span_associator_mor. rewrite !PullbackArrow_PullbackPr2. refine (!_). etrans. { apply maponpaths. refine (assoc _ _ _ @ _). rewrite PullbackArrow_PullbackPr1. refine (assoc _ _ _ @ _). rewrite PullbackArrow_PullbackPr2. apply idpath. } rewrite !assoc. rewrite !PullbackArrow_PullbackPr2. rewrite !assoc'. apply maponpaths. rewrite !assoc. rewrite PullbackArrow_PullbackPr1. rewrite PullbackArrow_PullbackPr2. apply idpath. - unfold span_associator_mor, mor_of_comp_span_mor. rewrite !assoc'. rewrite !PullbackArrow_PullbackPr2. rewrite !assoc. rewrite !PullbackArrow_PullbackPr2. rewrite !assoc'. refine (!_). etrans. { apply maponpaths. refine (assoc _ _ _ @ _). rewrite PullbackArrow_PullbackPr2. apply idpath. } rewrite !assoc. unfold span_sqr_ob_mor ; cbn. rewrite id_right. rewrite PullbackArrow_PullbackPr2. unfold span_associator_mor . rewrite !assoc'. rewrite PullbackArrow_PullbackPr2. apply idpath. Qed.
imports: UniMath.MoreFoundations.All UniMath.CategoryTheory.Core.Prelude UniMath.CategoryTheory.Core.Setcategories UniMath.CategoryTheory.TwoSidedDisplayedCats.TwoSidedDispCat UniMath.CategoryTheory.TwoSidedDisplayedCats.DisplayedFunctor UniMath.CategoryTheory.TwoSidedDisplayedCats.Isos UniMath.CategoryTheory.TwoSidedDisplayedCats.Univalence UniMath.CategoryTheory.TwoSidedDisplayedCats.Strictness UniMath.CategoryTheory.TwoSidedDisplayedCats.Examples.Spans UniMath.CategoryTheory.Limits.Pullbacks UniMath.Bicategories.Core.Bicat UniMath.Bicategories.Core.Examples.BicatOfUnivCats UniMath.Bicategories.DoubleCategories.Basics.DoubleCategoryBasics UniMath.Bicategories.DoubleCategories.Core.DoubleCats UniMath.Bicategories.DoubleCategories.Core.UnivalentDoubleCats UniMath.Bicategories.DoubleCategories.Core.PseudoDoubleSetCats UniMath.Bicategories.DoubleCategories.Core.CompanionsAndConjoints