-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Log-domain floating point numbers -- -- This module presents a class for storing numbers in the log-domain. -- The main reason for doing this is to prevent underflow when -- multiplying many probabilities as is done in Hidden Markov Models. It -- is also helpful for preventing overflow. @package logfloat @version 0.8.2 module Data.Number.LogFloat infinity :: (Fractional a) => a negativeInfinity :: (Fractional a) => a notANumber :: (Fractional a) => a log :: (Floating a) => a -> a toFractional :: (Real a, Fractional b) => a -> b data LogFloat logFloat :: (Real a) => a -> LogFloat logToLogFloat :: (Real a) => a -> LogFloat fromLogFloat :: (Floating a) => LogFloat -> a logFromLogFloat :: (Floating a) => LogFloat -> a instance Eq LogFloat instance Ord LogFloat instance Real LogFloat instance Fractional LogFloat instance Num LogFloat instance Show LogFloat