algebra-4.2: Constructive abstract algebra

Safe HaskellNone
LanguageHaskell98

Numeric.Coalgebra.Quaternion

Synopsis

Documentation

data Quaternion' a Source

Constructors

Quaternion' a a a a 

Instances

Monad Quaternion' 
Functor Quaternion' 
Applicative Quaternion' 
Foldable Quaternion' 
Traversable Quaternion' 
Distributive Quaternion' 
Representable Quaternion' 
Traversable1 Quaternion' 
Foldable1 Quaternion' 
Apply Quaternion' 
Bind Quaternion' 
MonadReader QuaternionBasis' Quaternion' 
RightModule r s => RightModule r (Quaternion' s) 
LeftModule r s => LeftModule r (Quaternion' s) 
(TriviallyInvolutive r, Rng r) => Quadrance r (Quaternion' r) 
Eq a => Eq (Quaternion' a) 
Data a => Data (Quaternion' a) 
Read a => Read (Quaternion' a) 
Show a => Show (Quaternion' a) 
Idempotent r => Idempotent (Quaternion' r) 
Abelian r => Abelian (Quaternion' r) 
Partitionable r => Partitionable (Quaternion' r) 
Additive r => Additive (Quaternion' r) 
Monoidal r => Monoidal (Quaternion' r) 
(TriviallyInvolutive r, Semiring r) => Semiring (Quaternion' r) 
(TriviallyInvolutive r, Semiring r) => Multiplicative (Quaternion' r) 
Group r => Group (Quaternion' r) 
(TriviallyInvolutive r, Ring r) => Unital (Quaternion' r) 
(TriviallyInvolutive r, Ring r, Division r) => Division (Quaternion' r) 
(TriviallyInvolutive r, Ring r) => Rig (Quaternion' r) 
(TriviallyInvolutive r, Ring r) => Ring (Quaternion' r) 
(TriviallyInvolutive r, Rng r) => InvolutiveMultiplication (Quaternion' r) 
Rig r => Distinguished (Quaternion' r) 
Rig r => Complicated (Quaternion' r) 
Rig r => Hamiltonian (Quaternion' r) 
(TriviallyInvolutive r, Rng r) => RightModule (Quaternion' r) (Quaternion' r) 
(TriviallyInvolutive r, Rng r) => LeftModule (Quaternion' r) (Quaternion' r) 
Typeable (* -> *) Quaternion' 
type Rep Quaternion' = QuaternionBasis' 

complicate' :: Complicated c => QuaternionBasis' -> (c, c) Source

Cayley-Dickson quaternion isomorphism (one way)

vectorPart' :: (Representable f, Rep f ~ QuaternionBasis') => f r -> (r, r, r) Source