yap-examples-0.1: examples of the algebraic classes in the yap package
Copyright(c) Ross Paterson 2011
LicenseBSD-style (see the file LICENSE)
Maintainer[email protected]
Stabilityprovisional
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

Data.YAP.Quaternion

Description

An example instance of the algebraic classes: quaternions.

Synopsis

Documentation

data Quaternion a Source #

Quaternions

Constructors

Q a a a a

Q a b c d represents \(a + b i + c j + d k\).

Instances

Instances details
Functor Quaternion Source # 
Instance details

Defined in Data.YAP.Quaternion

Methods

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

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

Show a => Show (Quaternion a) Source # 
Instance details

Defined in Data.YAP.Quaternion

Eq a => Eq (Quaternion a) Source # 
Instance details

Defined in Data.YAP.Quaternion

Methods

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

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

Ord a => Ord (Quaternion a) Source # 
Instance details

Defined in Data.YAP.Quaternion

AbelianGroup a => AbelianGroup (Quaternion a) Source # 
Instance details

Defined in Data.YAP.Quaternion

AdditiveMonoid a => AdditiveMonoid (Quaternion a) Source # 
Instance details

Defined in Data.YAP.Quaternion

Methods

(+) :: Quaternion a -> Quaternion a -> Quaternion a #

zero :: Quaternion a #

atimes :: ToInteger b => b -> Quaternion a -> Quaternion a #

Field a => DivisionRing (Quaternion a) Source # 
Instance details

Defined in Data.YAP.Quaternion

Field a => DivisionSemiring (Quaternion a) Source # 
Instance details

Defined in Data.YAP.Quaternion

Methods

recip :: Quaternion a -> Quaternion a #

FromRational a => FromRational (Quaternion a) Source # 
Instance details

Defined in Data.YAP.Quaternion

Ring a => Ring (Quaternion a) Source # 
Instance details

Defined in Data.YAP.Quaternion

Ring a => Semiring (Quaternion a) Source # 
Instance details

Defined in Data.YAP.Quaternion

conjugate :: AbelianGroup a => Quaternion a -> Quaternion a Source #

The conjugate of a quaternion.