This came up as a red herring in a Sage thread, but I'm just curious about this.
(%i1) declare(x,complex);
(%o1) done
(%i2) facts();
(%o2) [kind(x, complex)]
(%i3) declare(x,real);
(%o3) done
(%i4) facts();
(%o4) [kind(x, complex), kind(x, real)]
Should this perhaps just result in real, if RR \subset CC? Or are
there situations where this would be different from just declaring x
to be real?
Thanks!
Karl-Dieter