algebra-4.3.1: Constructive abstract algebra

Numeric.Covector

Contents

Synopsis

# Documentation

newtype Covector r a Source #

Linear functionals from elements of an (infinite) free module to a scalar

Constructors

 Covector Fields($*) :: (a -> r) -> r Instances  RightModule r s => RightModule r (Covector s m) Source # Methods(*.) :: Covector s m -> r -> Covector s m Source # LeftModule r s => LeftModule r (Covector s m) Source # Methods(.*) :: r -> Covector s m -> Covector s m Source # Source # Methods(>>=) :: Covector r a -> (a -> Covector r b) -> Covector r b #(>>) :: Covector r a -> Covector r b -> Covector r b #return :: a -> Covector r a #fail :: String -> Covector r a # Source # Methodsfmap :: (a -> b) -> Covector r a -> Covector r b #(<$) :: a -> Covector r b -> Covector r a # Source # Methodspure :: a -> Covector r a #(<*>) :: Covector r (a -> b) -> Covector r a -> Covector r b #liftA2 :: (a -> b -> c) -> Covector r a -> Covector r b -> Covector r c #(*>) :: Covector r a -> Covector r b -> Covector r b #(<*) :: Covector r a -> Covector r b -> Covector r a # Monoidal r => Alternative (Covector r) Source # Methodsempty :: Covector r a #(<|>) :: Covector r a -> Covector r a -> Covector r a #some :: Covector r a -> Covector r [a] #many :: Covector r a -> Covector r [a] # Monoidal r => MonadPlus (Covector r) Source # Methodsmzero :: Covector r a #mplus :: Covector r a -> Covector r a -> Covector r a # Monoidal r => Plus (Covector r) Source # Methodszero :: Covector r a # Additive r => Alt (Covector r) Source # Methods() :: Covector r a -> Covector r a -> Covector r a #some :: Applicative (Covector r) => Covector r a -> Covector r [a] #many :: Applicative (Covector r) => Covector r a -> Covector r [a] # Source # Methods(<.>) :: Covector r (a -> b) -> Covector r a -> Covector r b #(.>) :: Covector r a -> Covector r b -> Covector r b #(<.) :: Covector r a -> Covector r b -> Covector r a # Bind (Covector r) Source # Methods(>>-) :: Covector r a -> (a -> Covector r b) -> Covector r b #join :: Covector r (Covector r a) -> Covector r a # Idempotent r => Idempotent (Covector r a) Source # Abelian s => Abelian (Covector s a) Source # Additive r => Additive (Covector r a) Source # Methods(+) :: Covector r a -> Covector r a -> Covector r a Source #sinnum1p :: Natural -> Covector r a -> Covector r a Source #sumWith1 :: Foldable1 f => (a -> Covector r a) -> f a -> Covector r a Source # Monoidal s => Monoidal (Covector s a) Source # Methodszero :: Covector s a Source #sinnum :: Natural -> Covector s a -> Covector s a Source #sumWith :: Foldable f => (a -> Covector s a) -> f a -> Covector s a Source # Coalgebra r m => Semiring (Covector r m) Source # Coalgebra r m => Multiplicative (Covector r m) Source # Methods(*) :: Covector r m -> Covector r m -> Covector r m Source #pow1p :: Covector r m -> Natural -> Covector r m Source #productWith1 :: Foldable1 f => (a -> Covector r m) -> f a -> Covector r m 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 # CounitalCoalgebra r m => Unital (Covector r m) Source # Methodsone :: Covector r m Source #pow :: Covector r m -> Natural -> Covector r m Source #productWith :: Foldable f => (a -> Covector r m) -> f a -> Covector r m Source # (Idempotent r, IdempotentCoalgebra r a) => Band (Covector r a) Source # (Commutative m, Coalgebra r m) => Commutative (Covector r m) Source # (Rig r, CounitalCoalgebra r m) => Rig (Covector r m) Source # Methods (Ring r, CounitalCoalgebra r m) => Ring (Covector r m) Source # Methods Trigonometric a => Trigonometric (Covector r a) Source # Methodscos :: Covector r a Source #sin :: Covector r a Source # Hyperbolic a => Hyperbolic (Covector r a) Source # Methodscosh :: Covector r a Source #sinh :: Covector r a Source # Distinguished a => Distinguished (Covector r a) Source # Methodse :: Covector r a Source # Infinitesimal a => Infinitesimal (Covector r a) Source # Methodsd :: Covector r a Source # Complicated a => Complicated (Covector r a) Source # Methodsi :: Covector r a Source # Hamiltonian a => Hamiltonian (Covector r a) Source # Methodsj :: Covector r a Source #k :: Covector r a 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 => LeftModule (Covector r m) (Covector r m) Source # Methods(.*) :: Covector r m -> Covector r m -> Covector r m Source #

# Covectors as linear functionals

counitM :: UnitalAlgebra r a => a -> Covector r () Source #

comultM :: Algebra r a => a -> Covector r (a, a) Source #

multM :: Coalgebra r c => c -> c -> Covector r c Source #

antipodeM :: HopfAlgebra r h => h -> Covector r h Source #

convolveM antipodeM return = convolveM return antipodeM = comultM >=> uncurry joinM

convolveM :: (Algebra r c, Coalgebra r a) => (c -> Covector r a) -> (c -> Covector r a) -> c -> Covector r a Source #