Commit Graph

3099 Commits

Author SHA1 Message Date
Émilie Feral
bc2f6539ee [poincare] Clean
Change-Id: I132f49f26ccd1391051ac56acfebf4460e2bffb3
2017-10-10 17:45:51 +02:00
Émilie Feral
2e3e53a6bc [poincare] Clean
Change-Id: Ieb154935f5038ccc92a4be86b588736afe5f4c92
2017-10-10 16:17:14 +02:00
Émilie Feral
56fb716a00 [poincare] in Multiplication merge negative power at the end of simplify
Change-Id: Ic201e550fc0ec878c198efc71a77c441e4553560
2017-10-10 15:57:46 +02:00
Émilie Feral
7449e4e5f6 [poincare] Avoid infinite reciprocal call in
simplifyRationalRationalPower

Change-Id: I4eeec4893dfffdb96f4b1dd0f92e05f8b397cd75
2017-10-10 15:57:02 +02:00
Émilie Feral
2cacda6d20 [poincare] Change isPositive method by int sign()
Change-Id: I575e7a48c4d5b82c93094f772bbafd41913646cc
2017-10-10 15:56:41 +02:00
Émilie Feral
6a0d958c4e [poincare] Factorize simplify code in dynamic hierarchy
Change-Id: I0ae0ab5e08e4661e6eab1344baf35a535d31cd04
2017-10-10 12:08:57 +02:00
Émilie Feral
6be0cb8b94 [poincare] Implement Addition::immediateBeautify
Change-Id: I98307a12937b5c4a9100a2040f2782521c523f9b
2017-10-10 11:57:12 +02:00
Émilie Feral
3d4a3789e3 [poincare] Add a simple test in rational
Change-Id: Idd94d1a6a3c6fa9173e99f0313b6abf07034c382
2017-10-10 11:56:53 +02:00
Émilie Feral
22250d9d91 [poincare] Clean code in Multiplication::simplify
Change-Id: If5fa80f4b6414c544c69a7f2384e95c4954b62ce
2017-10-10 11:56:35 +02:00
Émilie Feral
d8b1ad962b [poincare] Add a method beautify on expressions
Change-Id: Ib5cb1b595365518c9a33ba83da57a1b4d03b9385
2017-10-09 18:00:53 +02:00
Émilie Feral
4aeeb51516 [poincare] add comments
Change-Id: I2eaf9b49d341d1e0405318662de91a4ea35c14af
2017-10-09 17:57:31 +02:00
Émilie Feral
29bf984c70 [poincare] Fix bug in Simplify of dynamic hierarchy
Change-Id: I9967e740f268d55ea36d24b32546037e02564c36
2017-10-09 17:54:06 +02:00
Émilie Feral
c2670464f5 [poincare] Clean
Change-Id: Ib3b909f68d2532b9f59b04f4cefce4cd9bb10ab5
2017-10-09 16:46:11 +02:00
Émilie Feral
aac7650339 [poincare] Tests
Change-Id: I89e635deb09dbb26927b70e7b6d63961d126f747
2017-10-09 16:38:59 +02:00
Émilie Feral
3f0972d499 [poincare] Fix bug in Power::simplify
Change-Id: I91c543961b90116755ee11e4f11725c8df059923
2017-10-09 16:37:58 +02:00
Émilie Feral
0de79d8dc0 [poincare] Lex "undef" as an expression Undefined()
Change-Id: I12595c7264c06d80d187d725a647b97c89807865
2017-10-09 16:15:57 +02:00
Émilie Feral
7726d5131a [poincare] Fix bug 0^0 = 1
Change-Id: I25c55f497fa78ed4092928ca4438fc8181bcf9cc
2017-10-09 16:05:10 +02:00
Émilie Feral
afdd40c1b8 [poincare] Implement NthRoot::simpligy
Change-Id: I560ad496557782b7df461b28d74f3f0f520ba5e4
2017-10-09 15:42:40 +02:00
Émilie Feral
2112652a44 [poincare] Add rule in Multiplication::simplify
Change-Id: I851efee644f4cf11cf9358387403f83179d88aff
2017-10-09 15:42:16 +02:00
Émilie Feral
76411a9f7b [poincare] Implement AbsoluteValue::simplify
Change-Id: Ic7951ba78ba81441395a15a8019aaf3579b14c75
2017-10-09 14:13:55 +02:00
Émilie Feral
a0248deaee [poincare] Improve Power::simplify
Change-Id: I7514ccde02ab92db84778ba385703169b7636ce1
2017-10-09 14:08:22 +02:00
Émilie Feral
5ddcbbe4b7 [poincare] Implement isPositive for symbols Pi and e
Change-Id: I6fb3f605eaf62848b2e90b186c9adb00b330f91d
2017-10-09 14:02:16 +02:00
Émilie Feral
ea7a22aaa4 [poincare] Fix bug in power::simplify
Change-Id: I29b843a87d2fd4d6327e43c2fda06e5d47573b28
2017-10-09 13:30:57 +02:00
Émilie Feral
a61470e84a [poincare] Fix primeFactorization to factorize any number (no bound
anymore)

