numeric-prelude-0.4.2: An experimental alternative hierarchy of numeric type classes

Algebra.Transcendental

Synopsis

# Documentation

class C a => C a where Source

Transcendental is the type of numbers supporting the elementary transcendental functions. Examples include real numbers, complex numbers, and computable reals represented as a lazy list of rational approximations.

Note the default declaration for a superclass. See the comments below, under "Instance declaractions for superclasses".

The semantics of these operations are rather ill-defined because of branch cuts, etc.

Minimal complete definition: pi, exp, (log or logBase), sin, cos, atan

Minimal complete definition

pi, exp, (log | logBase), sin, cos, atan

Methods

pi :: a Source

exp, log :: a -> a Source

logBase, (**) :: a -> a -> a infixr 8 Source

sin, tan, cos :: a -> a Source

asin, atan, acos :: a -> a Source

sinh, tanh, cosh :: a -> a Source

asinh, atanh, acosh :: a -> a Source

Instances

 C Double C Float C T C T (Ord a, C a) => C (T a) C a => C (T a) (C a, Eq a) => C (T a) Floating a => C (T a) (C a, C a, C a, Power a) => C (T a) C a => C (T a) (C a, C v, Show v, C a v) => C (T a v) (Ord i, C a) => C (T i a) C v => C (T a v)

(^?) :: C a => a -> a -> a infixr 8 Source

# Transcendental laws, will only hold approximately on floating point numbers

propExpLog :: (Eq a, C a) => a -> Bool Source

propLogExp :: (Eq a, C a) => a -> Bool Source

propExpNeg :: (Eq a, C a) => a -> Bool Source

propLogRecip :: (Eq a, C a) => a -> Bool Source

propExpProduct :: (Eq a, C a) => a -> a -> Bool Source

propExpLogPower :: (Eq a, C a) => a -> a -> Bool Source

propLogSum :: (Eq a, C a) => a -> a -> Bool Source

propPowerCascade :: (Eq a, C a) => a -> a -> a -> Bool Source

propPowerProduct :: (Eq a, C a) => a -> a -> a -> Bool Source

propPowerDistributive :: (Eq a, C a) => a -> a -> a -> Bool Source

propSinPeriod :: (Eq a, C a) => a -> Bool Source

propCosPeriod :: (Eq a, C a) => a -> Bool Source

propTanPeriod :: (Eq a, C a) => a -> Bool Source

propSinAngleSum :: (Eq a, C a) => a -> a -> Bool Source

propCosAngleSum :: (Eq a, C a) => a -> a -> Bool Source

propSinDoubleAngle :: (Eq a, C a) => a -> Bool Source

propCosDoubleAngle :: (Eq a, C a) => a -> Bool Source

propSinSquare :: (Eq a, C a) => a -> Bool Source

propCosSquare :: (Eq a, C a) => a -> Bool Source