Post Reply 
CAS: (2^10)! is undefined?
10-27-2018, 04:56 PM (This post was last modified: 10-27-2018 05:54 PM by sasa.)
Post: #7
RE: CAS: (2^10)! is undefined?
(10-27-2018 03:27 PM)parisse Wrote:  @sasa: I'm in general open to constructive discussions that can help improve Giac, but please consider that I'm not really a newcomer : I'm coding CAS software since 25 years, I think I know a little bit how to do it. Of course, I may miss something that someone could point to me, but your last post about solving z=sqrt(i) giving "unexpected" results does not help considering your comments very seriously.

We both share the same fields of interest/profession (probably age as well) and we both was done the same - only difference is that I done my own for fun only. Thus I'm quite serious about both matters and I'm quite surprised with your comment that "It's not a bug, it's a well-known limitation" which pointed to me that you deny existence of any error... If you are open to make corrections, please consider to perform it.

I could not know that you have not implemented overflow/underflow mechanism, since I did not looked in your source (nor have a time for that). I assumed that exists, as it is mandatory in order to distinguish weather it is hardware/software limitation for number storage or it is documented math function limitation.

You should also seriously consider not to mix concept and state (infinity, dividing by zero...) and numbers, as that makes real headache as I already mentioned in some earlier posts. If some function may rise dividing by zero, there is no other way than handle that in the code. Checking that state will slow down a bit execution, however from other side you will stop execution immediately instead to perform calculation to the end, which will anyway return wrong/not enough precise/unexpected result (you may formulate it as you prefer).

Please take a look at IEEE-754 how they defined handling unexpected float operation. Since on PC IEEE-754 is implemented in hardware, there no other way to control workflow in users program than to analyse output. However, instead to encode error in the number format, you hence probably works with objects and you can control workflow precisely. I personally do not really prefer to keep value on overflow/underflow (as I avoid to do that in library I made for 8-bit MCUs), as that may be only helpful indeed rarely during analyzing last received format number result in debug mode, but you may consider that option as well...
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
CAS: (2^10)! is undefined? - sasa - 10-27-2018, 03:41 AM
RE: CAS: (2^10)! is undefined? - parisse - 10-27-2018, 04:58 AM
RE: CAS: (2^10)! is undefined? - sasa - 10-27-2018, 05:13 AM
RE: CAS: (2^10)! is undefined? - Voldemar - 10-27-2018, 09:59 AM
RE: CAS: (2^10)! is undefined? - parisse - 10-27-2018, 03:27 PM
RE: CAS: (2^10)! is undefined? - sasa - 10-27-2018 04:56 PM
RE: CAS: (2^10)! is undefined? - parisse - 10-27-2018, 06:31 PM
RE: CAS: (2^10)! is undefined? - sasa - 10-27-2018, 07:59 PM
RE: CAS: (2^10)! is undefined? - sasa - 10-27-2018, 08:55 PM
RE: CAS: (2^10)! is undefined? - sasa - 10-27-2018, 10:17 PM
RE: CAS: (2^10)! is undefined? - NetMage - 10-28-2018, 03:14 AM
RE: CAS: (2^10)! is undefined? - parisse - 10-28-2018, 06:17 AM
RE: CAS: (2^10)! is undefined? - Aries - 10-28-2018, 10:30 AM
RE: CAS: (2^10)! is undefined? - parisse - 10-28-2018, 10:33 AM
RE: CAS: (2^10)! is undefined? - Komanguy - 11-09-2018, 10:09 AM



User(s) browsing this thread: 1 Guest(s)