Normalizing the first map of a triangle-valued functor #
Let T : J ⥤ Triangle C be a natural family of triangles. Applications
often identify its first two projected functors with more meaningful functors
F and G, and identify the transported first map with a named natural
transformation α : F ⟶ G.
Triangle.FirstMapNormalizationData packages exactly those two endpoint
isomorphisms and the required square. It constructs a new triangle-valued
functor whose first two vertices and first map are literally F, G, and
α, while leaving the third projected functor unchanged. Mathlib's
Triangle.functorMk and Triangle.functorIsoMk supply the construction and
its natural comparison with T.
This is an ordinary categorical interface. It does not assert that the
triangles are distinguished, make any vertex functor exact, or make the
normalization canonical. If the values of T are distinguished, the final
theorem transports that pointwise fact to the normalized family.
For two normalizations with the same named first two vertices and first map,
FirstMapNormalizationData.ComparisonData stores only a natural isomorphism
of their third vertices and compatibility with the remaining two maps. It
then delegates the full triangle-family isomorphism to Mathlib's
Triangle.functorIsoMk'.
Data identifying the first two projections and first map of a triangle-valued functor with named ordinary functors and a named natural transformation.
The endpoint isomorphisms point from the raw projections to the named
functors. This orientation makes square the first component of the natural
isomorphism from the raw family to its normalized form.
Identification of the raw first projection with the named source.
Identification of the raw second projection with the named target.
- square : CategoryStruct.comp (T.whiskerLeft π₁Toπ₂) self.obj₂Iso.hom = CategoryStruct.comp self.obj₁Iso.hom α
The first map agrees with
αafter the endpoint identifications.
Instances For
The unchanged third projected functor.
Equations
Instances For
The second map transported from the named second vertex to the unchanged third vertex.
Equations
Instances For
The connecting map transported to the shift of the named first vertex.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The normalized family, with literal first two vertices and literal first map.
Equations
Instances For
The raw triangle family and its first-map-normalized form are naturally isomorphic. The comparison on the unchanged third projection is the identity.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Comparing two normalizations with the same first map #
The remaining data needed for an endpoint-strict comparison of two first-map-normalized triangle families with the same named first two vertices and first map.
The interface fixes the first two comparison components to be identities. Thus only a natural isomorphism of the third vertices and compatibility with the second and third maps are stored.
Natural comparison of the third vertices.
Compatibility with the maps from the common second vertex.
Compatibility with the connecting maps to the shifted common first vertex.
Instances For
The natural isomorphism of normalized triangle families determined by the third-vertex comparison. Mathlib's triangle-functor constructor supplies the identity components on the common first two vertices.
Equations
Instances For
The first component of the normalized comparison is the identity.
The second component of the normalized comparison is the identity.
The third component of the normalized comparison is the supplied natural isomorphism.
Pointwise distinguishedness is preserved by first-map normalization.