Documentation

TauCeti.CategoryTheory.Monoidal.Rigid.Closed

The internal hom out of a dualizable object #

Let C be a monoidal category in which an object Y is closed, so that (Y ⟶[C] -) is right adjoint to Y ⊗ -. If Y also admits a left dual, that is, if ExactPairing D Y holds for some object D, then D ⊗ - is a second right adjoint of Y ⊗ -, and the two agree:

(Y ⟶[C] Z) ≅ D ⊗ Z,      in particular      (Y ⟶[C] 𝟙_ C) ≅ D.

So the internal hom into the unit computes the left dual, and the internal hom out of Y is tensoring with that dual. The comparison is characterized by the evaluation of the internal hom: under it, the evaluation becomes the composite Y ⊗ (D ⊗ Z) ⟶ (Y ⊗ D) ⊗ Z ⟶ 𝟙_ C ⊗ Z ⟶ Z built from the pairing ε_ D Y, and over the unit the evaluation becomes the pairing itself.

The dual D is an explicit argument rather than CategoryTheory.HasLeftDual, so that a caller with a preferred model of the dual — for instance a finite free sheaf of modules, which is its own dual — gets the comparison with that model. Taking D = ᘁY gives (Y ⟶[C] 𝟙_ C) ≅ ᘁY.

Mathlib builds the two adjunctions separately, as CategoryTheory.ihom.adjunction for the closed structure and CategoryTheory.tensorLeftAdjunction for the pairing; the comparison here is their uniqueness isomorphism CategoryTheory.Adjunction.rightAdjointUniq.

Main declarations #

The comparison D ⟶ (Y ⟶[C] 𝟙_ C) is the transpose of the evaluation of the pairing.

@[reducible]

Transporting the pairing along TauCeti.ihomUnitIso exhibits the internal hom of Y into the unit as a left dual of Y: the categorical dual of Y is Hom(Y, 𝟙_ C).

This is deliberately not an instance because the chosen dual D is not determined by the resulting ExactPairing type.

Equations
Instances For
    @[simp]

    The coevaluation of the pairing transported to the internal hom is obtained by composing the original coevaluation with the inverse comparison.