Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Documentation
data Repr x i t o :: k -> Type where Source #
RPlus :: Repr x i t o a -> Repr x i t o b -> Repr x i t o (a `t` b) | |
RTimes :: Repr x i t o a -> Repr x i t o b -> Repr x i t o (a `x` b) | |
ROne :: Repr x i t o i | |
RZero :: Repr x i t o o |
inhabitants :: Finite a => [a] Source #
class (Enum a, Bounded a, Eq a, Ord a) => Finite a where Source #
Nothing
finiteFstsnd :: forall α β. a ~ (α ⊗ β) => Dict (Finite α, Finite β) Source #
finiteLeftRight :: forall α β. a ~ (α ⊕ β) => Dict (Finite α, Finite β) Source #
Instances
Functor f => Generic1 (f ∘ g :: k -> Type) Source # | |
Monoidal ((∘) :: (Type -> Type) -> (Type -> Type) -> Type -> Type) Id NatTrans Source # | |
Defined in Algebra.Category.NatTrans (⊗) :: forall (a :: k) (b :: k) (c :: k) (d :: k). (Obj NatTrans a, Obj NatTrans b, Obj NatTrans c, Obj NatTrans d) => NatTrans a b -> NatTrans c d -> NatTrans (a ∘ c) (b ∘ d) Source # assoc :: forall (a :: k) (b :: k) (c :: k). (Obj NatTrans a, Obj NatTrans b, Obj NatTrans c) => NatTrans ((a ∘ b) ∘ c) (a ∘ (b ∘ c)) Source # assoc_ :: forall (a :: k) (b :: k) (c :: k). (Obj NatTrans a, Obj NatTrans b, Obj NatTrans c) => NatTrans (a ∘ (b ∘ c)) ((a ∘ b) ∘ c) Source # unitorR :: forall (a :: k). (Obj NatTrans a, Obj NatTrans Id) => NatTrans a (a ∘ Id) Source # unitorR_ :: forall (a :: k). (Obj NatTrans a, Obj NatTrans Id) => NatTrans (a ∘ Id) a Source # unitorL :: forall (a :: k). (Obj NatTrans a, Obj NatTrans Id) => NatTrans a (Id ∘ a) Source # unitorL_ :: forall (a :: k). (Obj NatTrans a, Obj NatTrans Id) => NatTrans (Id ∘ a) a Source # | |
Ring s => Braided ((∘) :: (Type -> Type) -> (Type -> Type) -> Type -> Type) Id (Mat s :: (Type -> Type) -> (Type -> Type) -> Type) Source # | |
Ring s => Monoidal ((∘) :: (Type -> Type) -> (Type -> Type) -> Type -> Type) Id (Mat s :: (Type -> Type) -> (Type -> Type) -> Type) Source # | |
Defined in Algebra.Linear (⊗) :: forall (a :: k) (b :: k) (c :: k) (d :: k). (Obj (Mat s) a, Obj (Mat s) b, Obj (Mat s) c, Obj (Mat s) d) => Mat s a b -> Mat s c d -> Mat s (a ∘ c) (b ∘ d) Source # assoc :: forall (a :: k) (b :: k) (c :: k). (Obj (Mat s) a, Obj (Mat s) b, Obj (Mat s) c) => Mat s ((a ∘ b) ∘ c) (a ∘ (b ∘ c)) Source # assoc_ :: forall (a :: k) (b :: k) (c :: k). (Obj (Mat s) a, Obj (Mat s) b, Obj (Mat s) c) => Mat s (a ∘ (b ∘ c)) ((a ∘ b) ∘ c) Source # unitorR :: forall (a :: k). (Obj (Mat s) a, Obj (Mat s) Id) => Mat s a (a ∘ Id) Source # unitorR_ :: forall (a :: k). (Obj (Mat s) a, Obj (Mat s) Id) => Mat s (a ∘ Id) a Source # unitorL :: forall (a :: k). (Obj (Mat s) a, Obj (Mat s) Id) => Mat s a (Id ∘ a) Source # unitorL_ :: forall (a :: k). (Obj (Mat s) a, Obj (Mat s) Id) => Mat s (Id ∘ a) a Source # | |
Ring s => Symmetric ((∘) :: (Type -> Type) -> (Type -> Type) -> Type -> Type) Id (Mat s :: (Type -> Type) -> (Type -> Type) -> Type) Source # | |
Defined in Algebra.Linear | |
(Arbitrary1 f, Arbitrary1 g) => Arbitrary1 (f ∘ g) Source # | |
Defined in Algebra.Types liftArbitrary :: Gen a -> Gen ((f ∘ g) a) # liftShrink :: (a -> [a]) -> (f ∘ g) a -> [(f ∘ g) a] # | |
(Representable v, Representable w) => Representable (v ∘ w) Source # | |
(Foldable f, Foldable g) => Foldable (f ∘ g) Source # | |
Defined in Algebra.Types fold :: Monoid m => (f ∘ g) m -> m # foldMap :: Monoid m => (a -> m) -> (f ∘ g) a -> m # foldMap' :: Monoid m => (a -> m) -> (f ∘ g) a -> m # foldr :: (a -> b -> b) -> b -> (f ∘ g) a -> b # foldr' :: (a -> b -> b) -> b -> (f ∘ g) a -> b # foldl :: (b -> a -> b) -> b -> (f ∘ g) a -> b # foldl' :: (b -> a -> b) -> b -> (f ∘ g) a -> b # foldr1 :: (a -> a -> a) -> (f ∘ g) a -> a # foldl1 :: (a -> a -> a) -> (f ∘ g) a -> a # elem :: Eq a => a -> (f ∘ g) a -> Bool # maximum :: Ord a => (f ∘ g) a -> a # minimum :: Ord a => (f ∘ g) a -> a # | |
(Traversable f, Traversable g) => Traversable (f ∘ g) Source # | |
(Applicative f, Applicative g) => Applicative (f ∘ g) Source # | |
(Functor f, Functor g) => Functor (f ∘ g) Source # | |
(Distributive v, Distributive w) => Distributive (v ∘ w) Source # | |
(VectorR v, VectorR w) => VectorR (v ∘ w) Source # | |
Show (a (b x)) => Show ((a ∘ b) x) Source # | |
Eq (f (g x)) => Eq ((f ∘ g) x) Source # | |
type Rep1 (f ∘ g :: k -> Type) Source # | |
Defined in Algebra.Types | |
type Rep (v ∘ w) Source # | |
Instances
Arbitrary1 Id Source # | |
Defined in Algebra.Types liftArbitrary :: Gen a -> Gen (Id a) # liftShrink :: (a -> [a]) -> Id a -> [Id a] # | |
Representable Id Source # | |
Foldable Id Source # | |
Defined in Algebra.Types fold :: Monoid m => Id m -> m # foldMap :: Monoid m => (a -> m) -> Id a -> m # foldMap' :: Monoid m => (a -> m) -> Id a -> m # foldr :: (a -> b -> b) -> b -> Id a -> b # foldr' :: (a -> b -> b) -> b -> Id a -> b # foldl :: (b -> a -> b) -> b -> Id a -> b # foldl' :: (b -> a -> b) -> b -> Id a -> b # foldr1 :: (a -> a -> a) -> Id a -> a # foldl1 :: (a -> a -> a) -> Id a -> a # elem :: Eq a => a -> Id a -> Bool # maximum :: Ord a => Id a -> a # | |
Traversable Id Source # | |
Applicative Id Source # | |
Functor Id Source # | |
Distributive Id Source # | |
VectorR Id Source # | |
Generic1 Id Source # | |
Show x => Show (Id x) Source # | |
Eq x => Eq (Id x) Source # | |
Monoidal ((∘) :: (Type -> Type) -> (Type -> Type) -> Type -> Type) Id NatTrans Source # | |
Defined in Algebra.Category.NatTrans (⊗) :: forall (a :: k) (b :: k) (c :: k) (d :: k). (Obj NatTrans a, Obj NatTrans b, Obj NatTrans c, Obj NatTrans d) => NatTrans a b -> NatTrans c d -> NatTrans (a ∘ c) (b ∘ d) Source # assoc :: forall (a :: k) (b :: k) (c :: k). (Obj NatTrans a, Obj NatTrans b, Obj NatTrans c) => NatTrans ((a ∘ b) ∘ c) (a ∘ (b ∘ c)) Source # assoc_ :: forall (a :: k) (b :: k) (c :: k). (Obj NatTrans a, Obj NatTrans b, Obj NatTrans c) => NatTrans (a ∘ (b ∘ c)) ((a ∘ b) ∘ c) Source # unitorR :: forall (a :: k). (Obj NatTrans a, Obj NatTrans Id) => NatTrans a (a ∘ Id) Source # unitorR_ :: forall (a :: k). (Obj NatTrans a, Obj NatTrans Id) => NatTrans (a ∘ Id) a Source # unitorL :: forall (a :: k). (Obj NatTrans a, Obj NatTrans Id) => NatTrans a (Id ∘ a) Source # unitorL_ :: forall (a :: k). (Obj NatTrans a, Obj NatTrans Id) => NatTrans (Id ∘ a) a Source # | |
Ring s => Braided ((∘) :: (Type -> Type) -> (Type -> Type) -> Type -> Type) Id (Mat s :: (Type -> Type) -> (Type -> Type) -> Type) Source # | |
Ring s => Monoidal ((∘) :: (Type -> Type) -> (Type -> Type) -> Type -> Type) Id (Mat s :: (Type -> Type) -> (Type -> Type) -> Type) Source # | |
Defined in Algebra.Linear (⊗) :: forall (a :: k) (b :: k) (c :: k) (d :: k). (Obj (Mat s) a, Obj (Mat s) b, Obj (Mat s) c, Obj (Mat s) d) => Mat s a b -> Mat s c d -> Mat s (a ∘ c) (b ∘ d) Source # assoc :: forall (a :: k) (b :: k) (c :: k). (Obj (Mat s) a, Obj (Mat s) b, Obj (Mat s) c) => Mat s ((a ∘ b) ∘ c) (a ∘ (b ∘ c)) Source # assoc_ :: forall (a :: k) (b :: k) (c :: k). (Obj (Mat s) a, Obj (Mat s) b, Obj (Mat s) c) => Mat s (a ∘ (b ∘ c)) ((a ∘ b) ∘ c) Source # unitorR :: forall (a :: k). (Obj (Mat s) a, Obj (Mat s) Id) => Mat s a (a ∘ Id) Source # unitorR_ :: forall (a :: k). (Obj (Mat s) a, Obj (Mat s) Id) => Mat s (a ∘ Id) a Source # unitorL :: forall (a :: k). (Obj (Mat s) a, Obj (Mat s) Id) => Mat s a (Id ∘ a) Source # unitorL_ :: forall (a :: k). (Obj (Mat s) a, Obj (Mat s) Id) => Mat s (Id ∘ a) a Source # | |
Ring s => Symmetric ((∘) :: (Type -> Type) -> (Type -> Type) -> Type -> Type) Id (Mat s :: (Type -> Type) -> (Type -> Type) -> Type) Source # | |
Defined in Algebra.Linear | |
type Rep Id Source # | |
Defined in Algebra.Types | |
type Rep1 Id Source # | |
Defined in Algebra.Types |
data CompClosed (con :: Type -> Constraint) Source #
CompClosed | |
|