newRPL - build 1255 released! [updated to 1299]
12-18-2018, 10:58 PM
Post: #336
 Claudio L. Senior Member Posts: 1,883 Joined: Dec 2013
RE: newRPL - build 1089 released! [update:build 1127]
(12-17-2018 10:32 PM)Claudio L. Wrote:
(12-17-2018 09:38 PM)The Shadow Wrote:  Hmm. AUTOSIMPLIFY needs some work yet. It doesn't yet know how to multiply singleton variables. ie, it can't change 'X^3*X' to 'X^4'. It also can't change 'X+X' to '2*X'.
You are right (which is not unusual for you). The rules I have cover X^n*X^m but I need to add X^n*X (seems trivial now!). Same thing for addition, it requires additional rules because X^1 is not the same as X.
I need to add those rules as level 1.

I went ahead to add these "simple" rules and started digging deeper: The rules I put there are using .M matches so they would be universal rules that work with matrices too.
Here's the catch: When adding 'n*X+X' rule, it would be '(n+1)*X', except if 'n' is a matrix, it should really be (n+I)*X. The problem is that implicit 1 can be I or 1 depending on the type of 'n'.
First: I'd need to create a symbol I in newRPL that evaluates to an identity matrix of any size when operated upon. This symbol could evaluate to 1 when operating with numbers, but then formulas would look strange with this I showing up unexpectedly.

I could have the rules always add I, then another rule would replace I with 1 when added to a numeric expression '.NN+I:→.NN+1', but if the expression has some unknown variables (not purely numeric), the I would remain and the user would be extremely confused.

The details of a CAS are overwhelmingly complex...
 « Next Oldest | Next Newest »