The Yoneda embedding #
The Yoneda embedding as a functor yoneda : C ⥤ (Cᵒᵖ ⥤ Type v₁),
along with an instance that it is FullyFaithful.
Also the Yoneda lemma, yonedaLemma : (yoneda_pairing C) ≅ (yoneda_evaluation C).
References #
The Yoneda embedding, as a functor from C into presheaves on C.
See
Equations
- One or more equations did not get rendered due to their size.
Instances For
The co-Yoneda embedding, as a functor from Cᵒᵖ into co-presheaves on C.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The morphism X ⟶ Y corresponding to a natural transformation
yoneda.obj X ⟶ yoneda.obj Y.
Equations
- CategoryTheory.Yoneda.preimage f = f.app (Opposite.op X) (CategoryTheory.CategoryStruct.id X)
Instances For
The Yoneda embedding is full.
See
Equations
- ⋯ = ⋯
The Yoneda embedding is faithful.
See
Equations
- ⋯ = ⋯
The isomorphism X ≅ Y corresponding to a natural isomorphism
yoneda.obj X ≅ yoneda.obj Y.
Equations
- CategoryTheory.Yoneda.preimageIso e = { hom := CategoryTheory.Yoneda.preimage e.hom, inv := CategoryTheory.Yoneda.preimage e.inv, hom_inv_id := ⋯, inv_hom_id := ⋯ }
Instances For
Extensionality via Yoneda. The typical usage would be
-- Goal is `X ≅ Y`
apply yoneda.ext,
-- Goals are now functions `(Z ⟶ X) → (Z ⟶ Y)`, `(Z ⟶ Y) → (Z ⟶ X)`, and the fact that these
-- functions are inverses and natural in `Z`.
Equations
- One or more equations did not get rendered due to their size.
Instances For
If yoneda.map f is an isomorphism, so was f.
The morphism X ⟶ Y corresponding to a natural transformation
coyoneda.obj X ⟶ coyoneda.obj Y.
Equations
- CategoryTheory.Coyoneda.preimage f = (f.app X.unop (CategoryTheory.CategoryStruct.id X.unop)).op
Instances For
Equations
- ⋯ = ⋯
Equations
- ⋯ = ⋯
The isomorphism X ≅ Y corresponding to a natural isomorphism
coyoneda.obj X ≅ coyoneda.obj Y.
Equations
- CategoryTheory.Coyoneda.preimageIso e = { hom := CategoryTheory.Coyoneda.preimage e.hom, inv := CategoryTheory.Coyoneda.preimage e.inv, hom_inv_id := ⋯, inv_hom_id := ⋯ }
Instances For
The natural transformation F ⟶ G corresponding to a natural transformation
F ⋙ coyoneda ⟶ G ⋙ coyoneda.
Equations
- CategoryTheory.Coyoneda.preimageNatTrans f = { app := fun (X : D) => CategoryTheory.Coyoneda.preimage (f.app X), naturality := ⋯ }
Instances For
The natural isomorphism F ≅ G corresponding to a natural transformation
F ⋙ coyoneda ≅ G ⋙ coyoneda.
Equations
- CategoryTheory.Coyoneda.preimageNatIso e = { hom := CategoryTheory.Coyoneda.preimageNatTrans e.hom, inv := CategoryTheory.Coyoneda.preimageNatTrans e.inv, hom_inv_id := ⋯, inv_hom_id := ⋯ }
Instances For
If coyoneda.map f is an isomorphism, so was f.
The identity functor on Type is isomorphic to the coyoneda functor coming from PUnit.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Taking the unop of morphisms is a natural isomorphism.
Equations
- CategoryTheory.Coyoneda.objOpOp X = CategoryTheory.NatIso.ofComponents (fun (x : Cᵒᵖ) => Equiv.toIso (CategoryTheory.opEquiv (Opposite.op (Opposite.op X)).unop x)) ⋯
Instances For
A functor F : Cᵒᵖ ⥤ Type v₁ is representable if there is object X so F ≅ yoneda.obj X.
See
Hom(-,X) ≅ Fviaf
Instances
Equations
- ⋯ = ⋯
A functor F : C ⥤ Type v₁ is corepresentable if there is object X so F ≅ coyoneda.obj X.
See
Hom(X,-) ≅ Fviaf
Instances
Equations
- ⋯ = ⋯
The representing object for the representable functor F.
Equations
Instances For
An isomorphism between a representable F and a functor of the
form C(-, F.reprX). Note the components F.reprW.app X
definitionally have type (X.unop ⟶ F.repr_X) ≅ F.obj X.
Equations
Instances For
The representing element for the representable functor F, sometimes called the universal
element of the functor.
Equations
Instances For
The representing object for the corepresentable functor F.
Equations
- CategoryTheory.Functor.coreprX F = (Exists.choose ⋯).unop
Instances For
An isomorphism between a corepresnetable F and a functor of the form
C(F.corepr X, -). Note the components F.coreprW.app X
definitionally have type F.corepr_X ⟶ X ≅ F.obj X.
Equations
Instances For
The representing element for the corepresentable functor F, sometimes called the universal
element of the functor.
Equations
Instances For
Equations
Equations
We have a type-level equivalence between natural transformations from the yoneda embedding
and elements of F.obj X, without any universe switching.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The "Yoneda evaluation" functor, which sends X : Cᵒᵖ and F : Cᵒᵖ ⥤ Type
to F.obj X, functorially in both X and F.
Equations
Instances For
The "Yoneda pairing" functor, which sends X : Cᵒᵖ and F : Cᵒᵖ ⥤ Type
to yoneda.op.obj X ⟶ F, functorially in both X and F.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A bijection (yoneda.obj X ⋙ uliftFunctor ⟶ F) ≃ F.obj (op X) which is a variant
of yonedaEquiv with heterogeneous universes.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The Yoneda lemma asserts that the Yoneda pairing
(X : Cᵒᵖ, F : Cᵒᵖ ⥤ Type) ↦ (yoneda.obj (unop X) ⟶ F)
is naturally isomorphic to the evaluation (X, F) ↦ F.obj X.
See
Equations
- One or more equations did not get rendered due to their size.
Instances For
The curried version of yoneda lemma when C is small.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The curried version of yoneda lemma when C is small.
Equations
- One or more equations did not get rendered due to their size.
Instances For
We have a type-level equivalence between natural transformations from the coyoneda embedding
and elements of F.obj X.unop, without any universe switching.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The "Coyoneda evaluation" functor, which sends X : C and F : C ⥤ Type
to F.obj X, functorially in both X and F.
Equations
Instances For
The "Coyoneda pairing" functor, which sends X : C and F : C ⥤ Type
to coyoneda.rightOp.obj X ⟶ F, functorially in both X and F.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A bijection (coyoneda.obj X ⋙ uliftFunctor ⟶ F) ≃ F.obj (unop X) which is a variant
of coyonedaEquiv with heterogeneous universes.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The Coyoneda lemma asserts that the Coyoneda pairing
(X : C, F : C ⥤ Type) ↦ (coyoneda.obj X ⟶ F)
is naturally isomorphic to the evaluation (X, F) ↦ F.obj X.
See
Equations
- One or more equations did not get rendered due to their size.
Instances For
The curried version of coyoneda lemma when C is small.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The curried version of coyoneda lemma when C is small.
Equations
- One or more equations did not get rendered due to their size.