ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Mathlib/Topology/Algebra/InfiniteSum/Group.lean
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
inst✝² : CommGroup α
inst✝¹ : TopologicalSpace α
inst✝ : TopologicalGroup α
f g : β → α
a a₁ a₂ : α
s : Set β
hf : HasProd (s.mulIndicator f) a₁
h : HasProd f (a₁ * a₂)

⊢ HasProd (sᶜ.mulIndicator f) a₂
-- Mathlib/Topology/Algebra/InfiniteSum/Group.lean
α : Type u_1
β : Type u_2
γ : Type u_3
δ : Type u_4
inst✝² : CommGroup α
inst✝¹ : TopologicalSpace α
inst✝ : TopologicalGroup α
f g : β → α
a a₁ a₂ : α
s : Set β
hf : HasProd (s.mulIndicator f) a₁
h : HasProd f (a₁ * a₂)

⊢ HasProd (f * (s.mulIndicator f)⁻¹) a₂
-- Mathlib/Topology/Gluing.lean
D : GlueData
i j : D.J
U : Set ↑(D.U i)

⊢ ⇑(D.ι j) ⁻¹' (⇑(D.ι i) '' U) = ⇑(D.t i j ≫ D.f j i) '' (⇑(D.f i j) ⁻¹' U)
-- Mathlib/Topology/Gluing.lean
D : GlueData
i j : D.J
U : Set ↑(D.U i)

⊢ ⇑(D.t i j ≫ D.f j i) '' (⇑(D.f i j) ⁻¹' U) = ⇑(D.f j i) '' (⇑(D.t j i ≫ D.f i j) ⁻¹' U)
-- Mathlib/Topology/Gluing.lean
D : GlueData
i j : D.J
U : Set ↑(D.U i)

⊢ ⇑(D.f j i) ∘ ⇑(D.t i j) '' (⇑(D.f i j) ⁻¹' U) = ⇑(D.f j i) '' (⇑(D.f i j) ∘ ⇑(D.t j i) ⁻¹' U)
-- Mathlib/Topology/Gluing.lean
D : GlueData
i j : D.J
U : Set ↑(D.U i)

⊢ (fun x => (forget TopCat).map (D.f j i) ((forget TopCat).map (D.t i j) x)) '' (⇑(D.f i j) ⁻¹' U) = ⇑(D.f j i) '' (⇑(D.f i j) ∘ ⇑(D.t j i) ⁻¹' U)
-- Mathlib/Topology/Gluing.lean
D : GlueData
i j : D.J
U : Set ↑(D.U i)

