constexpr bool operator()( interval<L> const& a, typename interval<L>::value_type const& b ) const noexcept { return weak_equal( a, b ); }
bool equal (memorizer_rep* mem) { evaluate_memorizer_rep* rep= (evaluate_memorizer_rep*) mem; return weak_equal (env_in, rep->env_in) && weak_equal (t_in, rep->t_in); }
constexpr bool operator()( interval<L> const& a, interval<R> const& b ) const noexcept { return weak_equal( a, b ); }
bool equal (memorizer_rep* mem) { rewrite_memorizer_rep* rep= (rewrite_memorizer_rep*) mem; return weak_equal (env_in, rep->env_in) && weak_equal (t_in, rep->t_in); }