template<class T, class Policies> inline bool cerne(const T& x, const interval<T, Policies>& y) { return x < y.lower() || y.upper() < x; }
template<class T, class Policies> inline bool cerne(const interval<T, Policies>& x, const T& y) { return x.upper() < y || y < x.lower(); }
template<class T, class Policies> inline bool cereq(const T& x, const interval<T, Policies>& y) { return x == y.lower() && x == y.upper(); }
template<class T, class Policies1, class Policies2> inline bool cerne(const interval<T, Policies1>& x, const interval<T, Policies2>& y) { return x.upper() < y.lower() || y.upper() < x.lower(); }
template<class T, class Policies> inline bool cereq(const interval<T, Policies>& x, const T& y) { return x.lower() == y && x.upper() == y; }