SymEngine C++ API
Loading...
Searching...
No Matches
symengine
simplify.h
1
#ifndef SYMENGINE_SIMPLIFY_H
2
#define SYMENGINE_SIMPLIFY_H
3
4
#include <
symengine/visitor.h
>
5
#include <
symengine/basic.h
>
6
#include <symengine/assumptions.h>
7
8
namespace
SymEngine
9
{
10
11
class
SimplifyVisitor
:
public
BaseVisitor
<SimplifyVisitor, TransformVisitor>
12
{
13
private
:
14
std::pair<RCP<const Basic>
, RCP<const Basic>>
15
simplify_pow(
const
RCP<const Basic> &
e
,
const
RCP<const Basic> &b);
16
17
public
:
18
using
TransformVisitor::bvisit;
19
20
SimplifyVisitor
() :
BaseVisitor<SimplifyVisitor, TransformVisitor>
() {}
21
22
void
bvisit(
const
Mul
&x);
23
void
bvisit(
const
Pow
&x);
24
void
bvisit(
const
OneArgFunction
&x);
25
};
26
27
RCP<const Basic> simplify(
const
RCP<const Basic> &x,
28
const
Assumptions
*
assumptions
=
nullptr
);
29
30
}
// namespace SymEngine
31
32
#endif
basic.h
The base class for SymEngine.
SymEngine::Assumptions
Definition
assumptions.h:14
SymEngine::BaseVisitor
Definition
visitor.h:48
SymEngine::Mul
Definition
mul.h:74
SymEngine::OneArgFunction
Definition
functions.h:22
SymEngine::Pow
Definition
pow.h:18
SymEngine::SimplifyVisitor
Definition
simplify.h:12
SymEngine
Main namespace for SymEngine package.
Definition
add.cpp:19
SymEngine::hash_combine
void hash_combine(hash_t &seed, const T &v)
Definition
basic-inl.h:95
std::pair
visitor.h