rings-0.1.2: Ring-like objects.

Safe HaskellSafe
LanguageHaskell2010

Data.Semigroup.Additive

Synopsis

Documentation

type (-) g f a = f (g a) infixr 1 Source #

Hyphenation operator.

newtype Additive a Source #

A commutative Semigroup under +.

Constructors

Additive 

Fields

Instances
Functor Additive Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

fmap :: (a -> b) -> Additive a -> Additive b #

(<$) :: a -> Additive b -> Additive a #

Applicative Additive Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

pure :: a -> Additive a #

(<*>) :: Additive (a -> b) -> Additive a -> Additive b #

liftA2 :: (a -> b -> c) -> Additive a -> Additive b -> Additive c #

(*>) :: Additive a -> Additive b -> Additive b #

(<*) :: Additive a -> Additive b -> Additive a #

Distributive Additive Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

distribute :: Functor f => f (Additive a) -> Additive (f a) #

collect :: Functor f => (a -> Additive b) -> f a -> Additive (f b) #

distributeM :: Monad m => m (Additive a) -> Additive (m a) #

collectM :: Monad m => (a -> Additive b) -> m a -> Additive (m b) #

Representable Additive Source # 
Instance details

Defined in Data.Semigroup.Additive

Associated Types

type Rep Additive :: Type #

Methods

tabulate :: (Rep Additive -> a) -> Additive a #

index :: Additive a -> Rep Additive -> a #

Eq a => Eq (Additive a) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(==) :: Additive a -> Additive a -> Bool #

(/=) :: Additive a -> Additive a -> Bool #

Ord a => Ord (Additive a) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

compare :: Additive a -> Additive a -> Ordering #

(<) :: Additive a -> Additive a -> Bool #

(<=) :: Additive a -> Additive a -> Bool #

(>) :: Additive a -> Additive a -> Bool #

(>=) :: Additive a -> Additive a -> Bool #

max :: Additive a -> Additive a -> Additive a #

min :: Additive a -> Additive a -> Additive a #

Show a => Show (Additive a) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

showsPrec :: Int -> Additive a -> ShowS #

show :: Additive a -> String #

showList :: [Additive a] -> ShowS #

Generic (Additive a) Source # 
Instance details

Defined in Data.Semigroup.Additive

Associated Types

type Rep (Additive a) :: Type -> Type #

Methods

from :: Additive a -> Rep (Additive a) x #

to :: Rep (Additive a) x -> Additive a #

Semigroup (Additive Bool) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Double) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Float) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Semigroup) b => Semigroup (Additive (a -> b)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(<>) :: Additive (a -> b) -> Additive (a -> b) -> Additive (a -> b) #

sconcat :: NonEmpty (Additive (a -> b)) -> Additive (a -> b) #

stimes :: Integral b0 => b0 -> Additive (a -> b) -> Additive (a -> b) #

Semigroup (Additive Int) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Int8) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Int16) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Int32) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Int64) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Integer) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Natural) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive [a]) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(<>) :: Additive [a] -> Additive [a] -> Additive [a] #

sconcat :: NonEmpty (Additive [a]) -> Additive [a] #

stimes :: Integral b => b -> Additive [a] -> Additive [a] #

(Additive - Semigroup) a => Semigroup (Additive (Maybe a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(<>) :: Additive (Maybe a) -> Additive (Maybe a) -> Additive (Maybe a) #

sconcat :: NonEmpty (Additive (Maybe a)) -> Additive (Maybe a) #

stimes :: Integral b => b -> Additive (Maybe a) -> Additive (Maybe a) #

((Additive - Semigroup) a, (Multiplicative - Semigroup) a) => Semigroup (Additive (Ratio a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(<>) :: Additive (Ratio a) -> Additive (Ratio a) -> Additive (Ratio a) #

sconcat :: NonEmpty (Additive (Ratio a)) -> Additive (Ratio a) #

stimes :: Integral b => b -> Additive (Ratio a) -> Additive (Ratio a) #

Semigroup (Additive Word) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Word8) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Word16) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Word32) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Word64) Source # 
Instance details

Defined in Data.Semigroup.Additive

