algebra-4.3: Constructive abstract algebra

Safe Haskell Safe Haskell98

Numeric.Module.Class

Contents

Synopsis

# Module over semirings

class (Semiring r, Additive m) => LeftModule r m where Source #

Minimal complete definition

(.*)

Methods

(.*) :: r -> m -> m infixl 7 Source #

Instances

 Source # Methods(.*) :: Integer -> Int -> Int Source # Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Additive m => LeftModule () m Source # Methods(.*) :: () -> m -> m Source # Semiring r => LeftModule r () Source # Methods(.*) :: r -> () -> () Source # Source # Methods Source # Methods(.*) :: Natural -> Int -> Int Source # Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods(.*) :: Integer -> Fraction d -> Fraction d Source # Division r => LeftModule Integer (Log r) Source # Methods(.*) :: Integer -> Log r -> Log r Source # (Abelian r, Group r) => LeftModule Integer (RngRing r) Source # Methods(.*) :: Integer -> RngRing r -> RngRing r Source # Source # Methods(.*) :: Integer -> ZeroRng r -> ZeroRng r Source # LeftModule r s => LeftModule r (Complex s) Source # Methods(.*) :: r -> Complex s -> Complex s Source # LeftModule r s => LeftModule r (Dual s) Source # Methods(.*) :: r -> Dual s -> Dual s Source # LeftModule r s => LeftModule r (Hyper' s) Source # Methods(.*) :: r -> Hyper' s -> Hyper' s Source # LeftModule r s => LeftModule r (Quaternion s) Source # Methods(.*) :: r -> Quaternion s -> Quaternion s Source # LeftModule r s => LeftModule r (Dual' s) Source # Methods(.*) :: r -> Dual' s -> Dual' s Source # LeftModule r s => LeftModule r (Hyper s) Source # Methods(.*) :: r -> Hyper s -> Hyper s Source # LeftModule r s => LeftModule r (Quaternion' s) Source # Methods(.*) :: r -> Quaternion' s -> Quaternion' s Source # LeftModule r s => LeftModule r (Trig s) Source # Methods(.*) :: r -> Trig s -> Trig s Source # LeftModule r m => LeftModule r (End m) Source # Methods(.*) :: r -> End m -> End m Source # RightModule r s => LeftModule r (Opposite s) Source # Methods(.*) :: r -> Opposite s -> Opposite s Source # Source # Methods(.*) :: Natural -> Fraction d -> Fraction d Source # Source # Methods Unital r => LeftModule Natural (Log r) Source # Methods(.*) :: Natural -> Log r -> Log r Source # (Abelian r, Monoidal r) => LeftModule Natural (RngRing r) Source # Methods(.*) :: Natural -> RngRing r -> RngRing r Source # Source # Methods(.*) :: Natural -> ZeroRng r -> ZeroRng r Source # (LeftModule r a, LeftModule r b) => LeftModule r (a, b) Source # Methods(.*) :: r -> (a, b) -> (a, b) Source # LeftModule r m => LeftModule r (e -> m) Source # Methods(.*) :: r -> (e -> m) -> e -> m Source # LeftModule r s => LeftModule r (Covector s m) Source # Methods(.*) :: r -> Covector s m -> Covector s m Source # (LeftModule r a, LeftModule r b, LeftModule r c) => LeftModule r (a, b, c) Source # Methods(.*) :: r -> (a, b, c) -> (a, b, c) Source # LeftModule r s => LeftModule r (Map s b m) Source # Methods(.*) :: r -> Map s b m -> Map s b m Source # (LeftModule r a, LeftModule r b, LeftModule r c, LeftModule r d) => LeftModule r (a, b, c, d) Source # Methods(.*) :: r -> (a, b, c, d) -> (a, b, c, d) Source # (LeftModule r a, LeftModule r b, LeftModule r c, LeftModule r d, LeftModule r e) => LeftModule r (a, b, c, d, e) Source # Methods(.*) :: r -> (a, b, c, d, e) -> (a, b, c, d, e) Source # (Commutative r, Rng r) => LeftModule (Complex r) (Complex r) Source # Methods(.*) :: Complex r -> Complex r -> Complex r Source # (Commutative r, Rng r) => LeftModule (Dual r) (Dual r) Source # Methods(.*) :: Dual r -> Dual r -> Dual r Source # (Commutative r, Semiring r) => LeftModule (Hyper' r) (Hyper' r) Source # Methods(.*) :: Hyper' r -> Hyper' r -> Hyper' r Source # (TriviallyInvolutive r, Rng r) => LeftModule (Quaternion r) (Quaternion r) Source # Methods(.*) :: Quaternion r -> Quaternion r -> Quaternion r Source # (Commutative r, Rng r) => LeftModule (Dual' r) (Dual' r) Source # Methods(.*) :: Dual' r -> Dual' r -> Dual' r Source # (Commutative r, Semiring r) => LeftModule (Hyper r) (Hyper r) Source # Methods(.*) :: Hyper r -> Hyper r -> Hyper r Source # (TriviallyInvolutive r, Rng r) => LeftModule (Quaternion' r) (Quaternion' r) Source # Methods(.*) :: Quaternion' r -> Quaternion' r -> Quaternion' r Source # (Commutative r, Rng r) => LeftModule (Trig r) (Trig r) Source # Methods(.*) :: Trig r -> Trig r -> Trig r Source # (Monoidal m, Abelian m) => LeftModule (End m) (End m) Source # Methods(.*) :: End m -> End m -> End m Source # Semiring r => LeftModule (Opposite r) (Opposite r) Source # Methods(.*) :: Opposite r -> Opposite r -> Opposite r Source # Rng s => LeftModule (RngRing s) (RngRing s) Source # Methods(.*) :: RngRing s -> RngRing s -> RngRing s Source # Coalgebra r m => LeftModule (Covector r m) (Covector r m) Source # Methods(.*) :: Covector r m -> Covector r m -> Covector r m Source # Coalgebra r m => LeftModule (Map r b m) (Map r b m) Source # Methods(.*) :: Map r b m -> Map r b m -> Map r b m Source #

