11 hash_t seed = SYMENGINE_NOT_A_NUMBER;
25 SYMENGINE_ASSERT(is_a<NaN>(o))
36 return rcp_from_this_cast<Number>();
41 return rcp_from_this_cast<Number>();
46 return rcp_from_this_cast<Number>();
51 return rcp_from_this_cast<Number>();
54 RCP<const Number> NaN::rpow(
const Number &other)
const
56 return rcp_from_this_cast<Number>();
61 RCP<const Basic> sin(
const Basic &x)
const override
63 SYMENGINE_ASSERT(is_a<NaN>(x))
66 RCP<const Basic> cos(
const Basic &x)
const override
68 SYMENGINE_ASSERT(is_a<NaN>(x))
71 RCP<const Basic> tan(
const Basic &x)
const override
73 SYMENGINE_ASSERT(is_a<NaN>(x))
76 RCP<const Basic> cot(
const Basic &x)
const override
78 SYMENGINE_ASSERT(is_a<NaN>(x))
81 RCP<const Basic> sec(
const Basic &x)
const override
83 SYMENGINE_ASSERT(is_a<NaN>(x))
86 RCP<const Basic> csc(
const Basic &x)
const override
88 SYMENGINE_ASSERT(is_a<NaN>(x))
91 RCP<const Basic> asin(
const Basic &x)
const override
93 SYMENGINE_ASSERT(is_a<NaN>(x))
96 RCP<const Basic> acos(
const Basic &x)
const override
98 SYMENGINE_ASSERT(is_a<NaN>(x))
101 RCP<const Basic> acsc(
const Basic &x)
const override
103 SYMENGINE_ASSERT(is_a<NaN>(x))
106 RCP<const Basic> asec(
const Basic &x)
const override
108 SYMENGINE_ASSERT(is_a<NaN>(x))
111 RCP<const Basic> atan(
const Basic &x)
const override
113 SYMENGINE_ASSERT(is_a<NaN>(x))
116 RCP<const Basic> acot(
const Basic &x)
const override
118 SYMENGINE_ASSERT(is_a<NaN>(x))
121 RCP<const Basic> sinh(
const Basic &x)
const override
123 SYMENGINE_ASSERT(is_a<NaN>(x))
126 RCP<const Basic> csch(
const Basic &x)
const override
128 SYMENGINE_ASSERT(is_a<NaN>(x))
131 RCP<const Basic> cosh(
const Basic &x)
const override
133 SYMENGINE_ASSERT(is_a<NaN>(x))
136 RCP<const Basic> sech(
const Basic &x)
const override
138 SYMENGINE_ASSERT(is_a<NaN>(x))
141 RCP<const Basic> tanh(
const Basic &x)
const override
143 SYMENGINE_ASSERT(is_a<NaN>(x))
146 RCP<const Basic> coth(
const Basic &x)
const override
148 SYMENGINE_ASSERT(is_a<NaN>(x))
151 RCP<const Basic> asinh(
const Basic &x)
const override
153 SYMENGINE_ASSERT(is_a<NaN>(x))
156 RCP<const Basic> acosh(
const Basic &x)
const override
158 SYMENGINE_ASSERT(is_a<NaN>(x))
161 RCP<const Basic> acsch(
const Basic &x)
const override
163 SYMENGINE_ASSERT(is_a<NaN>(x))
166 RCP<const Basic> asech(
const Basic &x)
const override
168 SYMENGINE_ASSERT(is_a<NaN>(x))
171 RCP<const Basic> atanh(
const Basic &x)
const override
173 SYMENGINE_ASSERT(is_a<NaN>(x))
176 RCP<const Basic> acoth(
const Basic &x)
const override
178 SYMENGINE_ASSERT(is_a<NaN>(x))
181 RCP<const Basic> abs(
const Basic &x)
const override
183 SYMENGINE_ASSERT(is_a<NaN>(x))
186 RCP<const Basic> log(
const Basic &x)
const override
188 SYMENGINE_ASSERT(is_a<NaN>(x))
191 RCP<const Basic> gamma(
const Basic &x)
const override
193 SYMENGINE_ASSERT(is_a<NaN>(x))
196 RCP<const Basic> exp(
const Basic &x)
const override
198 SYMENGINE_ASSERT(is_a<NaN>(x))
201 RCP<const Basic> floor(
const Basic &x)
const override
203 SYMENGINE_ASSERT(is_a<NaN>(x))
206 RCP<const Basic> ceiling(
const Basic &x)
const override
208 SYMENGINE_ASSERT(is_a<NaN>(x))
211 RCP<const Basic> truncate(
const Basic &x)
const override
213 SYMENGINE_ASSERT(is_a<NaN>(x))
216 RCP<const Basic> erf(
const Basic &x)
const override
218 SYMENGINE_ASSERT(is_a<NaN>(x))
221 RCP<const Basic> erfc(
const Basic &x)
const override
223 SYMENGINE_ASSERT(is_a<NaN>(x))
The lowest unit of symbolic representation.
A class that will evaluate functions numerically.
RCP< const Number > mul(const Number &other) const override
Multiplication.
int compare(const Basic &o) const override
Evaluate & get_eval() const override
Get Evaluate singleton to evaluate numerically.
RCP< const Number > pow(const Number &other) const override
Power.
bool __eq__(const Basic &o) const override
RCP< const Number > add(const Number &other) const override
Addition.
hash_t __hash__() const override
RCP< const Number > div(const Number &other) const override
Division.
RCP< const Basic > conjugate() const override
Main namespace for SymEngine package.