Commit Graph

31 Commits

Author SHA1 Message Date
Émilie Feral
855cec527f [poincare] Power: remove rule i^(p/q) -> e^(i*Pi*p/2q).
This is handles in ComplexCartesian class when the simplification target
is the user and it doesn't need to be handled for other simplification
targets (we even prefer the first form).
2020-02-12 15:13:23 +01:00
Émilie Feral
1f02e8e381 [poincare] AbsoluteValue: add rule |x*y| --> |x|*|y| and |x^y| --> |x|^y 2020-02-12 15:13:23 +01:00
Émilie Feral
4e948ce533 [poincare] Change Factor approximation to return undef on non real
values
2020-02-12 15:13:22 +01:00
Léa Saviot
167fdf285f [poincare/test] Simplification test on f(1/0) when f(x) = 3 2020-02-12 15:13:21 +01:00
Léa Saviot
78adca7113 [poincare/tests] Fix tests after parsing change 2020-02-12 15:13:21 +01:00
Émilie Feral
280f20c93c [poincare] Fix remainder of division by 0: rem(12,0) should be undefined
and not infinity
2020-02-12 15:13:19 +01:00
Émilie Feral
30c4e01737 [poincare] Fix and add tests about BasedInteger 2020-02-12 15:13:19 +01:00
Ruben Dashyan
ab80741838 [poincare/test/simplification] Remove redundant tests 2020-02-12 15:13:16 +01:00
Ruben Dashyan
3271fc90a4 [poincare/test] Clean header inclusions 2020-02-12 15:13:16 +01:00
Émilie Feral
984d1ff924 [poincare] Expression::CreateComplexExpression: fix crash when creating
Polar form
2019-11-26 10:36:42 +01:00
Émilie Feral
ccf848a9eb [poincare] Add test: do not expand multinome when reduction target is
System
2019-11-21 09:47:16 +01:00
Émilie Feral
6135fced52 [poincare] Power: always reduce (a^b)^(-1) 2019-11-13 15:54:46 +01:00
Émilie Feral
0736a3f55a [poincare] In Polar complex format, avoid displaying real expression as
sqrt of square when possible
2019-11-05 16:46:21 +01:00
Émilie Feral
e8046ddb9a [poincare] Trigonometry: fix shallowReduceDirectFunction 2019-11-05 16:46:21 +01:00
Émilie Feral
d95e25c4b7 [poincare] Power::shallowReduce: reducing should happen after replacing
the expression in its hierarchical context

Fix sum(1/n, n, 1, 5) reducing with no symbolic computation
2019-09-20 17:31:51 +02:00
Émilie Feral
3831c66183 [poincare] Randint: fix approximation to return undef when the result is
going to lack precision
2019-09-20 17:11:56 +02:00
Léa Saviot
3911dc89b7 [poincare/normcdf2] Fix shallowReduce (mu and var indexes were wrong) 2019-09-19 14:28:40 +02:00
Émilie Feral
f995cd3a90 [poincare] Fix tests: different libm have various precisions on trigonometric function
(tan(pi/2) is not always undef). Change approximation tests to be
correct on travis platform.
2019-09-18 15:24:51 +02:00
Émilie Feral
c5ed1bebfe [poincare] HyperbolicTrigonometricFunction: add rules cosh(0) -> 1,
sinh(0) -> 0, tanh(0) -> 0 and acosh(1) -> 0, asinh(0) -> 0, atanh(0) ->
0
2019-08-29 10:01:40 +02:00
Léa Saviot
76ed420a1d [poincare/test] Fix typo 2019-08-23 17:29:18 +02:00
Léa Saviot
a2f435bed3 [poincare/inv_norm] Don't simplify if variance is not checked to be >0 2019-08-23 17:29:15 +02:00
Léa Saviot
cd227ef3bd [poincare] InvNorm simplification + better approx 2019-08-23 16:39:20 +02:00
Léa Saviot
924e43d138 [poincare/hyperbolic_functions] Simplification tests 2019-08-21 18:05:32 +02:00
Léa Saviot
127a166762 [poincare/test] Det + identity simplification 2019-08-20 17:20:59 +02:00
Émilie Feral
15696d3237 [poincare] Improve shallowReduce of Ceiling and Floor to be exact most
of the time
2019-08-20 11:51:37 +02:00
Émilie Feral
19e271d81f [poincare] Expression simplification: respect required complex format
inside matrix entries
2019-08-16 11:01:58 +02:00
Émilie Feral
eb0f6153c5 [poincare] When reducing expressions, we check if an expression is a
matrix to know if it can be permuted in a multiplication for example.
This check has to be 'recursive'/'deep' to detect cases like "cos(3×confidence(cos(2)/25,3))"
2019-08-14 09:38:27 +02:00
Émilie Feral
adb1a09638 [poincare] MatrixDimension: fix shallowReduce (missing
replaceWithInPlace)
2019-08-14 09:38:27 +02:00
Émilie Feral
081462ab5e [poincare] Fix tests with Multiplication serialization (it always add
the × operator
2019-08-08 17:22:06 +02:00
Émilie Feral
073479b9aa [poincare] MultiplicationImplicit: MultiplicationImplicit(2^3,4)
seriliazes to [2^3]4. Add tests about expression serialization
2019-08-08 17:22:05 +02:00
Émilie Feral
cedcab21ec [poincare] Tidy tests and add TODO for tests that need to be completed 2019-08-08 17:22:04 +02:00