SymEngine C++ API
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
std::pair
visitor.h