Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- class Ord a => RoundedRing a where
- roundedAdd :: RoundingMode -> a -> a -> a
- roundedSub :: RoundingMode -> a -> a -> a
- roundedMul :: RoundingMode -> a -> a -> a
- roundedFusedMultiplyAdd :: RoundingMode -> a -> a -> a -> a
- roundedFromInteger :: RoundingMode -> Integer -> a
- intervalAdd :: Rounded TowardNegInf a -> Rounded TowardInf a -> Rounded TowardNegInf a -> Rounded TowardInf a -> (Rounded TowardNegInf a, Rounded TowardInf a)
- intervalSub :: Rounded TowardNegInf a -> Rounded TowardInf a -> Rounded TowardNegInf a -> Rounded TowardInf a -> (Rounded TowardNegInf a, Rounded TowardInf a)
- intervalMul :: Rounded TowardNegInf a -> Rounded TowardInf a -> Rounded TowardNegInf a -> Rounded TowardInf a -> (Rounded TowardNegInf a, Rounded TowardInf a)
- intervalMulAdd :: Rounded TowardNegInf a -> Rounded TowardInf a -> Rounded TowardNegInf a -> Rounded TowardInf a -> Rounded TowardNegInf a -> Rounded TowardInf a -> (Rounded TowardNegInf a, Rounded TowardInf a)
- intervalFromInteger :: Integer -> (Rounded TowardNegInf a, Rounded TowardInf a)
- backendNameT :: Tagged a String
- class RoundedRing a => RoundedFractional a where
- roundedDiv :: RoundingMode -> a -> a -> a
- roundedRecip :: RoundingMode -> a -> a
- roundedFromRational :: RoundingMode -> Rational -> a
- roundedFromRealFloat :: RealFloat b => RoundingMode -> b -> a
- intervalDiv :: Rounded TowardNegInf a -> Rounded TowardInf a -> Rounded TowardNegInf a -> Rounded TowardInf a -> (Rounded TowardNegInf a, Rounded TowardInf a)
- intervalDivAdd :: Rounded TowardNegInf a -> Rounded TowardInf a -> Rounded TowardNegInf a -> Rounded TowardInf a -> Rounded TowardNegInf a -> Rounded TowardInf a -> (Rounded TowardNegInf a, Rounded TowardInf a)
- intervalRecip :: Rounded TowardNegInf a -> Rounded TowardInf a -> (Rounded TowardNegInf a, Rounded TowardInf a)
- intervalFromRational :: Rational -> (Rounded TowardNegInf a, Rounded TowardInf a)
- class RoundedRing a => RoundedSqrt a where
- roundedSqrt :: RoundingMode -> a -> a
- intervalSqrt :: Rounded TowardNegInf a -> Rounded TowardInf a -> (Rounded TowardNegInf a, Rounded TowardInf a)
- class RoundedRing a => RoundedRing_Vector vector a where
- roundedSum :: RoundingMode -> vector a -> a
- zipWith_roundedAdd :: RoundingMode -> vector a -> vector a -> vector a
- zipWith_roundedSub :: RoundingMode -> vector a -> vector a -> vector a
- zipWith_roundedMul :: RoundingMode -> vector a -> vector a -> vector a
- zipWith3_roundedFusedMultiplyAdd :: RoundingMode -> vector a -> vector a -> vector a -> vector a
- class (RoundedFractional a, RoundedRing_Vector vector a) => RoundedFractional_Vector vector a where
- zipWith_roundedDiv :: RoundingMode -> vector a -> vector a -> vector a
- class (RoundedSqrt a, RoundedRing_Vector vector a) => RoundedSqrt_Vector vector a where
- map_roundedSqrt :: RoundingMode -> vector a -> vector a
Documentation
class Ord a => RoundedRing a where Source #
Rounding-controlled version of Num
.
roundedAdd :: RoundingMode -> a -> a -> a Source #
roundedSub :: RoundingMode -> a -> a -> a Source #
roundedMul :: RoundingMode -> a -> a -> a Source #
roundedFusedMultiplyAdd :: RoundingMode -> a -> a -> a -> a Source #
roundedFromInteger :: RoundingMode -> Integer -> a Source #
intervalAdd :: Rounded TowardNegInf a -> Rounded TowardInf a -> Rounded TowardNegInf a -> Rounded TowardInf a -> (Rounded TowardNegInf a, Rounded TowardInf a) Source #
\x_lo x_hi y_lo y_hi -> intervalAdd (Rounded x_lo) (Rounded x_hi) (Rounded y_lo) (Rounded y_hi) == (Rounded (roundedAdd TowardNegInf x_lo y_lo), Rounded (roundedAdd TowardInf x_hi y_hi))
intervalSub :: Rounded TowardNegInf a -> Rounded TowardInf a -> Rounded TowardNegInf a -> Rounded TowardInf a -> (Rounded TowardNegInf a, Rounded TowardInf a) Source #
\x_lo x_hi y_lo y_hi -> intervalSub (Rounded x_lo) (Rounded x_hi) (Rounded y_lo) (Rounded y_hi) == (Rounded (roundedSub TowardNegInf x_lo y_hi), Rounded (roundedSub TowardInf x_hi y_lo))
intervalMul :: Rounded TowardNegInf a -> Rounded TowardInf a -> Rounded TowardNegInf a -> Rounded TowardInf a -> (Rounded TowardNegInf a, Rounded TowardInf a) Source #
intervalMulAdd :: Rounded TowardNegInf a -> Rounded TowardInf a -> Rounded TowardNegInf a -> Rounded TowardInf a -> Rounded TowardNegInf a -> Rounded TowardInf a -> (Rounded TowardNegInf a, Rounded TowardInf a) Source #
intervalFromInteger :: Integer -> (Rounded TowardNegInf a, Rounded TowardInf a) Source #
backendNameT :: Tagged a String Source #
Instances
class RoundedRing a => RoundedFractional a where Source #
Rounding-controlled version of Fractional
.
roundedDiv :: RoundingMode -> a -> a -> a Source #
roundedRecip :: RoundingMode -> a -> a Source #
roundedRecip :: Num a => RoundingMode -> a -> a Source #
roundedFromRational :: RoundingMode -> Rational -> a Source #
roundedFromRealFloat :: RealFloat b => RoundingMode -> b -> a Source #
roundedFromRealFloat :: (Fractional a, RealFloat b) => RoundingMode -> b -> a Source #
intervalDiv :: Rounded TowardNegInf a -> Rounded TowardInf a -> Rounded TowardNegInf a -> Rounded TowardInf a -> (Rounded TowardNegInf a, Rounded TowardInf a) Source #
intervalDivAdd :: Rounded TowardNegInf a -> Rounded TowardInf a -> Rounded TowardNegInf a -> Rounded TowardInf a -> Rounded TowardNegInf a -> Rounded TowardInf a -> (Rounded TowardNegInf a, Rounded TowardInf a) Source #
intervalRecip :: Rounded TowardNegInf a -> Rounded TowardInf a -> (Rounded TowardNegInf a, Rounded TowardInf a) Source #
intervalFromRational :: Rational -> (Rounded TowardNegInf a, Rounded TowardInf a) Source #
Instances
class RoundedRing a => RoundedSqrt a where Source #
Rounding-controlled version of sqrt
.
roundedSqrt :: RoundingMode -> a -> a Source #
intervalSqrt :: Rounded TowardNegInf a -> Rounded TowardInf a -> (Rounded TowardNegInf a, Rounded TowardInf a) Source #
Instances
class RoundedRing a => RoundedRing_Vector vector a where Source #
Lifted version of RoundedRing
Nothing
roundedSum :: RoundingMode -> vector a -> a Source #
Equivalent to \r -> foldl (
roundedAdd
r) 0
zipWith_roundedAdd :: RoundingMode -> vector a -> vector a -> vector a Source #
Equivalent to zipWith .
roundedAdd
zipWith_roundedSub :: RoundingMode -> vector a -> vector a -> vector a Source #
Equivalent to zipWith .
roundedSub
zipWith_roundedMul :: RoundingMode -> vector a -> vector a -> vector a Source #
Equivalent to zipWith .
roundedMul
zipWith3_roundedFusedMultiplyAdd :: RoundingMode -> vector a -> vector a -> vector a -> vector a Source #
Equivalent to zipWith3 .
roundedFusedMultiplyAdd
roundedSum :: (Vector vector a, Num a) => RoundingMode -> vector a -> a Source #
Equivalent to \r -> foldl (
roundedAdd
r) 0
zipWith_roundedAdd :: Vector vector a => RoundingMode -> vector a -> vector a -> vector a Source #
Equivalent to zipWith .
roundedAdd
zipWith_roundedSub :: Vector vector a => RoundingMode -> vector a -> vector a -> vector a Source #
Equivalent to zipWith .
roundedSub
zipWith_roundedMul :: Vector vector a => RoundingMode -> vector a -> vector a -> vector a Source #
Equivalent to zipWith .
roundedMul
zipWith3_roundedFusedMultiplyAdd :: Vector vector a => RoundingMode -> vector a -> vector a -> vector a -> vector a Source #
Equivalent to zipWith3 .
roundedFusedMultiplyAdd
Instances
class (RoundedFractional a, RoundedRing_Vector vector a) => RoundedFractional_Vector vector a where Source #
Lifted version of RoundedFractional
Nothing
zipWith_roundedDiv :: RoundingMode -> vector a -> vector a -> vector a Source #
Equivalent to zipWith .
roundedDiv
zipWith_roundedDiv :: Vector vector a => RoundingMode -> vector a -> vector a -> vector a Source #
Equivalent to zipWith .
roundedDiv
Instances
class (RoundedSqrt a, RoundedRing_Vector vector a) => RoundedSqrt_Vector vector a where Source #
Lifted version of RoundedSqrt
Nothing
map_roundedSqrt :: RoundingMode -> vector a -> vector a Source #
Equivalent to map .
roundedSqrt
map_roundedSqrt :: Vector vector a => RoundingMode -> vector a -> vector a Source #
Equivalent to map .
roundedSqrt