boost::numeric::functional::min_assign
template<typename Left, typename Right, typename LeftTag, typename RightTag> struct min_assign : public boost::numeric::functional::min_assign_base< Left, Right, void > { };