NaI vs (Empty,ill) (was: Motion 52: final "Expressions" text for vote)
About the following problem,
On 2013-11-24 15:52:45 +0100, Vincent Lefevre wrote:
> On 2013-11-22 16:18:13 +0100, J. Wolff von Gudenberg wrote:
> > >1. Is the above sentence of §8.2 an error or does the standard
> > >require this to be still true for NaI? In any flavor?
> > NaI propagates in all operations, but NaI is NotanInterval
>
> Until now it was considered to be (Empty,ill), which has an interval
> part, thus is an interval. Something needs to be fixed.
>
> > >3. In the set-based flavor, according to the propagation order, if
> > >there's a NaI in input (thus will decoration ill), then the result
> > >shall have the decoration ill. Does the standard require that such
> > >an interval be Empty?
> > the decoration ill is only used by NaI. intervalPart(naI) is
> > undefined and causes an exception
> > >
> > >§11.4 doesn't seem to forbid NonEmpty_ill: it doesn't mention ill
> > >at all and says "No other combinations are essentially forbidden."
> > >but perhaps the ill case has been forgotten.
> > IMO ill is not a decoration, it only goes with NaI
>
> See the definitions:
>
> 4.2.12. decoration. One of the flavor-defined sets of values used to
> record events, called exceptional conditions, in interval operations:
> e.g., evaluating a function at points where it is undefined. The
> set-based flavor uses the five values com, dac, def, trv and ill,
> ^^^
> see Clause 11.
>
> I can see 2 solutions:
>
> 1. Remove the ill decoration and make NaI a special datum, not regarded
> as a (decorated) interval. But everything about ill in the text should
> be corrected. One advantage is that this would make NaI handling simpler
> and flavor-independent. A drawback is that one would have a special
> object.
>
> 2. Keep "decorated interval" = (interval,decoration) pair, possibly
> with forbidden combinations. Then one thing to think about is: should
> the equivalence
>
> bare evaluation == interval_part(decorated evaluation)
>
> be kept too?
I've noticed after re-reading some of my mail that Dima noticed it
too a couple of weeks ago, and proposed the same choices:
------------------------------------------------------------------------
Date: Tue, 12 Nov 2013 05:43:34 -0800 (PST)
From: Dmitry Nadezhin <dmitry.nadezhin@xxxxxxxxxx>
To: stds-1788@xxxxxxxxxxxxxxxxx
Subject: Re: Motion M0052 Expressions: revised text
> Since NaI is not an interval, it doesn't have an interval part
So what is the set of decorated interval datum ?
a) Cartesioan product of bare interval and decoration
DT = {ill,trv,def,dac,com} x T
b) Disjoint sum of NaI and of another cartesian product
DT = {NaI} + T x {trv,def,fac,com}
I would like (b), but the draft currently says in 11.2 that (a).
Also 11.4 doesn't forbid combinations like [1,2]_ill .
Perhaps, the proof of FTDIA can help to choice between (a), (b).
Ned, can you help to clarify ?
-Dima
------------------------------------------------------------------------
--
Vincent Lefèvre <vincent@xxxxxxxxxx> - Web: <http://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)