Question: How to extend the kernel function '*' (multiplication)

i want '*' to keep doing exactly what it already does. for example, x*x*x*x is still x^4.

but furthermore, i want to be able to somehow redefine(define in addition) '*' as follows:

protect('a');protect('b');

redefine('*', a*b=1,b*a=-1);

basically, for protected letters a and b, maple will yield 1 when it sees a*b and -1 when it sees b*a.

how can i achieve this? it seems to me that maple does not want me to even remotely touch '*'!!!

p.s. the last thing that i would want to do is to introduce my own '&*' operator.

thanks in advance.

Please Wait...