class (Semiring r, Additive m) => RightModule r m where Source #

Minimal complete definition

(*.)

Methods

(*.) :: m -> r -> m infixl 7 Source #

Instances

 Source # Methods(*.) :: Int -> Integer -> Int Source # Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Additive m => RightModule () m Source # Methods(*.) :: m -> () -> m Source # Semiring r => RightModule r () Source # Methods(*.) :: () -> r -> () Source # Source # Methods Source # Methods(*.) :: Int -> Natural -> Int Source # Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods Source # Methods(*.) :: Fraction d -> Integer -> Fraction d Source # Source # Methods(*.) :: Log r -> Integer -> Log r Source # (Abelian r, Group r) => RightModule Integer (RngRing r) Source # Methods(*.) :: RngRing r -> Integer -> RngRing r Source # Source # Methods(*.) :: ZeroRng r -> Integer -> ZeroRng r Source # RightModule r s => RightModule r (Complex s) Source # Methods(*.) :: Complex s -> r -> Complex s Source # RightModule r s => RightModule r (Dual s) Source # Methods(*.) :: Dual s -> r -> Dual s Source # RightModule r s => RightModule r (Hyper' s) Source # Methods(*.) :: Hyper' s -> r -> Hyper' s Source # RightModule r s => RightModule r (Quaternion s) Source # Methods(*.) :: Quaternion s -> r -> Quaternion s Source # RightModule r s => RightModule r (Dual' s) Source # Methods(*.) :: Dual' s -> r -> Dual' s Source # RightModule r s => RightModule r (Hyper s) Source # Methods(*.) :: Hyper s -> r -> Hyper s Source # RightModule r s => RightModule r (Quaternion' s) Source # Methods(*.) :: Quaternion' s -> r -> Quaternion' s Source # RightModule r s => RightModule r (Trig s) Source # Methods(*.) :: Trig s -> r -> Trig s Source # RightModule r m => RightModule r (End m) Source # Methods(*.) :: End m -> r -> End m Source # LeftModule r s => RightModule r (Opposite s) Source # Methods(*.) :: Opposite s -> r -> Opposite s Source # Source # Methods(*.) :: Fraction d -> Natural -> Fraction d Source # Source # Methods Unital r => RightModule Natural (Log r) Source # Methods(*.) :: Log r -> Natural -> Log r Source # (Abelian r, Monoidal r) => RightModule Natural (RngRing r) Source # Methods(*.) :: RngRing r -> Natural -> RngRing r Source # Source # Methods(*.) :: ZeroRng r -> Natural -> ZeroRng r Source # (RightModule r a, RightModule r b) => RightModule r (a, b) Source # Methods(*.) :: (a, b) -> r -> (a, b) Source # RightModule r m => RightModule r (e -> m) Source # Methods(*.) :: (e -> m) -> r -> e -> m Source # RightModule r s => RightModule r (Covector s m) Source # Methods(*.) :: Covector s m -> r -> Covector s m Source # (RightModule r a, RightModule r b, RightModule r c) => RightModule r (a, b, c) Source # Methods(*.) :: (a, b, c) -> r -> (a, b, c) Source # RightModule r s => RightModule r (Map s b m) Source # Methods(*.) :: Map s b m -> r -> Map s b m Source # (RightModule r a, RightModule r b, RightModule r c, RightModule r d) => RightModule r (a, b, c, d) Source # Methods(*.) :: (a, b, c, d) -> r -> (a, b, c, d) Source # (RightModule r a, RightModule r b, RightModule r c, RightModule r d, RightModule r e) => RightModule r (a, b, c, d, e) Source # Methods(*.) :: (a, b, c, d, e) -> r -> (a, b, c, d, e) Source # (Commutative r, Rng r) => RightModule (Complex r) (Complex r) Source # Methods(*.) :: Complex r -> Complex r -> Complex r Source # (Commutative r, Rng r) => RightModule (Dual r) (Dual r) Source # Methods(*.) :: Dual r -> Dual r -> Dual r Source # (Commutative r, Semiring r) => RightModule (Hyper' r) (Hyper' r) Source # Methods(*.) :: Hyper' r -> Hyper' r -> Hyper' r Source # (TriviallyInvolutive r, Rng r) => RightModule (Quaternion r) (Quaternion r) Source # Methods(*.) :: Quaternion r -> Quaternion r -> Quaternion r Source # (Commutative r, Rng r) => RightModule (Dual' r) (Dual' r) Source # Methods(*.) :: Dual' r -> Dual' r -> Dual' r Source # (Commutative r, Semiring r) => RightModule (Hyper r) (Hyper r) Source # Methods(*.) :: Hyper r -> Hyper r -> Hyper r Source # (TriviallyInvolutive r, Rng r) => RightModule (Quaternion' r) (Quaternion' r) Source # Methods(*.) :: Quaternion' r -> Quaternion' r -> Quaternion' r Source # (Commutative r, Rng r) => RightModule (Trig r) (Trig r) Source # Methods(*.) :: Trig r -> Trig r -> Trig r Source # (Monoidal m, Abelian m) => RightModule (End m) (End m) Source # Methods(*.) :: End m -> End m -> End m Source # Semiring r => RightModule (Opposite r) (Opposite r) Source # Methods(*.) :: Opposite r -> Opposite r -> Opposite r Source # Rng s => RightModule (RngRing s) (RngRing s) Source # Methods(*.) :: RngRing s -> RngRing s -> RngRing s Source # Coalgebra r m => RightModule (Covector r m) (Covector r m) Source # Methods(*.) :: Covector r m -> Covector r m -> Covector r m Source # Coalgebra r m => RightModule (Map r b m) (Map r b m) Source # Methods(*.) :: Map r b m -> Map r b m -> Map r b m Source #

class (LeftModule r m, RightModule r m) => Module r m Source #

Instances

 (LeftModule r m, RightModule r m) => Module r m Source #