On April 6, 2012, I wrote
------------------------------
(%i2) bex : 1/sqrt(sin(x));
(%o2) 1/sqrt(sin(x))
(%i3) realpart(bex);
(%o3) cos(atan2(0,sin(x))/2)/sqrt(abs(sin(x)))
(%i4) imagpart(bex);
(%o4) -sin(atan2(0,sin(x))/2)/sqrt(abs(sin(x)))
(%i5) is (equal (bex, realpart(bex)));
(%o5) true <== wrong!
(%i6) is (equal (bex, imagpart(bex)));
(%o6) false <== correct
--------------------------------
The help manual, under equal, discusses is( equal(...))
and implies that is (equal(a,b)) returns true if
ratsimp (a - b) returns 0.
For my case:
--------------------------------
(%i34) ratsimp(bex-imagpart(bex));
(%o34) (sqrt(abs(sin(x)))+sin(atan2(0,sin(x))/2)*sqrt(sin(x)))
/(sqrt(sin(x))*sqrt(abs(sin(x))))
(%i35) ratsimp(bex-realpart(bex));
(%o35) (sqrt(abs(sin(x)))-cos(atan2(0,sin(x))/2)*sqrt(sin(x)))
/(sqrt(sin(x))*sqrt(abs(sin(x))))
---------------
Ted Woollett