Dear Waldek,
There is no official support. Part of the problem is what such support should do?
Indeed supporting units properly is a rather tricky problem. E.g. when solving differential equations in Mathematica I frequently end up with terms like a^e/b^e or log a - log b where a and b have the same unit. This must be converted to (a/b)^e or log (a/b) - frequently manually - to compute properly.
Thank you for the links! I browsed the discussion and code. As FriCAS noob I can't say much about the code, though. From a helicopter perspective it looks like a traditional solution like in Maxima / Mathematica, that is units and dimensions are computed at run time. I didn't work with it, but the unit system of F# might be more suitable for FriCAS. In F# units are described as parameterized number types. That is unit computations and checks are done at type check time and not at run time. This looks more appealing to my for many a reason. E.g. one can check the correctness of units on symbolic terms and not only when one inserts numerical values with units - a point at which things get really messy in Maxima and Mathematica frequently. Having unit factors (say x*kg) in symbolic terms as suggested in some of the discussions is also not a feasible solution IMHO.
Here is a paper on the F# solution: http://typesatwork.imm.dtu.dk/material/TaW_Paper_TypesAtWork_Kennedy.pdf
In how far one can solve the a^e/b^e or log a - log b problems this way I cannot tell, but one could try it in F#. Also if such types would fit well into the symbolic machinery of FriCAS I can't tell either - I am a complete FriCAS noob and only read pieces of the FriCAS book.
It is unlikely that the F# solution works as is in FriCAS - e.g. one somehow has to handle the issue that a definite integral is no longer a difference of anti-derivative values if logarithms are involved, e.g. by giving a meaning to the logarithm of a unit. But if one finds a solution to this, it would likely be very much superior to what other CAS have.
Best regards, Michael -- You received this message because you are subscribed to the Google Groups "FriCAS - computer algebra system" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/fricas-devel/21b85099-654c-4df1-9770-eb5c225b254f%40michael-soegtrop.de.
