ireal-0.1: Real numbers and intervals with not so inefficient 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) 

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]