Change-Id: I389124fcca03843aadcae4a6d5db10188f14c194
2017-10-09 12:03:15 +02:00
Émilie Feral
63583eb972 [poincare] Implement SquareRoot::simplify
Change-Id: I4c9c5be24c2c85c8750d9f2a530b452ddcc68a6b
2017-10-09 11:48:44 +02:00
Émilie Feral
0326ade090 [poincare] Clean
Change-Id: Iffbfdb053cae2853a35041041716026a26fe4e74
2017-10-09 11:34:50 +02:00
Émilie Feral
e5a581680a [poincare] In power::simplify, implement rule 2^(2+Pi)->4*2^(Pi)
Change-Id: Ic884c721039908df56f7c1a3fe5fee27495d9027
2017-10-09 11:34:07 +02:00
Émilie Feral
0eaaa9f00d [poincare] Fix bug when comparing expression
Change-Id: I8f5703672f9918fbe81483e40d7b014e6c98d6b6
2017-10-09 11:33:06 +02:00
Émilie Feral
80d69e2f8a [poincare] Fix bug in addition::simplify
Change-Id: I9a21bb2765be6ef556041cfe1855b1edf3a8d3ff
2017-10-06 18:37:14 +02:00
Émilie Feral
4a0876b9cf [poincare] Implement Division::simplify
Change-Id: Ie938f410aa0dd1bf55060559e457b6003821471c
2017-10-06 18:26:15 +02:00
Émilie Feral
22540b8ed4 [poincare] Fix bugs in rational
Change-Id: I26c14911b6ea73672e70eb3d794201cc577f3015
2017-10-06 18:25:53 +02:00
Émilie Feral
8f03d672ce [poincare] Implement Subtraction::simplify
Change-Id: If6494c80c3c2c2132fb3f584c720f7b978917a8c
2017-10-06 18:14:46 +02:00
Émilie Feral
3ee128062c [poincare] Add new rule in Power::simplify
Change-Id: Ia8197f6d09467e986754dd0afdb6b5042927495e
2017-10-06 18:10:18 +02:00
Émilie Feral
76d2e1d8b9 [poincare] Add setNegative on Rationial
Change-Id: I9b7f297bea8f0c917919fb15405805865b7537b9
2017-10-06 18:09:46 +02:00
Émilie Feral
082e6468f7 [poincare] In power: (a^b)^c = a^(b+c) if a > 0 or c is integer
Change-Id: Iad7b559de5e15972a54e322bca832d78596abf53
2017-10-06 17:06:46 +02:00
Émilie Feral
d855ee8364 [poincare] Add a method isPositive on expressions
Change-Id: I3eb0064f8d64678326e74216517e0104eaa007fe
2017-10-06 17:06:23 +02:00
Émilie Feral
6524ab9286 [poincare] Clean Power::Simplify
Change-Id: Ic3ce764e38c6443f3918cdfb0347c6f6046df79a
2017-10-06 16:41:19 +02:00
Émilie Feral
61865fbfa0 [poincare] Improve Power::simplify
Change-Id: I4388f3580666620d490bc5e1967fe739cb7fb01b
2017-10-06 15:57:57 +02:00
Émilie Feral
ed9aae3003 [poincare] Correct Multiplication::simplify to avoid factorizing
2*2^(1/2)

Change-Id: I32d51584a372afa29a36a3e94f65b024bc9e9bc4
2017-10-06 15:55:42 +02:00
Émilie Feral
22be8032e1 [poincare] First version of Power::simplify
Change-Id: Ief654c8f57bacd84a3ee5e386548b131c1ed65d3
2017-10-06 13:53:29 +02:00
Émilie Feral
5fa0d8e089 [poincare] Fix bug in Multiplication::simplify
Change-Id: I32c3489507c92658bec2fe97ec159d9181965224
2017-10-06 13:53:29 +02:00
Émilie Feral
78b85ed0df [poincare] Add methods in rational
Change-Id: I4ed056792d3358f7c8502533c71c11dd93240fb9
2017-10-06 13:53:23 +02:00
Émilie Feral
3d717eb4af [poincare]Fix addition and multiplication simplify: delete constant in 1*A or 0+B
Change-Id: Ia46f385937e5690769cf2739820ede10cc0f24b5
2017-10-06 12:04:21 +02:00
Émilie Feral
1ede897a37 [poincare] Create a class undefined
Change-Id: I0d30b907179f38b77ed65136fddede6e16fb08e1
2017-10-06 12:03:54 +02:00
Émilie Feral
96661a53e2 [poincare] Opposite::simplify
Change-Id: I6af7c645f989e43b86a210430868e164f3f18f64
2017-10-05 18:24:35 +02:00
Émilie Feral
58cdf3e6c3 [poincare] Change name: privateSimplify->immediateSimplify
Change-Id: I08c46354c3ad8ebb5de2a152554dd7ad36a7d255
2017-10-05 18:05:01 +02:00
Émilie Feral
6533e115ec [poincare] Parenthesis simplify
Change-Id: I2ebcc1d5148eacb087be407559e5593c6ac6641e
2017-10-05 18:02:38 +02:00
Émilie Feral
e29872789c [poincare] add distribution in multiplication simplify
Change-Id: I9d159b1577f4e02ebdc24e19ff45b66a1b2eb2a3
2017-10-05 18:02:02 +02:00
Émilie Feral
d35caae854 [poincare] Fix Multiplication::simplify
Change-Id: I8c2b7a1f40a54c121c3068abb15e4a711d1aa115
2017-10-05 18:01:19 +02:00
Émilie Feral
d995226baa [poincare] Fix Addition::simplify
Change-Id: I054f01c410f289095353ae31f69d7f5d2cc2d94c
2017-10-05 17:56:26 +02:00