Bill --

  I have been thinking about your patch for a while.  As I said
in the bug audit trail, I fully agree that the bug originates from
explogs2trigs.   However, the more I think about it, I more I become
undecided what the proper fix should be -- this is not a criticism of
your patch, I really just don't know the actual fix should be.  For
several reasons.

  First, assuming the the operation makes sense, there is an immediate
issue of branch cuts -- the decision has to be made and done
consistently across the symbolic and numeric spectrum, otherwise this is
just a disaster waiting to happen and most likely harder to debug.
To get branch cuts done effectively, we would need to propagate
properties about (symbolic) expressions that we currently do.

  Second, the expression '%i' currently has type defaulted to
Complex Integer -- this is a pure hack in the interpreter because we do
not have true polymorphic type in the system yet, but this is a debate I
do not want to have now; that was just an observation.  Now, what should
be the domain of sqrt(%i)?  Surely, it cannot be Complex Integer.
The choice of Expression Complex Integer, in my opinion, is
over-reaching -- Expression T is at the current state a sort of
'black hole' that tends to attract everything and we not know yet how
to effectively handle expressions of such type.  
Complex AlgebraicNumber?  Or Complex of an extension of 
Fraction Integer by sqrt(2)?  In each case, why not?

-- Gaby

------------------------------------------------------------------------------
Are you an open source citizen? Join us for the Open Source Bridge conference!
Portland, OR, June 17-19. Two days of sessions, one day of unconference: $250.
Need another reason to go? 24-hour hacker lounge. Register today!
http://ad.doubleclick.net/clk;215844324;13503038;v?http://opensourcebridge.org
_______________________________________________
open-axiom-devel mailing list
open-axiom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open-axiom-devel

Reply via email to