Thread Links Date Links
Thread Prev Thread Next Thread Index Date Prev Date Next Date Index

P1788: M0061.02 PASSES



P1788,

Motion M0061.02 Revised Flavors Text PASSES:
    Yes - 34; No - 0; Needed for quorum - 29

Baker’s announcement of the voting period is below.

A digest of comments during the voting period is appended below.

George Corliss,
P1788 Voting Tabulator

Begin forwarded message:

> From: Ralph Baker Kearfott <rbk5287@xxxxxxxxxxxxx>
> Subject: Motion P1788/M0061:REvisedFlavorsText -- voting period begins
> Date: February 7, 2014 at 8:24:51 AM CST
> To: John Pryce <j.d.pryce@xxxxxxxxxx>, stds-1788 <stds-1788@xxxxxxxxxxxxxxxxx>
> Reply-To: <rbk@xxxxxxxxxxxxx>
> 
> P-1788:
> 
> Voting on this motion herewith begins.  The rules for
> standard text motions apply.
> 
> Voting will continue until after Friday, February 28, 2014.
> 
> Juergen: Please update the on-line list of motions with
>  this information and the updated document.
> 
> Best regards,
> 
> Baker
> 
> On 02/03/2014 09:01 AM, John Pryce wrote:
>> P1788
>> 
>> Here is a new draft of Clause 7 "Flavors". I think the ideas
> are now made firm. There may be minor changes because of poor
> wording - please read with care, and complain about any
> obscurities. But I believe this text is ready to proceed to the
> vote.
>> 
>> The main changes are:
>> 
>> 1. A thorough revision of §7.5.3 "Level 2 operations". Following Vladik's
>> support for my thesis that "uncertainty is essential", the possibility
>> that an implementation may be unable to decide certain facts, because of
>> algorithmic constraints, is made an inherent feature of Level 2 in any
>> flavor.
>> 
>> For example the description (7.5.3 item 3(b)) of how the T-version phi_T of
>> an operation phi with decorated-interval result is handled now says
>> 
>>> If [the Level 1 result is found to exist and] is a decorated interval y_dy there are
>>> three cases.
>>> - If phi is an arithmetic operation, and [the input box] is a decorated
>>> common input (this implies dy=com, see §7.4.2), and a common T-interval
>>> z containing y is found, then phi_T returns such a z with the decoration
>>> com.
>>> - Otherwise, if a T-interval z containing y is found (in particular if
>>> Entire exists in the flavor and is a T-interval), then phi_T returns
>>> such a z with a flavor-defined decoration.
>>> - Otherwise, no such z is found. Then phi_T signals the IntvlOverflow
>>> exception and the returned result, if any, is flavor-defined.
>> 
>> Here "is found" is defined to mean that the implementation is able to compute
>> a value, or determine whether a fact is true.
>> 
>> In the first of the 3 cases above, I've kept the requirement that the returned
>> decoration is "com" -- not a possibly weaker decoration, as suggested by Michel.
>> This is because it seems to me all the bases have been covered:
>> - The input *is* a decorated common input box, meaning its components are common
>> intervals decorated "com". I said "is", not "is found to be", because I can't
>> conceive a flavor, type or implementation, where it is difficult at run time to
>> decide if a given interval is common or not. Is that reasonable?
>> - The common z containing y "is found" by the implementation. So at this point all
>> uncertainty has disappeared, and there is no reason to return a weaker decoration.
>> 
>> The terms "decorated common evaluation" and "decorated common input" have been made
>> Level 1 (not Level 2) notions, put in 7.4.2. The subsubsection after 7.4.3 that used
>> to define them has been removed.
>> 
>> 2. I have changed the exceptions "IntvConstructorFails" and "IntvConstructorUnsure" to
>> "UndefinedOperation" and "PossiblyUndefinedOperation" throughout the text, for the
>> reasons I stated before.
>> 
> 
> 
> -- 
> 
> ---------------------------------------------------------------
> R. Baker Kearfott,    rbk@xxxxxxxxxxxxx   (337) 482-5346 (fax)
> (337) 482-5270 (work)                     (337) 993-1827 (home)
> URL: http://interval.louisiana.edu/kearfott.html
> Department of Mathematics, University of Louisiana at Lafayette
> (Room 217 Maxim D. Doucet Hall, 1403 Johnston Street)
> Box 4-1010, Lafayette, LA 70504-1010, USA
> ---------------------------------------------------------------

