Hello, I am in doubt with the following situation. It started with this: > f := signum(z)*infinity; > type(f,complex(extended_numeric)); # false > is(f,complex(extended_numeric)); # false Now I make an extra assumption on z, and do these checks again: > assume(z,real); > type(f,complex(extended_numeric)); # false > is(f,complex(extended_numeric)); # true I was wondering why the second time is results in true while type does not... I am just checking whether the expressions is an infinity (possibly in complex form), and so I don't see where the difference could come from. In the helppage for assume I have found the following: "If the is command is used with a Maple type typename, it returns true if the corresponding type(..., typename) command returns true. This may lead to unexpected results." Can anyone explain why this happens? Or what the "unexpected results" may be...? Thanks in advance. Regards, Franky.