Dear all,

it occurred to me (perhaps it's obvious) that we could add provisos in a rather
straightforward way to FriCAS, namely through an Operator "Cond".  Perhaps this
is not ideal performancewise, but I think it could be a first step into a good
direction.

Cond would be a list with every second element being an expression, every other
the condition when it holds.

Of course, the tricky part is to design a language expressive enough to hold
many conditions, and easy enough to make simplification possible.  I guess we
want to allow things like

   expr <> 0

   expr in Integer and expr > 0

   imag expr > 0

I do not know whether we should always pretend that variables are complex, but
my feeling is yes.

I do not know whether it's better to insist that the branches are disjoint or
not.

Eg., sqrt(z^2) could give

   Cond [z, re z >= 0, -z, re z < 0]

Or, asin sin z could give

   Cond [z, -%pi/2 <= re z <= %pi/2, asin sin z, true]

or perhaps

   Cond [z - 2*k*%pi, k in Integer and (4*k-1)*%pi/2 <= re z <= (4*k+1)*%pi/2, 
         -z + (2*k+1)*%pi, k in Integer and 
                           (4*k+1)*%pi/2 <= re z <= (4*k+2)*%pi/2]



To get started, the most tricky part is probably to implement the basic
ring operations properly?


Martin


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/fricas-devel?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to