Thread Links | Date Links | ||||
---|---|---|---|---|---|
Thread Prev | Thread Next | Thread Index | Date Prev | Date Next | Date Index |
On 10/24/2015 4:50 AM, Mehran Mazandarani wrote:
... snip.... Q3. Very important ... snip... IEEE Std.1788 reads f=[-11 11] if we expand f(x) as f(x)=10x-x^2, then based on IEEE Std.1788 one can also get the following: f=[-10 10]-[0 1]=[-11 10]. However, the exact result is [-11 9]. There are many ways of using symbolic computation to get bad results, Indeed, most systems can reproduce outright false "proofs" that 1=-1 that are shown as puzzles in school. Almost any algebraic manipulation can be reproduced. The expansion shown above is certainly possible, but why would you expand the _expression_ rather than factor it, or express it by completing the square? If I were using a symbolic math system, and were presented with 10*x-x^2 to formulate as an interval _expression_, I would complete the square and get the _expression_ - ((x-5)^2-25) which, evaluated using naive interval arithmetic gives [-11,9] , the exact result. Indeed, using symbolic manipulation one can do many things to decrease the width of computed intervals, including finding regions of monotonicity, finding exact bounds on polynomial roots, expanding expressions in Taylor series, using software higher-precision arithmetic, etc. In principle, a tool-kit of improvement techniques could be developed. (I think the most obvious brute-force method is to keep on increasing the precision of the calculation, but there are others. The promise of rearranging the expressions to SUE -- single use expressions as in completing the square is cheap enough. It could be put into a compiler. RJF |