namespace boost {
namespace algorithm {
template<typename ForwardIterator, typename Pred>
BOOST_CXX14_CONSTEXPR ForwardIterator
is_sorted_until(ForwardIterator, ForwardIterator, Pred);
template<typename ForwardIterator>
BOOST_CXX14_CONSTEXPR ForwardIterator
is_sorted_until(ForwardIterator, ForwardIterator);
template<typename ForwardIterator, typename Pred>
BOOST_CXX14_CONSTEXPR bool
is_sorted(ForwardIterator, ForwardIterator, Pred);
template<typename ForwardIterator>
BOOST_CXX14_CONSTEXPR bool is_sorted(ForwardIterator, ForwardIterator);
template<typename R, typename Pred>
BOOST_CXX14_CONSTEXPR boost::lazy_disable_if_c< boost::is_same< R, Pred >::value, typename boost::range_iterator< const R > >::type
is_sorted_until(const R &, Pred);
template<typename R>
BOOST_CXX14_CONSTEXPR boost::range_iterator< const R >::type
is_sorted_until(const R &);
template<typename R, typename Pred>
BOOST_CXX14_CONSTEXPR boost::lazy_disable_if_c< boost::is_same< R, Pred >::value, boost::mpl::identity< bool > >::type
is_sorted(const R &, Pred);
template<typename R> BOOST_CXX14_CONSTEXPR bool is_sorted(const R &);
template<typename ForwardIterator>
BOOST_CXX14_CONSTEXPR bool
is_increasing(ForwardIterator, ForwardIterator);
template<typename R> BOOST_CXX14_CONSTEXPR bool is_increasing(const R &);
template<typename ForwardIterator>
BOOST_CXX14_CONSTEXPR bool
is_decreasing(ForwardIterator, ForwardIterator);
template<typename R> BOOST_CXX14_CONSTEXPR bool is_decreasing(const R &);
template<typename ForwardIterator>
BOOST_CXX14_CONSTEXPR bool
is_strictly_increasing(ForwardIterator, ForwardIterator);
template<typename R>
BOOST_CXX14_CONSTEXPR bool is_strictly_increasing(const R &);
template<typename ForwardIterator>
BOOST_CXX14_CONSTEXPR bool
is_strictly_decreasing(ForwardIterator, ForwardIterator);
template<typename R>
BOOST_CXX14_CONSTEXPR bool is_strictly_decreasing(const R &);
}
}