9 inline std::ostream &print_map(std::ostream &out, T &d)
12 for (
auto p = d.begin(); p != d.end(); p++) {
15 out << (p->first) <<
": " << (p->second);
22 inline std::ostream &print_map_rcp(std::ostream &out, T &d)
25 for (
auto p = d.begin(); p != d.end(); p++) {
28 out << *(p->first) <<
": " << *(p->second);
35 inline std::ostream &print_vec(std::ostream &out, T &d)
38 for (
auto p = d.begin(); p != d.end(); p++) {
48 inline std::ostream &print_vec_rcp(std::ostream &out, T &d)
51 for (
auto p = d.begin(); p != d.end(); p++) {
62 std::ostream &
operator<<(std::ostream &out,
const SymEngine::umap_basic_num &d)
64 return SymEngine::print_map_rcp(out, d);
67 std::ostream &
operator<<(std::ostream &out,
const SymEngine::map_basic_num &d)
69 return SymEngine::print_map_rcp(out, d);
72 std::ostream &
operator<<(std::ostream &out,
const SymEngine::map_basic_basic &d)
74 return SymEngine::print_map_rcp(out, d);
78 const SymEngine::umap_basic_basic &d)
80 return SymEngine::print_map_rcp(out, d);
83 std::ostream &
operator<<(std::ostream &out,
const SymEngine::vec_basic &d)
85 return SymEngine::print_vec_rcp(out, d);
88 std::ostream &
operator<<(std::ostream &out,
const SymEngine::set_basic &d)
90 return SymEngine::print_vec_rcp(out, d);
93 std::ostream &
operator<<(std::ostream &out,
const SymEngine::map_int_Expr &d)
95 return SymEngine::print_map(out, d);
98 std::ostream &
operator<<(std::ostream &out,
const SymEngine::vec_pair &d)
100 return SymEngine::print_map_rcp(out, d);
106 if (a.size() != b.size())
109 for (
size_t i = 0; i < a.size(); i++) {
112 for (
size_t j = 0; j < a.size(); j++) {
113 if (
eq(*a[i], *b[j])) {
Main namespace for SymEngine package.
bool eq(const Basic &a, const Basic &b)
Checks equality for a and b
bool vec_basic_eq_perm(const vec_basic &a, const vec_basic &b)
misc functions
std::ostream & operator<<(std::ostream &out, const SymEngine::Basic &p)
<< Operator