 categoryextras0.53.6: Various modules and constructs inspired by category theory  Contents  Index 

Control.Comonad.Density  Portability  nonportable (rank2 polymorphism)  Stability  experimental  Maintainer  Edward Kmett <ekmett@gmail.com> 



Description 
The density comonad for a functor. aka the comonad cogenerated by a functor
The ''density'' term dates back to Dubuc''s 1974 thesis. The term
''monad genererated by a functor'' dates back to 1972 in Street''s
''Formal Theory of Monads''.


Synopsis 



Documentation 

data Density k a 
Constructors  forall b . Density (k b > a) (k b)  
 Instances  


densityToLan :: Density k a > Lan k k a 

lanToDensity :: Lan k k a > Density k a 

toDensity :: Functor s => (forall a. k a > s (k a)) > Density k :~> s 
Nat(k, s.k) is isomorphic to Nat (Density k, s) (forwards)


fromDensity :: (Density k :~> s) > k a > s (k a) 
Nat(k, s.k) is isomorphic to Nat (Density k, s) (backwards)


liftDensity :: Comonad w => w a > Density w a 
The natural isomorphism between a comonad w and the comonad generated by w (forwards).


lowerDensity :: Comonad w => Density w a > w a 
The natural isomorphism between a comonad w and the comonad generated by w (backwards).


densityToAdjunction :: Adjunction f g => Density f a > f (g a) 

adjunctionToDensity :: Adjunction f g => f (g a) > Density f a 

densityToComposedAdjunction :: (Composition o, Adjunction f g) => Density f :~> (f `o` g) 

composedAdjunctionToDensity :: (Composition o, Adjunction f g) => (f `o` g) :~> Density f 

improveCofree :: Functor f => (forall w. ComonadCofree f w => w a) > Cofree f a 

Produced by Haddock version 2.1.0 