SYMMETRIC INDEX

SYMMETRIC _ _ _ _ _ _ _ _ _ _ _ _ declaration

When an operator is declared symmetric, its arguments are reordered to conform to the internal ordering of the system.

syntax:

symmetric<identifier>{,<identifier>}*

<identifier> is an identifier that has been declared an operator.

examples:


operator m,n; 

symmetric m,n; 

m(y,a,sin(x)); 

  M(SIN(X),A,Y) 


n(z,m(b,a,q)); 

  N(M(A,B,Q),Z)

If <identifier> has not been declared to be an operator, the flag symmetric is still attached to it. When <identifier> is subsequently used as an operator, the message Declare<identifier> operator ? (Y or N) is printed. If the user replies y, the symmetric property of the operator is used.