declare (x, real); done; conjugate(-1); -1$ conjugate(6); 6$ conjugate(-2/3); -2/3$ conjugate(sqrt(5)); sqrt(5)$ conjugate(sqrt(3) + sqrt(7)); sqrt(3) + sqrt(7)$ conjugate(5.6); 5.6$ conjugate(-5.6); -5.6$ conjugate(5.6 * %i); -%i * 5.6$ conjugate(8.23b3); 8.23b3$ conjugate(1.4b0 + %i * 5.7b0); 1.4b0 - %i * 5.7b0$ conjugate(sqrt(7 + %i * 8)); sqrt(7 - %i * 8); conjugate(log(1 - %i)); log(1 + %i)$ conjugate(%e); %e$ conjugate(-%e); -%e$ conjugate(%pi); %pi$ conjugate(%phi); %phi$ conjugate(x); x$ conjugate(-x); -x$ conjugate(1+x*(1+x)); 1+x*(1+x)$ conjugate(sqrt(1+x^2)); sqrt(1+x^2)$ conjugate(x+abs(x)); x+abs(x)$ conjugate(cos(x)); cos(x)$ conjugate(sin(x)); sin(x)$ conjugate(tan(x)); tan(x)$ conjugate(sec(x)); sec(x)$ conjugate(cot(x)); cot(x)$ conjugate(csc(x)); csc(x)$ conjugate(cosh(x)); cosh(x)$ conjugate(sinh(x)); sinh(x)$ conjugate(tanh(x)); tanh(x)$ conjugate(sech(x)); sech(x)$ conjugate(coth(x)); coth(x)$ conjugate(csch(x)); csch(x)$ conjugate(exp(x)); exp(x)$ conjugate(sqrt(x)); conjugate(sqrt(x))$ conjugate(abs(x))$ abs(x)$ (declare(z,complex),0); 0$ conjugate(conjugate(z)); z$ conjugate(conjugate(conjugate(z))); conjugate(z)$ conjugate(5*z); 5 * conjugate(z); conjugate(5 + z); 5 + conjugate(z); conjugate(5 + 7 * z); 5 + 7 * conjugate(z); conjugate(%i * z); -%i * conjugate(z)$ conjugate(x + z); x + conjugate(z)$ conjugate(x * z); x * conjugate(z)$ conjugate(cos(z)); cos(conjugate(z))$ conjugate(sin(z)); sin(conjugate(z))$ conjugate(tan(z)); tan(conjugate(z))$ conjugate(sec(z)); sec(conjugate(z))$ conjugate(cot(z)); cot(conjugate(z))$ conjugate(csc(z)); csc(conjugate(z))$ conjugate(cosh(z)); cosh(conjugate(z))$ conjugate(sinh(z)); sinh(conjugate(z))$ conjugate(tanh(z)); tanh(conjugate(z))$ conjugate(sech(z)); sech(conjugate(z))$ conjugate(coth(z)); coth(conjugate(z))$ conjugate(csch(z)); csch(conjugate(z))$ conjugate(exp(z)); exp(conjugate(z))$ conjugate(realpart(z)); realpart(z)$ conjugate(imagpart(z)); imagpart(z)$ conjugate(x+z); x+conjugate(z)$ conjugate(x*z); x*conjugate(z)$ conjugate(%i * z); -%i * conjugate(z)$ conjugate(cos(x*z)); cos(x*conjugate(z))$ (assume(imagpart(z) > 0),0); 0$ conjugate(log(z)); log(conjugate(z))$ conjugate(sqrt(z)); sqrt(conjugate(z))$ conjugate(log(5 + z)); log(5 + conjugate(z))$ (declare(w,complex),0); 0$ (assume(realpart(w) > 0),0); 0$ conjugate(log(w)); log(conjugate(w))$ conjugate(sqrt(w)); sqrt(conjugate(w))$ conjugate(log(7 + w)); log(7 + conjugate(w))$ (declare(q,complex),0); 0$ conjugate(q^2); conjugate(q)^2$ conjugate(1/q); 1/conjugate(q)$ conjugate(1 + q + q^2); 1 + conjugate(q) + conjugate(q)^2$ conjugate(q*(1+q)); conjugate(q) * (1 + conjugate(q))$ conjugate((1+q)/(1-q)); (1 + conjugate(q))/(1 - conjugate(q))$ declare (p0, even, q1, odd, pq, rational, qp, irrational, rr, real, ii, imaginary); done; conjugate (p0 + q1 + pq + qp + rr + ii); p0 + q1 + pq + qp + rr - ii; /* conjugate of sums and products */ conjugate(sum(cos(k),k,1,n)); sum(cos(k),k,1,n)$ conjugate(prod(cos(k),k,1,n)); prod(cos(k),k,1,n)$ conjugate(sum(log(k + %i), k, m, n)); sum(log(k - %i), k, m, n)$ conjugate(prod(log(k + %i), k, m, n)); prod(log(k - %i), k, m, n)$ /* conjugate of asin */ (assume(x > -1, x < 1),0); 0$ conjugate(asin(x)); asin(x)$ conjugate(asin(-x)); asin(-x)$ conjugate(asin(x + %i)); asin(x - %i)$ conjugate(asin(x - %i)); asin(x + %i)$ conjugate(asin(x + %i * y)); asin(x - %i * y)$ conjugate(asin(x - %i * y)); asin(x + %i * y)$ /* Collections */ conjugate([]); []$ conjugate([5]); [5]$ conjugate([[%i]]); [[-%i]]$ conjugate(set()); set()$ conjugate(set(1,2)); set(1,2)$ conjugate(set(8, set(8, set(32 - %i)))); set(8, set(8, set(32 + %i)))$ conjugate(matrix()); matrix()$ conjugate(matrix([])); matrix([])$ conjugate(matrix([1,2,%i])); matrix([1,2,-%i])$ conjugate(matrix([matrix([%i])])); matrix([matrix([-%i])])$ /* logs */ conjugate(log(x)); conjugate(log(x))$ conjugate(log(x + %i)); log(conjugate(x) - %i)$ conjugate(log(-1 + %i)); log(-1 - %i)$ (assume(x > 0, notequal(www,0)), 0); 0$ conjugate(log(-x)); log(x) - %i * %pi$ conjugate(log(-x + %i * www)); log(-x - %i * www)$ (forget(x > 0, notequal(www,0)),0); 0$ /* exponentials */ conjugate(exp(x)); exp(x)$ conjugate(exp(y - %i * x)); exp(y + %i * x)$ (declare(z,complex),0); 0$ conjugate(exp(z)); exp(conjugate(z))$ (declare(n,integer,z,complex),0); 0$ conjugate(z^n); conjugate(z)^n$ conjugate(z^b); conjugate(z^b)$ conjugate(cosh(z)); cosh(conjugate(z))$ conjugate(sinh(z)); sinh(conjugate(z))$ conjugate(sinh(cosh(z))); sinh(cosh(conjugate(z)))$ /* Test for bug 1491486 */ conjugate((1+%i)^%i); 1/(1-%i)^%i$ (declare(z,complex),0); 0$ /* Test for bug 1489285 */ is(imagpart(conjugate(z)) # z); true$ (remove(z,complex),0); 0$ /* Test for bug 1488344 */ matrixp(conjugate(genmatrix(a,100,100))); true$ /* Test for bug 1488359 */ is(op(conjugate(f[6](x))) = 'conjugate); true$ /* Tests for bug 1639890 */ (assume(notequal(y,0)),0); 0$ conjugate(log(-1 + %i * y)); log(-1 - %i * y)$ conjugate(log(x + %i * y)); log(x - %i * y)$ conjugate(log(%pi + %i * y)); log(%pi - %i * y)$ (forget(notequal(y,0)),0); 0$ /* Test for bug (conjugate of atan) fixed by CVS revisions 1.9 and 1.11 */ conjugate(atan(x)); atan(x); /* Bug ID: 2886564 - conjugate(atan2(y,x)) not simplified */ conjugate(atan2(y,x)); atan2(y,x); (declare(z,complex), conjugate(signum(z))); signum(conjugate(z))$ (remove(z,complex),0); 0$ kill (values); done;