BOX(expr,label)
encloses expr in a labelled box. label is a name which will be truncated in display if it is too long. BOXCHAR["] - is the character used to draw the box in this and in the DPART and LPART functions.
CONSTANT - makes ai a constant as is %PI.
MAINVAR - makes ai a MAINVAR. The ordering scale for atoms: numbers < constants (e.g. %E,%PI) < scalars < other variables < mainvars.
SCALAR - makes ai a scalar.
NONSCALAR - makes ai behave as does a list or matrix with respect to the dot operator.
NOUN - makes the function ai a noun so that it won't be evaluated automatically.
EVFUN - makes ai known to the EV function so that it will get applied if its name is mentioned. Initial evfuns are
FACTOR, TRIGEXPAND, TRIGREDUCE, BFLOAT, RATSIMP, RATEXPAND, and RADCAN
EVFLAG - makes ai known to the EV function so that it will be bound to TRUE during the execution of EV if it is mentioned. Initial evflags are
FLOAT, PRED, SIMP, NUMER, DETOUT, EXPONENTIALIZE, DEMOIVRE, KEEPFLOAT, LISTARITH, TRIGEXPAND, SIMPSUM, ALGEBRAIC, RATALGDENOM, FACTORFLAG, %EMODE, LOGARC, LOGNUMER, RADEXPAND, RATSIMPEXPONS, RATMX, RATFAC, INFEVAL, %ENUMER, PROGRAMMODE, LOGNEGINT, LOGABS, LETRAT, HALFANGLES, EXPTISOLATE, ISOLATE_WRT_TIMES, SUMEXPAND, CAUCHYSUM, NUMER_PBRANCH, M1PBRANCH, DOTSCRULES, and LOGEXPAND
BINDTEST - causes ai to signal an error if it ever is used in a computation unbound. DECLARE([var1, var2, ...], BINDTEST) causes MACSYMA to give an error message whenever any of the vari occur unbound in a computation. MACSYMA currently recognizes and uses the following features of objects:
EVEN, ODD, INTEGER, RATIONAL, IRRATIONAL, REAL, IMAGINARY, and COMPLEX
he useful features of functions include:
INCREASING, DECREASING, ODDFUN (odd function), EVENFUN (even function), COMMUTATIVE (or SYMMETRIC), ANTISYMMETRIC, LASSOCIATIVE and RASSOCIATIVE
DECLARE(F,INCREASING) is in all respects equivalent to
ASSUME(KIND(F,INCREASING))
The ai and fi may also be lists of objects or features. The command
FEATUREP(object,feature)
may be used to determine if an object has been DECLAREd to have "feature". See DESCRIBE(FEATURES); .
(C1) DPART(X+Y/Z**2,1,2,1); Y (D1) ---- + X 2 ***** * Z * *****
(C1) X+Y+W*Z; (D1) W Z + Y + X (C2) INPART(D1,3,2); (D2) Z (C3) PART(D1,1,2); (D3) Z (C4) 'LIMIT(F(X)**G(X+1),X,0,MINUS); G(X + 1) (D4) LIMIT F(X) X ->0- (C5) INPART(%,1,2); (D5) G(X + 1)
(C1) LISTOFVARS(F(X[1]+Y)/G**(2+A)); (D1) [X[1], Y, A, G]
LOPOW((X+Y)**2+(X+Y)**A,X+Y) ==> MIN(A,2)
.
(C1) X/(X-Y)**2-1/(X-Y)-F(X)/(X-Y)**3; 1 X F(X) (D1) - ----- + -------- - -------- X - Y 2 3 (X - Y) (X - Y) (C2) MULTTHRU((X-Y)**3,%); 2 (D2) - (X - Y) + X (X - Y) - F(X) (C3) RATEXPAND(D2); 2 (D3) - Y + X Y - F(X) (C4) ((A+B)**10*S**2+2*A*B*S+(A*B)**2)/(A*B*S**2); 10 2 2 2 (B + A ) S + 2 A B S + A B (D4) -------------------------------- 2 A B S (C5) MULTTHRU(%); 10 2 A B (B + A) (D5) - + --- + ------- S 2 A B S (notice that (B+A)**10 is not expanded) (C6) MULTTHRU(A.(B+C.(D+E)+F)); (D6) A . F + A . (C . (E + D)) + A . B (compare with similar example under EXPAND)
(C1) PARTITION(2*A*X*F(X),X); (D1) [ 2 A , X F(X) ] (C2) PARTITION(A+B,X); (D2) [ A + B , 0 ] (C3) PARTITION([A,B,F(A),C],A); (D3) [[B,C],[A,F(A)]]
(C1) EXP:(A+B)/2+SIN(X^2)/3-LOG(1+SQRT(X+1)); 2 SIN(X ) B + A (D1) - LOG(SQRT(X + 1) + 1) + ------- + ----- 3 2 (C2) PICKAPART(%,1); (E2) - LOG(SQRT(X + 1) + 1) 2 SIN(X ) (E3) ------- 3 B + A (E4) ----- 2 (D4) E4 + E3 + E2
(C1) PRODUCT(X+I*(I+1)/2,I,1,4); (D1) (X + 1) (X + 3) (X + 6) (X + 10)