algebra-4.3.1: Constructive abstract algebra

Safe HaskellNone
LanguageHaskell98

Numeric.Coalgebra.Geometric

Contents

Synopsis

Geometric coalgebra primitives

newtype BasisCoblade m #

Constructors

BasisCoblade 

Instances

RightModule Natural (BasisCoblade m) # 

Methods

(*.) :: BasisCoblade m -> Natural -> BasisCoblade m #

LeftModule Natural (BasisCoblade m) # 

Methods

(.*) :: Natural -> BasisCoblade m -> BasisCoblade m #

Eigenmetric r m => Coalgebra r (BasisCoblade m) # 

Methods

comult :: (BasisCoblade m -> r) -> BasisCoblade m -> BasisCoblade m -> r #

Eigenmetric r m => CounitalCoalgebra r (BasisCoblade m) # 

Methods

counit :: (BasisCoblade m -> r) -> r #

Bounded (BasisCoblade m) # 
Enum (BasisCoblade m) # 
Eq (BasisCoblade m) # 
Integral (BasisCoblade m) # 
Num (BasisCoblade m) # 
Ord (BasisCoblade m) # 
Read (BasisCoblade m) # 
Real (BasisCoblade m) # 
Show (BasisCoblade m) # 
Ix (BasisCoblade m) # 
Bits (BasisCoblade m) # 
Abelian (BasisCoblade m) # 
Additive (BasisCoblade m) # 
Monoidal (BasisCoblade m) # 

Methods

zero :: BasisCoblade m #

sinnum :: Natural -> BasisCoblade m -> BasisCoblade m #

sumWith :: Foldable f => (a -> BasisCoblade m) -> f a -> BasisCoblade m #

Semiring (BasisCoblade m) # 
Multiplicative (BasisCoblade m) # 
Unital (BasisCoblade m) # 

Methods

one :: BasisCoblade m #

pow :: BasisCoblade m -> Natural -> BasisCoblade m #

productWith :: Foldable f => (a -> BasisCoblade m) -> f a -> BasisCoblade m #

Commutative (BasisCoblade m) # 
DecidableAssociates (BasisCoblade m) # 
DecidableUnits (BasisCoblade m) # 
DecidableZero (BasisCoblade m) # 

Methods

isZero :: BasisCoblade m -> Bool #

Rig (BasisCoblade m) # 

Operations over an eigenbasis

class Eigenbasis m where #

Minimal complete definition

euclidean, antiEuclidean, v, e

Methods

euclidean :: proxy m -> Bool #

antiEuclidean :: proxy m -> Bool #

v :: m -> BasisCoblade m #

e :: Int -> m #

class (Ring r, Eigenbasis m) => Eigenmetric r m where #

Minimal complete definition

metric

Methods

metric :: m -> r #

Instances

Ring r => Eigenmetric r Euclidean # 

Methods

metric :: Euclidean -> r #

newtype Euclidean #

Constructors

Euclidean Int 

Instances

Enum Euclidean # 
Eq Euclidean # 
Integral Euclidean # 
Data Euclidean # 

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Euclidean -> c Euclidean #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Euclidean #

toConstr :: Euclidean -> Constr #

dataTypeOf :: Euclidean -> DataType #

dataCast1 :: Typeable (* -> *) t => (forall d. Data d => c (t d)) -> Maybe (c Euclidean) #

dataCast2 :: Typeable (* -> * -> *) t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Euclidean) #

gmapT :: (forall b. Data b => b -> b) -> Euclidean -> Euclidean #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Euclidean -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Euclidean -> r #

gmapQ :: (forall d. Data d => d -> u) -> Euclidean -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Euclidean -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Euclidean -> m Euclidean #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Euclidean -> m Euclidean #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Euclidean -> m Euclidean #

Num Euclidean # 
Ord Euclidean # 
Read Euclidean # 
Real Euclidean # 
Show Euclidean # 
Ix Euclidean # 
Abelian Euclidean # 
Additive Euclidean # 
Monoidal Euclidean # 

Methods

zero :: Euclidean #

sinnum :: Natural -> Euclidean -> Euclidean #

sumWith :: Foldable f => (a -> Euclidean) -> f a -> Euclidean #

Semiring Euclidean # 
Multiplicative Euclidean # 
Group Euclidean # 
Unital Euclidean # 

Methods

one :: Euclidean #

pow :: Euclidean -> Natural -> Euclidean #

productWith :: Foldable f => (a -> Euclidean) -> f a -> Euclidean #

Commutative Euclidean # 
TriviallyInvolutive Euclidean # 
InvolutiveSemiring Euclidean # 
InvolutiveMultiplication Euclidean # 
Rig Euclidean # 
Ring Euclidean # 
Eigenbasis Euclidean # 
RightModule Integer Euclidean # 

Methods

(*.) :: Euclidean -> Integer -> Euclidean #

RightModule Natural Euclidean # 

Methods

(*.) :: Euclidean -> Natural -> Euclidean #

LeftModule Integer Euclidean # 

Methods

(.*) :: Integer -> Euclidean -> Euclidean #

LeftModule Natural Euclidean # 

Methods

(.*) :: Natural -> Euclidean -> Euclidean #

Ring r => Eigenmetric r Euclidean # 

Methods

metric :: Euclidean -> r #

Grade

Inversions

Products

Inner products