Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
dual' :: forall {k} (a :: k) (a' :: k). StarAutonomous k => (a ~> a') -> Dual a' ~> Dual a Source Comments #
class Closed k => StarAutonomous k where Source Comments #
bottomObj, (doubleNeg | doubleNeg')
bottomObj :: Obj (Bottom :: k) Source Comments #
doubleNeg :: forall (a :: k). (StarAutonomous k, Ob a) => Dual (Dual a) ~> a Source Comments #
doubleNeg' :: forall (a :: k) (a' :: k). (a ~> a') -> Dual (Dual a) ~> a' Source Comments #
Instances
StarAutonomous BOOL Source Comments # | |||||
Defined in Proarrow.Category.Instance.Bool
| |||||
StarAutonomous KIND Source Comments # | |||||
Defined in Proarrow.Category.Instance.Cat
| |||||
StarAutonomous () Source Comments # | |||||
Defined in Proarrow.Object.Dual
| |||||
Num a => StarAutonomous (MatK a) Source Comments # | |||||
Defined in Proarrow.Category.Instance.Mat | |||||
(StarAutonomous j, StarAutonomous k) => StarAutonomous (j, k) Source Comments # | |||||
Defined in Proarrow.Object.Dual
|
doubleNegInv' :: forall k (a :: k) (a' :: k) (b :: k) (b' :: k). (Closed k, SymMonoidal k) => (a ~> a') -> (b ~> b') -> a ~> ((a' ~~> b) ~~> b') Source Comments #
dualityCounit' :: forall {k} (a :: k). StarAutonomous k => Obj a -> (Dual a ** a) ~> (Bottom :: k) Source Comments #
dualityCounit :: forall {k} (a :: k). (SymMonoidal k, StarAutonomous k, Ob a) => (Dual a ** a) ~> (Bottom :: k) Source Comments #
class ((Bottom :: k) ~ (Unit :: k), StarAutonomous k, SymMonoidal k) => CompactClosed k where Source Comments #
distribDual :: forall (a :: k) (b :: k). (Ob a, Ob b) => Dual (a ** b) ~> (Dual a ** Dual b) Source Comments #
distribDual' :: forall (a :: k) (a' :: k) (b :: k) (b' :: k). (a ~> a') -> (b ~> b') -> Dual (a' ** b') ~> (Dual a ** Dual b) Source Comments #
Instances
CompactClosed KIND Source Comments # | |
Defined in Proarrow.Category.Instance.Cat | |
CompactClosed () Source Comments # | |
Num a => CompactClosed (MatK a) Source Comments # | |
Defined in Proarrow.Category.Instance.Mat | |
(CompactClosed j, CompactClosed k) => CompactClosed (j, k) Source Comments # | |
Defined in Proarrow.Object.Dual |
combineDual' :: forall k (a :: k) (a' :: k) (b :: k) (b' :: k). CompactClosed k => (a ~> a') -> (b ~> b') -> (Dual a' ** Dual b') ~> Dual (a ** b) Source Comments #
combineDual :: forall {k} (a :: k) (b :: k). (CompactClosed k, Ob a, Ob b) => (Dual a ** Dual b) ~> Dual (a ** b) Source Comments #
dualityUnit' :: forall {k} (a :: k). CompactClosed k => Obj a -> (Unit :: k) ~> (a ** Dual a) Source Comments #
dualityUnit :: forall {k} (a :: k). (CompactClosed k, Ob a) => (Unit :: k) ~> (a ** Dual a) Source Comments #