category_theory.category.ulift
⟷
Mathlib.CategoryTheory.Category.ULift
The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(last sync)
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,9 +3,9 @@ Copyright (c) 2021 Adam Topaz. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Adam Topaz
-/
-import Mathbin.CategoryTheory.Category.Basic
-import Mathbin.CategoryTheory.Equivalence
-import Mathbin.CategoryTheory.EqToHom
+import CategoryTheory.Category.Basic
+import CategoryTheory.Equivalence
+import CategoryTheory.EqToHom
#align_import category_theory.category.ulift from "leanprover-community/mathlib"@"23aa88e32dcc9d2a24cca7bc23268567ed4cd7d6"
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,16 +2,13 @@
Copyright (c) 2021 Adam Topaz. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Adam Topaz
-
-! This file was ported from Lean 3 source module category_theory.category.ulift
-! leanprover-community/mathlib commit 23aa88e32dcc9d2a24cca7bc23268567ed4cd7d6
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.CategoryTheory.Category.Basic
import Mathbin.CategoryTheory.Equivalence
import Mathbin.CategoryTheory.EqToHom
+#align_import category_theory.category.ulift from "leanprover-community/mathlib"@"23aa88e32dcc9d2a24cca7bc23268567ed4cd7d6"
+
/-!
# Basic API for ulift
mathlib commit https://github.com/leanprover-community/mathlib/commit/9fb8964792b4237dac6200193a0d533f1b3f7423
@@ -71,6 +71,7 @@ def ULift.downFunctor : ULift.{u₂} C ⥤ C
#align category_theory.ulift.down_functor CategoryTheory.ULift.downFunctor
-/
+#print CategoryTheory.ULift.equivalence /-
/-- The categorical equivalence between `C` and `ulift C`. -/
@[simps]
def ULift.equivalence : C ≌ ULift.{u₂} C
@@ -91,6 +92,7 @@ def ULift.equivalence : C ≌ ULift.{u₂} C
inv_hom_id' := by ext; change 𝟙 _ ≫ 𝟙 _ = 𝟙 _; simp }
functor_unitIso_comp' X := by change 𝟙 X ≫ 𝟙 X = 𝟙 X; simp
#align category_theory.ulift.equivalence CategoryTheory.ULift.equivalence
+-/
section UliftHom
@@ -120,15 +122,19 @@ def ULiftHom.objUp {C} (A : C) : ULiftHom C :=
#align category_theory.ulift_hom.obj_up CategoryTheory.ULiftHom.objUp
-/
+#print CategoryTheory.objDown_objUp /-
@[simp]
theorem objDown_objUp {C} (A : C) : (ULiftHom.objUp A).objDown = A :=
rfl
#align category_theory.obj_down_obj_up CategoryTheory.objDown_objUp
+-/
+#print CategoryTheory.objUp_objDown /-
@[simp]
theorem objUp_objDown {C} (A : ULiftHom C) : ULiftHom.objUp A.objDown = A :=
rfl
#align category_theory.obj_up_obj_down CategoryTheory.objUp_objDown
+-/
instance : Category.{max v₂ v₁} (ULiftHom.{v₂} C)
where
@@ -154,6 +160,7 @@ def ULiftHom.down : ULiftHom C ⥤ C where
#align category_theory.ulift_hom.down CategoryTheory.ULiftHom.down
-/
+#print CategoryTheory.ULiftHom.equiv /-
/-- The equivalence between `C` and `ulift_hom C`. -/
def ULiftHom.equiv : C ≌ ULiftHom C
where
@@ -162,6 +169,7 @@ def ULiftHom.equiv : C ≌ ULiftHom C
unitIso := NatIso.ofComponents (fun A => eqToIso rfl) (by tidy)
counitIso := NatIso.ofComponents (fun A => eqToIso rfl) (by tidy)
#align category_theory.ulift_hom.equiv CategoryTheory.ULiftHom.equiv
+-/
end UliftHom
@@ -206,6 +214,7 @@ def AsSmall.down : AsSmall C ⥤ C where
#align category_theory.as_small.down CategoryTheory.AsSmall.down
-/
+#print CategoryTheory.AsSmall.equiv /-
/-- The equivalence between `C` and `as_small C`. -/
@[simps]
def AsSmall.equiv : C ≌ AsSmall C where
@@ -214,15 +223,18 @@ def AsSmall.equiv : C ≌ AsSmall C where
unitIso := NatIso.ofComponents (fun X => eqToIso rfl) (by tidy)
counitIso := NatIso.ofComponents (fun X => eqToIso <| by ext; rfl) (by tidy)
#align category_theory.as_small.equiv CategoryTheory.AsSmall.equiv
+-/
instance [Inhabited C] : Inhabited (AsSmall C) :=
⟨⟨Inhabited.default _⟩⟩
+#print CategoryTheory.ULiftHomULiftCategory.equiv /-
/-- The equivalence between `C` and `ulift_hom (ulift C)`. -/
def ULiftHomULiftCategory.equiv.{v', u', v, u} (C : Type u) [Category.{v} C] :
C ≌ ULiftHom.{v'} (ULift.{u'} C) :=
ULift.equivalence.trans ULiftHom.equiv
#align category_theory.ulift_hom_ulift_category.equiv CategoryTheory.ULiftHomULiftCategory.equiv
+-/
end CategoryTheory
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -71,12 +71,6 @@ def ULift.downFunctor : ULift.{u₂} C ⥤ C
#align category_theory.ulift.down_functor CategoryTheory.ULift.downFunctor
-/
-/- warning: category_theory.ulift.equivalence -> CategoryTheory.ULift.equivalence is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C], CategoryTheory.Equivalence.{u1, u1, u2, max u2 u3} C _inst_1 (ULift.{u3, u2} C) (CategoryTheory.uliftCategory.{u1, u2, u3} C _inst_1)
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C], CategoryTheory.Equivalence.{u1, u1, u2, max u3 u2} C (ULift.{u3, u2} C) _inst_1 (CategoryTheory.uliftCategory.{u1, u2, u3} C _inst_1)
-Case conversion may be inaccurate. Consider using '#align category_theory.ulift.equivalence CategoryTheory.ULift.equivalenceₓ'. -/
/-- The categorical equivalence between `C` and `ulift C`. -/
@[simps]
def ULift.equivalence : C ≌ ULift.{u₂} C
@@ -126,23 +120,11 @@ def ULiftHom.objUp {C} (A : C) : ULiftHom C :=
#align category_theory.ulift_hom.obj_up CategoryTheory.ULiftHom.objUp
-/
-/- warning: category_theory.obj_down_obj_up -> CategoryTheory.objDown_objUp is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u1}} (A : C), Eq.{succ u1} C (CategoryTheory.ULiftHom.objDown.{u1, u2} C (CategoryTheory.ULiftHom.objUp.{u1, u2} C A)) A
-but is expected to have type
- forall {C : Type.{u2}} (A : C), Eq.{succ u2} C (CategoryTheory.ULiftHom.objDown.{u2, u1} C (CategoryTheory.ULiftHom.objUp.{u2, u1} C A)) A
-Case conversion may be inaccurate. Consider using '#align category_theory.obj_down_obj_up CategoryTheory.objDown_objUpₓ'. -/
@[simp]
theorem objDown_objUp {C} (A : C) : (ULiftHom.objUp A).objDown = A :=
rfl
#align category_theory.obj_down_obj_up CategoryTheory.objDown_objUp
-/- warning: category_theory.obj_up_obj_down -> CategoryTheory.objUp_objDown is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u1}} (A : CategoryTheory.ULiftHom.{u2, u1} C), Eq.{succ u1} (CategoryTheory.ULiftHom.{u2, u1} C) (CategoryTheory.ULiftHom.objUp.{u1, u2} C (CategoryTheory.ULiftHom.objDown.{u1, u2} C A)) A
-but is expected to have type
- forall {C : Type.{u2}} (A : CategoryTheory.ULiftHom.{u1, u2} C), Eq.{succ u2} (CategoryTheory.ULiftHom.{u1, u2} C) (CategoryTheory.ULiftHom.objUp.{u2, u1} C (CategoryTheory.ULiftHom.objDown.{u2, u1} C A)) A
-Case conversion may be inaccurate. Consider using '#align category_theory.obj_up_obj_down CategoryTheory.objUp_objDownₓ'. -/
@[simp]
theorem objUp_objDown {C} (A : ULiftHom C) : ULiftHom.objUp A.objDown = A :=
rfl
@@ -172,12 +154,6 @@ def ULiftHom.down : ULiftHom C ⥤ C where
#align category_theory.ulift_hom.down CategoryTheory.ULiftHom.down
-/
-/- warning: category_theory.ulift_hom.equiv -> CategoryTheory.ULiftHom.equiv is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C], CategoryTheory.Equivalence.{u1, max u3 u1, u2, u2} C _inst_1 (CategoryTheory.ULiftHom.{u3, u2} C) (CategoryTheory.ULiftHom.category.{u1, u3, u2} C _inst_1)
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C], CategoryTheory.Equivalence.{u1, max u1 u3, u2, u2} C (CategoryTheory.ULiftHom.{u3, u2} C) _inst_1 (CategoryTheory.ULiftHom.category.{u1, u3, u2} C _inst_1)
-Case conversion may be inaccurate. Consider using '#align category_theory.ulift_hom.equiv CategoryTheory.ULiftHom.equivₓ'. -/
/-- The equivalence between `C` and `ulift_hom C`. -/
def ULiftHom.equiv : C ≌ ULiftHom C
where
@@ -230,12 +206,6 @@ def AsSmall.down : AsSmall C ⥤ C where
#align category_theory.as_small.down CategoryTheory.AsSmall.down
-/
-/- warning: category_theory.as_small.equiv -> CategoryTheory.AsSmall.equiv is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C], CategoryTheory.Equivalence.{u1, max u2 u3 u1, u2, max u2 u3 u1} C _inst_1 (CategoryTheory.AsSmall.{u3, u1, u2} C _inst_1) (CategoryTheory.AsSmall.smallCategory.{u3, u1, u2} C _inst_1)
-but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C], CategoryTheory.Equivalence.{u1, max (max u2 u1) u3, u2, max (max u2 u1) u3} C (CategoryTheory.AsSmall.{u3, u1, u2} C _inst_1) _inst_1 (CategoryTheory.instSmallCategoryAsSmall.{u3, u1, u2} C _inst_1)
-Case conversion may be inaccurate. Consider using '#align category_theory.as_small.equiv CategoryTheory.AsSmall.equivₓ'. -/
/-- The equivalence between `C` and `as_small C`. -/
@[simps]
def AsSmall.equiv : C ≌ AsSmall C where
@@ -248,12 +218,6 @@ def AsSmall.equiv : C ≌ AsSmall C where
instance [Inhabited C] : Inhabited (AsSmall C) :=
⟨⟨Inhabited.default _⟩⟩
-/- warning: category_theory.ulift_hom_ulift_category.equiv -> CategoryTheory.ULiftHomULiftCategory.equiv is a dubious translation:
-lean 3 declaration is
- forall (C : Type.{u4}) [_inst_2 : CategoryTheory.Category.{u3, u4} C], CategoryTheory.Equivalence.{u3, max u1 u3, u4, max u4 u2} C _inst_2 (CategoryTheory.ULiftHom.{u1, max u4 u2} (ULift.{u2, u4} C)) (CategoryTheory.ULiftHom.category.{u3, u1, max u4 u2} (ULift.{u2, u4} C) (CategoryTheory.uliftCategory.{u3, u4, u2} C _inst_2))
-but is expected to have type
- forall (C : Type.{u4}) [_inst_2 : CategoryTheory.Category.{u3, u4} C], CategoryTheory.Equivalence.{u3, max u3 u1, u4, max u2 u4} C (CategoryTheory.ULiftHom.{u1, max u2 u4} (ULift.{u2, u4} C)) _inst_2 (CategoryTheory.ULiftHom.category.{u3, u1, max u4 u2} (ULift.{u2, u4} C) (CategoryTheory.uliftCategory.{u3, u4, u2} C _inst_2))
-Case conversion may be inaccurate. Consider using '#align category_theory.ulift_hom_ulift_category.equiv CategoryTheory.ULiftHomULiftCategory.equivₓ'. -/
/-- The equivalence between `C` and `ulift_hom (ulift C)`. -/
def ULiftHomULiftCategory.equiv.{v', u', v, u} (C : Type u) [Category.{v} C] :
C ≌ ULiftHom.{v'} (ULift.{u'} C) :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -89,25 +89,13 @@ def ULift.equivalence : C ≌ ULift.{u₂} C
counitIso :=
{ Hom :=
{ app := fun X => 𝟙 _
- naturality' := fun X Y f => by
- change f ≫ 𝟙 _ = 𝟙 _ ≫ f
- simp }
+ naturality' := fun X Y f => by change f ≫ 𝟙 _ = 𝟙 _ ≫ f; simp }
inv :=
{ app := fun X => 𝟙 _
- naturality' := fun X Y f => by
- change f ≫ 𝟙 _ = 𝟙 _ ≫ f
- simp }
- hom_inv_id' := by
- ext
- change 𝟙 _ ≫ 𝟙 _ = 𝟙 _
- simp
- inv_hom_id' := by
- ext
- change 𝟙 _ ≫ 𝟙 _ = 𝟙 _
- simp }
- functor_unitIso_comp' X := by
- change 𝟙 X ≫ 𝟙 X = 𝟙 X
- simp
+ naturality' := fun X Y f => by change f ≫ 𝟙 _ = 𝟙 _ ≫ f; simp }
+ hom_inv_id' := by ext; change 𝟙 _ ≫ 𝟙 _ = 𝟙 _; simp
+ inv_hom_id' := by ext; change 𝟙 _ ≫ 𝟙 _ = 𝟙 _; simp }
+ functor_unitIso_comp' X := by change 𝟙 X ≫ 𝟙 X = 𝟙 X; simp
#align category_theory.ulift.equivalence CategoryTheory.ULift.equivalence
section UliftHom
@@ -254,13 +242,7 @@ def AsSmall.equiv : C ≌ AsSmall C where
Functor := AsSmall.up
inverse := AsSmall.down
unitIso := NatIso.ofComponents (fun X => eqToIso rfl) (by tidy)
- counitIso :=
- NatIso.ofComponents
- (fun X =>
- eqToIso <| by
- ext
- rfl)
- (by tidy)
+ counitIso := NatIso.ofComponents (fun X => eqToIso <| by ext; rfl) (by tidy)
#align category_theory.as_small.equiv CategoryTheory.AsSmall.equiv
instance [Inhabited C] : Inhabited (AsSmall C) :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/3b267e70a936eebb21ab546f49a8df34dd300b25
@@ -188,7 +188,7 @@ def ULiftHom.down : ULiftHom C ⥤ C where
lean 3 declaration is
forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C], CategoryTheory.Equivalence.{u1, max u3 u1, u2, u2} C _inst_1 (CategoryTheory.ULiftHom.{u3, u2} C) (CategoryTheory.ULiftHom.category.{u1, u3, u2} C _inst_1)
but is expected to have type
- forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C], CategoryTheory.Equivalence.{u1, max u1 u3, u2, u2} C (CategoryTheory.ULiftHom.{u3, u2} C) _inst_1 (CategoryTheory.instCategoryULiftHom.{u1, u3, u2} C _inst_1)
+ forall {C : Type.{u2}} [_inst_1 : CategoryTheory.Category.{u1, u2} C], CategoryTheory.Equivalence.{u1, max u1 u3, u2, u2} C (CategoryTheory.ULiftHom.{u3, u2} C) _inst_1 (CategoryTheory.ULiftHom.category.{u1, u3, u2} C _inst_1)
Case conversion may be inaccurate. Consider using '#align category_theory.ulift_hom.equiv CategoryTheory.ULiftHom.equivₓ'. -/
/-- The equivalence between `C` and `ulift_hom C`. -/
def ULiftHom.equiv : C ≌ ULiftHom C
@@ -270,7 +270,7 @@ instance [Inhabited C] : Inhabited (AsSmall C) :=
lean 3 declaration is
forall (C : Type.{u4}) [_inst_2 : CategoryTheory.Category.{u3, u4} C], CategoryTheory.Equivalence.{u3, max u1 u3, u4, max u4 u2} C _inst_2 (CategoryTheory.ULiftHom.{u1, max u4 u2} (ULift.{u2, u4} C)) (CategoryTheory.ULiftHom.category.{u3, u1, max u4 u2} (ULift.{u2, u4} C) (CategoryTheory.uliftCategory.{u3, u4, u2} C _inst_2))
but is expected to have type
- forall (C : Type.{u4}) [_inst_2 : CategoryTheory.Category.{u3, u4} C], CategoryTheory.Equivalence.{u3, max u3 u1, u4, max u2 u4} C (CategoryTheory.ULiftHom.{u1, max u2 u4} (ULift.{u2, u4} C)) _inst_2 (CategoryTheory.instCategoryULiftHom.{u3, u1, max u4 u2} (ULift.{u2, u4} C) (CategoryTheory.uliftCategory.{u3, u4, u2} C _inst_2))
+ forall (C : Type.{u4}) [_inst_2 : CategoryTheory.Category.{u3, u4} C], CategoryTheory.Equivalence.{u3, max u3 u1, u4, max u2 u4} C (CategoryTheory.ULiftHom.{u1, max u2 u4} (ULift.{u2, u4} C)) _inst_2 (CategoryTheory.ULiftHom.category.{u3, u1, max u4 u2} (ULift.{u2, u4} C) (CategoryTheory.uliftCategory.{u3, u4, u2} C _inst_2))
Case conversion may be inaccurate. Consider using '#align category_theory.ulift_hom_ulift_category.equiv CategoryTheory.ULiftHomULiftCategory.equivₓ'. -/
/-- The equivalence between `C` and `ulift_hom (ulift C)`. -/
def ULiftHomULiftCategory.equiv.{v', u', v, u} (C : Type u) [Category.{v} C] :
mathlib commit https://github.com/leanprover-community/mathlib/commit/3ade05ac9447ae31a22d2ea5423435e054131240
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Adam Topaz
! This file was ported from Lean 3 source module category_theory.category.ulift
-! leanprover-community/mathlib commit 201a3f4a0e59b5f836fe8a6c1a462ee674327211
+! leanprover-community/mathlib commit 23aa88e32dcc9d2a24cca7bc23268567ed4cd7d6
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -15,6 +15,9 @@ import Mathbin.CategoryTheory.EqToHom
/-!
# Basic API for ulift
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
This file contains a very basic API for working with the categorical
instance on `ulift C` where `C` is a type with a category instance.
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
@@ -2,17 +2,14 @@
Copyright (c) 2021 Adam Topaz. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Adam Topaz
-
-! This file was ported from Lean 3 source module category_theory.category.ulift
-! leanprover-community/mathlib commit 32253a1a1071173b33dc7d6a218cf722c6feb514
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.CategoryTheory.Category.Basic
import Mathlib.CategoryTheory.Equivalence
import Mathlib.CategoryTheory.EqToHom
import Mathlib.Data.ULift
+#align_import category_theory.category.ulift from "leanprover-community/mathlib"@"32253a1a1071173b33dc7d6a218cf722c6feb514"
+
/-!
# Basic API for ULift
@@ -19,8 +19,8 @@ import Mathlib.Data.ULift
This file contains a very basic API for working with the categorical
instance on `ULift C` where `C` is a type with a category instance.
-1. `CategoryTheory.ULift.up` is the functorial version of the usual `ULift.up`.
-2. `CategoryTheory.ULift.down` is the functorial version of the usual `ULift.down`.
+1. `CategoryTheory.ULift.upFunctor` is the functorial version of the usual `ULift.up`.
+2. `CategoryTheory.ULift.downFunctor` is the functorial version of the usual `ULift.down`.
3. `CategoryTheory.ULift.equivalence` is the categorical equivalence between
`C` and `ULift C`.
@@ -31,7 +31,7 @@ If we have `category.{v} C`, then `ULiftHom.{w} C` is endowed with a category in
whose morphisms are obtained by applying `ULift.{w}` to the morphisms from `C`.
This is a category equivalent to `C`. The forward direction of the equivalence is `ULiftHom.up`,
-the backward direction is `ULiftHom.donw` and the equivalence is `ULiftHom.equiv`.
+the backward direction is `ULiftHom.down` and the equivalence is `ULiftHom.equiv`.
# AsSmall
@@ -152,8 +152,8 @@ def ULiftHom.down : ULiftHom C ⥤ C where
def ULiftHom.equiv : C ≌ ULiftHom C where
functor := ULiftHom.up
inverse := ULiftHom.down
- unitIso := NatIso.ofComponents (fun A => eqToIso rfl) (by aesop_cat)
- counitIso := NatIso.ofComponents (fun A => eqToIso rfl) (by aesop_cat)
+ unitIso := NatIso.ofComponents fun A => eqToIso rfl
+ counitIso := NatIso.ofComponents fun A => eqToIso rfl
#align category_theory.ulift_hom.equiv CategoryTheory.ULiftHom.equiv
end ULiftHom
@@ -198,11 +198,8 @@ def AsSmall.down : AsSmall C ⥤ C where
def AsSmall.equiv : C ≌ AsSmall C where
functor := AsSmall.up
inverse := AsSmall.down
- unitIso := NatIso.ofComponents (fun X => eqToIso rfl) (by aesop_cat)
- counitIso :=
- NatIso.ofComponents
- (fun X => eqToIso <| ULift.ext _ _ rfl)
- (by aesop_cat)
+ unitIso := NatIso.ofComponents fun X => eqToIso rfl
+ counitIso := NatIso.ofComponents fun X => eqToIso <| ULift.ext _ _ rfl
#align category_theory.as_small.equiv CategoryTheory.AsSmall.equiv
instance [Inhabited C] : Inhabited (AsSmall C) :=
@@ -19,9 +19,9 @@ import Mathlib.Data.ULift
This file contains a very basic API for working with the categorical
instance on `ULift C` where `C` is a type with a category instance.
-1. `category_theory.ULift.up` is the functorial version of the usual `ULift.up`.
-2. `category_theory.ULift.down` is the functorial version of the usual `ULift.down`.
-3. `category_theory.ULift.equivalence` is the categorical equivalence between
+1. `CategoryTheory.ULift.up` is the functorial version of the usual `ULift.up`.
+2. `CategoryTheory.ULift.down` is the functorial version of the usual `ULift.down`.
+3. `CategoryTheory.ULift.equivalence` is the categorical equivalence between
`C` and `ULift C`.
# ULiftHom
@@ -36,7 +36,7 @@ the backward direction is `ULiftHom.donw` and the equivalence is `ULiftHom.equiv
# AsSmall
This file also contains a construction which takes a type `C : Type u` with a
-category instance `category.{v} C` and makes a small category
+category instance `Category.{v} C` and makes a small category
`AsSmall.{w} C : Type (max w v u)` equivalent to `C`.
The forward direction of the equivalence, `C ⥤ AsSmall C`, is denoted `AsSmall.up`
@@ -201,10 +201,7 @@ def AsSmall.equiv : C ≌ AsSmall C where
unitIso := NatIso.ofComponents (fun X => eqToIso rfl) (by aesop_cat)
counitIso :=
NatIso.ofComponents
- (fun X =>
- eqToIso <| by
- apply ULift.ext
- rfl)
+ (fun X => eqToIso <| ULift.ext _ _ rfl)
(by aesop_cat)
#align category_theory.as_small.equiv CategoryTheory.AsSmall.equiv
@@ -96,13 +96,13 @@ def ULift.equivalence : C ≌ ULift.{u₂} C where
#align category_theory.ulift.equivalence CategoryTheory.ULift.equivalence
section ULiftHom
-/- Porting note: obviously we don't want code that looks like this long term
+/- Porting note: obviously we don't want code that looks like this long term
the ability to turn off unused universe parameter error is desirable -/
/-- `ULiftHom.{w} C` is an alias for `C`, which is endowed with a category instance
whose morphisms are obtained by applying `ULift.{w}` to the morphisms from `C`.
-/
-def ULiftHom.{w,u} (C : Type u) : Type u :=
- let _ := ULift.{w} C
+def ULiftHom.{w,u} (C : Type u) : Type u :=
+ let _ := ULift.{w} C
C
#align category_theory.ulift_hom CategoryTheory.ULiftHom
@@ -129,7 +129,7 @@ theorem objUp_objDown {C} (A : ULiftHom C) : ULiftHom.objUp A.objDown = A :=
rfl
#align category_theory.obj_up_obj_down CategoryTheory.objUp_objDown
-instance : Category.{max v₂ v₁} (ULiftHom.{v₂} C) where
+instance ULiftHom.category : Category.{max v₂ v₁} (ULiftHom.{v₂} C) where
Hom A B := ULift.{v₂} <| A.objDown ⟶ B.objDown
id A := ⟨𝟙 _⟩
comp f g := ⟨f.down ≫ g.down⟩
@@ -157,8 +157,8 @@ def ULiftHom.equiv : C ≌ ULiftHom C where
#align category_theory.ulift_hom.equiv CategoryTheory.ULiftHom.equiv
end ULiftHom
-/- Porting note: we want to keep around the category instance on `D`
-so Lean can figure out things further down. So `AsSmall` has been
+/- Porting note: we want to keep around the category instance on `D`
+so Lean can figure out things further down. So `AsSmall` has been
nolinted. -/
/-- `AsSmall C` is a small category equivalent to `C`.
More specifically, if `C : Type u` is endowed with `Category.{v} C`, then
@@ -218,4 +218,3 @@ def ULiftHomULiftCategory.equiv.{v', u', v, u} (C : Type u) [Category.{v} C] :
#align category_theory.ulift_hom_ulift_category.equiv CategoryTheory.ULiftHomULiftCategory.equiv
end CategoryTheory
-
All dependencies are ported!