linear-1.21.1: Linear Algebra

Copyright | (C) 2012-2015 Edward Kmett
License | BSD-style (see the file LICENSE)
Maintainer | Edward Kmett <ekmett@gmail.com>
Stability | experimental
Portability | non-portable
Safe Haskell | Safe
Language | Haskell2010

Linear.Conjugate

Description

Involutive rings

Synopsis

- class Num a => Conjugate a where
  - conjugate :: a -> a
- class Conjugate a => TrivialConjugate a

# Documentation

class Num a => Conjugate a where Source #

An involutive ring

Minimal complete definition

Nothing

Methods

conjugate :: a -> a Source #

Conjugate a value. This defaults to the trivial involution.

    >>> conjugate (1 :+ 2)
    1.0 :+ (-2.0)

    >>> conjugate 1
    1

default conjugate :: TrivialConjugate a => a -> a Source #

#### Instances

Instances details

Conjugate Double Source # |
Instance details Defined in Linear.Conjugate Methods conjugate :: Double -> Double Source #
Conjugate Float Source # |
Instance details Defined in Linear.Conjugate Methods conjugate :: Float -> Float Source #
Conjugate Int Source # |
Instance details Defined in Linear.Conjugate Methods conjugate :: Int -> Int Source #
Conjugate Int8 Source # |
Instance details Defined in Linear.Conjugate Methods conjugate :: Int8 -> Int8 Source #
Conjugate Int16 Source # |
Instance details Defined in Linear.Conjugate Methods conjugate :: Int16 -> Int16 Source #
Conjugate Int32 Source # |
Instance details Defined in Linear.Conjugate Methods conjugate :: Int32 -> Int32 Source #
Conjugate Int64 Source # |
Instance details Defined in Linear.Conjugate Methods conjugate :: Int64 -> Int64 Source #
Conjugate Integer Source # |
Instance details Defined in Linear.Conjugate Methods conjugate :: Integer -> Integer Source #
Conjugate Word Source # |
Instance details Defined in Linear.Conjugate Methods conjugate :: Word -> Word Source #
Conjugate Word8 Source # |
Instance details Defined in Linear.Conjugate Methods conjugate :: Word8 -> Word8 Source #
Conjugate Word16 Source # |
Instance details Defined in Linear.Conjugate Methods conjugate :: Word16 -> Word16 Source #
Conjugate Word32 Source # |
Instance details Defined in Linear.Conjugate Methods conjugate :: Word32 -> Word32 Source #
Conjugate Word64 Source # |
Instance details Defined in Linear.Conjugate Methods conjugate :: Word64 -> Word64 Source #
Conjugate CFloat Source # |
Instance details Defined in Linear.Conjugate Methods conjugate :: CFloat -> CFloat Source #
Conjugate CDouble Source # |
Instance details Defined in Linear.Conjugate Methods conjugate :: CDouble -> CDouble Source #
(Conjugate a, RealFloat a) => Conjugate (Complex a) Source # |
Instance details Defined in Linear.Conjugate Methods conjugate :: Complex a -> Complex a Source #
(Conjugate a, RealFloat a) => Conjugate (Quaternion a) Source # |
Instance details Defined in Linear.Quaternion Methods conjugate :: Quaternion a -> Quaternion a Source #

class Conjugate a => TrivialConjugate a Source #

Requires and provides a default definition such that

    conjugate = id

#### Instances

Instances details

TrivialConjugate Double Source # |
Instance details Defined in Linear.Conjugate
TrivialConjugate Float Source # |
Instance details Defined in Linear.Conjugate
TrivialConjugate Int Source # |
Instance details Defined in Linear.Conjugate
TrivialConjugate Int8 Source # |
Instance details Defined in Linear.Conjugate
TrivialConjugate Int16 Source # |
Instance details Defined in Linear.Conjugate
TrivialConjugate Int32 Source # |
Instance details Defined in Linear.Conjugate
TrivialConjugate Int64 Source # |
Instance details Defined in Linear.Conjugate
TrivialConjugate Integer Source # |
Instance details Defined in Linear.Conjugate
TrivialConjugate Word Source # |
Instance details Defined in Linear.Conjugate
TrivialConjugate Word8 Source # |
Instance details Defined in Linear.Conjugate
TrivialConjugate Word16 Source # |
Instance details Defined in Linear.Conjugate
TrivialConjugate Word32 Source # |
Instance details Defined in Linear.Conjugate
TrivialConjugate Word64 Source # |
Instance details Defined in Linear.Conjugate
TrivialConjugate CFloat Source # |
Instance details Defined in Linear.Conjugate
TrivialConjugate CDouble Source # |
Instance details Defined in Linear.Conjugate