⊢ (forget TopCat).map (D.f j i) '' ((forget TopCat).map (D.t i j) '' (⇑(D.f i j) ⁻¹' U)) = ⇑(D.f j i) '' (⇑(D.f i j) ∘ ⇑(D.t j i) ⁻¹' U)
-- Mathlib/Topology/Gluing.lean
D : GlueData
i j : D.J
U : Set ↑(D.U i)

⊢ (forget TopCat).map (D.t i j) '' (⇑(D.f i j) ⁻¹' U) = ⇑(D.f i j) ∘ ⇑(D.t j i) ⁻¹' U
-- Mathlib/Topology/Gluing.lean
D : GlueData
i j : D.J
U : Set ↑(D.U i)

⊢ ⇑(D.f i j) ⁻¹' U = (fun x => (⇑(D.f i j) ∘ ⇑(D.t j i)) ((forget TopCat).map (D.t i j) x)) ⁻¹' U
-- Mathlib/Topology/Gluing.lean
D : GlueData
i j : D.J
U : Set ↑(D.U i)

⊢ Function.Bijective ((forget TopCat).map (D.t i j))
-- Mathlib/Topology/Gluing.lean
D : GlueData
i j : D.J
U : Set ↑(D.U i)

⊢ IsIso ((forget TopCat).map (D.t i j))
-- Mathlib/CategoryTheory/Monoidal/Preadditive.lean
C : Type u_1
inst✝⁸ : Category.{u_4, u_1} C
inst✝⁷ : Preadditive C
inst✝⁶ : MonoidalCategory C
inst✝⁵ : MonoidalPreadditive C
D : Type u_2
inst✝⁴ : Category.{u_3, u_2} D
inst✝³ : Preadditive D
inst✝² : MonoidalCategory D
F : MonoidalFunctor D C
inst✝¹ : F.Faithful
inst✝ : F.Additive
X✝ Y✝ Z✝ : D

⊢ X✝ ◁ 0 = 0
-- Mathlib/CategoryTheory/Monoidal/Preadditive.lean
C : Type u_1
inst✝⁸ : Category.{u_4, u_1} C
inst✝⁷ : Preadditive C
inst✝⁶ : MonoidalCategory C
inst✝⁵ : MonoidalPreadditive C
D : Type u_2
inst✝⁴ : Category.{u_3, u_2} D
inst✝³ : Preadditive D
inst✝² : MonoidalCategory D
F : MonoidalFunctor D C
inst✝¹ : F.Faithful
inst✝ : F.Additive
X✝ Y✝ Z✝ : D

⊢ F.map (X✝ ◁ 0) = F.map 0
-- Mathlib/CategoryTheory/Monoidal/Preadditive.lean
C : Type u_1
inst✝⁸ : Category.{u_4, u_1} C
inst✝⁷ : Preadditive C
inst✝⁶ : MonoidalCategory C
inst✝⁵ : MonoidalPreadditive C
D : Type u_2
inst✝⁴ : Category.{u_3, u_2} D
inst✝³ : Preadditive D
inst✝² : MonoidalCategory D
F : MonoidalFunctor D C
inst✝¹ : F.Faithful
inst✝ : F.Additive
X✝ Y✝ Z✝ : D

⊢ 0 ▷ X✝ = 0
-- Mathlib/CategoryTheory/Monoidal/Preadditive.lean
C : Type u_1
inst✝⁸ : Category.{u_4, u_1} C
inst✝⁷ : Preadditive C
inst✝⁶ : MonoidalCategory C
inst✝⁵ : MonoidalPreadditive C
D : Type u_2
inst✝⁴ : Category.{u_3, u_2} D
inst✝³ : Preadditive D
inst✝² : MonoidalCategory D
F : MonoidalFunctor D C
inst✝¹ : F.Faithful
inst✝ : F.Additive
X✝ Y✝ Z✝ : D

⊢ F.map (0 ▷ X✝) = F.map 0
-- Mathlib/CategoryTheory/Monoidal/Preadditive.lean
C : Type u_1
inst✝⁸ : Category.{u_4, u_1} C
inst✝⁷ : Preadditive C
inst✝⁶ : MonoidalCategory C
inst✝⁵ : MonoidalPreadditive C
D : Type u_2
inst✝⁴ : Category.{u_3, u_2} D
inst✝³ : Preadditive D
inst✝² : MonoidalCategory D
F : MonoidalFunctor D C
inst✝¹ : F.Faithful
inst✝ : F.Additive
X✝ Y✝ Z✝ : D
f✝ g✝ : Y✝ ⟶ Z✝

⊢ X✝ ◁ (f✝ + g✝) = X✝ ◁ f✝ + X✝ ◁ g✝
-- Mathlib/CategoryTheory/Monoidal/Preadditive.lean
C : Type u_1
inst✝⁸ : Category.{u_4, u_1} C
inst✝⁷ : Preadditive C
inst✝⁶ : MonoidalCategory C
inst✝⁵ : MonoidalPreadditive C
D : Type u_2
inst✝⁴ : Category.{u_3, u_2} D
inst✝³ : Preadditive D
inst✝² : MonoidalCategory D
F : MonoidalFunctor D C
inst✝¹ : F.Faithful
inst✝ : F.Additive
X✝ Y✝ Z✝ : D
f✝ g✝ : Y✝ ⟶ Z✝

⊢ F.map (X✝ ◁ (f✝ + g✝)) = F.map (X✝ ◁ f✝ + X✝ ◁ g✝)
-- Mathlib/CategoryTheory/Monoidal/Preadditive.lean
C : Type u_1
inst✝⁸ : Category.{u_4, u_1} C
inst✝⁷ : Preadditive C
inst✝⁶ : MonoidalCategory C
inst✝⁵ : MonoidalPreadditive C
D : Type u_2
inst✝⁴ : Category.{u_3, u_2} D
inst✝³ : Preadditive D
inst✝² : MonoidalCategory D
F : MonoidalFunctor D C
inst✝¹ : F.Faithful
inst✝ : F.Additive
X✝ Y✝ Z✝ : D
f✝ g✝ : Y✝ ⟶ Z✝

⊢ (f✝ + g✝) ▷ X✝ = f✝ ▷ X✝ + g✝ ▷ X✝
-- Mathlib/CategoryTheory/Monoidal/Preadditive.lean
C : Type u_1
inst✝⁸ : Category.{u_4, u_1} C
inst✝⁷ : Preadditive C
inst✝⁶ : MonoidalCategory C
inst✝⁵ : MonoidalPreadditive C
D : Type u_2
inst✝⁴ : Category.{u_3, u_2} D
inst✝³ : Preadditive D
inst✝² : MonoidalCategory D
F : MonoidalFunctor D C
inst✝¹ : F.Faithful
inst✝ : F.Additive
X✝ Y✝ Z✝ : D
f✝ g✝ : Y✝ ⟶ Z✝

⊢ F.map ((f✝ + g✝) ▷ X✝) = F.map (f✝ ▷ X✝ + g✝ ▷ X✝)
-- .lake/packages/batteries/Batteries/Data/List/Lemmas.lean
m n : Nat

⊢ range m <+ range n ↔ m ≤ n
-- Mathlib/RingTheory/Unramified/Basic.lean
R S Rₘ Sₘ : Type u
inst✝¹⁴ : CommRing R
inst✝¹³ : CommRing S
inst✝¹² : CommRing Rₘ
inst✝¹¹ : CommRing Sₘ
M : Submonoid R
inst✝¹⁰ : Algebra R S
inst✝⁹ : Algebra R Sₘ
inst✝⁸ : Algebra S Sₘ
inst✝⁷ : Algebra R Rₘ
inst✝⁶ : Algebra Rₘ Sₘ
inst✝⁵ : IsScalarTower R Rₘ Sₘ
inst✝⁴ : IsScalarTower R S Sₘ
inst✝³ : IsLocalization M Rₘ
inst✝² : IsLocalization (Submonoid.map (algebraMap R S) M) Sₘ
Q : Type u
inst✝¹ : CommRing Q
inst✝ : Algebra R Q
I : Ideal Q
x✝ : I ^ 2 = ⊥
f₁ f₂ : Rₘ →ₐ[R] Q
a✝ : (Ideal.Quotient.mkₐ R I).comp f₁ = (Ideal.Quotient.mkₐ R I).comp f₂

⊢ f₁ = f₂
-- Mathlib/RingTheory/Unramified/Basic.lean
R S Rₘ Sₘ : Type u
inst✝¹⁴ : CommRing R
inst✝¹³ : CommRing S
inst✝¹² : CommRing Rₘ
inst✝¹¹ : CommRing Sₘ
M : Submonoid R
inst✝¹⁰ : Algebra R S
inst✝⁹ : Algebra R Sₘ
inst✝⁸ : Algebra S Sₘ
inst✝⁷ : Algebra R Rₘ
inst✝⁶ : Algebra Rₘ Sₘ
inst✝⁵ : IsScalarTower R Rₘ Sₘ
inst✝⁴ : IsScalarTower R S Sₘ
inst✝³ : IsLocalization M Rₘ
inst✝² : IsLocalization (Submonoid.map (algebraMap R S) M) Sₘ
Q : Type u
inst✝¹ : CommRing Q
inst✝ : Algebra R Q
I : Ideal Q
x✝ : I ^ 2 = ⊥
f₁ f₂ : Rₘ →ₐ[R] Q
a✝ : (Ideal.Quotient.mkₐ R I).comp f₁ = (Ideal.Quotient.mkₐ R I).comp f₂

⊢ ↑f₁ = ↑f₂
-- Mathlib/RingTheory/Unramified/Basic.lean
R S Rₘ Sₘ : Type u
inst✝¹⁴ : CommRing R
inst✝¹³ : CommRing S
inst✝¹² : CommRing Rₘ
inst✝¹¹ : CommRing Sₘ
M : Submonoid R
inst✝¹⁰ : Algebra R S
inst✝⁹ : Algebra R Sₘ
inst✝⁸ : Algebra S Sₘ
inst✝⁷ : Algebra R Rₘ
inst✝⁶ : Algebra Rₘ Sₘ
inst✝⁵ : IsScalarTower R Rₘ Sₘ
inst✝⁴ : IsScalarTower R S Sₘ
inst✝³ : IsLocalization M Rₘ
inst✝² : IsLocalization (Submonoid.map (algebraMap R S) M) Sₘ
Q : Type u
inst✝¹ : CommRing Q
inst✝ : Algebra R Q
I : Ideal Q
x✝ : I ^ 2 = ⊥
f₁ f₂ : Rₘ →ₐ[R] Q
a✝ : (Ideal.Quotient.mkₐ R I).comp f₁ = (Ideal.Quotient.mkₐ R I).comp f₂

⊢ (↑f₁).comp (algebraMap R Rₘ) = (↑f₂).comp (algebraMap R Rₘ)
-- Mathlib/Analysis/Convex/Strong.lean
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
φ ψ : ℝ → ℝ
s : Set E
a b m : ℝ
x y : E
f g : E → ℝ
hf : UniformConcaveOn s φ f
hg : UniformConvexOn s ψ g

⊢ UniformConcaveOn s (φ + ψ) (f - g)
-- Mathlib/RingTheory/LocalProperties.lean
R S : Type u
inst✝⁵ : CommRing R
inst✝⁴ : CommRing S
M : Submonoid R
N : Submonoid S
R' S' : Type u
inst✝³ : CommRing R'
inst✝² : CommRing S'
f : R →+* S
inst✝¹ : Algebra R R'
inst✝ : Algebra S S'
P : {R S : Type u} → [inst : CommRing R] → [inst_1 : CommRing S] → (R →+* S) → Prop

⊢ (∀ ⦃R S : Type u⦄ [inst : CommRing R] [inst_1 : CommRing S] (f : R →+* S) (s : Set S), Ideal.span s = ⊤ → (∀ (r : ↑s), P ((algebraMap S (Localization.Away ↑r)).comp f)) → P f) ↔ ∀ ⦃R S : Type u⦄ [inst : CommRing R] [inst_1 : CommRing S] (f : R →+* S) (s : Finset S), Ideal.span ↑s = ⊤ → (∀ (r : { x // x ∈ s }), P ((algebraMap S (Localization.Away ↑r)).comp f)) → P f
-- Mathlib/RingTheory/LocalProperties.lean
R S : Type u
inst✝⁵ : CommRing R
inst✝⁴ : CommRing S
M : Submonoid R
N : Submonoid S
R' S' : Type u
inst✝³ : CommRing R'
inst✝² : CommRing S'
f : R →+* S
inst✝¹ : Algebra R R'
inst✝ : Algebra S S'
P : {R S : Type u} → [inst : CommRing R] → [inst_1 : CommRing S] → (R →+* S) → Prop

⊢ ∀ (a b : Type u) (c : CommRing a) (d : CommRing b) (e : a →+* b), (∀ (s : Set b), Ideal.span s = ⊤ → (∀ (r : ↑s), P ((algebraMap b (Localization.Away ↑r)).comp e)) → P e) ↔ ∀ (s : Finset b), Ideal.span ↑s = ⊤ → (∀ (r : { x // x ∈ s }), P ((algebraMap b (Localization.Away ↑r)).comp e)) → P e
-- Mathlib/CategoryTheory/Monoidal/Bimod.lean
C : Type u₁
inst✝⁴ : Category.{v₁, u₁} C
inst✝³ : MonoidalCategory C
A B : Mon_ C
M✝ : Bimod A B
inst✝² : HasCoequalizers C
inst✝¹ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorLeft X)
inst✝ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorRight X)
W X Y Z : Mon_ C
M : Bimod W X
N : Bimod X Y
P P' : Bimod Y Z
f : P ⟶ P'

⊢ ({ X := TensorBimod.X M N, actLeft := TensorBimod.actLeft M N, one_actLeft := ⋯, left_assoc := ⋯, actRight := TensorBimod.actRight M N, actRight_one := ⋯, right_assoc := ⋯, middle_assoc := ⋯ }.whiskerLeft f).hom = ((isoOfIso { hom := AssociatorBimod.hom M N P, inv := AssociatorBimod.inv M N P, hom_inv_id := ⋯, inv_hom_id := ⋯ } ⋯ ⋯).hom ≫ M.whiskerLeft (N.whiskerLeft f) ≫ (isoOfIso { hom := AssociatorBimod.hom M N P', inv := AssociatorBimod.inv M N P', hom_inv_id := ⋯, inv_hom_id := ⋯ } ⋯ ⋯).inv).hom
-- Mathlib/CategoryTheory/Monoidal/Bimod.lean
C : Type u₁
inst✝⁴ : Category.{v₁, u₁} C
inst✝³ : MonoidalCategory C
A B : Mon_ C
M✝ : Bimod A B
inst✝² : HasCoequalizers C
inst✝¹ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorLeft X)
inst✝ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorRight X)
W X Y Z : Mon_ C
M : Bimod W X
N : Bimod X Y
P P' : Bimod Y Z
f : P ⟶ P'

⊢ coequalizer.π ({ X := TensorBimod.X M N, actLeft := TensorBimod.actLeft M N, one_actLeft := ⋯, left_assoc := ⋯, actRight := TensorBimod.actRight M N, actRight_one := ⋯, right_assoc := ⋯, middle_assoc := ⋯ }.actRight ▷ P.X) ((α_ { X := TensorBimod.X M N, actLeft := TensorBimod.actLeft M N, one_actLeft := ⋯, left_assoc := ⋯, actRight := TensorBimod.actRight M N, actRight_one := ⋯, right_assoc := ⋯, middle_assoc := ⋯ }.X Y.X P.X).hom ≫ { X := TensorBimod.X M N, actLeft := TensorBimod.actLeft M N, one_actLeft := ⋯, left_assoc := ⋯, actRight := TensorBimod.actRight M N, actRight_one := ⋯, right_assoc := ⋯, middle_assoc := ⋯ }.X ◁ P.actLeft) ≫ ({ X := TensorBimod.X M N, actLeft := TensorBimod.actLeft M N, one_actLeft := ⋯, left_assoc := ⋯, actRight := TensorBimod.actRight M N, actRight_one := ⋯, right_assoc := ⋯, middle_assoc := ⋯ }.whiskerLeft f).hom = coequalizer.π ({ X := TensorBimod.X M N, actLeft := TensorBimod.actLeft M N, one_actLeft := ⋯, left_assoc := ⋯, actRight := TensorBimod.actRight M N, actRight_one := ⋯, right_assoc := ⋯, middle_assoc := ⋯ }.actRight ▷ P.X) ((α_ { X := TensorBimod.X M N, actLeft := TensorBimod.actLeft M N, one_actLeft := ⋯, left_assoc := ⋯, actRight := TensorBimod.actRight M N, actRight_one := ⋯, right_assoc := ⋯, middle_assoc := ⋯ }.X Y.X P.X).hom ≫ { X := TensorBimod.X M N, actLeft := TensorBimod.actLeft M N, one_actLeft := ⋯, left_assoc := ⋯, actRight := TensorBimod.actRight M N, actRight_one := ⋯, right_assoc := ⋯, middle_assoc := ⋯ }.X ◁ P.actLeft) ≫ ((isoOfIso { hom := AssociatorBimod.hom M N P, inv := AssociatorBimod.inv M N P, hom_inv_id := ⋯, inv_hom_id := ⋯ } ⋯ ⋯).hom ≫ M.whiskerLeft (N.whiskerLeft f) ≫ (isoOfIso { hom := AssociatorBimod.hom M N P', inv := AssociatorBimod.inv M N P', hom_inv_id := ⋯, inv_hom_id := ⋯ } ⋯ ⋯).inv).hom
-- Mathlib/CategoryTheory/Monoidal/Bimod.lean
C : Type u₁
inst✝⁴ : Category.{v₁, u₁} C
inst✝³ : MonoidalCategory C
A B : Mon_ C
M✝ : Bimod A B
inst✝² : HasCoequalizers C
inst✝¹ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorLeft X)
inst✝ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorRight X)
W X Y Z : Mon_ C
M : Bimod W X
N : Bimod X Y
P P' : Bimod Y Z
f : P ⟶ P'

⊢ coequalizer.π (TensorBimod.actRight M N ▷ P.X) ((α_ (TensorBimod.X M N) Y.X P.X).hom ≫ TensorBimod.X M N ◁ P.actLeft) ≫ colimMap (parallelPairHom (TensorBimod.actRight M N ▷ P.X) ((α_ (TensorBimod.X M N) Y.X P.X).hom ≫ TensorBimod.X M N ◁ P.actLeft) (TensorBimod.actRight M N ▷ P'.X) ((α_ (TensorBimod.X M N) Y.X P'.X).hom ≫ TensorBimod.X M N ◁ P'.actLeft) ((TensorBimod.X M N ⊗ Y.X) ◁ f.hom) (TensorBimod.X M N ◁ f.hom) ⋯ ⋯) = coequalizer.π (TensorBimod.actRight M N ▷ P.X) ((α_ (TensorBimod.X M N) Y.X P.X).hom ≫ TensorBimod.X M N ◁ P.actLeft) ≫ AssociatorBimod.hom M N P ≫ colimMap (parallelPairHom (M.actRight ▷ TensorBimod.X N P) ((α_ M.X X.X (TensorBimod.X N P)).hom ≫ M.X ◁ TensorBimod.actLeft N P) (M.actRight ▷ TensorBimod.X N P') ((α_ M.X X.X (TensorBimod.X N P')).hom ≫ M.X ◁ TensorBimod.actLeft N P') ((M.X ⊗ X.X) ◁ colimMap (parallelPairHom (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft) (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft) ((N.X ⊗ Y.X) ◁ f.hom) (N.X ◁ f.hom) ⋯ ⋯)) (M.X ◁ colimMap (parallelPairHom (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft) (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft) ((N.X ⊗ Y.X) ◁ f.hom) (N.X ◁ f.hom) ⋯ ⋯)) ⋯ ⋯) ≫ AssociatorBimod.inv M N P'
-- Mathlib/CategoryTheory/Monoidal/Bimod.lean
C : Type u₁
inst✝⁴ : Category.{v₁, u₁} C
inst✝³ : MonoidalCategory C
A B : Mon_ C
M✝ : Bimod A B
inst✝² : HasCoequalizers C
inst✝¹ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorLeft X)
inst✝ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorRight X)
W X Y Z : Mon_ C
M : Bimod W X
N : Bimod X Y
P P' : Bimod Y Z
f : P ⟶ P'

⊢ TensorBimod.X M N ◁ f.hom ≫ colimit.ι (parallelPair (TensorBimod.actRight M N ▷ P'.X) ((α_ (TensorBimod.X M N) Y.X P'.X).hom ≫ TensorBimod.X M N ◁ P'.actLeft)) WalkingParallelPair.one = coequalizer.π (TensorBimod.actRight M N ▷ P.X) ((α_ (TensorBimod.X M N) Y.X P.X).hom ≫ TensorBimod.X M N ◁ P.actLeft) ≫ AssociatorBimod.hom M N P ≫ colimMap (parallelPairHom (M.actRight ▷ TensorBimod.X N P) ((α_ M.X X.X (TensorBimod.X N P)).hom ≫ M.X ◁ TensorBimod.actLeft N P) (M.actRight ▷ TensorBimod.X N P') ((α_ M.X X.X (TensorBimod.X N P')).hom ≫ M.X ◁ TensorBimod.actLeft N P') ((M.X ⊗ X.X) ◁ colimMap (parallelPairHom (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft) (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft) ((N.X ⊗ Y.X) ◁ f.hom) (N.X ◁ f.hom) ⋯ ⋯)) (M.X ◁ colimMap (parallelPairHom (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft) (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft) ((N.X ⊗ Y.X) ◁ f.hom) (N.X ◁ f.hom) ⋯ ⋯)) ⋯ ⋯) ≫ AssociatorBimod.inv M N P'
-- Mathlib/CategoryTheory/Monoidal/Bimod.lean
C : Type u₁
inst✝⁴ : Category.{v₁, u₁} C
inst✝³ : MonoidalCategory C
A B : Mon_ C
M✝ : Bimod A B
inst✝² : HasCoequalizers C
inst✝¹ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorLeft X)
inst✝ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorRight X)
W X Y Z : Mon_ C
M : Bimod W X
N : Bimod X Y
P P' : Bimod Y Z
f : P ⟶ P'

