754R Minutes - 12 February 2016 Recorded by David Hough The sixth meeting of the 754R revision group was a teleconference on 12 February 2016, convened at 8:00am and adjourned at 10:00am Pacific Standard Time. Teleconference participants: David Chen Marius Cornea Mike Cowlishaw Jim Demmel Ken Dockser Warren Ferguson David Gay Ivan Godard Michel Hack David Hough David Lutz Terje Mathisen Jason Riedy Eric Schwarz Jim Thomas Leonard Tsai The IEEE-SA slides were referred to; the URL is: https://development.standards.ieee.org/myproject/Public/mytools/mob/slideset.pdf Officers: A request for volunteers to serve as vice-chair and secretary was met with deafening silence. Meetings: The next meetings will be held on 11 March, 8 April, 20 May, and 24 June, from 8:00 AM to 10:00 AM Silicon Valley time, which will be UT-7 starting in March. Website: The website 754r.ucbtest.org, left over from the previous effort, is being used for the time being. ===== We examined the editor's draft 205 incorporating the decisions of the previous meeting and approved the changes. In section 9, there is a major effort required to disambiguate "function" between the senses of "mathematical function" and "floating-point operation in function syntax." Section 9.1 defines "floating-point operations" in terms of "mathematical functions." Hough wrote an initial draft of these changes. After some discussion, will try again next month. Except in table headers, "functions" -> "mathematical functions". The third sentence should probably look like "In a specific programming environment, these operations might be represented in operator notation or in function notation. The function names used in a specific programming environment might differ from the names of the corresponding mathematical functions or from the names of this standard's corresponding operations." ACTION item for Hough: revise proposed wording changes for section 9 to clarify this distinction. The descriptions of pown and pow had parenthetical remarks: For the pown function (integral powers n only): For the pow function (integral powers y get special treatment): The editor deleted the second as uninformative. Should a remark be added instead that for integral y, pow(x,y) is like pown(x,n) ? There appears to be lots of room for the usual confusion about "integral" vs "integer" so we did not add such a remark. ACTION item for anybody interesting in proposing such a remark: post a draft to email for discussion before the next meeting. We liked the bold operation names everywhere except section 9. ACTION item for editor: bold operation names in section 9 too. Jim Thomas reported from the C Floating-Point Working Group that an issue had arise around the subexceptions of invalid and division by zero. Jim Thomas proposed wording in email, which was approved. ACTION item editor: incorporate Jim Thomas' wording. Intermediate exceptions should not be propagated to the final result of standard operations. This is implied but perhaps should be spelled out more explicitly. ACTION item Jim Thomas and Ken Dockser: Investigate whether a sentence "Thus..." should be added to 7.1 after "For the computational operations defined in this standard, exceptions are defined below to be signaled if and only if certain conditions arise." Why is remainder(subnormal, infinity) defined to signal underflow? Because the correct unrounded answer (the subnormal operand) is "tiny". The exception is not detectable by default - like all other exact underflows. Like all other exact underflows, in only matters if alternate exception handling for underflow is enabled. Should a sentence be added to line 12 of section 6.1 on infinity arithmetic? We decided not, because a similar sentence would be required everywhere exact underflow could arise, and we addressed the situation fairly clearly in section 7.5: If the rounded result is exact, no flag is raised and no inexact exception is signaled. This is the only case in this standard of an exception signal receiving default handling that does not raise the corresponding flag. Such an underflow signal has no observable effect under default handling. What should compound(quietnan,0) be? Following the example of pown, the result is 1. Following the principle that quiet nans are only ignored if the value of the function is constant otherwise throughout its domain, suggests the result is quiet nan. The issue boils down to: is the domain of x all reals, or only those > -1 ? It's hard to argue a cosmic significance for either choice, but a choice was made in 2008 and incorporated into standards and implementations, so an incompatible change is out of order in 2018 and this discussion is deferred to 2028. 2028 topics: Michel Hack advocated including the double sum/difference/product operations that return (a op b) exactly as a pair (c + d). This was considered and rejected for 2008, and would be out of scope as a requirement in 2018 but might be considered as a recommendation. Jim Demmel presented his group's analysis of the design space for methods for reproducible summation. There are many degrees of freedom and nobody is certain about the right engineering tradeoff between cost and benefit.