| ||||||||||

| ||||||||||

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 |