⊢ coequalizer (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft) ◁ f.hom ≫ colimit.ι (parallelPair (TensorBimod.actRight M N ▷ P'.X) ((α_ (coequalizer (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft)) Y.X P'.X).hom ≫ coequalizer (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft) ◁ P'.actLeft)) WalkingParallelPair.one = coequalizer.π (TensorBimod.actRight M N ▷ P.X) ((α_ (coequalizer (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft)) Y.X P.X).hom ≫ coequalizer (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft) ◁ P.actLeft) ≫ coequalizer.desc (AssociatorBimod.homAux M N P) ⋯ ≫ colimMap (parallelPairHom (M.actRight ▷ coequalizer (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft)) ((α_ M.X X.X (coequalizer (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft))).hom ≫ M.X ◁ TensorBimod.actLeft N P) (M.actRight ▷ coequalizer (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft)) ((α_ M.X X.X (coequalizer (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft))).hom ≫ M.X ◁ TensorBimod.actLeft N P') ((M.X ⊗ X.X) ◁ colimMap (parallelPairHom (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft) (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft) ((N.X ⊗ Y.X) ◁ f.hom) (N.X ◁ f.hom) ⋯ ⋯)) (M.X ◁ colimMap (parallelPairHom (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft) (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft) ((N.X ⊗ Y.X) ◁ f.hom) (N.X ◁ f.hom) ⋯ ⋯)) ⋯ ⋯) ≫ AssociatorBimod.inv M N P'
-- Mathlib/CategoryTheory/Monoidal/Bimod.lean
C : Type u₁
inst✝⁴ : Category.{v₁, u₁} C
inst✝³ : MonoidalCategory C
A B : Mon_ C
M✝ : Bimod A B
inst✝² : HasCoequalizers C
inst✝¹ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorLeft X)
inst✝ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorRight X)
W X Y Z : Mon_ C
M : Bimod W X
N : Bimod X Y
P P' : Bimod Y Z
f : P ⟶ P'

