ireal-0.2: Real numbers and intervals with relatively efficient exact arithmetic.

Safe HaskellSafe-Inferred
LanguageHaskell98

Data.Number.IReal.Scalable

Synopsis

Documentation

class Scalable a where Source

Scaling. scale x n computes x * 2^n using bit shifts.

Methods

scale :: a -> Int -> a Source

Instances

Scalable Double 
Scalable Integer

Correctly rounded result for negative n. Rounds upwards when decimal part of unrounded result is .5

Scalable IntegerInterval 
Scalable IReal 
(Integral a, Bits a) => Scalable (Ratio a) 
Precision k p => Scalable (Rounded k p) 

class VarPrec a where Source

Minimal complete definition

precB

Methods

prec :: Int -> a -> a Source

precB :: Int -> a -> a Source

Instances

VarPrec Double 
VarPrec IReal

prec n x is an interval of width 10^(-n) containing x.

VarPrec a => VarPrec [a] 
VarPrec a => VarPrec (Dif a) 
Precision k p => VarPrec (Rounded k p)