Thread Links | Date Links | ||||
---|---|---|---|---|---|
Thread Prev | Thread Next | Thread Index | Date Prev | Date Next | Date Index |
Dan Zuras Intervals schrieb:
Dan:Date: Mon, 30 Mar 2009 21:27:55 +0200 From: Ulrich Kulisch <Ulrich.Kulisch@xxxxxxxxxxx> To: Dan Zuras Intervals <intervals08@xxxxxxxxxxxxxx> CC: stds-1788 <stds-1788@xxxxxxxxxxxxxxxxx>, stds-1788-er <stds-1788-er@xxxxxxxxxxxxxxxxxxxxx> Subject: Re: [IEEE P1788 er subgroup]: My first cut at the Level 1 list... Hi, Dan, thank you for your mail.SHOULD the basis for our (interval) arithmetic be R or R* (including -oo & +oo)?The basis for real interval arithemetic is R*, of course, the same as for floating-point arithmetic. On the computer the lower bound of the result of an interval operation has to be rounded downwards and the upper bound rounded upwards. These roundings are mappings from R* onto F* (floating-point numbers with -oo & +oo). In floating-point arithmetic an overflow or division of a number not equal 0 by zero delivers -oo or +oo as result. In interval arithmetic the result of an operation is a set. In the first case it is an unbounded real interval and in the second case it is the empty set. There are no operations for real intervals which deliver [-oo, -oo] or [+oo, +oo] as result. Both are not real intervals. So in contrast to floating-point arithmetic there is no need in interval arithmetic to define operations like [+oo, +oo] - [+oo, +oo] or [+oo, +oo]/[+oo, +oo] which are set to be NaN in floating-point arithmetic. Further, if A and B are real intervals with 0 in A and 0 in B then A/B = (-oo, +oo) in interval arithmetic. So again there is no need in interval arithmetic to introduce NaN for 0/0 for instance as in floating-point arithmetic. Interval arithmetic can be kept free of exceptions. Floating-point arithmetic and interval arithmetic are different calculi. Each one has its own rules. Mixing the two causes complicated problems. It would be unwise. In simplicity lies truth! Best whishes UlrichUlrich, I understand &, for the most part, agree. But in our discussions the issue of the existence of the empty set as an answer to questions like 1/[0,0] has been raised. And I dislike the use of a non-interval or NaI for this purpose. Therefore, one is forced to ask the question: Is a singleton infinity a better answer? It does not solve everything. For me, [empty] is a better answer for 1/[0,0]. But for the even pole 1/(xx - 1)^2 when evaluated at xx = [1,1] I am forced to wonder. Thus the question. If we all agree that [empty] is the better answer here too, I am happy with that solution. It will affect decisions we make in future so we should settle it first, I believe. One of your countrymen once said, "A theory should be as simple as possible, and no simpler." One must admit that there is a certain lower bound on simplicity when it comes to intervals. :-) Thanks, Dan I really enjoy your answer. It reads so philosophical. Let me try to give an answer in terms of mathematics. For intervals A and B in IR (the set of closed and bounded real intervals) division is defined by I. A/B := {a/b | a in A and b in B} for 0 notin B. The quotient a/b is defined as the inverse operation of multiplication, i.e., as the solution of the equation b x = a. Thus the above definition can be written in the form II. A/B := {x | b x = a for all a in A and b in B}. For 0 notin B both definitions are equivalent. While in R division by zero is not defined, representation of A/B in the second form allows definition of the operation and also interpretation of the result for 0 in B. Since every x in R fulfills the equation 0 x = 0 we obtatin A/B = (-oo, +oo) whenever 0 in A and 0 in B. So 0/0 = (-oo, +oo). If 0 notin A and B = [0, 0] there is no real number which fulfills the second form of the definition of the quotiont. So in this case A/B = empty set. So the answer in case of your samples is clear: 1/[0, 0] = emptyset and for X = [1, 1], 1/(X - 1)^2 = emptyset as well as 1/(X -1) = emptyset. Interval arithmetic deals with sets of real numbers. In addtion to the arithmetic operations, for sets we still have the operations intersection and union. So large intervals can become smaller within a computation by intersection. In interval arithmetic the emptyset playes a role comparable to NaN in floating-point arithmetic. However, this last sentence is also more of a philosophical nature. For more details see my position paper "Complete Interval Arithmetic and Its Implementation on the Computer". Best whishes Ulrich |