⊢ coequalizer (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft) ◁ f.hom ≫ colimit.ι (parallelPair (TensorBimod.actRight M N ▷ P'.X) ((α_ (coequalizer (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft)) Y.X P'.X).hom ≫ coequalizer (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft) ◁ P'.actLeft)) WalkingParallelPair.one = (AssociatorBimod.homAux M N P ≫ colimMap (parallelPairHom (M.actRight ▷ coequalizer (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft)) ((α_ M.X X.X (coequalizer (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft))).hom ≫ M.X ◁ TensorBimod.actLeft N P) (M.actRight ▷ coequalizer (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft)) ((α_ M.X X.X (coequalizer (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft))).hom ≫ M.X ◁ TensorBimod.actLeft N P') ((M.X ⊗ X.X) ◁ colimMap (parallelPairHom (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft) (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft) ((N.X ⊗ Y.X) ◁ f.hom) (N.X ◁ f.hom) ⋯ ⋯)) (M.X ◁ colimMap (parallelPairHom (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft) (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft) ((N.X ⊗ Y.X) ◁ f.hom) (N.X ◁ f.hom) ⋯ ⋯)) ⋯ ⋯)) ≫ AssociatorBimod.inv M N P'
-- Mathlib/CategoryTheory/Monoidal/Bimod.lean
C : Type u₁
inst✝⁴ : Category.{v₁, u₁} C
inst✝³ : MonoidalCategory C
A B : Mon_ C
M✝ : Bimod A B
inst✝² : HasCoequalizers C
inst✝¹ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorLeft X)
inst✝ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorRight X)
W X Y Z : Mon_ C
M : Bimod W X
N : Bimod X Y
P P' : Bimod Y Z
f : P ⟶ P'

