Post Reply 
newRPL - build 1255 released! [updated to 1299]
12-17-2018, 06:05 PM
Post: #325
RE: newRPL - build 1089 released! [update:build 1127]
(12-17-2018 05:13 PM)The Shadow Wrote:  What rules does AUTOSIMPLIFY apply?

AUTOSIMPLIFY does first a numeric reduction (multiplies numbers together, adds fractions, etc.), then applies a series of rules. The idea is to have several sets of rules and a flag that sets the simplification level the user wants. For now I only created level1, the most basic things.
Quoted from lib-56.nrpl source code:

Code:

@#name lib56_autosimplify_level1
{
'0+.XX:→.XX'                                        @ REMOVE TERMS WITH ZERO
'INV(1):→1'                                         @ ELIMINATE OPERATION ON ONE
'1*.XX:→.XX'                                        @ REMOVE MULTIPLY BY ONE
'.XX^1:→.XX'                                        @ REMOVE EXPONENT OF 1
'√.XX:→.XX^INV(2)'                                  @ ELIMINATE SQUARE ROOT FOR OTHER RULES TO WORK
'.MN*.mX+.MM*.mX:→(.MN+.MM)*.mX'                    @ ASSOCIATE TO THE LEFT (NON-COMMUTATIVE)
'.mX*.MN+.mX*.MM:→.mX*(.MN+.MM)'                    @ ASSOCIATE TO THE RIGHT (NON-COMMUTATIVE)
'.NN*.xX^.Nexp+.NM*.xX^.Nexp:→(.NN+.NM)*.xX^.Nexp'  @ ADD TERMS IN THE SAME VARIABLE AS LONG AS THE REST IS NUMERIC
'.xX^.NN*INV(.xX^.NM):→.xX^(.NN-.NM)'               @ CANCEL OUT TERMS WITH EXPONENTS
'.xX^.NN*INV(.xX):→.xX^(.NN-1)'                     @ CANCEL OUT TERMS WITHOUT EXPONENT IN DENOMINATOR
'.xX*INV(.xX^.NM):→.xX^(1-.NM)'                     @ CANCEL OUT TERMS WITHOUT EXPONENT IN NUMERATOR
'.xX^.NN*.xX^.NM:→.xX^(.NN+.NM)'                    @ ADD EXPONENTS IN MULTIPLYING TERMS
'.mX*.mX^.NM:→.mX^(1+.NM)'                          @ ADD EXPONENTS WITH IMPLICIT EXPONENT 1
'.XX^INV(2):→√.XX'                                  @ BACK TO SQUARE ROOTS
}

Yes, all symbolic rules will be coded in RPL, so they are easy to maintain and improve by the community.
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: newRPL - build 1001 released! - pier4r - 12-16-2017, 08:03 AM
newRPL - on Hp 39gs - Martin Hepperle - 06-05-2019, 06:51 AM
RE: newRPL - build 1001 released! - pier4r - 12-23-2017, 10:16 AM
RE: newRPL - build 1001 released! - pier4r - 01-01-2018, 09:42 AM
t - Claudio L. - 01-01-2018, 03:06 PM
RE: newRPL - build 1001 released! - pier4r - 01-01-2018, 03:41 PM
RE: newRPL - build 1001 released! - pier4r - 01-02-2018, 04:54 PM
RE: newRPL - build 1001 released! - pier4r - 01-02-2018, 06:58 PM
newRPL - brickviking - 10-05-2018, 06:01 AM
RE: newRPL - build 1089 released! [update:build 1127] - Claudio L. - 12-17-2018 06:05 PM
How to participate? - erazor - 12-13-2019, 07:12 AM



User(s) browsing this thread: