algebra-4.3: Constructive abstract algebra

Contents

Synopsis

class (LeftModule Integer r, RightModule Integer r, Monoidal r) => Group r where Source #

Methods

(-) :: r -> r -> r infixl 6 Source #

negate :: r -> r Source #

subtract :: r -> r -> r Source #

times :: Integral n => n -> r -> r infixl 7 Source #

Instances

 Source # Methods(-) :: Int -> Int -> Int Source #subtract :: Int -> Int -> Int Source #times :: Integral n => n -> Int -> Int Source # Source # Methods(-) :: Int8 -> Int8 -> Int8 Source #times :: Integral n => n -> Int8 -> Int8 Source # Source # Methodstimes :: Integral n => n -> Int16 -> Int16 Source # Source # Methodstimes :: Integral n => n -> Int32 -> Int32 Source # Source # Methodstimes :: Integral n => n -> Int64 -> Int64 Source # Source # Methodstimes :: Integral n => n -> Integer -> Integer Source # Source # Methods(-) :: Word -> Word -> Word Source #times :: Integral n => n -> Word -> Word Source # Source # Methodstimes :: Integral n => n -> Word8 -> Word8 Source # Source # Methodstimes :: Integral n => n -> Word16 -> Word16 Source # Source # Methodstimes :: Integral n => n -> Word32 -> Word32 Source # Source # Methodstimes :: Integral n => n -> Word64 -> Word64 Source # Group () Source # Methods(-) :: () -> () -> () Source #negate :: () -> () Source #subtract :: () -> () -> () Source #times :: Integral n => n -> () -> () Source # Source # Methodstimes :: Integral n => n -> Euclidean -> Euclidean Source # GCDDomain d => Group (Fraction d) Source # Methods(-) :: Fraction d -> Fraction d -> Fraction d Source #subtract :: Fraction d -> Fraction d -> Fraction d Source #times :: Integral n => n -> Fraction d -> Fraction d Source # Group r => Group (Complex r) Source # Methods(-) :: Complex r -> Complex r -> Complex r Source #negate :: Complex r -> Complex r Source #subtract :: Complex r -> Complex r -> Complex r Source #times :: Integral n => n -> Complex r -> Complex r Source # Group r => Group (Dual r) Source # Methods(-) :: Dual r -> Dual r -> Dual r Source #negate :: Dual r -> Dual r Source #subtract :: Dual r -> Dual r -> Dual r Source #times :: Integral n => n -> Dual r -> Dual r Source # Group r => Group (Hyper' r) Source # Methods(-) :: Hyper' r -> Hyper' r -> Hyper' r Source #negate :: Hyper' r -> Hyper' r Source #subtract :: Hyper' r -> Hyper' r -> Hyper' r Source #times :: Integral n => n -> Hyper' r -> Hyper' r Source # Group r => Group (Quaternion r) Source # Methods(-) :: Quaternion r -> Quaternion r -> Quaternion r Source #times :: Integral n => n -> Quaternion r -> Quaternion r Source # Group r => Group (Dual' r) Source # Methods(-) :: Dual' r -> Dual' r -> Dual' r Source #negate :: Dual' r -> Dual' r Source #subtract :: Dual' r -> Dual' r -> Dual' r Source #times :: Integral n => n -> Dual' r -> Dual' r Source # Group r => Group (Hyper r) Source # Methods(-) :: Hyper r -> Hyper r -> Hyper r Source #negate :: Hyper r -> Hyper r Source #subtract :: Hyper r -> Hyper r -> Hyper r Source #times :: Integral n => n -> Hyper r -> Hyper r Source # Group r => Group (Quaternion' r) Source # Methods(-) :: Quaternion' r -> Quaternion' r -> Quaternion' r Source #times :: Integral n => n -> Quaternion' r -> Quaternion' r Source # Group r => Group (Trig r) Source # Methods(-) :: Trig r -> Trig r -> Trig r Source #negate :: Trig r -> Trig r Source #subtract :: Trig r -> Trig r -> Trig r Source #times :: Integral n => n -> Trig r -> Trig r Source # Division r => Group (Log r) Source # Methods(-) :: Log r -> Log r -> Log r Source #negate :: Log r -> Log r Source #subtract :: Log r -> Log r -> Log r Source #times :: Integral n => n -> Log r -> Log r Source # Group r => Group (End r) Source # Methods(-) :: End r -> End r -> End r Source #negate :: End r -> End r Source #subtract :: End r -> End r -> End r Source #times :: Integral n => n -> End r -> End r Source # Group r => Group (Opposite r) Source # Methods(-) :: Opposite r -> Opposite r -> Opposite r Source #subtract :: Opposite r -> Opposite r -> Opposite r Source #times :: Integral n => n -> Opposite r -> Opposite r Source # (Abelian r, Group r) => Group (RngRing r) Source # Methods(-) :: RngRing r -> RngRing r -> RngRing r Source #negate :: RngRing r -> RngRing r Source #subtract :: RngRing r -> RngRing r -> RngRing r Source #times :: Integral n => n -> RngRing r -> RngRing r Source # Group r => Group (ZeroRng r) Source # Methods(-) :: ZeroRng r -> ZeroRng r -> ZeroRng r Source #negate :: ZeroRng r -> ZeroRng r Source #subtract :: ZeroRng r -> ZeroRng r -> ZeroRng r Source #times :: Integral n => n -> ZeroRng r -> ZeroRng r Source # Group r => Group (e -> r) Source # Methods(-) :: (e -> r) -> (e -> r) -> e -> r Source #negate :: (e -> r) -> e -> r Source #subtract :: (e -> r) -> (e -> r) -> e -> r Source #times :: Integral n => n -> (e -> r) -> e -> r Source # (Group a, Group b) => Group (a, b) Source # Methods(-) :: (a, b) -> (a, b) -> (a, b) Source #negate :: (a, b) -> (a, b) Source #subtract :: (a, b) -> (a, b) -> (a, b) Source #times :: Integral n => n -> (a, b) -> (a, b) Source # Group s => Group (Covector s a) Source # Methods(-) :: Covector s a -> Covector s a -> Covector s a Source #negate :: Covector s a -> Covector s a Source #subtract :: Covector s a -> Covector s a -> Covector s a Source #times :: Integral n => n -> Covector s a -> Covector s a Source # (Group a, Group b, Group c) => Group (a, b, c) Source # Methods(-) :: (a, b, c) -> (a, b, c) -> (a, b, c) Source #negate :: (a, b, c) -> (a, b, c) Source #subtract :: (a, b, c) -> (a, b, c) -> (a, b, c) Source #times :: Integral n => n -> (a, b, c) -> (a, b, c) Source # Group s => Group (Map s b a) Source # Methods(-) :: Map s b a -> Map s b a -> Map s b a Source #negate :: Map s b a -> Map s b a Source #subtract :: Map s b a -> Map s b a -> Map s b a Source #times :: Integral n => n -> Map s b a -> Map s b a Source # (Group a, Group b, Group c, Group d) => Group (a, b, c, d) Source # Methods(-) :: (a, b, c, d) -> (a, b, c, d) -> (a, b, c, d) Source #negate :: (a, b, c, d) -> (a, b, c, d) Source #subtract :: (a, b, c, d) -> (a, b, c, d) -> (a, b, c, d) Source #times :: Integral n => n -> (a, b, c, d) -> (a, b, c, d) Source # (Group a, Group b, Group c, Group d, Group e) => Group (a, b, c, d, e) Source # Methods(-) :: (a, b, c, d, e) -> (a, b, c, d, e) -> (a, b, c, d, e) Source #negate :: (a, b, c, d, e) -> (a, b, c, d, e) Source #subtract :: (a, b, c, d, e) -> (a, b, c, d, e) -> (a, b, c, d, e) Source #times :: Integral n => n -> (a, b, c, d, e) -> (a, b, c, d, e) Source #