Attachment: 20140203Flavors.pdf
Description: Adobe PDF document








Begin forwarded message:

> From: Christian Keil <c.keil@xxxxxxxxxxxxx>
> Subject: Re: Motion P1788/M0061:REvisedFlavorsText -- YES
> Date: February 15, 2014 at 6:47:23 PM CST
> To: stds-1788 <stds-1788@xxxxxxxxxxxxxxxxx>
> 
> My vote on the motion is YES.
> 
> There are however some things I'd like to note:
> 
> 1) The revised text lists the com decoration to be *required* for a flavor
> in several places, while the decoration clause (8) says a flavor *may*
> provide it and only *requires* it from all flavors of an implementation
> if the implementation provides more than one flavor. Either the current
> text or the decoration clause (8) should be changed to be consistent.
> 
> 2) Subitem (v) of the core specification seems to refer to §7.4 and §7.5,
> but doesn't list them explicitly. Adding these references would clarify
> the structure further.
> 
> 3) While not opposing, I'm not sure about the scope of §7.4.3. If the
> flavor is a standard flavor it is defined in a later section of the
> standard and lists whatever function it requires. If it is a non-standard
> flavor, it is presumably a one-implementation-flavor provided in one
> implementation, which limits the usability of functions that are
> "required in each implementation of that flavor". In short: I'm not sure
> if this is a part of the core specification or rather an option for new
> flavors to be submitted for inclusion into the standard?
> 
> 
> Cheers,
> 
> 	Christian




Begin forwarded message:

> From: "Hossam A. H. Fahmy" <hfahmy@xxxxxxxxxxxxxxxxxxx>
> Subject: Re: PLEASE VOTE P1788/M0061:RevisedFlavorsText
> Date: February 26, 2014 at 2:04:53 AM CST
> To: stds-1788 <STDS-1788@xxxxxxxxxxxxxxxxx>
> 
> Dear 1788 members,
> 
> I vote YES on motion 61 Flavors Text.
> 
> However, I have a comment on the wording of one paragraph that we should
> revise when we vote on the final text. On the first page the current
> text says:
> "    Flavor is a property of program execution context, not of an
> individual interval. Therefore, just one flavor shall be in force at any
> point of execution. It is recommended that at the language level, the
> flavor should be constant over a procedure/function or a compilation
> unit."
> 
> The above text is valid in general for an execution context that
> computes a result. However, if a library procedure/function is written
> to convert between flavors then it cannot follow the restrictive
> condition of "one flavor shall be in force". The standard must allow for
> such conversion routines to deal with multiple flavors simultaneously. 
> 
> Thanks and best regards
> 
> -- 
> Dr. Hossam A. H. Fahmy
> Associate Professor
> Electronics and Communications Engineering
> Cairo University
> Egypt




Begin forwarded message:

