algebra-4.3.1: Constructive abstract algebra

Safe HaskellSafe
LanguageHaskell98

Numeric.Algebra.Complex

Synopsis

Documentation

class Distinguished t where #

Minimal complete definition

e

Methods

e :: t #

Instances
Distinguished TrigBasis # 
Instance details

Defined in Numeric.Coalgebra.Trigonometric

Methods

e :: TrigBasis #

Distinguished QuaternionBasis' # 
Instance details

Defined in Numeric.Coalgebra.Quaternion

Methods

e :: QuaternionBasis' #

Distinguished DualBasis' # 
Instance details

Defined in Numeric.Coalgebra.Dual

Methods

e :: DualBasis' #

Distinguished QuaternionBasis # 
Instance details

Defined in Numeric.Algebra.Quaternion

Methods

e :: QuaternionBasis #

Distinguished DualBasis # 
Instance details

Defined in Numeric.Algebra.Dual

Methods

e :: DualBasis #

Distinguished ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

e :: ComplexBasis #

Rig r => Distinguished (Trig r) # 
Instance details

Defined in Numeric.Coalgebra.Trigonometric

Methods

e :: Trig r #

Rig r => Distinguished (Quaternion' r) # 
Instance details

Defined in Numeric.Coalgebra.Quaternion

Methods

e :: Quaternion' r #

Rig r => Distinguished (Dual' r) # 
Instance details

Defined in Numeric.Coalgebra.Dual

Methods

e :: Dual' r #

Rig r => Distinguished (Quaternion r) # 
Instance details

Defined in Numeric.Algebra.Quaternion

Methods

e :: Quaternion r #

Rig r => Distinguished (Dual r) # 
Instance details

Defined in Numeric.Algebra.Dual

Methods

e :: Dual r #

Rig r => Distinguished (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

e :: Complex r #

Rig r => Distinguished (TrigBasis -> r) # 
Instance details

Defined in Numeric.Coalgebra.Trigonometric

Methods

e :: TrigBasis -> r #

Rig r => Distinguished (QuaternionBasis' -> r) # 
Instance details

Defined in Numeric.Coalgebra.Quaternion

Methods

e :: QuaternionBasis' -> r #

Rig r => Distinguished (DualBasis' -> r) # 
Instance details

Defined in Numeric.Coalgebra.Dual

Methods

e :: DualBasis' -> r #

Rig r => Distinguished (QuaternionBasis -> r) # 
Instance details

Defined in Numeric.Algebra.Quaternion

Methods

e :: QuaternionBasis -> r #

Rig r => Distinguished (DualBasis -> r) # 
Instance details

Defined in Numeric.Algebra.Dual

Methods

e :: DualBasis -> r #

Rig r => Distinguished (ComplexBasis -> r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

e :: ComplexBasis -> r #

Distinguished a => Distinguished (Covector r a) # 
Instance details

Defined in Numeric.Algebra.Distinguished.Class

Methods

e :: Covector r a #

class Distinguished r => Complicated r where #

Minimal complete definition

i

Methods

i :: r #

Instances
Complicated TrigBasis # 
Instance details

Defined in Numeric.Coalgebra.Trigonometric

Methods

i :: TrigBasis #

Complicated QuaternionBasis' # 
Instance details

Defined in Numeric.Coalgebra.Quaternion

Methods

i :: QuaternionBasis' #

Complicated QuaternionBasis # 
Instance details

Defined in Numeric.Algebra.Quaternion

Methods

i :: QuaternionBasis #

Complicated ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

i :: ComplexBasis #

Rig r => Complicated (Trig r) # 
Instance details

Defined in Numeric.Coalgebra.Trigonometric

Methods

i :: Trig r #

Rig r => Complicated (Quaternion' r) # 
Instance details

Defined in Numeric.Coalgebra.Quaternion

Methods

i :: Quaternion' r #

Rig r => Complicated (Quaternion r) # 
Instance details

Defined in Numeric.Algebra.Quaternion

Methods

i :: Quaternion r #

Rig r => Complicated (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

i :: Complex r #

Rig r => Complicated (TrigBasis -> r) # 
Instance details

Defined in Numeric.Coalgebra.Trigonometric

Methods

i :: TrigBasis -> r #

Rig r => Complicated (QuaternionBasis' -> r) # 
Instance details

Defined in Numeric.Coalgebra.Quaternion

Methods

i :: QuaternionBasis' -> r #

Rig r => Complicated (QuaternionBasis -> r) # 
Instance details

Defined in Numeric.Algebra.Quaternion

Methods

i :: QuaternionBasis -> r #

Rig r => Complicated (ComplexBasis -> r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

i :: ComplexBasis -> r #

Complicated a => Complicated (Covector r a) # 
Instance details

Defined in Numeric.Algebra.Complex.Class

Methods

i :: Covector r a #

data ComplexBasis #

Constructors

E 
I 
Instances
Bounded ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Enum ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Eq ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Data ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

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

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

toConstr :: ComplexBasis -> Constr #

dataTypeOf :: ComplexBasis -> DataType #

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

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

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

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

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

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

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

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

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

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

Ord ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Read ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Show ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Ix ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Distinguished ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

e :: ComplexBasis #

Complicated ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

i :: ComplexBasis #

MonadReader ComplexBasis Complex # 
Instance details

Defined in Numeric.Algebra.Complex

Rng k => Coalgebra k ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

comult :: (ComplexBasis -> k) -> ComplexBasis -> ComplexBasis -> k #

Rng k => Algebra k ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

mult :: (ComplexBasis -> ComplexBasis -> k) -> ComplexBasis -> k #

Rng k => Bialgebra k ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Rng k => CounitalCoalgebra k ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

counit :: (ComplexBasis -> k) -> k #

Rng k => UnitalAlgebra k ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

unit :: k -> ComplexBasis -> k #

(InvolutiveSemiring k, Rng k) => HopfAlgebra k ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

antipode :: (ComplexBasis -> k) -> ComplexBasis -> k #

(InvolutiveSemiring k, Rng k) => InvolutiveCoalgebra k ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

coinv :: (ComplexBasis -> k) -> ComplexBasis -> k #

(InvolutiveSemiring k, Rng k) => InvolutiveAlgebra k ComplexBasis # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

inv :: (ComplexBasis -> k) -> ComplexBasis -> k #

Rig r => Distinguished (ComplexBasis -> r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

e :: ComplexBasis -> r #

Rig r => Complicated (ComplexBasis -> r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

i :: ComplexBasis -> r #

data Complex a #

Constructors

Complex a a 
Instances
Monad Complex # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

(>>=) :: Complex a -> (a -> Complex b) -> Complex b #

(>>) :: Complex a -> Complex b -> Complex b #

return :: a -> Complex a #

fail :: String -> Complex a #

Functor Complex # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

fmap :: (a -> b) -> Complex a -> Complex b #

(<$) :: a -> Complex b -> Complex a #

Applicative Complex # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

pure :: a -> Complex a #

(<*>) :: Complex (a -> b) -> Complex a -> Complex b #

liftA2 :: (a -> b -> c) -> Complex a -> Complex b -> Complex c #

(*>) :: Complex a -> Complex b -> Complex b #

(<*) :: Complex a -> Complex b -> Complex a #

Foldable Complex # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

fold :: Monoid m => Complex m -> m #

foldMap :: Monoid m => (a -> m) -> Complex a -> m #

foldr :: (a -> b -> b) -> b -> Complex a -> b #

foldr' :: (a -> b -> b) -> b -> Complex a -> b #

foldl :: (b -> a -> b) -> b -> Complex a -> b #

foldl' :: (b -> a -> b) -> b -> Complex a -> b #

foldr1 :: (a -> a -> a) -> Complex a -> a #

foldl1 :: (a -> a -> a) -> Complex a -> a #

toList :: Complex a -> [a] #

null :: Complex a -> Bool #

length :: Complex a -> Int #

elem :: Eq a => a -> Complex a -> Bool #

maximum :: Ord a => Complex a -> a #

minimum :: Ord a => Complex a -> a #

sum :: Num a => Complex a -> a #

product :: Num a => Complex a -> a #

Traversable Complex # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

traverse :: Applicative f => (a -> f b) -> Complex a -> f (Complex b) #

sequenceA :: Applicative f => Complex (f a) -> f (Complex a) #

mapM :: Monad m => (a -> m b) -> Complex a -> m (Complex b) #

sequence :: Monad m => Complex (m a) -> m (Complex a) #

Distributive Complex # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

distribute :: Functor f => f (Complex a) -> Complex (f a) #

collect :: Functor f => (a -> Complex b) -> f a -> Complex (f b) #

distributeM :: Monad m => m (Complex a) -> Complex (m a) #

collectM :: Monad m => (a -> Complex b) -> m a -> Complex (m b) #

Representable Complex # 
Instance details

Defined in Numeric.Algebra.Complex

Associated Types

type Rep Complex :: * #

Methods

tabulate :: (Rep Complex -> a) -> Complex a #

index :: Complex a -> Rep Complex -> a #

Traversable1 Complex # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

traverse1 :: Apply f => (a -> f b) -> Complex a -> f (Complex b) #

sequence1 :: Apply f => Complex (f b) -> f (Complex b) #

Foldable1 Complex # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

fold1 :: Semigroup m => Complex m -> m #

foldMap1 :: Semigroup m => (a -> m) -> Complex a -> m #

toNonEmpty :: Complex a -> NonEmpty a #

Apply Complex # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

(<.>) :: Complex (a -> b) -> Complex a -> Complex b #

(.>) :: Complex a -> Complex b -> Complex b #

(<.) :: Complex a -> Complex b -> Complex a #

liftF2 :: (a -> b -> c) -> Complex a -> Complex b -> Complex c #

Bind Complex # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

(>>-) :: Complex a -> (a -> Complex b) -> Complex b #

join :: Complex (Complex a) -> Complex a #

MonadReader ComplexBasis Complex # 
Instance details

Defined in Numeric.Algebra.Complex

RightModule r s => RightModule r (Complex s) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

(*.) :: Complex s -> r -> Complex s #

LeftModule r s => LeftModule r (Complex s) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

(.*) :: r -> Complex s -> Complex s #

(Commutative r, Rng r, InvolutiveSemiring r) => Quadrance r (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

quadrance :: Complex r -> r #

Eq a => Eq (Complex a) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

(==) :: Complex a -> Complex a -> Bool #

(/=) :: Complex a -> Complex a -> Bool #

Data a => Data (Complex a) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

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

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

toConstr :: Complex a -> Constr #

dataTypeOf :: Complex a -> DataType #

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

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

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

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

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

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

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

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

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

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

Read a => Read (Complex a) # 
Instance details

Defined in Numeric.Algebra.Complex

Show a => Show (Complex a) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

showsPrec :: Int -> Complex a -> ShowS #

show :: Complex a -> String #

showList :: [Complex a] -> ShowS #

Idempotent r => Idempotent (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Abelian r => Abelian (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Partitionable r => Partitionable (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

partitionWith :: (Complex r -> Complex r -> r0) -> Complex r -> NonEmpty r0 #

Additive r => Additive (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

(+) :: Complex r -> Complex r -> Complex r #

sinnum1p :: Natural -> Complex r -> Complex r #

sumWith1 :: Foldable1 f => (a -> Complex r) -> f a -> Complex r #

Monoidal r => Monoidal (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

zero :: Complex r #

sinnum :: Natural -> Complex r -> Complex r #

sumWith :: Foldable f => (a -> Complex r) -> f a -> Complex r #

(Commutative r, Rng r) => Semiring (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

(Commutative r, Rng r) => Multiplicative (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

(*) :: Complex r -> Complex r -> Complex r #

pow1p :: Complex r -> Natural -> Complex r #

productWith1 :: Foldable1 f => (a -> Complex r) -> f a -> Complex r #

Group r => Group (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

(-) :: Complex r -> Complex r -> Complex r #

negate :: Complex r -> Complex r #

subtract :: Complex r -> Complex r -> Complex r #

times :: Integral n => n -> Complex r -> Complex r #

(Commutative r, Ring r) => Unital (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

one :: Complex r #

pow :: Complex r -> Natural -> Complex r #

productWith :: Foldable f => (a -> Complex r) -> f a -> Complex r #

(Commutative r, InvolutiveSemiring r, DivisionRing r) => Division (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

recip :: Complex r -> Complex r #

(/) :: Complex r -> Complex r -> Complex r #

(\\) :: Complex r -> Complex r -> Complex r #

(^) :: Integral n => Complex r -> n -> Complex r #

(TriviallyInvolutive r, Rng r) => Commutative (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

(Commutative r, Rng r, InvolutiveSemiring r) => InvolutiveSemiring (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

(Commutative r, Rng r, InvolutiveMultiplication r) => InvolutiveMultiplication (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

adjoint :: Complex r -> Complex r #

(Commutative r, Ring r) => Rig (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

fromNatural :: Natural -> Complex r #

(Commutative r, Ring r) => Ring (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

fromInteger :: Integer -> Complex r #

Rig r => Distinguished (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

e :: Complex r #

Rig r => Complicated (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

i :: Complex r #

(Commutative r, Rng r) => RightModule (Complex r) (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

(*.) :: Complex r -> Complex r -> Complex r #

(Commutative r, Rng r) => LeftModule (Complex r) (Complex r) # 
Instance details

Defined in Numeric.Algebra.Complex

Methods

(.*) :: Complex r -> Complex r -> Complex r #

type Rep Complex # 
Instance details

Defined in Numeric.Algebra.Complex

realPart :: (Representable f, Rep f ~ ComplexBasis) => f a -> a #

imagPart :: (Representable f, Rep f ~ ComplexBasis) => f a -> a #

uncomplicate :: Hamiltonian q => ComplexBasis -> ComplexBasis -> q #

half of the Cayley-Dickson quaternion isomorphism