[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
RE: new domain for atan() in Aug 8 draft.
The issue of how to round atan(x) when the result is {+,-}pi/2 is discussed
in the last three sentences at the end of Annex D. In essence, pi/2 is
truncated (rounded toward 0) in direct to nearest (so in some precisions and
radixes, the result will not be correctly rounded). In directed rounding
mode, the result may be in the second or fourth quadrants, so that interval
properties are maintained.
Peter.
Peter Markstein 650-851-8399
160 Redland Road
Woodside, CA 94062
peter@xxxxxxxxxxxxx
-----Original Message-----
From: stds-754@xxxxxxxx [mailto:stds-754@xxxxxxxx] On Behalf Of Michel Hack
(1-914-784-7648)
Sent: Saturday, August 12, 2006 12:24 AM
To: stds-754; backup
Subject: new domain for atan() in Aug 8 draft.
The correctly-rounded domain was [-1/8, +1/8]; now it is [-inf,+inf].
Does this mean that atan() is now required to produce results whose absolute
value exceeds pi/2, for round-to-nearest binary32, and for all formats with
round-away-from-zero?
For reference, I show pi/2 in decimal, and in the three binary formats
expanded to show 64 additional fraction bits (so the machine format is as if
truncated towards zero). The + and - signs show that rounding to nearest
would round up or down, respectively:
* ....:.|..1....:|...2....:....3...|:....4
pi/2 = 1.57079632679489661923132169163975144209858469968755291...
* - + -
* decimal32 decimal64 decimal128
binary32 pi/2 = 3FC90FDA A22168C2 34C4C662 +
binary64 pi/2 = 3FF921FB 54442D18 469898CC 51701B83 -
binary128 pi/2 = 3FFF921F B54442D1 8469898C C51701B8 39A25204 9C1114D0 -
Michel.
Sent: 2006-08-13 00:39:12 UTC