typename enable_if<is_inter_combinable<LeftT, RightT>, int>::type inclusion_compare(const LeftT& left, const RightT& right) { return Interval_Set::subset_compare(left, right, left.begin(), left.end(), right.begin(), right.end()); }
typename boost::enable_if<is_concept_equivalent<is_element_container,LeftT, RightT>, int>::type inclusion_compare(const LeftT& left, const RightT& right) { return Set::subset_compare(left, right, left.begin(), left.end(), right.begin(), right.end()); }
int subset_compare(const LeftT& left, const RightT& right) { return subset_compare ( left, right, left.begin(), left.end(), right.begin(), right.end() ); }