Skip to content
This repository was archived by the owner on Jul 24, 2024. It is now read-only.

Commit eb063e7

Browse files
committed
feat(category_theory/Fintype): equiv_equiv_iso (#13984)
From LTE. Co-authored-by: Scott Morrison <scott.morrison@gmail.com>
1 parent 053a03d commit eb063e7

File tree

1 file changed

+17
-1
lines changed

1 file changed

+17
-1
lines changed

src/category_theory/Fintype.lean

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ Authors: Bhavik Mehta, Adam Topaz
77
import category_theory.concrete_category.basic
88
import category_theory.full_subcategory
99
import category_theory.skeletal
10+
import category_theory.elementwise
1011
import data.fin.basic
1112
import data.fintype.basic
1213

@@ -43,12 +44,27 @@ instance : category Fintype := induced_category.category bundled.α
4344
@[derive [full, faithful], simps]
4445
def incl : Fintype ⥤ Type* := induced_functor _
4546

46-
instance : concrete_category Fintype := ⟨incl⟩
47+
instance concrete_category_Fintype : concrete_category Fintype := ⟨incl⟩
4748

4849
@[simp] lemma id_apply (X : Fintype) (x : X) : (𝟙 X : X → X) x = x := rfl
4950
@[simp] lemma comp_apply {X Y Z : Fintype} (f : X ⟶ Y) (g : Y ⟶ Z) (x : X) :
5051
(f ≫ g) x = g (f x) := rfl
5152

53+
/-- Equivalences between finite types are the same as isomorphisms in `Fintype`. -/
54+
-- See `equiv_equiv_iso` in the root namespace for the analogue in `Type`.
55+
@[simps]
56+
def equiv_equiv_iso {A B : Fintype} : (A ≃ B) ≃ (A ≅ B) :=
57+
{ to_fun := λ e,
58+
{ hom := e,
59+
inv := e.symm, },
60+
inv_fun := λ i,
61+
{ to_fun := i.hom,
62+
inv_fun := i.inv,
63+
left_inv := iso.hom_inv_id_apply i,
64+
right_inv := iso.inv_hom_id_apply i, },
65+
left_inv := by tidy,
66+
right_inv := by tidy, }
67+
5268
universe u
5369
/--
5470
The "standard" skeleton for `Fintype`. This is the full subcategory of `Fintype` spanned by objects

0 commit comments

Comments
 (0)