Waldek, I would like to continue the discussion in this thread a little even if it goes somewhat beyond the scope of the original question.
On Thu, Mar 17, 2011 at 5:39 PM, you wrote: > > Basic result is theorem of Richardson which says that what we would > like to have is impossible (problem of deciding if an expression > is zero is undecidable). Generalities are niecely described > in Davenport, Siret, Tournier book (look for canonical form): > > http://staff.bath.ac.uk/masjhd/masternew.pdf > What you are describing is the situation when equality is "canonical", i.e. when equality on the domain is the same as the equality on its underlying representation. Is this the case for Expression? In principle a domain can use a non-canonical representation and then define equality in a computationally intensive manner or even incomplete (possibly non-terminating) manner. But FriCAS does not currently permit equality to be anything other than Boolean valued. > > Details of representaion used and empleyed "simplifications" vary > from system to system. FriCAS expression is a parametric domain. > If nothing interesting is known about the parameter, then FriCAS > represents expression essentially as trees and does almost no > simplifications. Could you give an example of defining Expression over a domain where "nothing interesting is known"? I tried several things but so far I have been unable to produce an example of a value in such a domain. > ... > If you do not go into details it is very similar to what other > systems do, but details differ. AFAIK officialy Mathematica > uses pure tree representation for expressions but almost > surely converts to something like rational functions of > kernels for computations. I know Maple fairly well and I would say that this does not accurately describe what Maple does. Besides very simple "automatic" simplifications, Maple does very little re-writing of the original input expression. All the real work is done by operations applied later to the expression tree such as "simplify", "expand" etc. I FriCAS (and other incarnations of Axiom) it seems to me that usually 'simply' does very little. Effects like ' How could one distinguish between a "pure tree representation" versus "rational functions of kernels" in Mathematica. Aren't these both "expression trees"? How is this different from simply rewriting expression trees? > Macsyma/Maxima give user a choice between > tree representation and rational function representation, > but sometimes automatically switches representations. > Like Maple in Maxima there are operations such as "full_simplify" which attempt to reduce expressions to some canonical "simple" form. It seems to me that most automatic simplifications are avoided. I think Reduce is a good example of a CAS where there is a serious attempt to automatically reduce expressions to canonical form but even here there are many times when this must be avoided for specific types of calculations. Regards, Bill Page -- 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.
