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

Safe HaskellNone
LanguageHaskell98

Algebra.Transcendental

Contents

Synopsis

Documentation

class C a => C a where #

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 #

exp :: a -> a #

log :: a -> a #

logBase :: a -> a -> a #

(**) :: a -> a -> a infixr 8 #

sin :: a -> a #

cos :: a -> a #

tan :: a -> a #

asin :: a -> a #

acos :: a -> a #

atan :: a -> a #

sinh :: a -> a #

cosh :: a -> a #

tanh :: a -> a #

asinh :: a -> a #

acosh :: a -> a #

atanh :: a -> a #

Instances
C Double # 
Instance details

Defined in Algebra.Transcendental

C Float # 
Instance details

Defined in Algebra.Transcendental

C T # 
Instance details

Defined in Number.FixedPoint.Check

Methods

pi :: T #

exp :: T -> T #

log :: T -> T #

logBase :: T -> T -> T #

(**) :: T -> T -> T #

sin :: T -> T #

cos :: T -> T #

tan :: T -> T #

asin :: T -> T #

acos :: T -> T #

atan :: T -> T #

sinh :: T -> T #

cosh :: T -> T #

tanh :: T -> T #

asinh :: T -> T #

acosh :: T -> T #

atanh :: T -> T #

C T # 
Instance details

Defined in Number.Positional.Check

Methods

pi :: T #

exp :: T -> T #

log :: T -> T #

logBase :: T -> T -> T #

(**) :: T -> T -> T #

sin :: T -> T #

cos :: T -> T #

tan :: T -> T #

asin :: T -> T #

acos :: T -> T #

atan :: T -> T #

sinh :: T -> T #

cosh :: T -> T #

tanh :: T -> T #

asinh :: T -> T #

acosh :: T -> T #

atanh :: T -> T #

(Ord a, C a) => C (T a) # 
Instance details

Defined in Number.NonNegative

Methods

pi :: T a #

exp :: T a -> T a #

log :: T a -> T a #

logBase :: T a -> T a -> T a #

(**) :: T a -> T a -> T a #

sin :: T a -> T a #

cos :: T a -> T a #

tan :: T a -> T a #

asin :: T a -> T a #

acos :: T a -> T a #

atan :: T a -> T a #

sinh :: T a -> T a #

cosh :: T a -> T a #

tanh :: T a -> T a #

asinh :: T a -> T a #

acosh :: T a -> T a #

atanh :: T a -> T a #

Floating a => C (T a) # 
Instance details

Defined in MathObj.Wrapper.Haskell98

Methods

pi :: T a #

exp :: T a -> T a #

log :: T a -> T a #

logBase :: T a -> T a -> T a #

(**) :: T a -> T a -> T a #

sin :: T a -> T a #

cos :: T a -> T a #

tan :: T a -> T a #

asin :: T a -> T a #

acos :: T a -> T a #

atan :: T a -> T a #

sinh :: T a -> T a #

cosh :: T a -> T a #

tanh :: T a -> T a #

asinh :: T a -> T a #

acosh :: T a -> T a #

atanh :: T a -> T a #

(C a, Eq a) => C (T a) # 
Instance details

Defined in Number.PartiallyTranscendental

Methods

pi :: T a #

exp :: T a -> T a #

log :: T a -> T a #

logBase :: T a -> T a -> T a #

(**) :: T a -> T a -> T a #

sin :: T a -> T a #

cos :: T a -> T a #

tan :: T a -> T a #

asin :: T a -> T a #

acos :: T a -> T a #

atan :: T a -> T a #

sinh :: T a -> T a #

cosh :: T a -> T a #

tanh :: T a -> T a #

asinh :: T a -> T a #

acosh :: T a -> T a #

atanh :: T a -> T a #

C a => C (T a) # 
Instance details

Defined in MathObj.PowerSeries

Methods

pi :: T a #

exp :: T a -> T a #

log :: T a -> T a #

logBase :: T a -> T a -> T a #

(**) :: T a -> T a -> T a #

sin :: T a -> T a #

