ú·´7      !"#$%&'()*+,-./0123456GADTs, MPTCs, fundeps provisionalEdward Kmett <ekmett@gmail.com> >The contravariant Yoneda lemma applied to a covariant functor    MPTCs, fundeps provisionalEdward Kmett <ekmett@gmail.com>       rank 2 types experimentalEdward Kmett <ekmett@gmail.com> and * witness a higher kinded adjunction. from ( `'Compose'` g) to  g  !"#$%&'(( and )) witness the natural isomorphism between Lan f h and  Compose h g given f -| g )** and +& witness the natural isomorphism from Lan f (Lan g h) and Lan (f o g) h + !"#$%&'()*+ !"#$%&'()*+ !"#$%&'()*+"non-portable (rank-2 polymorphism) provisionalEdward Kmett <ekmett@gmail.com>,-./01,-./01,-./01,-.-./01non-portable (GADTs, MPTCs) experimentalEdward Kmett <ekmett@gmail.com>234WThe natural isomorphism between a comonad w and the comonad generated by w (forwards). 5623456234562334567          !"#$%&''()*+,,-./0kan-extensions-0.2!Data.Functor.Yoneda.ContravariantData.Functor.YonedaData.Functor.KanExtensionControl.Monad.CodensityControl.Comonad.DensityYonedaTYonedayoneda liftYoneda lowerYoneda liftYonedaT lowerYonedaTlowerM runYonedaT runYonedamaxFminFmaxMminMLanRanrunRantoRanfromRan composeRan decomposeRan adjointToRan ranToAdjointranToComposedAdjointcomposedAdjointToRantoLanfromLan adjointToLan lanToAdjointlanToComposedAdjointcomposedAdjointToLan composeLan decomposeLan CodensityT runCodensityTlowerCodensityTcodensityTToAdjunctionadjunctionToCodensityTDensityT liftDensityTdensityTToAdjunctionadjunctionToDensityT