Fibers of functors #
In this file we introduce a typeclass HasFibers
for a functor p : 𝒳 ⥤ 𝒮
, consisting of:
- A collection of categories
Fib S
for everyS
in𝒮
(the fiber categories) - Functors
ι : Fib S ⥤ 𝒳
such that `ι ⋙ p = const (Fib S) S - The induced functor
Fib S ⥤ Fiber p S
is an equivalence.
We also provide a canonical HasFibers
instance, which uses the standard fibers Fiber p S
(see Fiber.lean). This makes it so that any result proven about HasFibers
can be used for the
standard fibers as well.
The reason for introducing this typeclass is that in practice, when working with (pre)fibered
categories one often already has a collection of categories Fib S
for every S
that are
equivalent to the fibers Fiber p S
. One would then like to use these categories Fib S
directly,
instead of working through this equivalence of categories. By developing an API for the HasFibers
typeclass, this will be possible.
Here is an example of when this typeclass is useful. Suppose we have a presheaf of types
F : 𝒮ᵒᵖ ⥤ Type _
. The associated fibered category then has objects (S, a)
where S : 𝒮
and a
is an element of F(S)
. The fiber category Fiber p S
is then equivalent to the discrete category
Fib S
with objects a
in F(S)
. In this case, the HasFibers
instance is given by the
categories F(S)
and the functor ι
sends a : F(S)
to (S, a)
in the fibered category.
Main API #
The following API is developed so that the fibers from a HasFibers
instance can be used
analogously to the standard fibers.
Fib.homMk φ
is a lift of a morphismφ : (ι S).obj a ⟶ (ι S).obj b
in𝒳
, which lies over𝟙 S
, to a morphism in the fiber overS
.Fib.mk
gives an object in the fiber overS
which is isomorphic to a givena : 𝒳
that satisfiesp(a) = S
. The isomorphism is given byFib.mkIsoSelf
.HasFibers.mkPullback
is a version ofIsPreFibered.mkPullback
which ensures that the object lies in a given fiber. The corresponding cartesian morphism is given byHasFibers.pullbackMap
.HasFibers.inducedMap
is a version ofIsCartesian.inducedMap
which gives the corresponding morphism in the fiber category.fiber_factorization
is the statement that any morphism in𝒳
can be factored as a morphism in some fiber followed by a pullback.
HasFibers is an extrinsic notion of fibers on a functor p : 𝒳 ⥤ 𝒮
. It is given by a
collection of categories Fib S
for every S : 𝒮
(the fiber categories), each equipped with a
functors ι : Fib S ⥤ 𝒳
which map constantly to S
on the base such that the induced functor
Fib S ⥤ Fiber p S
is an equivalence.
- Fib (S : 𝒮) : Type u₃
The type of objects of the category
Fib S
for eachS
. - category (S : 𝒮) : CategoryTheory.Category.{v₃, u₃} (Fib p S)
Fib S
is a category. - ι (S : 𝒮) : CategoryTheory.Functor (Fib p S) 𝒳
The composition with the functor
p
is equal to the constant functor mapping toS
.- equiv (S : 𝒮) : (CategoryTheory.Functor.Fiber.inducedFunctor ⋯).IsEquivalence
The induced functor from
Fib S
to the fiber of𝒳 ⥤ 𝒮
overS
is an equivalence.
Instances
The HasFibers
on p : 𝒳 ⥤ 𝒮
given by the fibers of p
Equations
- HasFibers.canonical p = { Fib := p.Fiber, category := inferInstance, ι := fun (S : 𝒮) => CategoryTheory.Functor.Fiber.fiberInclusion, comp_const := ⋯, equiv := ⋯ }
Instances For
The induced functor from Fib p S
to the standard fiber.
Equations
Instances For
The natural transformation ι S ≅ (inducedFunctor p S) ⋙ (fiberInclusion p S)
Equations
Instances For
The morphism R ⟶ S
in 𝒮
obtained by projecting a morphism
φ : (ι R).obj a ⟶ (ι S).obj b
.
Equations
Instances For
For any homomorphism φ
in a fiber Fib S
, its image under ι S
lies over 𝟙 S
.
A version of fullness of the functor Fib S ⥤ Fiber p S
that can be used inside the category
𝒳
.
Equations
Instances For
The lift of an isomorphism Φ : (ι S).obj a ≅ (ι S).obj b
lying over 𝟙 S
to an isomorphism
in Fib S
.
Equations
- HasFibers.Fib.isoMk Φ hΦ = { hom := HasFibers.Fib.homMk Φ.hom, inv := HasFibers.Fib.homMk Φ.inv, hom_inv_id := ⋯, inv_hom_id := ⋯ }
Instances For
An object in Fib p S
isomorphic in 𝒳
to a given object a : 𝒳
such that p(a) = S
.
Equations
Instances For
Applying ι S
to the preimage of a : 𝒳
in Fib p S
yields an object isomorphic to a
.
Equations
Instances For
The domain, taken in Fib p R
, of some cartesian morphism lifting a given
f : R ⟶ S
in 𝒮
Equations
Instances For
A cartesian morphism lifting f : R ⟶ S
with domain in the image of Fib p R
Equations
Instances For
Given a fibered category p, b' b in Fib R, and a pullback ψ : b ⟶ a in 𝒳, i.e.
b' b --ψ--> a
| | |
v v v
R ====== R --f--> S
Then the induced map τ : b' ⟶ b can be lifted to the fiber over R
Equations
Instances For
Given a : 𝒳
, b : Fib p R
, and a diagram
b --φ--> a
- -
| |
v v
R --f--> S
It can be factorized as
b --τ--> b'--ψ--> a
- - -
| | |
v v v
R ====== R --f--> S
with ψ
cartesian over f
and τ
a map in Fib p R
.