> From: Vincent Lefevre <vincent@xxxxxxxxxx>
> Subject: Motion P1788/M0061:REvisedFlavorsText -- YES
> Date: February 28, 2014 at 8:35:04 AM CST
> To: stds-1788 <stds-1788@xxxxxxxxxxxxxxxxx>
> 
> I vote YES on M0061. But I have some comments for §7.5.3:
> 
> §7.5.3, 1st paragraph: "For each flavor-specific operation, the flavor
> shall give a rule to determine when an implementation shall provide a
> T-version." but what's the point of defining a Level 1 flavor-specific
> operation but not provide it at Level 2? In any case, I don't think
> that this sentence is useful.
> 
> §7.5.3, 3rd paragraph: in "a /special value/ of the output means a
> flavor-defined datum that either has diagnostic value, or is regarded
> as useful in practice", the part "or is regarded as useful in practice"
> doesn't seem to bring any information as it is too vague. And isn't a
> special value related to some particular operation and inputs? I mean
> that in mid(Entire) = 0, 0 is regarded as a special value, but in
> mid([-1,1]) = 0, 0 isn't a special value. The specification doesn't
> make this clear. I suggest that the notion of special value be removed;
> it can be replaced below by "flavor-defined value", and the reason for
> such a rule can be explained with an example, like the one about mid().
> The specialness of the value in this context just comes from the fact
> that it isn't defined at Level 1.
> 
> §7.5.3, last line "(d) If Y is boolean, phi_T returns Y.": Shouldn't
> some flavor-, implementation- or language-specific behavior be allowed
> in case it is too hard to determine the boolean (i.e. the "not found"
> case)? Implementations or languages that have an "Indeterminate" or
> (equivalently) "{True,False}" value in addition to "True" and "False"
> could use it.
> 
> -- 
> Vincent Lefèvre <vincent@xxxxxxxxxx> - Web: <https://www.vinc17.net/>
> 100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/>
> Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)




Begin forwarded message:

> From: Guillaume Melquiond <guillaume.melquiond@xxxxxxxx>
> Subject: Motion M0061.02 : YES
> Date: February 28, 2014 at 2:19:18 AM CST
> To: stds-1788 <stds-1788@xxxxxxxxxxxxxxxxx>
> 
> I vote YES on Motion RevisedFlavorsText.
> 
> A few comments though:
> 
> As Hossam Fahmy already mentioned, the overview is a bit too restrictive. For instance, it precludes a function to receive and return intervals corresponding to a given flavor, yet internally use a flavor better suited for its computations.
> 
> The last paragraph of 7.5.4 is a bit restrictive too. It might well happen that two different implementations are just incomparable. I am thinking in particular of elementary functions; which one of two implementations is the most accurate presumably depends on the input domain (values close to zero, large values, etc) due to their having different argument reduction.
> 
> Best regards,
> 
> Guillaume




Begin forwarded message:

> From: Vincent Lefevre <vincent@xxxxxxxxxx>
> Subject: Re: Motion M0061.02 : YES
> Date: February 28, 2014 at 8:53:26 AM CST
> To: stds-1788 <stds-1788@xxxxxxxxxxxxxxxxx>
> 
> On 2014-02-28 09:19:18 +0100, Guillaume Melquiond wrote:
>> The last paragraph of 7.5.4 is a bit restrictive too. It might well happen
>> that two different implementations are just incomparable. I am thinking in
>> particular of elementary functions; which one of two implementations is the
>> most accurate presumably depends on the input domain (values close to zero,
>> large values, etc) due to their having different argument reduction.
> 
> I think that linear ordering may be useful for the end user, and
> the current "should" is OK. But IMHO, the ordering should just be
> informative, and not necessarily linear: accuracy mode 1 > accuracy
> mode 2 when in general f1(X) in included in f2(X), without a guarantee
> that this is always the case. The idea is to inform the user that he
> will generally get more accurate results by choosing mode 1 instead of
> mode 2. The only guaratee is that for inf-sup types (when the hull is
> unique), the tightest mode gives the most accurate results.
> 
> -- 
> Vincent Lefèvre <vincent@xxxxxxxxxx> - Web: <https://www.vinc17.net/>
> 100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/>
> Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)




Begin forwarded message:

> From: "Kreinovich, Vladik" <vladik@xxxxxxxx>
> Subject: RE: Motion M0061.02 : YES
> Date: February 28, 2014 at 9:32:35 AM CST
> To: Vincent Lefevre <vincent@xxxxxxxxxx>, stds-1788 <stds-1788@xxxxxxxxxxxxxxxxx>
> 
> True, a good example is complex numbers, we can use circles or boxes to describe uncertainty, and depending on what we use, we get different results which are not always compatible.




Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail