Commit Graph

151 Commits

Author SHA1 Message Date
Bertrand Benjamin f53aa26542 Refact(API): Split simplify into _optimize, _typing, _compute 2018-11-21 08:54:37 +01:00
Bertrand Benjamin b4f9ced8a9 Doc(API): Adapt doctest to new computing order 2018-11-19 15:46:39 +01:00
Bertrand Benjamin 4999e80ec3 Fix(Core): Change append_bot to respect natural computing order 2018-11-19 15:44:02 +01:00
Bertrand Benjamin e37a8a5a2e Fix(API): Rewrite tree apply_on_last_level and reorganise simplify 2018-11-19 12:23:37 +01:00
Bertrand Benjamin 6edf4fe5b4 Fix(MO): Redefine strpower method of MOMonomial for deg 1 case 2018-11-19 12:21:59 +01:00
Bertrand Benjamin 1be3b35e1b Feat(Core): Add compute add for 2 mostr and 2 mostrpower 2018-11-19 12:17:03 +01:00
Bertrand Benjamin 8280640a4f Feat(Core): Add exceptions for add typing 2018-11-19 12:09:54 +01:00
Bertrand Benjamin ecf7e7678f Refact(Tree): Rename type_function to fallback in apply_on_last_level 2018-11-14 16:06:37 +01:00
Bertrand Benjamin eae88d6c4c Fix(Compute/Typing): Add MOpolynomial to MOS list 2018-11-14 16:05:38 +01:00
Bertrand Benjamin 298093d97d Doc(Typing): Typing function return MO 2018-11-14 16:04:53 +01:00
Bertrand Benjamin 3a89bcd24f Doc(Compute): update compute capacities 2018-11-14 11:05:35 +01:00
Bertrand Benjamin c176bb7bc4 Feat(Typing): Write all str related typing functions 2018-11-14 10:04:27 +01:00
Bertrand Benjamin a79ffb0cf9 Feat(Compute): Compute with monomials is done 2018-11-14 09:00:19 +01:00
Bertrand Benjamin b23d83b9da Feat(Compute): Add polynoms with polynoms 2018-11-13 16:19:02 +01:00
Bertrand Benjamin f6f6741398 Fix(MO): MOMonomial variable can be str in __init__ 2018-11-13 15:55:55 +01:00
Bertrand Benjamin 17153dd345 Feat(Compute): Add MOpolynomial with scalar 2018-11-13 14:42:40 +01:00
Bertrand Benjamin a32fd7cbc6 Feat(Compute): Compute MOstr and MOstrPower 2018-11-13 12:12:36 +01:00
Bertrand Benjamin 051d79cb9b Feat(Compute): Start add MO to create MOpolynomial 2018-11-13 11:40:21 +01:00
Bertrand Benjamin eff3ccf9f5 Feat(MO): Initiate MOpolynomial 2018-11-13 10:58:32 +01:00
Bertrand Benjamin abf056ce33 refactor(MO): Separate value and tree in MOs 2018-11-13 09:14:50 +01:00
Bertrand Benjamin 5b9a35081a Feat(MO): Start polynomial 2018-11-12 09:41:39 +01:00
Bertrand Benjamin 9d5b441402 Doc(Compute/typing): Make ComputeError and TypingError more clear 2018-10-10 10:46:58 +02:00
Bertrand Benjamin d2f67a0961 Fix(Render): Ajust "*" visibility with variables 2018-10-10 10:40:40 +02:00
Bertrand Benjamin e6abc208a0 Feat(compute): Multiply strpower and str done
Discover bug with str and * printing
2018-10-10 10:28:38 +02:00
Bertrand Benjamin ddf15e4276 Feat(compute): Write powers of fraction 2018-10-10 10:13:58 +02:00
Bertrand Benjamin 78e781be62 Feat(compute): Start compute with power 2018-10-08 17:57:17 +02:00
Bertrand Benjamin 5e254a26eb Feat(Tree): Add organise for AssocialTree 2018-10-05 16:21:14 +02:00
Bertrand Benjamin 94c117151d Fix(Fraction): debug successive division (1 to MOnumber(1)) 2018-10-05 11:20:08 +02:00
Bertrand Benjamin 2489eccb74 Fix(parsing): Remove spaces in string before parsing 2018-10-05 10:31:51 +02:00
Bertrand Benjamin 9e0a703e98 Feat(Tree): Add exclude_nodes in balance to trees 2018-10-05 08:52:04 +02:00
Bertrand Benjamin 948402755a Feat(Expression): Implement balance in expression 2018-10-04 08:16:59 +02:00
Bertrand Benjamin 89d7baaed2 Doc(Tree): Add solution to doctest in balance 2018-10-04 08:13:20 +02:00
Bertrand Benjamin 42dbfe9c86 Feat(Tree): Write balance Tree method 2018-10-04 08:11:08 +02:00
Bertrand Benjamin 4d75361c9d Feat(Tree): Deep and short branch property for trees 2018-10-01 17:36:12 +02:00
Bertrand Benjamin e9a865a14a Feat(API): use balance before computing to optimize calculus 2018-10-01 16:14:04 +02:00
Bertrand Benjamin 1266a2331b Fix(compute): clean typing multiply 2018-10-01 16:13:13 +02:00
Bertrand Benjamin b24069a72d Fix(compute): split multiply between compute and type 2018-10-01 11:55:35 +02:00
Bertrand Benjamin ddab3cebad Feat(tools): Make 2 methods to explain capacities of compute and typing 2018-10-01 08:54:15 +02:00
Bertrand Benjamin f3f93d31a7 Doc(typing): Add dynamic docstring to typing 2018-09-28 10:46:16 +02:00
Bertrand Benjamin 2bbcfaf482 Doc(Compute): Add dynamic table for sum up implemented operations 2018-09-28 10:43:12 +02:00
Bertrand Benjamin a557fa3981 Fix(steps): Typing steps are bypassed
Useless steps where complex objects were built are not shown. I create
a typing function which is called when compute raise
NotImplementedError.
2018-09-24 17:21:50 +02:00
Bertrand Benjamin 0e479323dd Test(core): Write doctest on computing with fractions 2018-09-24 15:47:47 +02:00
Bertrand Benjamin d09d8a3d98 Put example in API/__ini__ 2018-09-20 18:40:04 +02:00
Bertrand Benjamin 49a09fd52c Better printing of MOs in API 2018-09-20 18:38:49 +02:00
Bertrand Benjamin b63405592f doctests 2018-09-20 18:27:40 +02:00
Bertrand Benjamin a343d62078 Add example of trees for testing 2018-09-20 18:26:57 +02:00
Bertrand Benjamin 40cc8d00b6 basic simplify and explain methods for Expression 2018-09-17 18:18:29 +02:00
Bertrand Benjamin 5687ccb302 Start writing expression class 2018-09-17 16:29:00 +02:00
Bertrand Benjamin ec25cfab53 Add doctest 2018-09-17 16:27:20 +02:00
Bertrand Benjamin b1241e0844 documentate what we can do with core 2018-09-17 16:27:08 +02:00
Bertrand Benjamin f8e00a8638 Create MOstrPower and start adding it into multiply 2018-03-18 10:34:46 +03:00
Bertrand Benjamin 3b59e0ffb0 Generic function for MO: __eq__ and __hash__ 2018-03-18 10:34:15 +03:00
Bertrand Benjamin 3f3e52cdf8 Decorator for computing special cases 2018-03-17 11:55:32 +03:00
Bertrand Benjamin f4422c6d1a Use multipledispatch to define divide (plus dostring for add) 2018-03-17 10:38:59 +03:00
Bertrand Benjamin c08ea7b86a Use multipledispatch for multiply 2018-03-17 10:28:43 +03:00
Bertrand Benjamin f2fb80c55b Build minus with multipledispatcher 2018-03-17 10:15:46 +03:00
Bertrand Benjamin 9610ee1c7e Use multipledispatcher to define add for MO 2018-03-17 10:04:53 +03:00
Bertrand Benjamin 0cef131c41 Render momonial and multiply with scalar 2018-03-17 08:45:23 +03:00
Bertrand Benjamin b0ff919693 synthtize comparison for MOnumber 2018-03-15 16:38:25 +03:00
Bertrand Benjamin 985032b1af type filter for operations 2018-03-15 16:37:48 +03:00
Bertrand Benjamin 6e2cc96781 Start MOMonomial class 2018-03-14 11:42:43 +03:00
Bertrand Benjamin 3aa7c92f54 Add doctest in MO.factory and an error message 2018-03-14 11:42:10 +03:00
Bertrand Benjamin 6763ae6074 Modify the way ^ is rendering 2018-03-14 11:40:57 +03:00
Bertrand Benjamin eff438b930 Move MOError to exceptions.py 2018-03-14 11:04:13 +03:00
Bertrand Benjamin d1c6e2d3da Overload operators for MOnumbers in order to use gcd 2018-03-13 18:57:38 +03:00
Bertrand Benjamin 3c133250ec Multiply and divide are ok for MOnumber and MOFraction 2018-03-13 17:12:41 +03:00
Bertrand Benjamin e4efa1028e Some PEP8 rectifications 2018-03-13 14:43:48 +03:00
Bertrand Benjamin e9046c49ff Rewrite compute and remove reference to computing in OPERATORS 2018-03-13 05:46:14 +03:00
Bertrand Benjamin 832946ed49 Remove reference to compute in Tree 2018-03-12 20:01:52 +03:00
Bertrand Benjamin 25f791bd81 Minus MO 2018-03-12 19:27:01 +03:00
Bertrand Benjamin 98381f4512 Add 2 fractions works! 2018-03-12 07:34:26 +03:00
Bertrand Benjamin 5f5fcc5a79 Multiply with MOnumber and MOFraction 2018-03-11 20:05:17 +03:00
Bertrand Benjamin 9baf6c5dbd Remove bug with MOnumber = 0 2018-03-11 20:04:47 +03:00
Bertrand Benjamin b10492533e Throw bases for computing (and start tiding exceptions) 2018-03-11 18:34:41 +03:00
Bertrand Benjamin b2239e0e56 str2tex done and integrate into MO 2018-03-10 16:08:28 +03:00
Bertrand Benjamin d14850c78d Rearrange folders and use tree2txt inside MO 2018-03-10 08:44:01 +03:00
Bertrand Benjamin d498af2bab tree2txt is done and doctested 2018-03-10 08:03:55 +03:00
Bertrand Benjamin a51386fded Throw bases for tree2txt 2018-03-09 19:33:02 +03:00
Bertrand Benjamin a8a62864a6 Integrate MO inside str2 and in Tree (doctest are ok) 2018-03-09 19:31:46 +03:00
Bertrand Benjamin 1ab74eb133 Start writing MOs 2018-03-08 17:01:47 +03:00
Bertrand Benjamin 313e3a4efc - is now a unary operator 2018-03-07 16:26:06 +03:00
Bertrand Benjamin 6aec4be490 spell and empty line 2018-02-02 18:37:24 +03:00
Bertrand Benjamin 5123dc0f8a add a doctest for Tree 2018-02-02 18:33:08 +03:00
Bertrand Benjamin 451dce91e5 Accept missing * for str parsing 2018-02-02 18:32:16 +03:00
Bertrand Benjamin 91bd108b53 is_operator function 2018-02-02 18:02:42 +03:00
Bertrand Benjamin a0fa09a381 Balancing a AssocialTree 2018-01-31 17:18:52 +03:00
Bertrand Benjamin 935a0d0d23 Create AssocialTree and method to init tree from a node and a list of
leafs
2018-01-30 05:34:18 +03:00
Bertrand Benjamin 8b201fa8d0 Throw basis of LeafTree 2018-01-29 07:51:54 +03:00
Bertrand Benjamin 72864f12cd Add depth for tree 2018-01-28 19:13:55 +03:00
Bertrand Benjamin a916035260 Number are now int or Decimal when an expression is parsed 2018-01-28 18:54:30 +03:00
Bertrand Benjamin 251ec6c83b Change from_str method name for muttable tree 2018-01-28 18:31:21 +03:00
Bertrand Benjamin 876a1fc63c get leafs or operator methodes for tree 2018-01-28 18:13:37 +03:00
Bertrand Benjamin 1176b6f608 Basic evaluation for trees 2018-01-21 18:16:08 +03:00
Bertrand Benjamin 7d00d3342a allowing empty left leaf for operator of 1 arity 2018-01-21 17:05:54 +03:00
Bertrand Benjamin b885bb6b8f Start expression API 2018-01-21 12:21:13 +03:00
Bertrand Benjamin 273675b243 Doc string and method name 2018-01-21 12:14:16 +03:00
Bertrand Benjamin 0f3e0870fe apply_on_last_branches is ok 2018-01-21 12:10:45 +03:00
Bertrand Benjamin e64613f5be map_leaf method for tree 2018-01-21 11:52:22 +03:00
Bertrand Benjamin 813c1f096e Remove old files and fix class name in doctest 2018-01-21 11:32:17 +03:00
Bertrand Benjamin a751e346d3 Import work from other repo 2018-01-21 11:26:34 +03:00