forked from leanprover-community/mathlib4
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathInstances.lean
More file actions
47 lines (34 loc) · 1.47 KB
/
Instances.lean
File metadata and controls
47 lines (34 loc) · 1.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
/-
Copyright (c) 2025 Joël Riou. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Joël Riou
-/
module
public import Mathlib.Topology.Category.LightProfinite.EffectiveEpi
public import Mathlib.CategoryTheory.Sites.Equivalence
/-!
# `HasSheafify` instances
In this file, we obtain a `HasSheafify (coherentTopology LightProfinite.{u}) (Type u)`
instance (and similarly for other concrete categories). These instances
are not obtained automatically because `LightProfinite.{u}` is a large category,
but as it is essentially small, the instances can be obtained using the results
in the file `Mathlib/CategoryTheory/Sites/Equivalence.lean`.
-/
@[expose] public section
universe u u' v
open CategoryTheory Limits
namespace LightProfinite
variable (A : Type u') [Category.{u} A] [HasLimits A] [HasColimits A]
{FA : A → A → Type v} {CA : A → Type u}
[∀ X Y, FunLike (FA X Y) (CA X) (CA Y)] [ConcreteCategory A FA]
[PreservesFilteredColimits (forget A)]
[PreservesLimits (forget A)] [(forget A).ReflectsIsomorphisms]
instance hasSheafify :
HasSheafify (coherentTopology LightProfinite.{u}) A :=
hasSheafifyEssentiallySmallSite _ _
instance hasSheafify_type :
HasSheafify (coherentTopology LightProfinite.{u}) (Type u) :=
hasSheafifyEssentiallySmallSite _ _
instance : (coherentTopology LightProfinite.{u}).WEqualsLocallyBijective A :=
GrothendieckTopology.WEqualsLocallyBijective.ofEssentiallySmall _
end LightProfinite