{-| Module : Data.Number.ER.Real.DefaultRepr Description : concise names for default real representations Copyright : (c) Michal Konecny License : BSD3 Maintainer : mik@konecny.aow.cz Stability : experimental Portability : non-portable (requires fenv.h) This module supplies default instances for the real number classes defined in "Data.Number.ER.Real.Approx". These classes express loosely coupled abstraction layers. To preserve the intended loose coupling, please use these definitions only in functions that do not import or export any real numbers or real functions. -} module Data.Number.ER.Real.DefaultRepr ( initMachineDouble, B, BM, BAP, BMAP, BR, RA, IRA ) where --import import Data.Number.ER.Real.Base.Float import Data.Number.ER.Real.Base.Rational import Data.Number.ER.Real.Approx.Interval --import Data.Number.ER.Real.Base.BigFloatBase import Data.Number.ER.Real.Base.MachineDouble import Data.Number.ER.Real.Base.CombinedMachineAP type BAP = ERFloat {-| Limited granularity, but sometimes up to 100x faster than ERFloat! !!! to be safe, one has to run 'initMachineDouble' -} type BM = Double {-| Use machine 'Double' while the granularity is up to its significant bit length and when the granularity grows beyond that, use 'ERFloat'. !!! to be safe, one has to run 'initMachineDouble' -} type BMAP = ERMachineAP BAP --type BBF = BigFloat Prec50 -- seems incomplete on 25/Jun/2008 {-| very inefficient -} type BR = ExtendedRational {-| the default base type -} --type B = BAP --type B = BM type B = BMAP --type B = BR {-| the default instance of 'Data.Number.ER.Real.Approx.ERApprox' -} type RA = ERInterval B {-| the default instance of 'Data.Number.ER.Real.Approx.ERIntApprox' -} type IRA = ERInterval B