cos :: T a -> T a #

tan :: T a -> T a #

asin :: T a -> T a #

acos :: T a -> T a #

atan :: T a -> T a #

sinh :: T a -> T a #

cosh :: T a -> T a #

tanh :: T a -> T a #

asinh :: T a -> T a #

acosh :: T a -> T a #

atanh :: T a -> T a #

(C a, C a, C a, Power a) => C (T a) # 
Instance details

Defined in Number.Complex

Methods

pi :: T a #

exp :: T a -> T a #

log :: T a -> T a #

logBase :: T a -> T a -> T a #

(**) :: T a -> T a -> T a #

sin :: T a -> T a #

cos :: T a -> T a #

tan :: T a -> T a #

asin :: T a -> T a #

acos :: T a -> T a #

atan :: T a -> T a #

sinh :: T a -> T a #

cosh :: T a -> T a #

tanh :: T a -> T a #

asinh :: T a -> T a #

acosh :: T a -> T a #

atanh :: T a -> T a #

C a => C (T a) # 
Instance details

Defined in MathObj.Wrapper.NumericPrelude

Methods

pi :: T a #

exp :: T a -> T a #

log :: T a -> T a #

logBase :: T a -> T a -> T a #

(**) :: T a -> T a -> T a #

sin :: T a -> T a #

cos :: T a -> T a #

tan :: T a -> T a #

asin :: T a -> T a #

acos :: T a -> T a #

atan :: T a -> T a #

sinh :: T a -> T a #

cosh :: T a -> T a #

tanh :: T a -> T a #

asinh :: T a -> T a #

acosh :: T a -> T a #

atanh :: T a -> T a #

(C a, C v, Show v, C a v) => C (T a v) # 
Instance details

Defined in Number.OccasionallyScalarExpression

Methods

pi :: T a v #

exp :: T a v -> T a v #

log :: T a v -> T a v #

logBase :: T a v -> T a v -> T a v #

(**) :: T a v -> T a v -> T a v #

sin :: T a v -> T a v #

cos :: T a v -> T a v #

tan :: T a v -> T a v #

asin :: T a v -> T a v #

acos :: T a v -> T a v #

atan :: T a v -> T a v #

sinh :: T a v -> T a v #

cosh :: T a v -> T a v #

tanh :: T a v -> T a v #

asinh :: T a v -> T a v #

acosh :: T a v -> T a v #

atanh :: T a v -> T a v #

(Ord i, C a) => C (T i a) # 
Instance details

Defined in Number.Physical

Methods

pi :: T i a #

exp :: T i a -> T i a #

log :: T i a -> T i a #

logBase :: T i a -> T i a -> T i a #

(**) :: T i a -> T i a -> T i a #

sin :: T i a -> T i a #

cos :: T i a -> T i a #

tan :: T i a -> T i a #

asin :: T i a -> T i a #

acos :: T i a -> T i a #

atan :: T i a -> T i a #

sinh :: T i a -> T i a #

cosh :: T i a -> T i a #

tanh :: T i a -> T i a #

asinh :: T i a -> T i a #

acosh :: T i a -> T i a #

atanh :: T i a -> T i a #

C v => C (T a v) # 
Instance details

Defined in Number.SI

Methods

pi :: T a v #

exp :: T a v -> T a v #

log :: T a v -> T a v #

logBase :: T a v -> T a v -> T a v #

(**) :: T a v -> T a v -> T a v #

sin :: T a v -> T a v #

cos :: T a v -> T a v #

tan :: T a v -> T a v #

asin :: T a v -> T a v #

acos :: T a v -> T a v #

atan :: T a v -> T a v #

sinh :: T a v -> T a v #

cosh :: T a v -> T a v #

tanh :: T a v -> T a v #

asinh :: T a v -> T a v #

acosh :: T a v -> T a v #

atanh :: T a v -> T a v #

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

Transcendental laws, will only hold approximately on floating point numbers

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

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

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

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

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

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

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

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

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

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

Trigonometric laws, addition theorems

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

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

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

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

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

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

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

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

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