⊢ coequalizer (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft) ◁ f.hom ≫ colimit.ι (parallelPair (TensorBimod.actRight M N ▷ P'.X) ((α_ (coequalizer (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft)) Y.X P'.X).hom ≫ coequalizer (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft) ◁ P'.actLeft)) WalkingParallelPair.one = (((PreservesCoequalizer.iso (tensorRight P.X) (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft)).inv ≫ coequalizer.desc ((α_ M.X N.X P.X).hom ≫ M.X ◁ coequalizer.π (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft) ≫ coequalizer.π (M.actRight ▷ TensorBimod.X N P) ((α_ M.X X.X (TensorBimod.X N P)).hom ≫ M.X ◁ TensorBimod.actLeft N P)) ⋯) ≫ colimMap (parallelPairHom (M.actRight ▷ coequalizer (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft)) ((α_ M.X X.X (coequalizer (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft))).hom ≫ M.X ◁ TensorBimod.actLeft N P) (M.actRight ▷ coequalizer (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft)) ((α_ M.X X.X (coequalizer (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft))).hom ≫ M.X ◁ TensorBimod.actLeft N P') ((M.X ⊗ X.X) ◁ colimMap (parallelPairHom (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft) (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft) ((N.X ⊗ Y.X) ◁ f.hom) (N.X ◁ f.hom) ⋯ ⋯)) (M.X ◁ colimMap (parallelPairHom (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft) (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft) ((N.X ⊗ Y.X) ◁ f.hom) (N.X ◁ f.hom) ⋯ ⋯)) ⋯ ⋯)) ≫ coequalizer.desc (AssociatorBimod.invAux M N P') ⋯
-- Mathlib/CategoryTheory/Monoidal/Bimod.lean
C : Type u₁
inst✝⁴ : Category.{v₁, u₁} C
inst✝³ : MonoidalCategory C
A B : Mon_ C
M✝ : Bimod A B
inst✝² : HasCoequalizers C
inst✝¹ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorLeft X)
inst✝ : (X : C) → PreservesColimitsOfSize.{0, 0, v₁, v₁, u₁, u₁} (tensorRight X)
W X Y Z : Mon_ C
M : Bimod W X
N : Bimod X Y
P P' : Bimod Y Z
f : P ⟶ P'