((Additive - Semigroup) a, (Additive - Semigroup) b) => Semigroup (Additive (Either a b)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(<>) :: Additive (Either a b) -> Additive (Either a b) -> Additive (Either a b) #

sconcat :: NonEmpty (Additive (Either a b)) -> Additive (Either a b) #

stimes :: Integral b0 => b0 -> Additive (Either a b) -> Additive (Either a b) #

Semigroup (Additive ()) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(<>) :: Additive () -> Additive () -> Additive () #

sconcat :: NonEmpty (Additive ()) -> Additive () #

stimes :: Integral b => b -> Additive () -> Additive () #

((Additive - Semigroup) a, (Additive - Semigroup) b) => Semigroup (Additive (a, b)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(<>) :: Additive (a, b) -> Additive (a, b) -> Additive (a, b) #

sconcat :: NonEmpty (Additive (a, b)) -> Additive (a, b) #

stimes :: Integral b0 => b0 -> Additive (a, b) -> Additive (a, b) #

((Additive - Semigroup) a, (Additive - Semigroup) b, (Additive - Semigroup) c) => Semigroup (Additive (a, b, c)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(<>) :: Additive (a, b, c) -> Additive (a, b, c) -> Additive (a, b, c) #

sconcat :: NonEmpty (Additive (a, b, c)) -> Additive (a, b, c) #

stimes :: Integral b0 => b0 -> Additive (a, b, c) -> Additive (a, b, c) #

(Additive - Semigroup) a => Semigroup (Additive (Complex a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Uni) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Deci) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Centi) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Milli) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Micro) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Nano) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive Pico) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Semigroup) a => Semigroup (Additive (Down a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(<>) :: Additive (Down a) -> Additive (Down a) -> Additive (Down a) #

sconcat :: NonEmpty (Additive (Down a)) -> Additive (Down a) #

stimes :: Integral b => b -> Additive (Down a) -> Additive (Down a) #

Semigroup (Additive CFloat) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive CDouble) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive (NonEmpty a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Semigroup) a => Semigroup (Additive (IntMap a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Additive IntSet) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Ord k, (Additive - Semigroup) a) => Semigroup (Additive (Map k a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(<>) :: Additive (Map k a) -> Additive (Map k a) -> Additive (Map k a) #

sconcat :: NonEmpty (Additive (Map k a)) -> Additive (Map k a) #

stimes :: Integral b => b -> Additive (Map k a) -> Additive (Map k a) #

Ord a => Semigroup (Additive (Set a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(<>) :: Additive (Set a) -> Additive (Set a) -> Additive (Set a) #

sconcat :: NonEmpty (Additive (Set a)) -> Additive (Set a) #

stimes :: Integral b => b -> Additive (Set a) -> Additive (Set a) #

(Additive - Semigroup) a => Semigroup (Additive (Tran a b c)) Source # 
Instance details

Defined in Data.Semimodule.Algebra

Methods

(<>) :: Additive (Tran a b c) -> Additive (Tran a b c) -> Additive (Tran a b c) #

sconcat :: NonEmpty (Additive (Tran a b c)) -> Additive (Tran a b c) #

stimes :: Integral b0 => b0 -> Additive (Tran a b c) -> Additive (Tran a b c) #

(Additive - Semigroup) a => Semigroup (Additive (Dual a b)) Source # 
Instance details

Defined in Data.Semimodule.Dual

Methods

(<>) :: Additive (Dual a b) -> Additive (Dual a b) -> Additive (Dual a b) #

sconcat :: NonEmpty (Additive (Dual a b)) -> Additive (Dual a b) #

stimes :: Integral b0 => b0 -> Additive (Dual a b) -> Additive (Dual a b) #

(Additive - Semigroup) a => Semigroup (Additive (M44 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (M44 a) -> Additive (M44 a) -> Additive (M44 a) #

sconcat :: NonEmpty (Additive (M44 a)) -> Additive (M44 a) #

stimes :: Integral b => b -> Additive (M44 a) -> Additive (M44 a) #

(Additive - Semigroup) a => Semigroup (Additive (M43 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (M43 a) -> Additive (M43 a) -> Additive (M43 a) #

sconcat :: NonEmpty (Additive (M43 a)) -> Additive (M43 a) #

stimes :: Integral b => b -> Additive (M43 a) -> Additive (M43 a) #

(Additive - Semigroup) a => Semigroup (Additive (M42 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (M42 a) -> Additive (M42 a) -> Additive (M42 a) #

sconcat :: NonEmpty (Additive (M42 a)) -> Additive (M42 a) #

stimes :: Integral b => b -> Additive (M42 a) -> Additive (M42 a) #

(Additive - Semigroup) a => Semigroup (Additive (M34 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (M34 a) -> Additive (M34 a) -> Additive (M34 a) #

sconcat :: NonEmpty (Additive (M34 a)) -> Additive (M34 a) #

stimes :: Integral b => b -> Additive (M34 a) -> Additive (M34 a) #

(Additive - Semigroup) a => Semigroup (Additive (M33 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (M33 a) -> Additive (M33 a) -> Additive (M33 a) #

sconcat :: NonEmpty (Additive (M33 a)) -> Additive (M33 a) #

stimes :: Integral b => b -> Additive (M33 a) -> Additive (M33 a) #

(Additive - Semigroup) a => Semigroup (Additive (M32 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (M32 a) -> Additive (M32 a) -> Additive (M32 a) #

sconcat :: NonEmpty (Additive (M32 a)) -> Additive (M32 a) #

stimes :: Integral b => b -> Additive (M32 a) -> Additive (M32 a) #

(Additive - Semigroup) a => Semigroup (Additive (M24 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (M24 a) -> Additive (M24 a) -> Additive (M24 a) #

sconcat :: NonEmpty (Additive (M24 a)) -> Additive (M24 a) #

stimes :: Integral b => b -> Additive (M24 a) -> Additive (M24 a) #

(Additive - Semigroup) a => Semigroup (Additive (M23 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (M23 a) -> Additive (M23 a) -> Additive (M23 a) #

sconcat :: NonEmpty (Additive (M23 a)) -> Additive (M23 a) #

stimes :: Integral b => b -> Additive (M23 a) -> Additive (M23 a) #

(Additive - Semigroup) a => Semigroup (Additive (M22 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (M22 a) -> Additive (M22 a) -> Additive (M22 a) #

sconcat :: NonEmpty (Additive (M22 a)) -> Additive (M22 a) #

stimes :: Integral b => b -> Additive (M22 a) -> Additive (M22 a) #

(Additive - Semigroup) a => Semigroup (Additive (M41 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (M41 a) -> Additive (M41 a) -> Additive (M41 a) #

sconcat :: NonEmpty (Additive (M41 a)) -> Additive (M41 a) #

stimes :: Integral b => b -> Additive (M41 a) -> Additive (M41 a) #

(Additive - Semigroup) a => Semigroup (Additive (M31 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (M31 a) -> Additive (M31 a) -> Additive (M31 a) #

sconcat :: NonEmpty (Additive (M31 a)) -> Additive (M31 a) #

stimes :: Integral b => b -> Additive (M31 a) -> Additive (M31 a) #

(Additive - Semigroup) a => Semigroup (Additive (M21 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (M21 a) -> Additive (M21 a) -> Additive (M21 a) #

sconcat :: NonEmpty (Additive (M21 a)) -> Additive (M21 a) #

stimes :: Integral b => b -> Additive (M21 a) -> Additive (M21 a) #

(Additive - Semigroup) a => Semigroup (Additive (M14 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (M14 a) -> Additive (M14 a) -> Additive (M14 a) #

sconcat :: NonEmpty (Additive (M14 a)) -> Additive (M14 a) #

stimes :: Integral b => b -> Additive (M14 a) -> Additive (M14 a) #

(Additive - Semigroup) a => Semigroup (Additive (M13 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (M13 a) -> Additive (M13 a) -> Additive (M13 a) #

sconcat :: NonEmpty (Additive (M13 a)) -> Additive (M13 a) #

stimes :: Integral b => b -> Additive (M13 a) -> Additive (M13 a) #

(Additive - Semigroup) a => Semigroup (Additive (M12 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (M12 a) -> Additive (M12 a) -> Additive (M12 a) #

sconcat :: NonEmpty (Additive (M12 a)) -> Additive (M12 a) #

stimes :: Integral b => b -> Additive (M12 a) -> Additive (M12 a) #

(Additive - Semigroup) a => Semigroup (Additive (M11 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (M11 a) -> Additive (M11 a) -> Additive (M11 a) #

sconcat :: NonEmpty (Additive (M11 a)) -> Additive (M11 a) #

stimes :: Integral b => b -> Additive (M11 a) -> Additive (M11 a) #

(Additive - Semigroup) a => Semigroup (Additive (V4 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (V4 a) -> Additive (V4 a) -> Additive (V4 a) #

sconcat :: NonEmpty (Additive (V4 a)) -> Additive (V4 a) #

stimes :: Integral b => b -> Additive (V4 a) -> Additive (V4 a) #

(Additive - Semigroup) a => Semigroup (Additive (V3 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (V3 a) -> Additive (V3 a) -> Additive (V3 a) #

sconcat :: NonEmpty (Additive (V3 a)) -> Additive (V3 a) #

stimes :: Integral b => b -> Additive (V3 a) -> Additive (V3 a) #

(Additive - Semigroup) a => Semigroup (Additive (V2 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (V2 a) -> Additive (V2 a) -> Additive (V2 a) #

sconcat :: NonEmpty (Additive (V2 a)) -> Additive (V2 a) #

stimes :: Integral b => b -> Additive (V2 a) -> Additive (V2 a) #

(Additive - Semigroup) a => Semigroup (Additive (V1 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<>) :: Additive (V1 a) -> Additive (V1 a) -> Additive (V1 a) #

sconcat :: NonEmpty (Additive (V1 a)) -> Additive (V1 a) #

stimes :: Integral b => b -> Additive (V1 a) -> Additive (V1 a) #

Monoid (Additive Bool) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Double) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Float) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Monoid) b => Monoid (Additive (a -> b)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

mempty :: Additive (a -> b) #

mappend :: Additive (a -> b) -> Additive (a -> b) -> Additive (a -> b) #

mconcat :: [Additive (a -> b)] -> Additive (a -> b) #

Monoid (Additive Int) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Int8) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Int16) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Int32) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Int64) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Integer) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Natural) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive [a]) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

mempty :: Additive [a] #

mappend :: Additive [a] -> Additive [a] -> Additive [a] #

mconcat :: [Additive [a]] -> Additive [a] #

(Additive - Semigroup) a => Monoid (Additive (Maybe a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

((Additive - Monoid) a, (Multiplicative - Monoid) a) => Monoid (Additive (Ratio a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Word) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Word8) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Word16) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Word32) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Word64) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive ()) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

mempty :: Additive () #

mappend :: Additive () -> Additive () -> Additive () #

mconcat :: [Additive ()] -> Additive () #

((Additive - Monoid) a, (Additive - Monoid) b) => Monoid (Additive (a, b)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

mempty :: Additive (a, b) #

mappend :: Additive (a, b) -> Additive (a, b) -> Additive (a, b) #

mconcat :: [Additive (a, b)] -> Additive (a, b) #

((Additive - Monoid) a, (Additive - Monoid) b, (Additive - Monoid) c) => Monoid (Additive (a, b, c)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

mempty :: Additive (a, b, c) #

mappend :: Additive (a, b, c) -> Additive (a, b, c) -> Additive (a, b, c) #

mconcat :: [Additive (a, b, c)] -> Additive (a, b, c) #

(Additive - Monoid) a => Monoid (Additive (Complex a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Uni) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Deci) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Centi) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Milli) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Micro) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Nano) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive Pico) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Monoid) a => Monoid (Additive (Down a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

mempty :: Additive (Down a) #

mappend :: Additive (Down a) -> Additive (Down a) -> Additive (Down a) #

mconcat :: [Additive (Down a)] -> Additive (Down a) #

Monoid (Additive CFloat) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive CDouble) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Semigroup) a => Monoid (Additive (IntMap a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Additive IntSet) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Ord k, (Additive - Semigroup) a) => Monoid (Additive (Map k a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

mempty :: Additive (Map k a) #

mappend :: Additive (Map k a) -> Additive (Map k a) -> Additive (Map k a) #

mconcat :: [Additive (Map k a)] -> Additive (Map k a) #

Ord a => Monoid (Additive (Set a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

mempty :: Additive (Set a) #

mappend :: Additive (Set a) -> Additive (Set a) -> Additive (Set a) #

mconcat :: [Additive (Set a)] -> Additive (Set a) #

(Additive - Monoid) a => Monoid (Additive (Tran a b c)) Source # 
Instance details

Defined in Data.Semimodule.Algebra

Methods

mempty :: Additive (Tran a b c) #

mappend :: Additive (Tran a b c) -> Additive (Tran a b c) -> Additive (Tran a b c) #

mconcat :: [Additive (Tran a b c)] -> Additive (Tran a b c) #

(Additive - Monoid) a => Monoid (Additive (Dual a b)) Source # 
Instance details

Defined in Data.Semimodule.Dual

Methods

mempty :: Additive (Dual a b) #

mappend :: Additive (Dual a b) -> Additive (Dual a b) -> Additive (Dual a b) #

mconcat :: [Additive (Dual a b)] -> Additive (Dual a b) #

(Additive - Monoid) a => Monoid (Additive (M44 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (M44 a) #

mappend :: Additive (M44 a) -> Additive (M44 a) -> Additive (M44 a) #

mconcat :: [Additive (M44 a)] -> Additive (M44 a) #

(Additive - Monoid) a => Monoid (Additive (M43 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (M43 a) #

mappend :: Additive (M43 a) -> Additive (M43 a) -> Additive (M43 a) #

mconcat :: [Additive (M43 a)] -> Additive (M43 a) #

(Additive - Monoid) a => Monoid (Additive (M42 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (M42 a) #

mappend :: Additive (M42 a) -> Additive (M42 a) -> Additive (M42 a) #

mconcat :: [Additive (M42 a)] -> Additive (M42 a) #

(Additive - Monoid) a => Monoid (Additive (M34 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (M34 a) #

mappend :: Additive (M34 a) -> Additive (M34 a) -> Additive (M34 a) #

mconcat :: [Additive (M34 a)] -> Additive (M34 a) #

(Additive - Monoid) a => Monoid (Additive (M33 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (M33 a) #

mappend :: Additive (M33 a) -> Additive (M33 a) -> Additive (M33 a) #

mconcat :: [Additive (M33 a)] -> Additive (M33 a) #

(Additive - Monoid) a => Monoid (Additive (M32 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (M32 a) #

mappend :: Additive (M32 a) -> Additive (M32 a) -> Additive (M32 a) #

mconcat :: [Additive (M32 a)] -> Additive (M32 a) #

(Additive - Monoid) a => Monoid (Additive (M24 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (M24 a) #

mappend :: Additive (M24 a) -> Additive (M24 a) -> Additive (M24 a) #

mconcat :: [Additive (M24 a)] -> Additive (M24 a) #

(Additive - Monoid) a => Monoid (Additive (M23 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (M23 a) #

mappend :: Additive (M23 a) -> Additive (M23 a) -> Additive (M23 a) #

mconcat :: [Additive (M23 a)] -> Additive (M23 a) #

(Additive - Monoid) a => Monoid (Additive (M22 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (M22 a) #

mappend :: Additive (M22 a) -> Additive (M22 a) -> Additive (M22 a) #

mconcat :: [Additive (M22 a)] -> Additive (M22 a) #

(Additive - Monoid) a => Monoid (Additive (M41 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (M41 a) #

mappend :: Additive (M41 a) -> Additive (M41 a) -> Additive (M41 a) #

mconcat :: [Additive (M41 a)] -> Additive (M41 a) #

(Additive - Monoid) a => Monoid (Additive (M31 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (M31 a) #

mappend :: Additive (M31 a) -> Additive (M31 a) -> Additive (M31 a) #

mconcat :: [Additive (M31 a)] -> Additive (M31 a) #

(Additive - Monoid) a => Monoid (Additive (M21 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (M21 a) #

mappend :: Additive (M21 a) -> Additive (M21 a) -> Additive (M21 a) #

mconcat :: [Additive (M21 a)] -> Additive (M21 a) #

(Additive - Monoid) a => Monoid (Additive (M14 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (M14 a) #

mappend :: Additive (M14 a) -> Additive (M14 a) -> Additive (M14 a) #

mconcat :: [Additive (M14 a)] -> Additive (M14 a) #

(Additive - Monoid) a => Monoid (Additive (M13 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (M13 a) #

mappend :: Additive (M13 a) -> Additive (M13 a) -> Additive (M13 a) #

mconcat :: [Additive (M13 a)] -> Additive (M13 a) #

(Additive - Monoid) a => Monoid (Additive (M12 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (M12 a) #

mappend :: Additive (M12 a) -> Additive (M12 a) -> Additive (M12 a) #

mconcat :: [Additive (M12 a)] -> Additive (M12 a) #

(Additive - Monoid) a => Monoid (Additive (M11 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (M11 a) #

mappend :: Additive (M11 a) -> Additive (M11 a) -> Additive (M11 a) #

mconcat :: [Additive (M11 a)] -> Additive (M11 a) #

(Additive - Monoid) a => Monoid (Additive (V4 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (V4 a) #

mappend :: Additive (V4 a) -> Additive (V4 a) -> Additive (V4 a) #

mconcat :: [Additive (V4 a)] -> Additive (V4 a) #

(Additive - Monoid) a => Monoid (Additive (V3 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (V3 a) #

mappend :: Additive (V3 a) -> Additive (V3 a) -> Additive (V3 a) #

mconcat :: [Additive (V3 a)] -> Additive (V3 a) #

(Additive - Monoid) a => Monoid (Additive (V2 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (V2 a) #

mappend :: Additive (V2 a) -> Additive (V2 a) -> Additive (V2 a) #

mconcat :: [Additive (V2 a)] -> Additive (V2 a) #

(Additive - Monoid) a => Monoid (Additive (V1 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

mempty :: Additive (V1 a) #

mappend :: Additive (V1 a) -> Additive (V1 a) -> Additive (V1 a) #

mconcat :: [Additive (V1 a)] -> Additive (V1 a) #

Group (Additive Double) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Additive Float) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Group) b => Group (Additive (a -> b)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

inv :: Additive (a -> b) -> Additive (a -> b) #

greplicate :: Integer -> Additive (a -> b) -> Additive (a -> b) #

Group (Additive Int) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Additive Int8) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Additive Int16) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Additive Int32) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Additive Int64) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Additive Integer) Source # 
Instance details

Defined in Data.Semigroup.Additive

((Additive - Group) a, (Multiplicative - Monoid) a) => Group (Additive (Ratio a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Additive ()) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

inv :: Additive () -> Additive () #

greplicate :: Integer -> Additive () -> Additive () #

(Additive - Group) a => Group (Additive (Complex a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Additive Uni) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Additive Deci) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Additive Centi) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Additive Milli) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Additive Micro) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Additive Nano) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Additive Pico) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Additive CFloat) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Additive CDouble) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Group) a => Group (Additive (Tran a b c)) Source # 
Instance details

Defined in Data.Semimodule.Algebra

Methods

inv :: Additive (Tran a b c) -> Additive (Tran a b c) #

greplicate :: Integer -> Additive (Tran a b c) -> Additive (Tran a b c) #

(Additive - Group) a => Group (Additive (Dual a b)) Source # 
Instance details

Defined in Data.Semimodule.Dual

Methods

inv :: Additive (Dual a b) -> Additive (Dual a b) #

greplicate :: Integer -> Additive (Dual a b) -> Additive (Dual a b) #

(Additive - Group) a => Group (Additive (M44 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (M44 a) -> Additive (M44 a) #

greplicate :: Integer -> Additive (M44 a) -> Additive (M44 a) #

(Additive - Group) a => Group (Additive (M43 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (M43 a) -> Additive (M43 a) #

greplicate :: Integer -> Additive (M43 a) -> Additive (M43 a) #

(Additive - Group) a => Group (Additive (M42 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (M42 a) -> Additive (M42 a) #

greplicate :: Integer -> Additive (M42 a) -> Additive (M42 a) #

(Additive - Group) a => Group (Additive (M34 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (M34 a) -> Additive (M34 a) #

greplicate :: Integer -> Additive (M34 a) -> Additive (M34 a) #

(Additive - Group) a => Group (Additive (M33 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (M33 a) -> Additive (M33 a) #

greplicate :: Integer -> Additive (M33 a) -> Additive (M33 a) #

(Additive - Group) a => Group (Additive (M32 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (M32 a) -> Additive (M32 a) #

greplicate :: Integer -> Additive (M32 a) -> Additive (M32 a) #

(Additive - Group) a => Group (Additive (M24 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (M24 a) -> Additive (M24 a) #

greplicate :: Integer -> Additive (M24 a) -> Additive (M24 a) #

(Additive - Group) a => Group (Additive (M23 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (M23 a) -> Additive (M23 a) #

greplicate :: Integer -> Additive (M23 a) -> Additive (M23 a) #

(Additive - Group) a => Group (Additive (M22 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (M22 a) -> Additive (M22 a) #

greplicate :: Integer -> Additive (M22 a) -> Additive (M22 a) #

(Additive - Group) a => Group (Additive (M41 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (M41 a) -> Additive (M41 a) #

greplicate :: Integer -> Additive (M41 a) -> Additive (M41 a) #

(Additive - Group) a => Group (Additive (M31 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (M31 a) -> Additive (M31 a) #

greplicate :: Integer -> Additive (M31 a) -> Additive (M31 a) #

(Additive - Group) a => Group (Additive (M21 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (M21 a) -> Additive (M21 a) #

greplicate :: Integer -> Additive (M21 a) -> Additive (M21 a) #

(Additive - Group) a => Group (Additive (M14 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (M14 a) -> Additive (M14 a) #

greplicate :: Integer -> Additive (M14 a) -> Additive (M14 a) #

(Additive - Group) a => Group (Additive (M13 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (M13 a) -> Additive (M13 a) #

greplicate :: Integer -> Additive (M13 a) -> Additive (M13 a) #

(Additive - Group) a => Group (Additive (M12 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (M12 a) -> Additive (M12 a) #

greplicate :: Integer -> Additive (M12 a) -> Additive (M12 a) #

(Additive - Group) a => Group (Additive (M11 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (M11 a) -> Additive (M11 a) #

greplicate :: Integer -> Additive (M11 a) -> Additive (M11 a) #

(Additive - Group) a => Group (Additive (V4 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (V4 a) -> Additive (V4 a) #

greplicate :: Integer -> Additive (V4 a) -> Additive (V4 a) #

(Additive - Group) a => Group (Additive (V3 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (V3 a) -> Additive (V3 a) #

greplicate :: Integer -> Additive (V3 a) -> Additive (V3 a) #

(Additive - Group) a => Group (Additive (V2 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (V2 a) -> Additive (V2 a) #

greplicate :: Integer -> Additive (V2 a) -> Additive (V2 a) #

(Additive - Group) a => Group (Additive (V1 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

inv :: Additive (V1 a) -> Additive (V1 a) #

greplicate :: Integer -> Additive (V1 a) -> Additive (V1 a) #

Loop (Additive Double) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Additive Float) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Group) b => Loop (Additive (a -> b)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

lempty :: Additive (a -> b) #

lreplicate :: Natural -> Additive (a -> b) -> Additive (a -> b) #

Loop (Additive Int) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Additive Int8) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Additive Int16) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Additive Int32) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Additive Int64) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Additive Integer) Source # 
Instance details

Defined in Data.Semigroup.Additive

((Additive - Group) a, (Multiplicative - Monoid) a) => Loop (Additive (Ratio a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Additive ()) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

lempty :: Additive () #

lreplicate :: Natural -> Additive () -> Additive () #

(Additive - Group) a => Loop (Additive (Complex a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Additive Uni) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Additive Deci) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Additive Centi) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Additive Milli) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Additive Micro) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Additive Nano) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Additive Pico) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Additive CFloat) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Additive CDouble) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Group) a => Loop (Additive (Tran a b c)) Source # 
Instance details

Defined in Data.Semimodule.Algebra

Methods

lempty :: Additive (Tran a b c) #

lreplicate :: Natural -> Additive (Tran a b c) -> Additive (Tran a b c) #

(Additive - Group) a => Loop (Additive (Dual a b)) Source # 
Instance details

Defined in Data.Semimodule.Dual

Methods

lempty :: Additive (Dual a b) #

lreplicate :: Natural -> Additive (Dual a b) -> Additive (Dual a b) #

(Additive - Group) a => Loop (Additive (M44 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (M44 a) #

lreplicate :: Natural -> Additive (M44 a) -> Additive (M44 a) #

(Additive - Group) a => Loop (Additive (M43 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (M43 a) #

lreplicate :: Natural -> Additive (M43 a) -> Additive (M43 a) #

(Additive - Group) a => Loop (Additive (M42 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (M42 a) #

lreplicate :: Natural -> Additive (M42 a) -> Additive (M42 a) #

(Additive - Group) a => Loop (Additive (M34 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (M34 a) #

lreplicate :: Natural -> Additive (M34 a) -> Additive (M34 a) #

(Additive - Group) a => Loop (Additive (M33 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (M33 a) #

lreplicate :: Natural -> Additive (M33 a) -> Additive (M33 a) #

(Additive - Group) a => Loop (Additive (M32 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (M32 a) #

lreplicate :: Natural -> Additive (M32 a) -> Additive (M32 a) #

(Additive - Group) a => Loop (Additive (M24 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (M24 a) #

lreplicate :: Natural -> Additive (M24 a) -> Additive (M24 a) #

(Additive - Group) a => Loop (Additive (M23 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (M23 a) #

lreplicate :: Natural -> Additive (M23 a) -> Additive (M23 a) #

(Additive - Group) a => Loop (Additive (M22 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (M22 a) #

lreplicate :: Natural -> Additive (M22 a) -> Additive (M22 a) #

(Additive - Group) a => Loop (Additive (M41 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (M41 a) #

lreplicate :: Natural -> Additive (M41 a) -> Additive (M41 a) #

(Additive - Group) a => Loop (Additive (M31 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (M31 a) #

lreplicate :: Natural -> Additive (M31 a) -> Additive (M31 a) #

(Additive - Group) a => Loop (Additive (M21 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (M21 a) #

lreplicate :: Natural -> Additive (M21 a) -> Additive (M21 a) #

(Additive - Group) a => Loop (Additive (M14 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (M14 a) #

lreplicate :: Natural -> Additive (M14 a) -> Additive (M14 a) #

(Additive - Group) a => Loop (Additive (M13 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (M13 a) #

lreplicate :: Natural -> Additive (M13 a) -> Additive (M13 a) #

(Additive - Group) a => Loop (Additive (M12 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (M12 a) #

lreplicate :: Natural -> Additive (M12 a) -> Additive (M12 a) #

(Additive - Group) a => Loop (Additive (M11 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (M11 a) #

lreplicate :: Natural -> Additive (M11 a) -> Additive (M11 a) #

(Additive - Group) a => Loop (Additive (V4 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (V4 a) #

lreplicate :: Natural -> Additive (V4 a) -> Additive (V4 a) #

(Additive - Group) a => Loop (Additive (V3 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (V3 a) #

lreplicate :: Natural -> Additive (V3 a) -> Additive (V3 a) #

(Additive - Group) a => Loop (Additive (V2 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (V2 a) #

lreplicate :: Natural -> Additive (V2 a) -> Additive (V2 a) #

(Additive - Group) a => Loop (Additive (V1 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

lempty :: Additive (V1 a) #

lreplicate :: Natural -> Additive (V1 a) -> Additive (V1 a) #

Quasigroup (Additive Double) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Additive Float) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Group) b => Quasigroup (Additive (a -> b)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(//) :: Additive (a -> b) -> Additive (a -> b) -> Additive (a -> b) #

(\\) :: Additive (a -> b) -> Additive (a -> b) -> Additive (a -> b) #

Quasigroup (Additive Int) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Additive Int8) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Additive Int16) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Additive Int32) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Additive Int64) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Additive Integer) Source # 
Instance details

Defined in Data.Semigroup.Additive

((Additive - Group) a, (Multiplicative - Monoid) a) => Quasigroup (Additive (Ratio a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(//) :: Additive (Ratio a) -> Additive (Ratio a) -> Additive (Ratio a) #

(\\) :: Additive (Ratio a) -> Additive (Ratio a) -> Additive (Ratio a) #

Quasigroup (Additive ()) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(//) :: Additive () -> Additive () -> Additive () #

(\\) :: Additive () -> Additive () -> Additive () #

(Additive - Group) a => Quasigroup (Additive (Complex a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Additive Uni) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Additive Deci) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Additive Centi) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Additive Milli) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Additive Micro) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Additive Nano) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Additive Pico) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Additive CFloat) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Additive CDouble) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Group) a => Quasigroup (Additive (Tran a b c)) Source # 
Instance details

Defined in Data.Semimodule.Algebra

Methods

(//) :: Additive (Tran a b c) -> Additive (Tran a b c) -> Additive (Tran a b c) #

(\\) :: Additive (Tran a b c) -> Additive (Tran a b c) -> Additive (Tran a b c) #

(Additive - Group) a => Quasigroup (Additive (Dual a b)) Source # 
Instance details

Defined in Data.Semimodule.Dual

Methods

(//) :: Additive (Dual a b) -> Additive (Dual a b) -> Additive (Dual a b) #

(\\) :: Additive (Dual a b) -> Additive (Dual a b) -> Additive (Dual a b) #

(Additive - Group) a => Quasigroup (Additive (M44 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (M44 a) -> Additive (M44 a) -> Additive (M44 a) #

(\\) :: Additive (M44 a) -> Additive (M44 a) -> Additive (M44 a) #

(Additive - Group) a => Quasigroup (Additive (M43 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (M43 a) -> Additive (M43 a) -> Additive (M43 a) #

(\\) :: Additive (M43 a) -> Additive (M43 a) -> Additive (M43 a) #

(Additive - Group) a => Quasigroup (Additive (M42 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (M42 a) -> Additive (M42 a) -> Additive (M42 a) #

(\\) :: Additive (M42 a) -> Additive (M42 a) -> Additive (M42 a) #

(Additive - Group) a => Quasigroup (Additive (M34 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (M34 a) -> Additive (M34 a) -> Additive (M34 a) #

(\\) :: Additive (M34 a) -> Additive (M34 a) -> Additive (M34 a) #

(Additive - Group) a => Quasigroup (Additive (M33 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (M33 a) -> Additive (M33 a) -> Additive (M33 a) #

(\\) :: Additive (M33 a) -> Additive (M33 a) -> Additive (M33 a) #

(Additive - Group) a => Quasigroup (Additive (M32 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (M32 a) -> Additive (M32 a) -> Additive (M32 a) #

(\\) :: Additive (M32 a) -> Additive (M32 a) -> Additive (M32 a) #

(Additive - Group) a => Quasigroup (Additive (M24 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (M24 a) -> Additive (M24 a) -> Additive (M24 a) #

(\\) :: Additive (M24 a) -> Additive (M24 a) -> Additive (M24 a) #

(Additive - Group) a => Quasigroup (Additive (M23 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (M23 a) -> Additive (M23 a) -> Additive (M23 a) #

(\\) :: Additive (M23 a) -> Additive (M23 a) -> Additive (M23 a) #

(Additive - Group) a => Quasigroup (Additive (M22 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (M22 a) -> Additive (M22 a) -> Additive (M22 a) #

(\\) :: Additive (M22 a) -> Additive (M22 a) -> Additive (M22 a) #

(Additive - Group) a => Quasigroup (Additive (M41 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (M41 a) -> Additive (M41 a) -> Additive (M41 a) #

(\\) :: Additive (M41 a) -> Additive (M41 a) -> Additive (M41 a) #

(Additive - Group) a => Quasigroup (Additive (M31 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (M31 a) -> Additive (M31 a) -> Additive (M31 a) #

(\\) :: Additive (M31 a) -> Additive (M31 a) -> Additive (M31 a) #

(Additive - Group) a => Quasigroup (Additive (M21 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (M21 a) -> Additive (M21 a) -> Additive (M21 a) #

(\\) :: Additive (M21 a) -> Additive (M21 a) -> Additive (M21 a) #

(Additive - Group) a => Quasigroup (Additive (M14 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (M14 a) -> Additive (M14 a) -> Additive (M14 a) #

(\\) :: Additive (M14 a) -> Additive (M14 a) -> Additive (M14 a) #

(Additive - Group) a => Quasigroup (Additive (M13 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (M13 a) -> Additive (M13 a) -> Additive (M13 a) #

(\\) :: Additive (M13 a) -> Additive (M13 a) -> Additive (M13 a) #

(Additive - Group) a => Quasigroup (Additive (M12 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (M12 a) -> Additive (M12 a) -> Additive (M12 a) #

(\\) :: Additive (M12 a) -> Additive (M12 a) -> Additive (M12 a) #

(Additive - Group) a => Quasigroup (Additive (M11 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (M11 a) -> Additive (M11 a) -> Additive (M11 a) #

(\\) :: Additive (M11 a) -> Additive (M11 a) -> Additive (M11 a) #

(Additive - Group) a => Quasigroup (Additive (V4 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (V4 a) -> Additive (V4 a) -> Additive (V4 a) #

(\\) :: Additive (V4 a) -> Additive (V4 a) -> Additive (V4 a) #

(Additive - Group) a => Quasigroup (Additive (V3 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (V3 a) -> Additive (V3 a) -> Additive (V3 a) #

(\\) :: Additive (V3 a) -> Additive (V3 a) -> Additive (V3 a) #

(Additive - Group) a => Quasigroup (Additive (V2 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (V2 a) -> Additive (V2 a) -> Additive (V2 a) #

(\\) :: Additive (V2 a) -> Additive (V2 a) -> Additive (V2 a) #

(Additive - Group) a => Quasigroup (Additive (V1 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(//) :: Additive (V1 a) -> Additive (V1 a) -> Additive (V1 a) #

(\\) :: Additive (V1 a) -> Additive (V1 a) -> Additive (V1 a) #

Magma (Additive Double) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Additive Float) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Group) b => Magma (Additive (a -> b)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(<<) :: Additive (a -> b) -> Additive (a -> b) -> Additive (a -> b) #

Magma (Additive Int) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Additive Int8) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Additive Int16) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Additive Int32) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Additive Int64) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Additive Integer) Source # 
Instance details

Defined in Data.Semigroup.Additive

((Additive - Group) a, (Multiplicative - Monoid) a) => Magma (Additive (Ratio a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(<<) :: Additive (Ratio a) -> Additive (Ratio a) -> Additive (Ratio a) #

Magma (Additive ()) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(<<) :: Additive () -> Additive () -> Additive () #

(Additive - Group) a => Magma (Additive (Complex a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(<<) :: Additive (Complex a) -> Additive (Complex a) -> Additive (Complex a) #

Magma (Additive Uni) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Additive Deci) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Additive Centi) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Additive Milli) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Additive Micro) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Additive Nano) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Additive Pico) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Additive CFloat) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Additive CDouble) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Group) a => Magma (Additive (Tran a b c)) Source # 
Instance details

Defined in Data.Semimodule.Algebra

Methods

(<<) :: Additive (Tran a b c) -> Additive (Tran a b c) -> Additive (Tran a b c) #

(Additive - Group) a => Magma (Additive (Dual a b)) Source # 
Instance details

Defined in Data.Semimodule.Dual

Methods

(<<) :: Additive (Dual a b) -> Additive (Dual a b) -> Additive (Dual a b) #

(Additive - Group) a => Magma (Additive (M44 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (M44 a) -> Additive (M44 a) -> Additive (M44 a) #

(Additive - Group) a => Magma (Additive (M43 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (M43 a) -> Additive (M43 a) -> Additive (M43 a) #

(Additive - Group) a => Magma (Additive (M42 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (M42 a) -> Additive (M42 a) -> Additive (M42 a) #

(Additive - Group) a => Magma (Additive (M34 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (M34 a) -> Additive (M34 a) -> Additive (M34 a) #

(Additive - Group) a => Magma (Additive (M33 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (M33 a) -> Additive (M33 a) -> Additive (M33 a) #

(Additive - Group) a => Magma (Additive (M32 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (M32 a) -> Additive (M32 a) -> Additive (M32 a) #

(Additive - Group) a => Magma (Additive (M24 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (M24 a) -> Additive (M24 a) -> Additive (M24 a) #

(Additive - Group) a => Magma (Additive (M23 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (M23 a) -> Additive (M23 a) -> Additive (M23 a) #

(Additive - Group) a => Magma (Additive (M22 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (M22 a) -> Additive (M22 a) -> Additive (M22 a) #

(Additive - Group) a => Magma (Additive (M41 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (M41 a) -> Additive (M41 a) -> Additive (M41 a) #

(Additive - Group) a => Magma (Additive (M31 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (M31 a) -> Additive (M31 a) -> Additive (M31 a) #

(Additive - Group) a => Magma (Additive (M21 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (M21 a) -> Additive (M21 a) -> Additive (M21 a) #

(Additive - Group) a => Magma (Additive (M14 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (M14 a) -> Additive (M14 a) -> Additive (M14 a) #

(Additive - Group) a => Magma (Additive (M13 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (M13 a) -> Additive (M13 a) -> Additive (M13 a) #

(Additive - Group) a => Magma (Additive (M12 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (M12 a) -> Additive (M12 a) -> Additive (M12 a) #

(Additive - Group) a => Magma (Additive (M11 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (M11 a) -> Additive (M11 a) -> Additive (M11 a) #

(Additive - Group) a => Magma (Additive (V4 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (V4 a) -> Additive (V4 a) -> Additive (V4 a) #

(Additive - Group) a => Magma (Additive (V3 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (V3 a) -> Additive (V3 a) -> Additive (V3 a) #

(Additive - Group) a => Magma (Additive (V2 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (V2 a) -> Additive (V2 a) -> Additive (V2 a) #

(Additive - Group) a => Magma (Additive (V1 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Methods

(<<) :: Additive (V1 a) -> Additive (V1 a) -> Additive (V1 a) #

type Rep Additive Source # 
Instance details

Defined in Data.Semigroup.Additive

type Rep Additive = ()
type Rep (Additive a) Source # 
Instance details

Defined in Data.Semigroup.Additive

type Rep (Additive a) = D1 (MetaData "Additive" "Data.Semigroup.Additive" "rings-0.1.2-5cupeQ1NQKcKNC2Ls8OsAI" True) (C1 (MetaCons "Additive" PrefixI True) (S1 (MetaSel (Just "unAdditive") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)))

zero :: (Additive - Monoid) a => a Source #

Additive unit of a semiring.

(+) :: (Additive - Semigroup) a => a -> a -> a infixl 6 Source #

Additive semigroup operation on a semiring.

>>> Dual [2] + Dual [3] :: Dual [Int]
Dual {getDual = [3,2]}

subtract :: (Additive - Group) a => a -> a -> a Source #

Subtract two elements.

newtype Multiplicative a Source #

A (potentially non-commutative) Semigroup under *.

Constructors

Multiplicative 

Fields

Instances
Functor Multiplicative Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

fmap :: (a -> b) -> Multiplicative a -> Multiplicative b #

(<$) :: a -> Multiplicative b -> Multiplicative a #

Applicative Multiplicative Source # 
Instance details

Defined in Data.Semigroup.Additive

Distributive Multiplicative Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

distribute :: Functor f => f (Multiplicative a) -> Multiplicative (f a) #

collect :: Functor f => (a -> Multiplicative b) -> f a -> Multiplicative (f b) #

distributeM :: Monad m => m (Multiplicative a) -> Multiplicative (m a) #

collectM :: Monad m => (a -> Multiplicative b) -> m a -> Multiplicative (m b) #

Representable Multiplicative Source # 
Instance details

Defined in Data.Semigroup.Additive

Associated Types

type Rep Multiplicative :: Type #

Eq a => Eq (Multiplicative a) Source # 
Instance details

Defined in Data.Semigroup.Additive

Ord a => Ord (Multiplicative a) Source # 
Instance details

Defined in Data.Semigroup.Additive

Show a => Show (Multiplicative a) Source # 
Instance details

Defined in Data.Semigroup.Additive

Generic (Multiplicative a) Source # 
Instance details

Defined in Data.Semigroup.Additive

Associated Types

type Rep (Multiplicative a) :: Type -> Type #

Semigroup (Multiplicative Bool) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Double) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Float) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Semigroup) b => Semigroup (Multiplicative (a -> b)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(<>) :: Multiplicative (a -> b) -> Multiplicative (a -> b) -> Multiplicative (a -> b) #

sconcat :: NonEmpty (Multiplicative (a -> b)) -> Multiplicative (a -> b) #

stimes :: Integral b0 => b0 -> Multiplicative (a -> b) -> Multiplicative (a -> b) #

Semigroup (Multiplicative Int) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Int8) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Int16) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Int32) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Int64) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Integer) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Natural) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Semigroup) a => Semigroup (Multiplicative [a]) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Semigroup) a => Semigroup (Multiplicative (Maybe a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Semigroup) a => Semigroup (Multiplicative (Ratio a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Word) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Word8) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Word16) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Word32) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Word64) Source # 
Instance details

Defined in Data.Semigroup.Additive

((Multiplicative - Semigroup) a, (Multiplicative - Semigroup) b) => Semigroup (Multiplicative (Either a b)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative ()) Source # 
Instance details

Defined in Data.Semigroup.Additive

((Multiplicative - Semigroup) a, (Multiplicative - Semigroup) b) => Semigroup (Multiplicative (a, b)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

(<>) :: Multiplicative (a, b) -> Multiplicative (a, b) -> Multiplicative (a, b) #

sconcat :: NonEmpty (Multiplicative (a, b)) -> Multiplicative (a, b) #

stimes :: Integral b0 => b0 -> Multiplicative (a, b) -> Multiplicative (a, b) #

((Additive - Group) a, (Multiplicative - Semigroup) a) => Semigroup (Multiplicative (Complex a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Uni) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Deci) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Centi) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Milli) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Micro) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Nano) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative Pico) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Semigroup) a => Semigroup (Multiplicative (Min a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Semigroup) a => Semigroup (Multiplicative (Max a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Semigroup) a => Semigroup (Multiplicative (Dual a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Semigroup) a => Semigroup (Multiplicative (Down a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative CFloat) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative CDouble) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Semigroup) a => Semigroup (Multiplicative (NonEmpty a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Semigroup) a => Semigroup (Multiplicative (IntMap a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Semigroup (Multiplicative IntSet) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Ord k, (Multiplicative - Semigroup) a) => Semigroup (Multiplicative (Map k a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Ord a => Semigroup (Multiplicative (Set a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Coalgebra a c => Semigroup (Multiplicative (Tran a b c)) Source # 
Instance details

Defined in Data.Semimodule.Algebra

Methods

(<>) :: Multiplicative (Tran a b c) -> Multiplicative (Tran a b c) -> Multiplicative (Tran a b c) #

sconcat :: NonEmpty (Multiplicative (Tran a b c)) -> Multiplicative (Tran a b c) #

stimes :: Integral b0 => b0 -> Multiplicative (Tran a b c) -> Multiplicative (Tran a b c) #

Coalgebra a b => Semigroup (Multiplicative (Dual a b)) Source # 
Instance details

Defined in Data.Semimodule.Dual

Semiring a => Semigroup (Multiplicative (M44 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Semiring a => Semigroup (Multiplicative (M33 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Semiring a => Semigroup (Multiplicative (M22 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Semiring a => Semigroup (Multiplicative (M11 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Monoid (Multiplicative Bool) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Double) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Float) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Monoid) b => Monoid (Multiplicative (a -> b)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Methods

mempty :: Multiplicative (a -> b) #

mappend :: Multiplicative (a -> b) -> Multiplicative (a -> b) -> Multiplicative (a -> b) #

mconcat :: [Multiplicative (a -> b)] -> Multiplicative (a -> b) #

Monoid (Multiplicative Int) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Int8) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Int16) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Int32) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Int64) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Integer) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Natural) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Monoid) a => Monoid (Multiplicative [a]) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Monoid) a => Monoid (Multiplicative (Maybe a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Monoid) a => Monoid (Multiplicative (Ratio a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Word) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Word8) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Word16) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Word32) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Word64) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative ()) Source # 
Instance details

Defined in Data.Semigroup.Additive

((Additive - Group) a, (Multiplicative - Monoid) a) => Monoid (Multiplicative (Complex a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Uni) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Deci) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Centi) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Milli) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Micro) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Nano) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative Pico) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Additive - Monoid) a => Monoid (Multiplicative (Min a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Monoid) a => Monoid (Multiplicative (Max a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Monoid) a => Monoid (Multiplicative (Dual a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Monoid) a => Monoid (Multiplicative (Down a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative CFloat) Source # 
Instance details

Defined in Data.Semigroup.Additive

Monoid (Multiplicative CDouble) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Monoid) a => Monoid (Multiplicative (IntMap a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Ord k, (Multiplicative - Monoid) k, (Multiplicative - Monoid) a) => Monoid (Multiplicative (Map k a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Counital a c => Monoid (Multiplicative (Tran a b c)) Source # 
Instance details

Defined in Data.Semimodule.Algebra

Methods

mempty :: Multiplicative (Tran a b c) #

mappend :: Multiplicative (Tran a b c) -> Multiplicative (Tran a b c) -> Multiplicative (Tran a b c) #

mconcat :: [Multiplicative (Tran a b c)] -> Multiplicative (Tran a b c) #

Counital a b => Monoid (Multiplicative (Dual a b)) Source # 
Instance details

Defined in Data.Semimodule.Dual

Semiring a => Monoid (Multiplicative (M44 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Semiring a => Monoid (Multiplicative (M33 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Semiring a => Monoid (Multiplicative (M22 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Semiring a => Monoid (Multiplicative (M11 a)) Source # 
Instance details

Defined in Data.Semimodule.Free

Group (Multiplicative Double) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Multiplicative Float) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Monoid) a => Group (Multiplicative (Ratio a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Multiplicative ()) Source # 
Instance details

Defined in Data.Semigroup.Additive

((Additive - Group) a, (Multiplicative - Group) a) => Group (Multiplicative (Complex a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Multiplicative Uni) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Multiplicative Deci) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Multiplicative Centi) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Multiplicative Milli) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Multiplicative Micro) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Multiplicative Nano) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Multiplicative Pico) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Multiplicative CFloat) Source # 
Instance details

Defined in Data.Semigroup.Additive

Group (Multiplicative CDouble) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Multiplicative Double) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Multiplicative Float) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Monoid) a => Loop (Multiplicative (Ratio a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Multiplicative ()) Source # 
Instance details

Defined in Data.Semigroup.Additive

((Additive - Group) a, (Multiplicative - Group) a) => Loop (Multiplicative (Complex a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Multiplicative Uni) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Multiplicative Deci) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Multiplicative Centi) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Multiplicative Milli) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Multiplicative Micro) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Multiplicative Nano) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Multiplicative Pico) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Multiplicative CFloat) Source # 
Instance details

Defined in Data.Semigroup.Additive

Loop (Multiplicative CDouble) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Multiplicative Double) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Multiplicative Float) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Monoid) a => Quasigroup (Multiplicative (Ratio a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Multiplicative ()) Source # 
Instance details

Defined in Data.Semigroup.Additive

((Additive - Group) a, (Multiplicative - Group) a) => Quasigroup (Multiplicative (Complex a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Multiplicative Uni) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Multiplicative Deci) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Multiplicative Centi) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Multiplicative Milli) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Multiplicative Micro) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Multiplicative Nano) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Multiplicative Pico) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Multiplicative CFloat) Source # 
Instance details

Defined in Data.Semigroup.Additive

Quasigroup (Multiplicative CDouble) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Multiplicative Double) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Multiplicative Float) Source # 
Instance details

Defined in Data.Semigroup.Additive

(Multiplicative - Monoid) a => Magma (Multiplicative (Ratio a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Multiplicative ()) Source # 
Instance details

Defined in Data.Semigroup.Additive

((Additive - Group) a, (Multiplicative - Group) a) => Magma (Multiplicative (Complex a)) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Multiplicative Uni) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Multiplicative Deci) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Multiplicative Centi) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Multiplicative Milli) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Multiplicative Micro) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Multiplicative Nano) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Multiplicative Pico) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Multiplicative CFloat) Source # 
Instance details

Defined in Data.Semigroup.Additive

Magma (Multiplicative CDouble) Source # 
Instance details

Defined in Data.Semigroup.Additive

type Rep Multiplicative Source # 
Instance details

Defined in Data.Semigroup.Additive

type Rep (Multiplicative a) Source # 
Instance details

Defined in Data.Semigroup.Additive

type Rep (Multiplicative a) = D1 (MetaData "Multiplicative" "Data.Semigroup.Additive" "rings-0.1.2-5cupeQ1NQKcKNC2Ls8OsAI" True) (C1 (MetaCons "Multiplicative" PrefixI True) (S1 (MetaSel (Just "unMultiplicative") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)))

one :: (Multiplicative - Monoid) a => a Source #

Multiplicative unit of a semiring.

(*) :: (Multiplicative - Semigroup) a => a -> a -> a infixl 7 Source #

Multiplicative semigroup operation on a semiring.

>>> Dual [2] * Dual [3] :: Dual [Int]
Dual {getDual = [5]}

recip :: (Multiplicative - Group) a => a -> a Source #

Reciprocal of a multiplicative group element.

x / y = x * recip y
x \\ y = recip x * y
>>> recip (3 :+ 4) :: Complex Rational
3 % 25 :+ (-4) % 25
>>> recip (3 :+ 4) :: Complex Double
0.12 :+ (-0.16)
>>> recip (3 :+ 4) :: Complex Pico
0.120000000000 :+ -0.160000000000

(/) :: (Multiplicative - Group) a => a -> a -> a infixl 7 Source #

Right division by a multiplicative group element.

(\\) :: (Multiplicative - Group) a => a -> a -> a infixl 7 Source #

Left division by a multiplicative group element.

When * is commutative we must have:

 x \\ y = y / x