Logged In: YES

user_id=501686

The defn of conjugate is

conjugate(x) := sublis('([%i = - %i]), x)$

which is useful since it can be applied to lists and

matrices (among other objects) but it seems too simple-minded.

The defn above can yield a wrong answer if its argument is a

real function of a complex variable. E.g.,

conjugate('carg(a+b %i)) yields

'carg (a-b %i) -- oops.

Maybe the right answer is to kill off the existing defn and

replace it with conjugate(x) := realpart(x) -

%i*imagpart(x)$ ??

realpart and imagpart know about lists and matrices, maybe

other objects, so the convenience of the existing defn

doesn't seem compelling. Also realpart and imagpart know

about carg (as they should).