| ||||||||||
| ||||||||||
| Synopsis | ||||||||||
| Documentation | ||||||||||
| type Interval = Maybe Ball | ||||||||||
A wrapper around Ball allowing the results of operations like division by interval containing zero to be represented and do not cause errors. Nothing represents undefined interval. | ||||||||||
| fromBallA :: Precision -> Ball -> Interval | ||||||||||
| Make an interval from a ball and normalize it to specified precision. | ||||||||||
| fromBall :: Ball -> Interval | ||||||||||
| Just make an interval from a ball. | ||||||||||
| make :: Dyadic -> Dyadic -> Interval | ||||||||||
| Make an interval from two endpoints so that no precision is lost. | ||||||||||
| makeA | ||||||||||
| ||||||||||
| below :: Interval -> Interval -> Bool | ||||||||||
| Checks if second interval is inside the first. _|_ is above all. | ||||||||||
| contains :: Interval -> Dyadic -> Bool | ||||||||||
| Checks if interval contains dyadic. _|_ contains everything. | ||||||||||
| includes :: Interval -> Interval -> Inclusion | ||||||||||
| Returns Below if second interval is inside first, Above if converse, NoInclusion otherwise. | ||||||||||
| intersectA :: Precision -> Interval -> Interval -> Interval | ||||||||||
Return the intersection of two intervals. The resulting interval's center has specified precision. If one of the intervals is _|_ then just return the other (even if it is _|_). | ||||||||||
| intersect :: Interval -> Interval -> Interval | ||||||||||
| Return the intersection of two intervals so that no precision is lost. | ||||||||||
| neg :: Precision -> Interval -> Interval | ||||||||||
| Negate the interval. neg _|_ = _|_. | ||||||||||
| add :: Precision -> Interval -> Interval -> Interval | ||||||||||
| Addition. If one of the arguments is _|_, so is the result. | ||||||||||
| mul :: Precision -> Interval -> Interval -> Interval | ||||||||||
| Multiplication. If one of the arguments is _|_, so is the result | ||||||||||
| sub :: Precision -> Interval -> Interval -> Interval | ||||||||||
| Subtraction. If one of the arguments is _|_, so is the result | ||||||||||
| div :: Precision -> Interval -> Interval -> Interval | ||||||||||
| Division. If one of the arguments is _|_ or divisor contains 0 then result is _|_. | ||||||||||
| sqrt :: Precision -> Interval -> Interval | ||||||||||
| Square root. If one argument is _|_ or interval contains 0 then result is _|_. | ||||||||||
| exp :: Precision -> Interval -> Interval | ||||||||||
| e ^ i If argument is _|_ so is the result. | ||||||||||
| log :: Precision -> Interval -> Interval | ||||||||||
| Natural logarithm. If one argument is _|_ or interval contains 0 then result is _|_. | ||||||||||
| compareI :: Interval -> Interval -> POrdering | ||||||||||
| Compare two intervals. If one of them is _|_ the result is incomparable, otherwise result is comparison of balls. | ||||||||||
| maxI :: Precision -> Interval -> Interval -> Interval | ||||||||||
| Maximum of intervals. If one interval is _|_ so is the result. | ||||||||||
| minI :: Precision -> Interval -> Interval -> Interval | ||||||||||
| Similar to maxI. | ||||||||||
| center :: Monad m => Interval -> m Dyadic | ||||||||||
| Center of interval. Center on _|_ will result in fail. | ||||||||||
| radius :: Monad m => Interval -> m Dyadic | ||||||||||
| Radius of interval. Radius on _|_ will result in fail. | ||||||||||
| lower :: Monad m => Interval -> m Dyadic | ||||||||||
| Lower endpoint of interval with precision of the center. Lower on _|_ will result in fail. | ||||||||||
| upper :: Monad m => Interval -> m Dyadic | ||||||||||
| Upper endpoint of interval with precision of the center. Upper on _|_ will result in fail. | ||||||||||
| width :: Monad m => Interval -> m Dyadic | ||||||||||
| Width of the interval. Widht on _|_ will result in fail. | ||||||||||
| fromDyadic :: Precision -> Dyadic -> Interval | ||||||||||
| fromString :: Precision -> String -> Interval | ||||||||||
| fromInt :: Precision -> Int -> Interval | ||||||||||
| fromWord :: Precision -> Word -> Interval | ||||||||||
| toString :: Interval -> String | ||||||||||
| Produced by Haddock version 2.2.2 | ||||||||||