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
-~----------~----~----~----~------~----~------~--~---