algebra-4.2: 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) LeftModule r s => LeftModule r (Covector s m) Monoidal r => Alternative (Covector r) Monad (Covector r) Functor (Covector r) Monoidal r => MonadPlus (Covector r) Applicative (Covector r) Monoidal r => Plus (Covector r) Additive r => Alt (Covector r) Apply (Covector r) Bind (Covector r) Idempotent r => Idempotent (Covector r a) Abelian s => Abelian (Covector s a) Additive r => Additive (Covector r a) Monoidal s => Monoidal (Covector s a) Coalgebra r m => Semiring (Covector r m) Coalgebra r m => Multiplicative (Covector r m) Group s => Group (Covector s a) CounitalCoalgebra r m => Unital (Covector r m) (Idempotent r, IdempotentCoalgebra r a) => Band (Covector r a) (Rig r, CounitalCoalgebra r m) => Rig (Covector r m) (Ring r, CounitalCoalgebra r m) => Ring (Covector r m) (Commutative m, Coalgebra r m) => Commutative (Covector r m) Distinguished a => Distinguished (Covector r a) Complicated a => Complicated (Covector r a) Hamiltonian a => Hamiltonian (Covector r a) Infinitesimal a => Infinitesimal (Covector r a) Hyperbolic a => Hyperbolic (Covector r a) Trigonometric a => Trigonometric (Covector r a) Coalgebra r m => RightModule (Covector r m) (Covector r m) Coalgebra r m => LeftModule (Covector r m) (Covector r m)

# 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