⊢ (tensorRight P.X).map (coequalizer.π (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft)) ≫ coequalizer (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft) ◁ f.hom ≫ colimit.ι (parallelPair (TensorBimod.actRight M N ▷ P'.X) ((α_ (coequalizer (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft)) Y.X P'.X).hom ≫ coequalizer (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft) ◁ P'.actLeft)) WalkingParallelPair.one = (tensorRight P.X).map (coequalizer.π (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft)) ≫ (((PreservesCoequalizer.iso (tensorRight P.X) (M.actRight ▷ N.X) ((α_ M.X X.X N.X).hom ≫ M.X ◁ N.actLeft)).inv ≫ coequalizer.desc ((α_ M.X N.X P.X).hom ≫ M.X ◁ coequalizer.π (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft) ≫ coequalizer.π (M.actRight ▷ TensorBimod.X N P) ((α_ M.X X.X (TensorBimod.X N P)).hom ≫ M.X ◁ TensorBimod.actLeft N P)) ⋯) ≫ colimMap (parallelPairHom (M.actRight ▷ coequalizer (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft)) ((α_ M.X X.X (coequalizer (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft))).hom ≫ M.X ◁ TensorBimod.actLeft N P) (M.actRight ▷ coequalizer (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft)) ((α_ M.X X.X (coequalizer (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft))).hom ≫ M.X ◁ TensorBimod.actLeft N P') ((M.X ⊗ X.X) ◁ colimMap (parallelPairHom (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft) (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft) ((N.X ⊗ Y.X) ◁ f.hom) (N.X ◁ f.hom) ⋯ ⋯)) (M.X ◁ colimMap (parallelPairHom (N.actRight ▷ P.X) ((α_ N.X Y.X P.X).hom ≫ N.X ◁ P.actLeft) (N.actRight ▷ P'.X) ((α_ N.X Y.X P'.X).hom ≫ N.X ◁ P'.actLeft) ((N.X ⊗ Y.X) ◁ f.hom) (N.X ◁ f.hom) ⋯ ⋯)) ⋯ ⋯)) ≫ coequalizer.desc (AssociatorBimod.invAux M N P') ⋯