std::pair<interval<T>,interval<T>> outside() const; std::pair<interval<T>,interval<T>> bisect() const; std::pair<interval<T>,interval<T>> bisect(const T& atloc) const;
Returns two intervals representing the outside of the current interval. If only one interval is needed to represent
the outside of the current interval, which is the case if the current interval is unbounded in one direction or ,
the single outside interval will be in the first element of the std::pair, with the other being set to .
Split the current interval into two halves if applicable, that is the current interval must be either whole or
unbounded.
Split the current interval into two halves with a separation number at which the interval will be split.