Some commands in SymbMath have been changed in different versions. **************** Changes from Version 1.3 to 1.4 ****************** 1. inte(f(x), (x from a to b)) -> inte(f(x), x from a to b). 2. Lists, arrays, vectors and matrices: (a,b,c) -> [a,b,c]. 3. Zoom the HELP Mode window: -> . 4. P for printing -> P for the Print Mode. ************* New functions in Version 1.4 *********************** 1. Standard functions: n!, abs(x). 2. Transformation functions: sum(), prod(), list(), table(), coef(). 3. Calculus functions: d(f(x)/d(x), order), d(f(x), x=c, order). 4. Users-defined functions name can be any name. 5. Integrals of x^n*exp(x), x^n*sin(x), etc. where n>0. 6. The function solve() can solve systems of equations, and linear differential equations in one step, solve([a1*x+b1*y==c1, a2*x+b2*y==c2], [x,y]) solve(d(y)/d(x)+g(x)*y==h(x), y) 7. SymbMath can learn differentiation. 8. The nth element of list x is x[n], ... 9. More library (e.g. for infinite sum, etc.). The erros have been fixed if possible. ****************** Changes in Version 2.0 ******************* 1. The user-interface changed to the pull-down menus, pop-up menus. 2. The assignment statement is evaluated. 3. Define a user funcrion by define(f(x)=x^2), instead of f(x)=x^2. 4. Clear a variable or function by clear(x) or clear(f(x)), instead of x=x or f(x)=f(x). 5. Bugs (e.g. some integration by parts) have been fixed. 6. The simplification subroutine is re-written, so the expression is simplier than before. *************** New function in Version 2.0 ****************** 1. The twin screen text editor. 2. The functions: assume(), deno(), nume(), etc. 3. Learning integrals from derviatives and others. 4. All standard functions can be differentiated and integrated symbolically. 5. The dictionary help. ************************** Changes in Version 2.1 ******************* 1. The default switch is changed from Output=TwoDim to Output=BASIC. 2. the clear_all command is removed. The "Clear memory" command in the "File" menu clears memory and automatically load the initial file "Switch.Ini". So users need not to load and run the switch library "Switch.Li". 3. The equation sign "==" is changed to "===". e.g. an equation is x^2+x+1 === 0. 4. The "Directory" command in the "File" menu is removed. Use the DOS command cd in the "OS shell" to change a directory. 5. Solving the differential equations by solve() is changed to by dsolve(). 6. The reported bugs have been fixed. ********************** New functions in Version 2.1 ****************** 1. Boolean expressions with logic operators have a value of 1 or 0. 2. User can define the step function. e.g. define / -x if x<0 f(x) = 0 if x=0 \ x^6 if x>0 Enter: define(f(x)=-x*(x<0) + x^6*(x>0)) 3. The "Load" command in the "File" menu opens a Directory window. 4. More choices in the "Help" menu. 5. New functions: float(x), ratio(x), round(x), trunc(x), atan2(x,y), dsolve(d(y)/d(x)===f(x,y), y). 6. Integrals of x/(a*x^2+b*x+c), 1/(a*x^2+b*x+c), ln(x)^n and more, where a, b, and c are real numbers. 7. New swtich: Expand=On, Expand=Off. 8. The "Clear memory" command is added in the "File" menu. 9. It can detect the improper point in some improper integrals. e.g. inte(1/x^2, x from -1 to 2) gives inf. ******************** Change from Version 2.1.1 to 2.2 **************** 1. All keywords are in lower-case letter, until the switch lowercase=on to convert upper-case letter to lower-case one. 2. First argument in calculus functions is to be evaluated, e.g. lim(y, x=x0), subs(y, x=x0). 3. d(y/d(x)) and inte(y*d(x) are changed to d(y, x) and inte(y, x). 4. Numerical integration by the switch is changed to that by ninte(y,x,x1,x2) in the numeric.sm package. 5. User defines the new function by f(x_) := x^2, instead of define(f(x)=x^2). 6. The name of the library file is changed to xxx.sm. 7. Loading and running the library file is by the include() statement. 8. A disk file is written by the openfile() and closefile() statements, instead of the "To disk" and "Off disk" in the Output menu. ****************** New functions in version 2.2 ******************** 1. The pattern is used in user-defined functions and rules. 2. The conditional statement if(test,a), if(test,a,b). The loop statement do(), repeat(). The graphics function plot(). The test functions isinteger(x), isrational(x), isreal(x), isodd(x), iseven(x), isnumber(x), islist(x), isfree(y,x). 3. User defines a procedure as a function. 4. The include(), openfile() and closefile() statements. 5. The initial package init.sm. 6. It can integrate x^n*f(x) (e.g. x^n*exp(x), x^n*exp(-x), x^n*ln(x), x^n*sin(x)), where n is any integer and real number. 7. SymbMath can learn integral of the unknown function from derivative of that unknown function. 8. The delay evaluated assignment :=. Please read the document file SymbMath.DOC and SymbMath.DO2 for detail.