39 add(const
ex & lh, const
ex & rh);
49 bool info(
unsigned inf)
const override;
51 int degree(
const ex & s)
const override;
53 ex coeff(
const ex & s,
int n=1)
const override;
74 const ex & c)
const override;
76 const ex & c)
const override;
78 ex expand(
unsigned options=0)
const override;
82 void print_add(
const print_context & c,
const char *openbrace,
const char *closebrace,
const char *mul_sym,
unsigned level)
const;
add(const ex &lh, const ex &rh)
unsigned return_type() const override
ex derivative(const symbol &s) const override
Implementation of ex::diff() for a sum.
void print_add(const print_context &c, const char *openbrace, const char *closebrace, const char *mul_sym, unsigned level) const
numeric integer_content() const override
void do_print(const print_context &c, unsigned level) const
void do_print_python_repr(const print_python_repr &c, unsigned level) const
bool info(unsigned inf) const override
Information about the object.
ex eval_ncmul(const exvector &v) const override
ex thisexpairseq(const epvector &v, const ex &oc, bool do_index_renaming=false) const override
Create an object of this type.
numeric max_coefficient() const override
Implementation ex::max_coefficient().
void do_print_latex(const print_latex &c, unsigned level) const
expair combine_ex_with_coeff_to_pair(const ex &e, const ex &c) const override
exvector get_free_indices() const override
Return a vector containing the free indices of an expression.
return_type_t return_type_tinfo() const override
expair split_ex_to_pair(const ex &e) const override
Form an expair from an ex, using the corresponding semantics.
ex recombine_pair_to_ex(const expair &p) const override
Form an ex out of an expair, using the corresponding semantics.
expair combine_pair_with_coeff_to_pair(const expair &p, const ex &c) const override
void do_print_csrc(const print_csrc &c, unsigned level) const
unsigned precedence() const override
Return relative operator precedence (for parenthezing output).
Lightweight wrapper for GiNaC's symbolic objects.
expairseq(const ex &lh, const ex &rh)
This class is a wrapper around CLN-numbers within the GiNaC class hierarchy.
Base class for print_contexts.
Base context for C source output.
Context for latex-parsable output.
Context for python-parsable output.
This class holds a relation consisting of two expressions and a logical relation between them.
Interface to sequences of expression pairs.
ex real_part(const ex &thisex)
bool is_polynomial(const ex &thisex, const ex &vars)
container< std::list > lst
std::map< ex, ex, ex_is_less > exmap
std::vector< expair > epvector
expair-vector
GINAC_DECLARE_UNARCHIVER(add)
ex series(const ex &thisex, const ex &r, int order, unsigned options=0)
ex conjugate(const ex &thisex)
const numeric smod(const numeric &a_, const numeric &b_)
Modulus (in symmetric representation).
ex eval(const ex &thisex)
int degree(const ex &thisex, const ex &s)
int ldegree(const ex &thisex, const ex &s)
ex normal(const ex &thisex)
ex coeff(const ex &thisex, const ex &s, int n=1)
ex evalm(const ex &thisex)
std::vector< ex > exvector
ex imag_part(const ex &thisex)
ex expand(const ex &thisex, unsigned options=0)
#define GINAC_DECLARE_REGISTERED_CLASS(classname, supername)
Macro for inclusion in the declaration of each registered class.
To distinguish between different kinds of non-commutative objects.