|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: E T
Length: 203597 (0x31b4d)
Types: TextFile
Names: »ELEMENTARY_FUNCTIONS_PROPOSED_STANDARD_PS«
└─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS
└─⟦91c658230⟧ »DATA«
└─⟦458657fb6⟧
└─⟦1472c4407⟧
└─⟦this⟧
└─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3
└─⟦fc9b38f02⟧ »DATA«
└─⟦9b46a407a⟧
└─⟦2e03b931c⟧
└─⟦this⟧
└─⟦5f3412b64⟧ Bits:30000745 8mm tape, Rational 1000, ENVIRONMENT 12_6_5 TOOLS
└─⟦91c658230⟧ »DATA«
└─⟦458657fb6⟧
└─⟦a5bbbb819⟧
└─⟦this⟧
└─⟦d10a02448⟧ Bits:30000409 8mm tape, Rational 1000, ENVIRONMENT, D_12_7_3
└─⟦fc9b38f02⟧ »DATA«
└─⟦9b46a407a⟧
└─⟦eec0a994f⟧
└─⟦this⟧
%!PS-Adobe-2.0
%%Title: PubTeX output 1990.12.12:1351
%%Creator: Pubps, ArborText, Inc.
%%BoundingBox: (atend)
%%Pages: (atend)
%%DocumentFonts: (atend)
%%EndComments
%!
% Dvips.pro - included prolog for DviLaser-generated PostScript files.
%
% Copyright (c) 1986-89, ArborText, Inc.
% Permission to copy is granted so long as the PostScript code
% is not resold or used in a commercial product.
%
% $Header: pubps.pro,v 1.14 90/04/10 12:27:08 jsg Exp $
systemdict /setpacking known % use array packing mode if its available
{/savepackingmode currentpacking def
true setpacking}
if
/$DviLaser 400 dict def
% Begin document
/BeginDviLaserDoc {
vmstatus pop pop 0 eq
{ $DviLaser begin
InitializeState }
{ /DviLaserJob save def
$DviLaser begin
InitializeState
/DviLaserFonts save def }
ifelse
} bind def
% End document
/EndDviLaserDoc {
vmstatus pop pop 0 eq
{ end }
{ DviLaserFonts restore
end
DviLaserJob restore }
ifelse
} bind def
$DviLaser begin
/tempstr 64 string def
/tempint 0 def
/tempmatrix matrix def
%
% Debugging routines
%
/DebugMode false def
/PrintInt {
tempstr cvs print
} bind def
/PrintLn {
(\n) print flush
} bind def
/PrintVMStats {
print
PrintLn
(VM status - ) print
vmstatus
3 copy
PrintInt (\(total\), ) print
PrintInt (\(used\), ) print
pop
exch sub
PrintInt (\(remaining\), ) print
PrintInt (\(level\)) print
PrintLn
} bind def
/VMS /PrintVMStats load def
/VMSDebug {
DebugMode
{PrintVMStats}
{pop}
ifelse
} bind def
(beginning of common prolog) VMSDebug
% Make it easy to bind definitions.
/bdef { bind def } bind def
/xdef { exch def } bdef
% Begin page
/BP {
/Magnification xdef
/DviLaserPage save def
(beginning of page) VMSDebug
} bdef
% End page
/EP {
DviLaserPage restore
} bdef
% Exit page (temporarily) to add fonts/characters.
/XP {
% Save current point information so it can be reset later.
/Xpos where {pop Xpos} {0} ifelse
/Ypos where {pop Ypos} {0} ifelse
/currentpoint cvx stopped {0 0 moveto currentpoint} if
/DviLaserPage where {pop DviLaserPage restore} if
moveto
/Ypos xdef
/Xpos xdef
} bdef
% Resume page
/RP {
/DviLaserPage save def
} bdef
% Purge all fonts to reclaim memory space.
/PF {
GlobalMode
LocalMode
} bdef
% Switch to base save/restore level, saving state information.
/GlobalMode {
/UserSave where {pop UserSave} if % invoke "UserSave" if available
PortraitMode
PaperWidth
PaperHeight
PxlResolution
Resolution
Magnification
Ymax
RasterScaleFactor
% Save current point information so it can be reset later.
/currentpoint cvx stopped {0 0 moveto currentpoint} if
/DviLaserPage where {pop DviLaserPage restore} if
DviLaserFonts restore
RecoverState
} bdef
% Preserve state at the base level.
/RecoverState {
10 copy
/Ypos xdef
/Xpos xdef
/RasterScaleFactor xdef
/Ymax xdef
/Magnification xdef
/Resolution xdef
/PxlResolution xdef
/PaperHeight xdef
/PaperWidth xdef
/PortraitMode xdef
DoInitialScaling
PortraitMode not {PaperWidth 0 SetupLandscape} if
Xpos Ypos moveto
} bdef
% Initialize state variables to default values.
/InitializeState {
/Resolution 3600.0 def
/PxlResolution 300.0 def
/RasterScaleFactor PxlResolution Resolution div def
/PortraitMode true def
11.0 Resolution mul /PaperHeight xdef
8.5 Resolution mul /PaperWidth xdef
/Ymax PaperHeight def
/Magnification 1000.0 def
/Xpos 0.0 def
/Ypos 0.0 def
/InitialMatrix matrix currentmatrix def
} bdef
% Switch from base save/restore level, restoring state information.
/LocalMode {
/Ypos xdef
/Xpos xdef
/RasterScaleFactor xdef
/Ymax xdef
/Magnification xdef
/Resolution xdef
/PxlResolution xdef
/PaperHeight xdef
/PaperWidth xdef
/PortraitMode xdef
DoInitialScaling
PortraitMode not {PaperWidth 0 SetupLandscape} if
Xpos Ypos moveto
/UserRestore where {pop UserRestore} if % invoke "UserRestore" if available
/DviLaserFonts save def
/DviLaserPage save def
} bdef
% Abbreviations
/S /show load def
/SV /save load def
/RST /restore load def
/Yadjust {Ymax exch sub} bdef
% (x,y) position absolute, just set Xpos & Ypos, don't move.
/SXY {
Yadjust
/Ypos xdef /Xpos xdef
} bdef
% (x,y) position absolute
/XY {
Yadjust
2 copy /Ypos xdef /Xpos xdef
moveto
} bdef
% (x,0) position absolute
/X {
currentpoint exch pop
2 copy /Ypos xdef /Xpos xdef
moveto
} bdef
% (0,y) position absolute
/Y {
currentpoint pop exch Yadjust
2 copy /Ypos xdef /Xpos xdef
moveto
} bdef
% (x,y) position relative
/xy {
neg rmoveto
currentpoint /Ypos xdef /Xpos xdef
} bdef
% (x,0) position relative
/x {
0.0 rmoveto
currentpoint /Ypos xdef /Xpos xdef
} bdef
% (0,y) position relative
/y {
0.0 exch neg rmoveto
currentpoint /Ypos xdef /Xpos xdef
} bdef
% Print a rule. In order to get correct pixel size and positioning,
% we usually create a temporary font in which the rule is the only character.
% When the rule is large, however, we fill a rectangle instead.
/R {
/ht xdef
/wd xdef
ht 1950 le wd 1950 le and
{save
/tfd 6 dict def
tfd begin
/FontType 3 def
/FontMatrix [1 0 0 1 0 0] def
/FontBBox [0 0 wd ht] def
/Encoding 256 array dup 97 /a put def
/BuildChar {
pop % ignore character code
pop % ignore font dict, too
wd 0 0 0 wd ht setcachedevice
wd ht true
[1 0 0 -1 0 ht] {<FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF>} imagemask
} def
end % tfd
/tf tfd definefont setfont
(a) show
restore
}
{gsave
0 setgray
currentpoint
newpath
moveto
0.0 ht rlineto
wd 0.0 rlineto
0.0 ht neg rlineto
wd neg 0.0 rlineto
closepath fill
grestore
}
ifelse
wd 0.0 rmoveto
currentpoint /Ypos xdef /Xpos xdef
} bdef
%
% <PXL-file resolution(pix/inch)> <resolution(pix/inch)> RES
%
/RES {
/Resolution xdef
/PxlResolution xdef
/RasterScaleFactor PxlResolution Resolution div def
DoInitialScaling
} bdef
%
% Do initial scaling.
%
/DoInitialScaling {
InitialMatrix setmatrix
72.0 Resolution div dup scale
} bdef
%
% <paper-height(pix)> <paper-width(pix)> PM
%
/PM {
XP
/PaperWidth xdef
/PaperHeight xdef
/Ymax PaperHeight def
/PortraitMode true def
DoInitialScaling
RP
} bdef
%
% <paper-height(pix)> <paper-width(pix)> LM
%
/LM {
XP
/PaperWidth xdef
/PaperHeight xdef
/Ymax PaperWidth def
/PortraitMode false def
DoInitialScaling
PaperWidth 0 SetupLandscape
RP
} bdef
% Change magnification setting
/MAG {
XP
/Magnification xdef
RP
} bdef
%
% Switch to landscape mode
%
/SetupLandscape {
translate
90.0 rotate
} bdef
%
% <mode> SPB - begin "\special" mode
%
% This is the PostScript procedure used to transfer from the internal
% environment used for the DVI translation code emitted by DVIPS to
% a standard PostScript environment.
%
% Parameters: 0 - Local
% 1 - Global
% 2 - Inline
%
/SPB {
/spc_mode xdef
spc_mode 0 eq spc_mode 2 eq or
{XP}
{spc_mode 1 eq {GlobalMode} if}
ifelse
Resolution 72.0 div dup scale % Restore default scaling...
Magnification 1000.0 div dup scale % Adjust for any magnification...
/Xpos Xpos 72.0 Resolution div mul 1000.0 Magnification div mul def
/Ypos Ypos 72.0 Resolution div mul 1000.0 Magnification div mul def
} bdef
%
% <mode> SPE - end "\special" mode
%
% This is the PostScript procedure used to reenter the internal
% environment used for the DVI translation code emitted by DVIPS from
% the standard PostScript environment provided for processing user-supplied
% PostScript code.
%
% Parameters: 0 - Local
% 1 - Global
% 2 - Inline
%
/SPE {
/spc_mode xdef
1000.0 Magnification div dup scale % Un-adjust for any magnification...
72.0 Resolution div dup scale % Restore default internal scaling...
spc_mode 0 eq spc_mode 2 eq or
{RP}
{spc_mode 1 eq {LocalMode} if}
ifelse
} bdef
%
% <num-copies> PP
%
/PP {
/#copies xdef
showpage
/#copies 1 def
} bdef
%
% /font-name <point-size(pix)> DMF
%
/DMF {
/psz xdef
/nam xdef
nam findfont psz scalefont setfont
} bdef
%
% /abcd (xxx) str-concat ==> /abcdxxx
%
/str-concatstr 64 string def
/str-concat {
/xxx xdef
/nam xdef
/namstr nam str-concatstr cvs def
/newnam namstr length xxx length add string def
newnam 0 namstr putinterval
newnam namstr length xxx putinterval
newnam cvn
} bdef
%
% /abcdef 2 str-strip ==> /cdef
%
/str-strip {
/num xdef
/nam xdef
/namstr nam tempstr cvs def
/newlen namstr length num sub def
namstr num newlen getinterval
cvn
} bdef
%
% <old-dict> copydict ==> new-dict on stack
%
/copydict {
dup length 1 add dict /newdict xdef
{1 index /FID ne
{newdict 3 1 roll put}
{pop pop}
ifelse
} forall
newdict
} bdef
%
% <font-type> DefineCMEncoding
%
/DefineCMEncoding {
/EncodeType xdef
/CMEncoding 256 array def
/Times-Roman findfont /Encoding get aload pop CMEncoding astore pop
EncodeType 11 eq {Do-CM-rm-encoding} if
EncodeType 12 eq {Do-CM-it-encoding} if
EncodeType 13 eq {Do-CM-tt-encoding} if
} bdef
%
% Do special mappings for the various CM-font types. Characters that
% get "covered up" are repositioned in the range (128,128+32).
%
/Do-standard-CM-encodings {
CMEncoding
dup 0 /.notdef put
dup 1 /.notdef put
dup 2 /.notdef put
dup 3 /.notdef put
dup 4 /.notdef put
dup 5 /.notdef put
dup 6 /.notdef put
dup 7 /.notdef put
dup 8 /.notdef put
dup 9 /.notdef put
dup 10 /.notdef put
dup 11 /.notdef put
dup 12 /fi put
dup 13 /fl put
dup 14 /.notdef put
dup 15 /.notdef put
dup 16 /dotlessi put
dup 17 /.notdef put
dup 18 /grave put
dup 19 /acute put
dup 20 /caron put
dup 21 /breve put
dup 22 /macron put
dup 23 /ring put
dup 24 /cedilla put
dup 25 /germandbls put
dup 26 /ae put
dup 27 /oe put
dup 28 /oslash put
dup 29 /AE put
dup 30 /OE put
dup 31 /Oslash put
dup 127 /dieresis put
dup 128 /space put
dup 129 /quotedbl put
dup 130 /sterling put
dup 131 /dollar put
dup 132 /less put
dup 133 /greater put
dup 134 /backslash put
dup 135 /asciicircum put
dup 136 /underscore put
dup 137 /braceleft put
dup 138 /bar put
dup 139 /braceright put
dup 140 /asciitilde put
pop
} bdef
/Do-CM-rm-encoding {
Do-standard-CM-encodings
CMEncoding
dup 32 /.notdef put
dup 34 /quotedblright put
dup 60 /exclamdown put
dup 62 /questiondown put
dup 92 /quotedblleft put
dup 94 /circumflex put
dup 95 /dotaccent put
dup 123 /endash put
dup 124 /emdash put
dup 125 /hungarumlaut put
dup 126 /tilde put
pop
} bdef
/Do-CM-it-encoding {
Do-standard-CM-encodings
CMEncoding
dup 32 /.notdef put
dup 34 /quotedblright put
dup 36 /sterling put
dup 60 /exclamdown put
dup 62 /questiondown put
dup 92 /quotedblleft put
dup 94 /circumflex put
dup 95 /dotaccent put
dup 123 /endash put
dup 124 /emdash put
dup 125 /hungarumlaut put
dup 126 /tilde put
pop
} bdef
/Do-CM-tt-encoding {
Do-standard-CM-encodings
CMEncoding
dup 12 /.notdef put
dup 13 /quotesingle put
dup 14 /exclamdown put
dup 15 /questiondown put
dup 94 /circumflex put
dup 126 /tilde put
pop
} bdef
%
% Routines to handle packing/unpacking numbers.
%
% <target> <pos> <num> PackHW --> <new target>
%
/PackHW {
/num xdef
/pos xdef
/target xdef
num 16#0000FFFF and 1 pos sub 16 mul bitshift
target or
} bdef
%
% <target> <pos> <num> PackByte --> <new target>
%
/PackByte {
/num xdef
/pos xdef
/target xdef
num 16#000000FF and 3 pos sub 8 mul bitshift
target or
} bdef
%
% <pos> <num> UnpkHW --> <unpacked value>
%
/UnpkHW {
/num xdef
/pos xdef
num 1 pos sub -16 mul bitshift 16#0000FFFF and
dup 16#00007FFF gt {16#00010000 sub} if
} bdef
%
% <pos> <num> UnpkByte --> <unpacked value>
%
/UnpkByte {
/num xdef
/pos xdef
num 3 pos sub -8 mul bitshift 16#000000FF and
dup 16#0000007F gt {16#00000100 sub} if
} bdef
%
% <int-font-name> <ext-font-name> <pt-sz(pix)> <type> <loaded-fg> DefineCMFont
%
% type 10: "as-is" PostScript font
% type 11: CM-mapped PostScript font - roman
% type 12: CM-mapped PostScript font - text italic
% type 13: CM-mapped PostScript font - typewriter type
%
/int-dict-name {int (-dict) str-concat} bdef
/int-dict {int (-dict) str-concat cvx load} bdef
/DF {
true % signal that the font is already loaded
DefineCMFont
} bdef
/DNF {
false % signal that the font is not already loaded
DefineCMFont
} bdef
/DefineCMFont {
/loaded xdef
/typ xdef
/psz xdef
/ext xdef
/int xdef
typ 10 ne
{ % font_type = 11, 12, 13
loaded not
{ /fnam ext 3 str-strip def
fnam findfont copydict /newdict xdef
typ DefineCMEncoding
newdict /Encoding CMEncoding put
ext newdict definefont pop
} if
int-dict-name ext findfont psz scalefont def
currentdict int [int-dict /setfont cvx] cvx put
}
{ % font_type = 10
/fnam ext def
int-dict-name fnam findfont psz scalefont def
currentdict int [int-dict /setfont cvx] cvx put
}
ifelse
} bdef
%
% <int-font-name> <ext-font-name> <pt-sz(pix)> <PXL mag> <num-chars>
% [llx lly urx ury] <newfont-fg> DefinePXLFont
%
/PXLF {
true % signal that the font is already loaded
DefinePXLFont
} bdef
/PXLNF {
false % signal that the font is not already loaded
DefinePXLFont
} bdef
/PXLBuildCharDict 17 dict def
/CMEncodingArray 256 array def
0 1 255 {CMEncodingArray exch dup tempstr cvs cvn put} for
/RasterConvert {RasterScaleFactor div} bdef
/TransformBBox {
aload pop
/BB-ury xdef
/BB-urx xdef
/BB-lly xdef
/BB-llx xdef
[BB-llx RasterConvert BB-lly RasterConvert
BB-urx RasterConvert BB-ury RasterConvert]
} bdef
/DefinePXLFont {
/newfont xdef
/bb xdef
/num xdef
/psz xdef
/dsz xdef
/pxlmag xdef
/ext xdef
/int xdef
/fnam ext (-) str-concat pxlmag tempstr cvs str-concat def
newfont not {
int-dict-name 13 dict def
int-dict begin
/FontType 3 def
/FontMatrix [1 dsz div 0 0 1 dsz div 0 0] def
/FontBBox bb TransformBBox def
/Encoding CMEncodingArray def
/CharDict 1 dict def
CharDict begin
/Char-Info num array def
end
/BuildChar
{
PXLBuildCharDict begin
/char xdef
/fontdict xdef
fontdict /CharDict get /Char-Info get char get aload pop
/rasters xdef
/PackedWord1 xdef
0 PackedWord1 UnpkHW 16#7FFF ne
{ /PackedWord2 xdef
/wx 0 PackedWord1 UnpkHW def
/rows 2 PackedWord1 UnpkByte def
/cols 3 PackedWord1 UnpkByte def
/llx 0 PackedWord2 UnpkByte def
/lly 1 PackedWord2 UnpkByte def
/urx 2 PackedWord2 UnpkByte def
/ury 3 PackedWord2 UnpkByte def }
{ /PackedWord2 xdef
/PackedWord3 xdef
/PackedWord4 xdef
/wx 1 PackedWord1 UnpkHW def
/rows 0 PackedWord2 UnpkHW def
/cols 1 PackedWord2 UnpkHW def
/llx 0 PackedWord3 UnpkHW def
/lly 1 PackedWord3 UnpkHW def
/urx 0 PackedWord4 UnpkHW def
/ury 1 PackedWord4 UnpkHW def }
ifelse
rows 0 lt
{ /rows rows neg def
/runlength 1 def }
{ /runlength 0 def }
ifelse
wx 0
llx RasterConvert lly RasterConvert
urx RasterConvert ury RasterConvert setcachedevice
rows 0 ne
{
gsave
cols rows true
RasterScaleFactor 0 0 RasterScaleFactor neg llx neg ury
tempmatrix astore
{GenerateRasters} imagemask
grestore
} if
end
} def
end
fnam int-dict definefont pop
} if
int-dict-name fnam findfont psz scalefont def
currentdict int [int-dict /setfont cvx] cvx put
} bdef
%
% <int-font-name> <code> <wx> <llx> <lly> <urx> <ury> <rows> <cols> <runlength> <rasters> PXLC
%
/PXLC {
/rasters xdef
/runlength xdef
/cols xdef
/rows xdef
/ury xdef
/urx xdef
/lly xdef
/llx xdef
/wx xdef
/code xdef
/int xdef
% See if the long or short format is required
true cols CKSZ rows CKSZ ury CKSZ urx CKSZ lly CKSZ llx CKSZ
TackRunLengthToRows
{ int-dict /CharDict get /Char-Info get code
[0 0 llx PackByte 1 lly PackByte 2 urx PackByte 3 ury PackByte
0 0 wx PackHW 2 rows PackByte 3 cols PackByte
rasters] put}
{ int-dict /CharDict get /Char-Info get code
[0 0 urx PackHW 1 ury PackHW
0 0 llx PackHW 1 lly PackHW
0 0 rows PackHW 1 cols PackHW
0 0 16#7FFF PackHW 1 wx PackHW
rasters] put}
ifelse
} bdef
/CKSZ {abs 127 le and} bdef
/TackRunLengthToRows {runlength 0 ne {/rows rows neg def} if} bdef
%
% <wx> <dsz> <psz> <llx> <lly> <urx> <ury> <rows> <cols> <runlength> <rasters> PLOTC
%
/PLOTC {
/rasters xdef
/runlength xdef
/cols xdef
/rows xdef
/ury xdef
/urx xdef
/lly xdef
/llx xdef
/psz xdef
/dsz xdef
/wx xdef
% "Plot" a character's raster pattern.
rows 0 ne
{
gsave
currentpoint translate
psz dsz div dup scale
cols rows true
RasterScaleFactor 0 0 RasterScaleFactor neg llx neg ury
tempmatrix astore
{GenerateRasters} imagemask
grestore
} if
wx x
} bdef
% Routine to generate rasters for "imagemask".
/GenerateRasters {
rasters
runlength 1 eq {RunLengthToRasters} if
} bdef
% Routine to convert from runlength encoding back to rasters.
/RunLengthToRasters {
% ...not done yet...
} bdef
%
% These procedures handle bitmap processing.
%
% <bitmap columns> <bitmap rows> <bitmap pix/inch> <magnification> BMbeg
%
/BMbeg {
/BMmagnification xdef
/BMresolution xdef
/BMrows xdef
/BMcols xdef
/BMcurrentrow 0 def
gsave
0.0 setgray
Resolution BMresolution div dup scale
currentpoint translate
BMmagnification 1000.0 div dup scale
0.0 BMrows moveto
BMrows dup scale
currentpoint translate
/BMCheckpoint save def
} bdef
/BMend {
BMCheckpoint restore
grestore
} bdef
%
% <hex raster bitmap> <rows> BMswath
%
/BMswath {
/rows xdef
/rasters xdef
BMcols rows true
[BMrows 0 0 BMrows neg 0 BMcurrentrow neg]
{rasters}
imagemask
/BMcurrentrow BMcurrentrow rows add def
BMcurrentrow % save this on the stack around a restore...
BMCheckpoint restore
/BMcurrentrow xdef
/BMCheckpoint save def
} bdef
%
% Procedures for implementing the "rotate <theta>" special:
% <theta> ROTB -
% - ROTE -
/ROTB {
XP
gsave
Xpos Ypos translate
rotate % using <theta> from the stack
Xpos neg Ypos neg translate
RP
} bdef
/ROTE {XP grestore RP} bdef
%
% Procedures for implementing the "epsfile <filename> [<mag>]" special:
% <llx> <lly> <mag> EPSB -
% - EPSE -
/EPSB {
0 SPB
save
4 1 roll % push the savelevel below the parameters
/showpage {} def
Xpos Ypos translate
1000 div dup scale % using <mag> from the stack
neg exch neg exch translate % using <llx> <lly> from the stack
} bdef
/EPSE {restore 0 SPE} bdef
%
% Procedure for implementing revision bars:
% <bary1> <bary2> <barx> <barw> REVB -
% The bar is a line of width barw drawn from (barx,bary1) to (barx,bary2).
/REVB {
/barw xdef
/barx xdef
/bary2 xdef
/bary1 xdef
gsave
barw setlinewidth
barx bary1 Yadjust moveto
barx bary2 Yadjust lineto
stroke
grestore
} bdef
%
% A small dictionary to facilitate The Publisher's implementation
% of gray table cells.
/grpm 40 dict def
%
% Procedures for implementing the "paper <source>" option:
% <name> <eop> SPS -
% <eop> paper-manual -
% etc. The boolean <eop> is passed so that a paper source procedure
% knows if it is being called at the beginning (false) or end
% (true) of a page.
/SPS {
/eop xdef
/name xdef
name where {pop eop name cvx exec} if
} bdef
/paper-manual {
{statusdict /manualfeed known
{statusdict /manualfeed true put}
if}
if
} bdef
/paper-automatic {
{statusdict /manualfeed known
{statusdict /manualfeed false put}
if}
if
} bdef
/paper-top-tray {
{}
{statusdict /setpapertray known
{statusdict begin 0 setpapertray end}
if}
ifelse
} bdef
/paper-bottom-tray {
{}
{statusdict /setpapertray known
{statusdict begin 1 setpapertray end}
if}
ifelse
} bdef
/paper-both-trays {
{}
{statusdict /setpapertray known
{statusdict begin 2 setpapertray end}
if}
ifelse
} bdef
(end of common prolog) VMSDebug
end
systemdict /setpacking known
{savepackingmode setpacking}
if
%
% End of included prolog section.
%
%%EndProlog
%%BeginSetup
BeginDviLaserDoc
300 300 RES
%%EndSetup
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 842 0 XY
%%EndPageSetup
XP /F45 /CM-Times-Bold 74.720 11 DNF RP
842 942 XY F45(Pr)S -1 x(oposed)S 45 x(Standard)S 46 x(for)S 46 x(a)S
1029 Y 935 X(Generic)S 50 x(Package)S 50 x(of)S 1116 Y 753 X
(Elementary)S 43 x(Functions)S 43 x(for)S 42 x(Ada)S
XP /F47 /CM-Times-Bold 58.115 11 DF RP
849 1566 XY F47(ISO-IEC/JTC1/SC22/WG9)S 35 x(\(Ada\))S 70 y 890 X
(Numerics)S 37 x(Rapporteur)S 37 x(Gr)S -1 x(oup)S
XP /F6 /CM-Times-Roman 41.511 11 DNF RP
1189 2086 XY F6(Draft)S 33 x(1.2)S
XP /F2 /CM-Times-Bold 49.813 11 DF RP
1056 2176 XY F2(12)S 36 x(December)S 36 x(1990)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 181 267 431 574
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 300 0 XY
%%EndPageSetup
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 0 792 0 792
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F6(This)S 39 x(document)S 38 x(de\014nes)S 39 x(the)S
39 x(speci\014cation)S 38 x(of)S 39 x(a)S 39 x(generic)S 39 x
(package)S 38 x(of)S 39 x(elementary)S 39 x(functions)S 39 x(called)S
XP /F48 /cmtt10 300 41.5 41.5 128 [0 -10 22 29] PXLNF RP
XP /F48 71 22 2 0 20 25 25 24 0
<03E300 07FF00 1FFF00 3E1F00 3C0F00 780F00 780700 700700 F00000
E00000 E00000 E00000 E00000 E03F80 E07FC0 E03F80 F00700 700700
780F00 780F00 3C0F00 3E1F00 1FFF00 07FF00 03E700>
PXLC RP
300 391 XY F48(G)S
XP /F48 69 22 1 0 20 25 25 24 0
<7FFFC0 FFFFC0 7FFFC0 1C01C0 1C01C0 1C01C0 1C01C0 1C0000 1C0000
1C1C00 1C1C00 1FFC00 1FFC00 1FFC00 1C1C00 1C1C00 1C0000 1C00E0
1C00E0 1C00E0 1C00E0 1C00E0 7FFFE0 FFFFE0 7FFFE0>
PXLC RP
322 391 XY F48(E)S
XP /F48 78 22 1 0 20 25 25 24 0
<7E1FC0 FF3FE0 7F1FC0 1D0700 1D8700 1D8700 1D8700 1DC700 1DC700
1CC700 1CC700 1CE700 1CE700 1CE700 1C6700 1C6700 1C7700 1C7700
1C3700 1C3700 1C3700 1C1700 7F1F00 FF9F00 7F0F00>
PXLC RP
344 391 XY F48(NE)S
XP /F48 82 22 1 0 21 25 25 24 0
<7FE000 FFF800 7FFC00 1C1E00 1C0F00 1C0700 1C0700 1C0700 1C0700
1C0F00 1C1E00 1FFC00 1FF800 1FFC00 1C1C00 1C0E00 1C0E00 1C0E00
1C0E00 1C0E20 1C0E70 1C0E70 7F07E0 FF87E0 7F03C0>
PXLC RP
387 391 XY F48(R)S
XP /F48 73 22 3 0 18 25 25 16 0
<FFFE FFFE FFFE 0380 0380 0380 0380 0380 0380 0380 0380 0380 0380
0380 0380 0380 0380 0380 0380 0380 0380 0380 FFFE FFFE FFFE>
PXLC RP
409 391 XY F48(I)S
XP /F48 67 22 2 0 19 25 25 24 0
<01F180 07FF80 0FFF80 1F0F80 3C0780 780780 780380 700380 F00000
E00000 E00000 E00000 E00000 E00000 E00000 E00000 F00000 700380
780380 780380 3C0780 1F0F00 0FFE00 07FC00 01F000>
PXLC RP
431 391 XY F48(C)S
XP /F48 95 22 2 -4 19 -1 3 24 0
<FFFF80 FFFF80 FFFF80>
PXLC RP
453 391 XY F48(_E)S
XP /F48 76 22 1 0 20 25 25 24 0
<FFC000 FFC000 FFC000 1C0000 1C0000 1C0000 1C0000 1C0000 1C0000
1C0000 1C0000 1C0000 1C0000 1C0000 1C0000 1C0000 1C0000 1C0040
1C00E0 1C00E0 1C00E0 1C00E0 FFFFE0 FFFFE0 FFFFE0>
PXLC RP
496 391 XY F48(LE)S
XP /F48 77 22 1 0 20 25 25 24 0
<FC07E0 FE0FE0 FE0FE0 3A0B80 3B1B80 3B1B80 3B1B80 3B1B80 3B1B80
3BBB80 39B380 39B380 39B380 39B380 39F380 38E380 38E380 380380
380380 380380 380380 380380 FE0FE0 FE0FE0 FE0FE0>
PXLC RP
540 391 XY F48(MEN)S
XP /F48 84 22 1 0 20 25 25 24 0
<7FFFE0 FFFFE0 FFFFE0 E0E0E0 E0E0E0 E0E0E0 E0E0E0 00E000 00E000
00E000 00E000 00E000 00E000 00E000 00E000 00E000 00E000 00E000
00E000 00E000 00E000 00E000 07FC00 0FFE00 07FC00>
PXLC RP
605 391 XY F48(T)S
XP /F48 65 22 1 0 20 25 25 24 0
<00E000 01F000 01F000 01B000 01B000 03B800 03B800 03B800 031800
071C00 071C00 071C00 071C00 071C00 0E0E00 0E0E00 0FFE00 0FFE00
1FFF00 1C0700 1C0700 1C0700 7F1FC0 FF1FE0 7F1FC0>
PXLC RP
627 391 XY F48(AR)S
XP /F48 89 22 1 0 20 25 25 24 0
<FE0FE0 FF1FE0 FE0FE0 1C0700 1C0700 0E0E00 0E0E00 071C00 071C00
071C00 03B800 03B800 01F000 01F000 00E000 00E000 00E000 00E000
00E000 00E000 00E000 00E000 03F800 07FC00 03F800>
PXLC RP
670 391 XY F48(Y_)S
XP /F48 70 22 1 0 20 25 25 24 0
<FFFFE0 FFFFE0 FFFFE0 1C00E0 1C00E0 1C00E0 1C00E0 1C0000 1C0000
1C1C00 1C1C00 1FFC00 1FFC00 1FFC00 1C1C00 1C1C00 1C0000 1C0000
1C0000 1C0000 1C0000 1C0000 FF8000 FFC000 FF8000>
PXLC RP
714 391 XY F48(F)S
XP /F48 85 22 0 0 21 25 25 24 0
<7F07F0 FF8FF8 7F07F0 1C01C0 1C01C0 1C01C0 1C01C0 1C01C0 1C01C0
1C01C0 1C01C0 1C01C0 1C01C0 1C01C0 1C01C0 1C01C0 1C01C0 1C01C0
1C01C0 0E0380 0E0380 070700 07FF00 03FE00 00F800>
PXLC RP
736 391 XY F48(UNCTI)S
XP /F48 79 22 2 0 19 25 25 24 0
<1FFC00 3FFE00 7FFF00 780F00 F00780 E00380 E00380 E00380 E00380
E00380 E00380 E00380 E00380 E00380 E00380 E00380 E00380 E00380
E00380 F00780 F00780 780F00 7FFF00 3FFE00 1FFC00>
PXLC RP
845 391 XY F48(ON)S
XP /F48 83 22 2 0 19 25 25 24 0
<07E300 1FFF00 7FFF00 781F00 F00F00 E00700 E00700 E00000 F00000
780000 7F8000 1FF000 07FC00 00FE00 000F00 000780 000380 000380
E00380 E00380 F00780 F80F00 FFFE00 FFFC00 C7F000>
PXLC RP
888 391 XY F48(S)S 23 x F6(and)S 23 x(the)S 23 x(speci\014cation)S
23 x(of)S 24 x(a)S 23 x(package)S 23 x(of)S 23 x(related)S 23 x
(exceptions)S 23 x(called)S 23 x F48(ELEMEN)S
XP /F48 45 22 2 11 19 14 3 24 0
<FFFF80 FFFF80 FFFF80>
PXLC RP
2228 391 XY F48(-)S 50 y 300 X(TARY_FUNCTIONS_E)S
XP /F48 88 22 1 0 20 25 25 24 0
<7F1F80 7F3F80 7F1F80 0E1E00 0E1C00 073C00 073800 03B800 03F000
01F000 01E000 00E000 01E000 01F000 03F000 03B800 07B800 071C00
071C00 0E0E00 0E0E00 1C0700 7F1FC0 FF1FE0 7F1FC0>
PXLC RP
649 441 XY F48(XCE)S
XP /F48 80 22 1 0 19 25 25 24 0
<7FF800 FFFE00 7FFF00 1C0F80 1C0380 1C03C0 1C01C0 1C01C0 1C01C0
1C03C0 1C0380 1C0F80 1FFF00 1FFE00 1FF800 1C0000 1C0000 1C0000
1C0000 1C0000 1C0000 1C0000 7F0000 FF8000 7F0000>
PXLC RP
714 441 XY F48(PTIONS)S F6(.)S 13 x(It)S 14 x(does)S 14 x(not)S 15 x
(de)S
(\014ne)S 14 x(the)S 14 x(body)S 14 x(of)S 14 x(the)S 14 x(former.)S
20 x(No)S 15 x(body)S 14 x(is)S 15 x(required)S 14 x(for)S 14 x(the)S
15 x(latter.)S 520 Y 383 X(Deriving)S 12 x(its)S 13 x(content)S 12 x
(from)S 12 x(a)S 12 x(joint)S 13 x(proposal)S 12 x(of)S 12 x(the)S
12 x(ACM)S 12 x(SIGAda)S 13 x(Numerics)S 13 x(W)S -3 x(orking)S 11 x
(Group)S 13 x(and)S 12 x(the)S 12 x(Ada-Europe)S 50 y 300 X
(Numerics)S 18 x(W)S -3 x(orking)S 17 x(Group,)S 17 x(the)S 17 x
(WG9)S 18 x(Numerics)S 17 x(Rapporteur)S 17 x(Group)S 18 x
(submitted)S 18 x(Draft)S 18 x(1.0)S 18 x(of)S 18 x(this)S 17 x
(proposed)S 17 x(standard)S 50 y 300 X(to)S 16 x(WG9)S 16 x(in)S
16 x(March,)S 16 x(1989.)S 23 x(WG9)S 16 x(approved)S 16 x(Draft)S
16 x(1.0)S 16 x(in)S 16 x(June,)S 16 x(1989,)S 16 x(subject)S 16 x
(to)S 16 x(minor)S 16 x(revisions)S 16 x(and)S 16 x(improvements;)S
49 y 300 X(these)S 13 x(changes)S 13 x(resulted)S 13 x(in)S 13 x
(Draft)S 13 x(1.1.)S 18 x(Initial)S 13 x(processing)S 13 x(by)S 13 x
(SC22)S 13 x(and)S 13 x(further)S 13 x(work)S 13 x(by)S 13 x(the)S
13 x(NRG)S 13 x(resulted)S 13 x(in)S 13 x(additional)S 50 y 300 X
(improvements,)S 12 x(leading)S 11 x(to)S 12 x(this)S 11 x(current)S
11 x(version,)S 11 x(Draft)S 11 x(1.2,)S 12 x(intended)S 11 x(for)S
11 x(further)S 11 x(processing)S 11 x(as)S 11 x(an)S 12 x
(international)S 11 x(standard.)S 798 Y 383 X(The)S 22 x(generic)S
22 x(package)S 22 x(described)S 22 x(here)S 22 x(is)S 22 x(intended)S
22 x(to)S 22 x(provide)S 22 x(the)S 22 x(basic)S 22 x(mathematical)S
22 x(routines)S 22 x(from)S 22 x(which)S 50 y 300 X(portable,)S 20 x
(reusable)S 19 x(applications)S 18 x(can)S 19 x(be)S 19 x(built.)S
29 x(The)S 19 x(standard)S 18 x(serves)S 19 x(a)S 19 x(broad)S 19 x
(class)S 19 x(of)S 18 x(applications)S 19 x(with)S 18 x(reasonable)S
50 y 300 X(ease)S 17 x(of)S 17 x(use,)S 18 x(while)S 17 x(demanding)S
17 x(implementations)S 16 x(that)S 17 x(are)S 17 x(of)S 16 x(high)S
17 x(quality,)S 17 x(capable)S 17 x(of)S 17 x(validation,)S 18 x
(and)S 16 x(also)S 17 x(practical)S 50 y 300 X(given)S 22 x(the)S
21 x(state)S 21 x(of)S 22 x(the)S 22 x(art.)S 1026 Y 383 X(The)S
14 x(two)S 15 x(speci\014cations)S 14 x(included)S 15 x(in)S 14 x
(this)S 15 x(document)S 15 x(are)S 14 x(presented)S 15 x(as)S 15 x
(compilable)S 14 x(Ada)S 14 x(speci\014cations)S 14 x(followed)S
14 x(by)S 50 y 300 X(explanatory)S 14 x(text)S 15 x(in)S 14 x
(numbered)S 14 x(sections.)S 20 x(The)S 14 x(explanatory)S 14 x
(text)S 14 x(is)S 14 x(an)S 14 x(integral)S 14 x(part)S 14 x(of)S
15 x(the)S 14 x(standard,)S 15 x(with)S 14 x(the)S 15 x(exception)S
50 y 300 X(of)S 22 x(the)S 22 x(following)S 22 x(items:)S 73 y 383 X
(\(1\))S 35 x(in)S 23 x(Section)S 23 x(13,)S 24 x(examples)S 23 x
(of)S 23 x(common)S 23 x(usage)S 23 x(of)S 23 x(the)S 23 x
(elementary)S 23 x(functions)S 23 x(\(under)S 23 x(the)S 24 x
(heading)S
XP /F7 /CM-Times-Italic 41.511 12 DNF RP
2144 1199 XY F7(Usage)S 50 y 466 X F6(associated)S 20 x(with)S 20 x
(each)S 21 x(function\);)S 62 y 383 X(\(2\))S 35 x(also)S 15 x(in)S
15 x(Section)S 15 x(13,)S 14 x(notes)S 15 x(\(under)S 15 x(the)S
14 x(heading)S 14 x F7(Notes)S 15 x F6(associated)S 15 x(with)S 14 x
(some)S 15 x(of)S 15 x(the)S 14 x(functions\);)S 15 x(and)S 62 y
383 X(\(3\))S 35 x(notes)S 17 x(\(labeled)S 17 x(as)S 16 x(such\))S
17 x(presented)S 17 x(at)S 17 x(the)S 17 x(end)S 17 x(of)S 17 x(any)S
17 x(numbered)S 16 x(section.)S 1452 Y 383 X(The)S 12 x(word)S 12 x
(\252may,\272)S 12 x(as)S 13 x(used)S 12 x(in)S 12 x(this)S 12 x
(document,)S 13 x(consistently)S 12 x(means)S 12 x(\252is)S 13 x
(allowed)S 12 x(to\272)S 12 x(\(or)S 12 x(\252are)S 12 x(allowed)S
12 x(to\272\).)S 18 x(It)S 12 x(is)S 12 x(used)S 50 y 300 X(only)S
14 x(to)S 14 x(express)S 14 x(permission,)S 15 x(as)S 15 x(in)S 15 x
(the)S 15 x(commonly)S 15 x(occurring)S 15 x(phrase)S 15 x(\252an)S
15 x(implementation)S 15 x(may\272;)S 15 x(other)S 15 x(words)S 15 x
(\(such)S 14 x(as)S 50 y 300 X(\252can,\272)S 15 x(\252could,\272)S
15 x(or)S 15 x(\252might\272\))S 15 x(are)S 15 x(used)S 16 x(to)S
15 x(express)S 15 x(ability,)S 15 x(possibility,)S 16 x(capacity,)S
15 x(or)S 15 x(consequentiality.)S 1631 Y 383 X(This)S 13 x
(proposal)S 14 x(was)S 14 x(prepared)S 13 x(under)S 13 x(the)S 14 x
(leadership)S 14 x(of)S 14 x(G.)S 14 x(Myers)S 13 x(with)S 13 x
(contributions)S 13 x(by)S 13 x(the)S 13 x(following)S 13 x
(individuals,)S 50 y 300 X(listed)S 18 x(in)S 18 x(alphabetical)S
18 x(order:)S 20 x(A.)S 14 x(Adamson,)S 19 x(J.)S 14 x(G.)S 14 x(P.)S
14 x(Barnes,)S 19 x(W.)S 14 x(J.)S 14 x(Cody,)S 19 x(P.)S 13 x(M.)S
13 x(Cohen,)S 19 x(S.)S 14 x(G.)S 14 x(Cohen,)S 19 x(K.)S 14 x(W.)S
14 x(Dritz,)S 49 y 300 X(B.)S 14 x(Ford,)S 31 x(J.)S 14 x(B.)S 14 x
(Goodenough,)S 30 x(G.)S 14 x(S.)S 14 x(Hodgson,)S 31 x(J.)S 14 x
(Kok,)S 31 x(R.)S 14 x(F.)S 14 x(Mathis,)S 31 x(T.)S 14 x(G.)S 13 x
(Mattson,)S 31 x(B.)S 14 x(T.)S 14 x(Smith,)S 31 x(J.)S 14 x(S.)S
14 x(Squire,)S 50 y 300 X(P.)S 14 x(T.)S 14 x(P.)S 14 x(T)S -3 x
(ang,)S 22 x(W.)S 14 x(A.)S 14 x(Whitaker,)S 22 x(D.)S 14 x(T.)S
13 x(W)S -2 x(inter,)S 23 x(and)S 21 x(M.)S 14 x(W)S -3 x(oodger.)S
22 x(Many)S 21 x(others)S 21 x(contributed)S 21 x(through)S 21 x
(international)S 50 y 300 X(meetings)S 14 x(and)S 15 x(electronic)S
14 x(mail)S 14 x(reviews.)S 20 x(Or)S -1 x(ganizations)S 14 x
(lending)S 15 x(support)S 15 x(to)S 14 x(this)S 15 x(ef)S -1 x(fort)S
15 x(were)S 14 x(the)S 14 x(Naval)S 14 x(Ocean)S 15 x(Systems)S 50 y
300 X(Center,)S 15 x(Ar)S -1 x(gonne)S 15 x(National)S 15 x
(Laboratory,)S 15 x(W)S -3 x(estinghouse)S 15 x(Electric)S 14 x
(Corporation,)S 15 x(Numerical)S 14 x(Algorithms)S 14 x(Group,)S
15 x(Centrum)S 50 y 300 X(voor)S 9 x(W)S -2 x(iskunde)S 9 x(en)S
9 x(Informatica,)S 10 x(Software)S 9 x(Productivity)S 10 x
(Consortium,)S 10 x(Contel,)S 10 x(Martin)S 9 x(Marietta,)S 10 x
(the)S 9 x(Software)S 9 x(Engineering)S 49 y 300 X(Institute)S 16 x
(of)S 16 x(Carnegie)S 16 x(Mellon)S 15 x(University,)S 16 x
(Quantitative)S 15 x(T)S -3 x(echnology)S 15 x(Corporation,)S 16 x
(IBM,)S 15 x(and)S 15 x(Alsys.)S 2221 Y 300 X F47(Bibliography)S
2338 Y 300 X F6([1])S 35 x(M.)S 21 x(Abramowitz)S 21 x(and)S 21 x
(I.)S 21 x(Stegun.)S 21 x F7(Handbook)S 18 x(of)S 18 x(Mathematical)S
19 x(Functions)S F6(.)S 21 x(U.)S 21 x(S.)S 21 x(Government)S 20 x
(Printing)S 21 x(Of)S -1 x(\014ce,)S 50 y 383 X(W)S -3 x(ashington,)S
21 x(D.)S 22 x(C.,)S 22 x(1964.)S 58 y 300 X([2])S 35 x(W.)S 15 x
(J.)S 15 x(Cody)S 15 x(and)S 15 x(W.)S 15 x(W)S -3 x(aite.)S 15 x
F7(Softwar)S -2 x(e)S 15 x(Manual)S 13 x(for)S 13 x(the)S 13 x
(Elementary)S 14 x(Functions)S F6(.)S 15 x(Prentice-Hall,)S 15 x
(1980.)S 58 y 300 X([3])S 35 x(K.)S 11 x(W.)S 10 x(Dritz.)S 11 x
(Rationale)S 10 x(for)S 11 x(the)S 11 x(Proposed)S 11 x(Standard)S
10 x(for)S 10 x(a)S 11 x(Generic)S 11 x(Package)S 11 x(of)S 11 x
(Elementary)S 11 x(Functions)S 10 x(for)S 10 x(Ada.)S 11 x(ANL)S
50 y 383 X(Report)S 15 x(ANL-89/2)S 15 x(Rev.)S 15 x(1,)S 14 x(Ar)S
-1 x(gonne)S 16 x(National)S 15 x(Laboratory,)S 15 x(Ar)S -1 x
(gonne,)S 15 x(Illinois,)S 15 x(October)S 15 x(1989.)S 14 x(A)S 15 x
(later)S 15 x(\(December)S 50 y 383 X(1990\))S 20 x(revision)S 20 x
(is)S 19 x(available)S 20 x(from)S 20 x(the)S 20 x(author.)S 58 y
300 X([4])S 35 x(B.)S 14 x(Ford,)S 14 x(J.)S 15 x(Kok,)S 14 x(and)S
14 x(M.)S 14 x(W.)S 14 x(Rogers,)S 14 x(editors.)S 14 x F7(Scienti)S
(\014c)S 12 x(Ada)S F6(.)S 14 x(Cambridge)S 14 x(University)S 14 x
(Press,)S 14 x(Cambridge,)S 15 x(1986.)S 58 y 300 X([5])S 35 x(F.)S
17 x(B.)S 17 x(Hildebrand.)S 17 x F7(Intr)S -2 x(oduction)S 15 x(to)S
15 x(Numerical)S 15 x(Analysis)S F6(.)S 17 x(McGraw-Hill,)S 17 x
(1956.)S 58 y 300 X([6])S 35 x(IEEE.)S 11 x(IEEE)S 11 x(Standard)S
11 x(for)S 10 x(Binary)S 11 x(Floating-Point)S 11 x(Arithmetic.)S
11 x(ANSI/IEEE)S 11 x(Std.)S 11 x(754-1985,)S 11 x(IEEE,)S 11 x(New)S
11 x(Y)S -4 x(ork,)S 11 x(1985.)S 58 y 300 X([7])S 35 x(IEEE.)S 20 x
(IEEE)S 20 x(Standard)S 19 x(for)S 20 x(Radix-Independent)S 20 x
(Floating-Point)S 19 x(Arithmetic.)S 20 x(ANSI/IEEE)S 20 x(Std.)S
20 x(854-1987,)S 20 x(IEEE,)S 50 y 383 X(New)S 23 x(Y)S -4 x(ork,)S
21 x(1987.)S 58 y 300 X([8])S 35 x(J.)S 23 x(Kok.)S 23 x(Proposal)S
23 x(for)S 23 x(Standard)S 23 x(Mathematical)S 23 x(Packages)S 23 x
(in)S 24 x(Ada.)S 24 x(CWI)S 23 x(Report)S 24 x(NM-R8718,)S 23 x
(Centrum)S 24 x(voor)S 50 y 383 X(W)S -2 x(iskunde)S 19 x(en)S 19 x
(Informatica,)S 19 x(Amsterdam,)S 18 x(November)S 18 x(1987.)S 3128 Y
1265 X(1)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 300 0 XY
%%EndPageSetup
300 342 XY F6([9])S 35 x(R.)S 15 x(F.)S 15 x(Mathis.)S 14 x
(Elementary)S 14 x(Functions)S 15 x(Packages)S 15 x(for)S 15 x(Ada.)S
15 x(In)S 14 x F7(Pr)S -2 x(oc.)S 13 x(1987)S 13 x(ACM)S 13 x
(SIGAda)S 13 x(International)S 13 x(Confer)S -2 x(ence)S 49 y 383 X
(on)S 13 x(the)S 14 x(Ada)S 14 x(Pr)S -2 x(ogramming)S 14 x
(Language)S 13 x F6(\(special)S 15 x(issue)S 15 x(of)S 13 x F7(Ada)S
13 x(Letters)S F6(\),)S 15 x(pages)S 15 x(95{100,)S 15 x(December)S
15 x(1987.)S 58 y 300 X([10])S 14 x(U.)S 10 x(S.)S 10 x(Department)S
10 x(of)S 10 x(Defense,)S 9 x(Ada)S 10 x(Joint)S 10 x(Program)S 10 x
(Of)S -1 x(\014ce.)S 10 x F7(Refer)S -2 x(ence)S 10 x(Manual)S 9 x
(for)S 9 x(the)S 9 x(Ada)S 8 x(Pr)S -2 x(ogramming)S 9 x(Language,)S
50 y 383 X F6(ANSI/MIL-STD-1815A.)S 17 x(U.)S 17 x(S.)S 17 x
(Government)S 17 x(Printing)S 16 x(Of)S -1 x(\014ce,)S 16 x(W)S -3 x
(ashington,)S 16 x(D.)S 17 x(C.,)S 17 x(1983.)S 17 x(Also)S 17 x
(adopted)S 17 x(by)S 17 x(ISO)S 50 y 383 X(as)S 19 x(ISO/8652-1987,)S
19 x(Programming)S 19 x(Languages|Ada.)S 3128 Y -8 x(2)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 300 0 XY
%%EndPageSetup
XP /F48 112 22 0 -9 20 18 27 24 0
<7E3E00 FEFF80 7FFFC0 0F83E0 0F01E0 0E00F0 0E00F0 0E0070 0E0070
0E0070 0E0070 0E00F0 0F00E0 0F01E0 0F83C0 0FFFC0 0EFF00 0E3C00
0E0000 0E0000 0E0000 0E0000 0E0000 0E0000 7FC000 FFE000 7FC000>
PXLC RP
300 354 XY F48(p)S
XP /F48 97 22 2 0 21 18 18 24 0
<1FE000 7FF800 7FFC00 783C00 301E00 000E00 000E00 03FE00 1FFE00
7E0E00 F00E00 E00E00 E00E00 F01E00 F83E00 7FFFE0 3FE7E0 0F83E0>
PXLC RP
322 354 XY F48(a)S
XP /F48 99 22 3 0 19 18 18 16 0
<03F8 0FFE 1FFE 3C1E 780C 7000 F000 E000 E000 E000 E000 F000 7007
7807 3E0F 1FFE 0FFC 03F0>
PXLC RP
344 354 XY F48(c)S
XP /F48 107 22 0 0 20 25 25 24 0
<7E0000 FE0000 7E0000 0E0000 0E0000 0E0000 0E0000 0E7FE0 0E7FE0
0E7FE0 0E0F00 0E1E00 0E3C00 0E7800 0EF000 0FF000 0FF800 0FBC00
0F1E00 0E0E00 0E0700 0E0780 7F87F0 FFCFF0 7F87F0>
PXLC RP
365 354 XY F48(ka)S
XP /F48 103 22 1 -10 20 18 28 24 0
<03E3C0 0FFFE0 1FFFE0 1E3CC0 3C1E00 380E00 380E00 380E00 3C1E00
1E3C00 1FFC00 1FF800 3BE000 380000 380000 1FFC00 1FFF00 3FFFC0
7803C0 F001E0 E000E0 E000E0 E000E0 F001E0 7C07C0 3FFF80 0FFE00
03F800>
PXLC RP
409 354 XY F48(g)S
XP /F48 101 22 3 0 19 18 18 16 0
<03E0 0FF8 1FFC 3C1E 780E 7007 E007 FFFF FFFF FFFF E000 E000 7007
7807 3C0F 1FFE 0FFC 03F0>
PXLC RP
431 354 XY F48(e)S 21 x(ELEMENTARY_FUNCTIONS_EXCEPTIONS)S
XP /F48 105 22 3 0 19 26 26 16 0
<0180 03C0 03C0 0180 0000 0000 0000 0000 7FC0 7FC0 7FC0 01C0 01C0
01C0 01C0 01C0 01C0 01C0 01C0 01C0 01C0 01C0 01C0 7FFF FFFF 7FFF>
PXLC RP
1172 354 XY F48(i)S
XP /F48 115 22 3 0 18 18 18 16 0
<0FEC 3FFC 7FFC F03C E01C E01C F000 7F80 1FF0 07FC 003E E00E E00E
F00E F81E FFFC FFF8 C7E0>
PXLC RP
1194 354 XY F48(s)S 50 y 365 X(ARGUMENT_ERROR)S
XP /F48 58 22 8 0 13 18 18 8 0
<70 F8 F8 F8 70 00 00 00 00 00 00 00 00 70 F8 F8 F8 70>
PXLC RP
692 404 XY F48(:)S 22 x(e)S
XP /F48 120 22 1 0 20 18 18 24 0
<7F1FC0 7F3FC0 7F1FC0 0F1C00 073C00 03B800 03F000 01F000 00E000
01E000 01F000 03B800 073C00 071C00 0E0E00 7F1FC0 FF3FE0 7F1FC0>
PXLC RP
758 404 XY F48(xcep)S
XP /F48 116 22 1 0 18 23 23 24 0
<030000 070000 070000 070000 070000 7FFF00 FFFF00 FFFF00 070000
070000 070000 070000 070000 070000 070000 070100 070380 070380
070780 078780 03FF00 03FE00 00F800>
PXLC RP
845 404 XY F48(ti)S
XP /F48 111 22 2 0 19 18 18 24 0
<03E000 0FF800 1FFC00 3C1E00 780F00 700700 E00380 E00380 E00380
E00380 E00380 F00780 700700 780F00 3C1E00 1FFC00 0FF800 03E000>
PXLC RP
888 404 XY F48(o)S
XP /F48 110 22 0 0 21 18 18 24 0
<7E3C00 FEFF00 7FFF80 0F8780 0F0380 0F0380 0E0380 0E0380 0E0380
0E0380 0E0380 0E0380 0E0380 0E0380 0E0380 7FC7F0 FFE7F8 7FC7F0>
PXLC RP
910 404 XY F48(n)S
XP /F48 59 22 7 -6 13 18 24 8 0
<38 7C 7C 7C 38 00 00 00 00 00 00 00 00 38 7C 7C 7C 3C 1C 3C 38 F8 F0
60>
PXLC RP
932 404 XY F48(;)S 50 y 300 X(en)S
XP /F48 100 22 1 0 21 25 25 24 0
<003F00 007F00 003F00 000700 000700 000700 000700 03C700 0FF700
3FFF00 3C1F00 780F00 F00700 F00700 E00700 E00700 E00700 E00700
F00700 F00F00 781F00 7C3F00 3FFFE0 1FF7F0 07C7E0>
PXLC RP
344 454 XY F48(d)S 21 x(ELEMENTARY_FUNCTIONS_EXCEPTIONS;)S
XP /F48 119 22 1 0 20 18 18 24 0
<FF1FE0 FFBFE0 FF1FE0 380380 380380 380380 380380 38E380 19F300
19F300 19B300 1DB700 1DB700 1DB700 1DB700 0F1E00 0F1E00 0F1E00>
PXLC RP
300 554 XY F48(wit)S
XP /F48 104 22 0 0 21 25 25 24 0
<7E0000 FE0000 7E0000 0E0000 0E0000 0E0000 0E0000 0E3C00 0EFF00
0FFF80 0F8780 0F0380 0F0380 0E0380 0E0380 0E0380 0E0380 0E0380
0E0380 0E0380 0E0380 0E0380 7FC7F0 FFE7F8 7FC7F0>
PXLC RP
365 554 XY F48(h)S 22 x(ELEMENTARY_FUNCTIONS_EXCEPTIONS;)S 49 y
300 X(gene)S
XP /F48 114 22 1 0 20 18 18 24 0
<FF0FC0 FF3FE0 FF7FE0 07F040 07E000 07C000 078000 078000 070000
070000 070000 070000 070000 070000 070000 FFFC00 FFFC00 FFFC00>
PXLC RP
387 603 XY F48(ric)S 50 y 365 X(t)S
XP /F48 121 22 1 -9 20 18 27 24 0
<7F1FC0 FF9FE0 7F1FC0 1C0700 0E0700 0E0E00 0E0E00 070E00 071C00
071C00 039C00 039C00 039800 01B800 01B800 00F000 00F000 00F000
00E000 00E000 00E000 01C000 79C000 7BC000 7F8000 3F0000 3C0000>
PXLC RP
387 653 XY F48(ype)S 21 x(FLOAT_TYPE)S 20 x(is)S 21 x(digits)S
XP /F48 60 22 2 2 19 23 21 24 0
<000180 000780 001F80 003E00 00F800 01F000 07C000 0F8000 3E0000
FC0000 F00000 FC0000 3E0000 0F8000 07C000 01F000 00F800 003E00
001F80 000780 000180>
PXLC RP
932 653 XY F48(<)S
XP /F48 62 22 2 2 19 23 21 24 0
<C00000 F00000 FC0000 3E0000 0F8000 07C000 01F000 00F800 003E00
001F80 000780 001F80 003E00 00F800 01F000 07C000 0F8000 3E0000
FC0000 F00000 C00000>
PXLC RP
954 653 XY F48(>;)S 50 y 300 X(package)S 20 x
(GENERIC_ELEMENTARY_FUNCTIONS)S 16 x(is)S
XP /F48 102 22 1 0 18 25 25 24 0
<001F00 007F80 00FF80 01E780 01C300 01C000 01C000 7FFF00 FFFF00
FFFF00 01C000 01C000 01C000 01C000 01C000 01C000 01C000 01C000
01C000 01C000 01C000 01C000 3FFE00 7FFF00 3FFE00>
PXLC RP
365 803 XY F48(f)S
XP /F48 117 22 0 0 21 18 18 24 0
<7E1F80 FE3F80 7E1F80 0E0380 0E0380 0E0380 0E0380 0E0380 0E0380
0E0380 0E0380 0E0380 0E0380 0E0780 0F0F80 0FFFF0 07FFF8 03E3F0>
PXLC RP
387 803 XY F48(unction)S 21 x(S)S
XP /F48 81 22 2 -6 19 25 31 24 0
<1FFC00 3FFE00 7FFF00 780F00 F00780 E00380 E00380 E00380 E00380
E00380 E00380 E00380 E00380 E00380 E00380 E00380 E00380 E00380
E0E380 E1E380 F0F780 787F00 7FFF00 3FFE00 1FFC00 001C00 001E00
000E00 000F00 000700 000700>
PXLC RP
583 803 XY F48(QRT)S
XP /F48 40 22 6 -4 17 29 33 16 0
<00E0 01E0 07C0 0700 0F00 1E00 3C00 3800 7800 7000 7000 7000 F000
E000 E000 E000 E000 E000 E000 E000 F000 7000 7000 7000 7800 3800
3C00 1E00 0F00 0700 07C0 01E0 00E0>
PXLC RP
736 803 XY F48(\(X)S 954 X(:)S 21 x(FLOAT_TYPE)S
XP /F48 41 22 4 -4 15 29 33 16 0
<E000 F000 7C00 1C00 1E00 0F00 0780 0380 03C0 01C0 01C0 01C0 01E0
00E0 00E0 00E0 00E0 00E0 00E0 00E0 01E0 01C0 01C0 01C0 03C0 0380
0780 0F00 1E00 1C00 7C00 F000 E000>
PXLC RP
1215 803 XY F48(\))S 1411 X(return)S 21 x(FLOAT_TYPE;)S 50 y 365 X
(function)S 21 x(LOG)S 736 X(\(X)S 954 X(:)S 21 x(FLOAT_TYPE\))S
1411 X(return)S 21 x(FLOAT_TYPE;)S 49 y 365 X(function)S 21 x(LOG)S
736 X(\(X)S
XP /F48 44 22 7 -6 14 5 11 8 0
<38 7C 7E 7E 3E 0E 1E 3C 7C F8 60>
PXLC RP
779 902 XY F48(,)S
XP /F48 66 22 1 0 19 25 25 24 0
<7FF800 FFFE00 7FFF00 1C0F00 1C0780 1C0380 1C0380 1C0380 1C0780
1C0700 1FFF00 1FFE00 1FFE00 1C1F00 1C0380 1C03C0 1C01C0 1C01C0
1C01C0 1C01C0 1C03C0 1C0780 7FFF80 FFFF00 7FFC00>
PXLC RP
823 902 XY F48(BASE)S 43 x(:)S 21 x(FLOAT_TYPE\))S 1411 X(return)S
21 x(FLOAT_TYPE;)S 50 y 365 X(function)S 21 x(EXP)S 736 X(\(X)S
954 X(:)S 21 x(FLOAT_TYPE\))S 1411 X(return)S 21 x(FLOAT_TYPE;)S
50 y 365 X(function)S
XP /F48 34 22 4 14 17 25 11 16 0
<E038 F078 F078 F078 F078 F078 F078 F078 E038 E038 6030>
PXLC RP
562 1002 XY F48(")S
XP /F48 42 22 2 4 19 22 18 24 0
<01C000 01C000 01C000 01C000 71C700 F9CF80 7FFF00 1FFC00 07F000
07F000 1FFC00 7FFF00 F9CF80 71C700 01C000 01C000 01C000 01C000>
PXLC RP
583 1002 XY F48(**")S 736 X(\(X,)S 21 x(Y)S 954 X(:)S 21 x
(FLOAT_TYPE\))S 1411 X(return)S 21 x(FLOAT_TYPE;)S 1102 Y 365 X
(function)S 21 x(SIN)S 736 X(\(X)S 954 X(:)S 21 x(FLOAT_TYPE\))S
1411 X(return)S 21 x(FLOAT_TYPE;)S 49 y 365 X(function)S 21 x(SIN)S
736 X(\(X,)S 21 x(CYCLE)S 21 x(:)S 21 x(FLOAT_TYPE\))S 1411 X
(return)S 21 x(FLOAT_TYPE;)S 50 y 365 X(function)S 21 x(COS)S 736 X
(\(X)S 954 X(:)S 21 x(FLOAT_TYPE\))S 1411 X(return)S 21 x
(FLOAT_TYPE;)S 50 y 365 X(function)S 21 x(COS)S 736 X(\(X,)S 21 x
(CYCLE)S 21 x(:)S 21 x(FLOAT_TYPE\))S 1411 X(return)S 21 x
(FLOAT_TYPE;)S 50 y 365 X(function)S 21 x(TAN)S 736 X(\(X)S 954 X(:)S
21 x(FLOAT_TYPE\))S 1411 X(return)S 21 x(FLOAT_TYPE;)S 50 y 365 X
(function)S 21 x(TAN)S 736 X(\(X,)S 21 x(CYCLE)S 21 x(:)S 21 x
(FLOAT_TYPE\))S 1411 X(return)S 21 x(FLOAT_TYPE;)S 50 y 365 X
(function)S 21 x(COT)S 736 X(\(X)S 954 X(:)S 21 x(FLOAT_TYPE\))S
1411 X(return)S 21 x(FLOAT_TYPE;)S 49 y 365 X(function)S 21 x(COT)S
736 X(\(X,)S 21 x(CYCLE)S 21 x(:)S 21 x(FLOAT_TYPE\))S 1411 X
(return)S 21 x(FLOAT_TYPE;)S 1550 Y 365 X(function)S 21 x(ARCSIN)S
42 x(\(X)S 954 X(:)S 21 x(FLOAT_TYPE\))S 1411 X(return)S 21 x
(FLOAT_TYPE;)S 50 y 365 X(function)S 21 x(ARCSIN)S 42 x(\(X,)S 21 x
(CYCLE)S 21 x(:)S 21 x(FLOAT_TYPE\))S 1411 X(return)S 21 x
(FLOAT_TYPE;)S 50 y 365 X(function)S 21 x(ARCCOS)S 42 x(\(X)S 954 X
(:)S 21 x(FLOAT_TYPE\))S 1411 X(return)S 21 x(FLOAT_TYPE;)S 49 y
365 X(function)S 21 x(ARCCOS)S 42 x(\(X,)S 21 x(CYCLE)S 21 x(:)S
21 x(FLOAT_TYPE\))S 1411 X(return)S 21 x(FLOAT_TYPE;)S 50 y 365 X
(function)S 21 x(ARCTAN)S 42 x(\(Y)S 954 X(:)S 21 x(FLOAT_TYPE;)S
50 y 758 X(X)S 954 X(:)S 21 x(FLOAT_TYPE)S 20 x(:)S
XP /F48 61 22 2 7 19 18 11 24 0
<7FFF00 FFFF80 FFFF80 000000 000000 000000 000000 000000 FFFF80
FFFF80 7FFF00>
PXLC RP
1259 1799 XY F48(=)S
XP /F48 49 22 4 0 18 25 25 16 0
<0180 0380 0380 0780 0F80 7F80 FF80 7380 0380 0380 0380 0380 0380
0380 0380 0380 0380 0380 0380 0380 0380 0380 7FF8 7FFC 7FF8>
PXLC RP
1302 1799 XY F48(1)S
XP /F48 46 22 8 0 13 5 5 8 0
<70 F8 F8 F8 70>
PXLC RP
1324 1799 XY F48(.)S
XP /F48 48 22 2 0 19 25 25 24 0
<03E000 0FF800 1FFC00 1E3C00 380E00 780F00 700700 700700 E00380
E00380 E00380 E00380 E00380 E00380 E00380 E00380 F00780 700700
700700 780F00 3C1E00 1E3C00 1FFC00 0FF800 03E000>
PXLC RP
1346 1799 XY F48(0\))S 21 x(return)S 21 x(FLOAT_TYPE;)S 50 y 365 X
(function)S 21 x(ARCTAN)S 42 x(\(Y)S 954 X(:)S 21 x(FLOAT_TYPE;)S
50 y 758 X(X)S 954 X(:)S 21 x(FLOAT_TYPE)S 20 x(:=)S 21 x(1.0;)S
49 y 758 X(CYCLE)S 954 X(:)S 21 x(FLOAT_TYPE\))S 1411 X(return)S
21 x(FLOAT_TYPE;)S 50 y 365 X(function)S 21 x(ARCCOT)S 42 x(\(X)S
954 X(:)S 21 x(FLOAT_TYPE;)S 50 y 758 X(Y)S 954 X(:)S 21 x
(FLOAT_TYPE)S 20 x(:=)S 21 x(1.0\))S 21 x(return)S 21 x(FLOAT_TYPE;)S
50 y 365 X(function)S 21 x(ARCCOT)S 42 x(\(X)S 954 X(:)S 21 x
(FLOAT_TYPE;)S 50 y 758 X(Y)S 954 X(:)S 21 x(FLOAT_TYPE)S 20 x(:=)S
21 x(1.0;)S 50 y 758 X(CYCLE)S 954 X(:)S 21 x(FLOAT_TYPE\))S 1411 X
(return)S 21 x(FLOAT_TYPE;)S 2297 Y 365 X(function)S 21 x(SIN)S
XP /F48 72 22 1 0 20 25 25 24 0
<7F1FC0 FFBFE0 7F1FC0 1C0700 1C0700 1C0700 1C0700 1C0700 1C0700
1C0700 1FFF00 1FFF00 1FFF00 1C0700 1C0700 1C0700 1C0700 1C0700
1C0700 1C0700 1C0700 1C0700 7F1FC0 FFBFE0 7F1FC0>
PXLC RP
627 2297 XY F48(H)S 736 X(\(X)S 954 X(:)S 21 x(FLOAT_TYPE\))S 1411 X
(return)S 21 x(FLOAT_TYPE;)S 50 y 365 X(function)S 21 x(COSH)S 736 X
(\(X)S 954 X(:)S 21 x(FLOAT_TYPE\))S 1411 X(return)S 21 x
(FLOAT_TYPE;)S 50 y 365 X(function)S 21 x(TANH)S 736 X(\(X)S 954 X
(:)S 21 x(FLOAT_TYPE\))S 1411 X(return)S 21 x(FLOAT_TYPE;)S 50 y
365 X(function)S 21 x(COTH)S 736 X(\(X)S 954 X(:)S 21 x
(FLOAT_TYPE\))S 1411 X(return)S 21 x(FLOAT_TYPE;)S 2546 Y 365 X
(function)S 21 x(ARCSINH)S 20 x(\(X)S 954 X(:)S 21 x(FLOAT_TYPE\))S
1411 X(return)S 21 x(FLOAT_TYPE;)S 50 y 365 X(function)S 21 x
(ARCCOSH)S 20 x(\(X)S 954 X(:)S 21 x(FLOAT_TYPE\))S 1411 X(return)S
21 x(FLOAT_TYPE;)S 50 y 365 X(function)S 21 x(ARCTANH)S 20 x(\(X)S
954 X(:)S 21 x(FLOAT_TYPE\))S 1411 X(return)S 21 x(FLOAT_TYPE;)S
50 y 365 X(function)S 21 x(ARCCOTH)S 20 x(\(X)S 954 X(:)S 21 x
(FLOAT_TYPE\))S 1411 X(return)S 21 x(FLOAT_TYPE;)S 2795 Y 365 X
(ARGUMENT_ERROR)S 19 x(:)S 22 x(exception)S 20 x(rena)S
XP /F48 109 22 0 0 21 18 18 24 0
<F9C380 FFEFC0 FFFFE0 3E7CE0 3C78E0 3870E0 3870E0 3870E0 3870E0
3870E0 3870E0 3870E0 3870E0 3870E0 3870E0 FE7CF8 FE7CF8 FE3C78>
PXLC RP
1041 2795 XY F48(mes)S 21 x
(ELEMENTARY_FUNCTIONS_EXCEPTIONS.ARGUMENT_ERROR;)S 2895 Y 300 X(end)S
21 x(GENERIC_ELEMENTARY_FUNCTIONS;)S 3128 Y 1265 X F6(3)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 517 714
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 300 0 XY
%%EndPageSetup
XP /F50 /CM-Helvetica-Bold 58.115 11 DNF RP
300 342 XY F50(1.)S 34 x(Purpose)S 448 Y 383 X F6(This)S 24 x
(standard)S 24 x(provides)S 24 x(certain)S 24 x(elementary)S 24 x
(mathematical)S 23 x(functions.)S 39 x(They)S 24 x(were)S 24 x
(chosen)S 23 x(because)S 24 x(of)S 24 x(their)S 50 y 300 X
(widespread)S 16 x(utility)S 15 x(in)S 16 x(various)S 16 x
(application)S 16 x(areas;)S 16 x(moreover,)S 15 x(they)S 15 x(are)S
16 x(needed)S 16 x(to)S 15 x(support)S 15 x(general)S 15 x
(\015oating-point)S 15 x(usage)S 50 y 300 X(and)S 17 x(to)S 17 x
(support)S 17 x(generic)S 17 x(packages)S 17 x(for)S 16 x(complex)S
17 x(arithmetic)S 16 x(and)S 17 x(complex)S 17 x(functions.)S 736 Y
300 X F50(2.)S 34 x(Functions)S 30 x(provided)S 842 Y 383 X F6(The)S
18 x(following)S 19 x(twenty)S 18 x(mathematical)S 19 x(functions)S
18 x(are)S 18 x(provided:)S 942 Y 496 X F48(SQRT)S 692 X(LOG)S 888 X
(EXP)S 1085 X("**")S 50 y 496 X(SIN)S 692 X(COS)S 888 X(TAN)S 1085 X
(COT)S 50 y 496 X(ARCSIN)S 64 x(ARCCOS)S 64 x(ARCTAN)S 65 x(ARCCOT)S
50 y 496 X(SINH)S 692 X(COSH)S 888 X(TANH)S 1085 X(COTH)S 49 y 496 X
(ARCSINH)S 42 x(ARCCOSH)S 42 x(ARCTANH)S 43 x(ARCCOTH)S 1241 Y 300 X
F6(These)S 13 x(are)S 13 x(the)S 12 x(square)S 13 x(root)S 12 x(\()S
F48(SQRT)S F6(\),)S 12 x(logarithm)S 13 x(\()S F48(LOG)S F6(\),)S
12 x(and)S 12 x(exponential)S 12 x(\()S F48(EXP)S F6(\))S 13 x
(functions)S 13 x(and)S 12 x(the)S 12 x(exponentiation)S 13 x
(operator)S 50 y 300 X(\()S F48(**)S F6(\);)S 11 x(the)S 12 x
(trigonometric)S 12 x(functions)S 12 x(for)S 12 x(sine)S 12 x(\()S
F48(SIN)S F6(\),)S 12 x(cosine)S 12 x(\()S F48(COS)S F6(\),)S 11 x
(tangent)S 12 x(\()S F48(TAN)S F6(\),)S 11 x(and)S 13 x(cotangent)S
12 x(\()S F48(COT)S F6(\))S 11 x(and)S 13 x(their)S 12 x(inverses)S
50 y 300 X(\()S F48(ARCSIN)S F6(,)S 18 x F48(ARCCOS)S F6(,)S 16 x
F48(ARCTAN)S F6(,)S 18 x(and)S 18 x F48(ARCCOT)S F6(\);)S 17 x(and)S
19 x(the)S 19 x(hyperbolic)S 18 x(functions)S 18 x(for)S 18 x(sine)S
19 x(\()S F48(SINH)S F6(\),)S 18 x(cosine)S 19 x(\()S F48(COSH)S F6
(\),)S 18 x(tangent)S 49 y 300 X(\()S F48(TANH)S F6(\),)S 14 x(and)S
14 x(cotangent)S 14 x(\()S F48(COTH)S F6(\))S 14 x(together)S 15 x
(with)S 15 x(their)S 15 x(inverses)S 14 x(\()S F48(ARCSINH)S F6(,)S
14 x F48(ARCCOSH)S F6(,)S 12 x F48(ARCTANH)S F6(,)S 14 x(and)S 15 x
F48(ARCCOTH)S F6(\).)S 1578 Y 300 X F50(3.)S 34 x(Instantiations)S
1685 Y 383 X F6(This)S 11 x(standard)S 11 x(describes)S 11 x(a)S
11 x(generic)S 11 x(package,)S 11 x F48
(GENERIC_ELEMENTARY_FUNCTIONS)S F6(,)S 6 x(which)S 11 x(the)S 11 x
(user)S 11 x(must)S 10 x(instantiate)S 50 y 300 X(to)S 15 x(obtain)S
14 x(a)S 14 x(package.)S 20 x(It)S 14 x(has)S 14 x(one)S 15 x
(generic)S 14 x(formal)S 14 x(parameter,)S 14 x(which)S 14 x(is)S
15 x(a)S 15 x(generic)S 14 x(formal)S 14 x(type)S 14 x(named)S 15 x
F48(FLOAT_TYPE)S F6(.)S 12 x(At)S 50 y 300 X(instantiation,)S 16 x
(the)S 16 x(user)S 16 x(must)S 15 x(specify)S 16 x(a)S 16 x
(\015oating-point)S 16 x(subtype)S 16 x(as)S 16 x(the)S 16 x
(generic)S 15 x(actual)S 15 x(parameter)S 16 x(to)S 16 x(be)S 16 x
(associated)S 16 x(with)S 49 y 300 X F48(FLOAT_TYPE)S F6(;)S 16 x
(it)S 17 x(is)S 17 x(referred)S 17 x(to)S 17 x(below)S 18 x(as)S
17 x(the)S 17 x(\252generic)S 17 x(actual)S 17 x(type.\272)S 17 x
(This)S 17 x(type)S 18 x(is)S 17 x(used)S 17 x(as)S 18 x(the)S 17 x
(parameter)S 18 x(and)S 17 x(result)S 50 y 300 X(type)S 20 x(of)S
19 x(the)S 19 x(functions)S 19 x(contained)S 19 x(in)S 19 x(the)S
19 x(generic)S 19 x(package.)S 1966 Y 383 X(Depending)S 20 x(on)S
20 x(the)S 20 x(implementation,)S 20 x(the)S 20 x(user)S 20 x(may)S
20 x(or)S 19 x(may)S 20 x(not)S 19 x(be)S 19 x(allowed)S 20 x(to)S
20 x(specify)S 19 x(a)S 20 x(generic)S 20 x(actual)S 20 x(type)S
50 y 300 X(having)S 15 x(a)S 14 x(range)S 14 x(constraint)S 14 x
(\(cf.)S 14 x(Section)S 15 x(4\).)S 19 x(If)S 15 x(allowed,)S 15 x
(such)S 15 x(a)S 15 x(range)S 14 x(constraint)S 14 x(will)S 15 x
(have)S 14 x(the)S 15 x(usual)S 15 x(ef)S -1 x(fect)S 14 x(of)S 14 x
(causing)S 50 y 300 X F48(CONSTRAINT_ERROR)S 15 x F6(to)S 19 x(be)S
19 x(raised)S 18 x(when)S 19 x(an)S 19 x(ar)S -1 x(gument)S 20 x
(outside)S 19 x(the)S 19 x(user's)S 19 x(range)S 19 x(is)S 19 x
(passed)S 19 x(in)S 19 x(a)S 18 x(call)S 19 x(to)S 19 x(one)S 19 x
(of)S 19 x(the)S 50 y 300 X(functions,)S 15 x(or)S 15 x(when)S 15 x
(one)S 15 x(of)S 15 x(the)S 16 x(functions)S 15 x(attempts)S 15 x
(to)S 15 x(return)S 15 x(a)S 15 x(value)S 15 x(outside)S 15 x(the)S
15 x(user's)S 15 x(range.)S 21 x(Allowing)S 15 x(the)S 15 x(generic)S
50 y 300 X(actual)S 17 x(type)S 17 x(to)S 16 x(have)S 16 x(a)S 16 x
(range)S 17 x(constraint)S 17 x(also)S 16 x(has)S 16 x(some)S 16 x
(implications)S 17 x(for)S 17 x(implementors.)S 2248 Y 383 X(In)S
11 x(addition)S 11 x(to)S 12 x(the)S 12 x(body)S 12 x(of)S 11 x(the)S
12 x(generic)S 12 x(package)S 12 x(itself,)S 12 x(implementors)S
12 x(may)S 12 x(provide)S 12 x(\(non-generic\))S 12 x(library)S 12 x
(packages)S 50 y 300 X(that)S 22 x(can)S 22 x(be)S 22 x(used)S 22 x
(just)S 22 x(like)S 22 x(instantiations)S 22 x(of)S 22 x(the)S 22 x
(generic)S 22 x(package)S 22 x(for)S 22 x(the)S 22 x(prede\014ned)S
22 x(\015oating-point)S 22 x(types.)S 34 x(The)S 50 y 300 X(name)S
18 x(of)S 18 x(a)S 18 x(package)S 18 x(serving)S 19 x(as)S 19 x(a)S
18 x(replacement)S 18 x(for)S 18 x(an)S 19 x(instantiation)S 18 x
(of)S 18 x F48(GENERIC_ELEMENTARY_FUNCTIONS)S 13 x F6(for)S 18 x
(the)S 49 y 300 X(prede\014ned)S 13 x(type)S 13 x F48(FLOAT)S 12 x
F6(should)S 12 x(be)S 12 x F48(ELEMENTARY_FUNCTIONS)S F6(;)S 9 x
(for)S 13 x F48(LONG_FLOAT)S 10 x F6(and)S 13 x F48(SHORT_FLOAT)S
F6(,)S 11 x(the)S 12 x(names)S 12 x(should)S 50 y 300 X(be)S 14 x
F48(LONG_ELEMENTARY_FUNCTIONS)S 9 x F6(and)S 14 x F48
(SHORT_ELEMENTARY_FUNCTIONS)S F6(,)S 9 x(respectively;)S 14 x(etc.)S
18 x(When)S 14 x(such)S 14 x(a)S 14 x(package)S 50 y 300 X(is)S 10 x
(used)S 10 x(in)S 10 x(an)S 10 x(application)S 10 x(in)S 10 x(lieu)S
10 x(of)S 10 x(an)S 11 x(instantiation)S 10 x(of)S 10 x F48
(GENERIC_ELEMENTARY_FUNCTIONS)S F6(,)S 4 x(it)S 11 x(must)S 11 x
(have)S 10 x(the)S 10 x(semantics)S 50 y 300 X(implied)S 18 x(by)S
18 x(this)S 18 x(standard)S 17 x(for)S 18 x(an)S 18 x(instantiation)S
18 x(of)S 18 x(the)S 18 x(generic)S 18 x(package.)S 2735 Y 300 X F50
(4.)S 34 x(Implementations)S 2841 Y 383 X F6(Portable)S 28 x
(implementations)S 28 x(of)S 28 x(the)S 28 x(body)S 28 x(of)S 28 x
F48(GENERIC_ELEMENTARY_FUNCTIONS)S 22 x F6(are)S 27 x(strongly)S
28 x(encouraged.)S 50 y 300 X(However,)S 22 x(implementations)S 22 x
(are)S 22 x(not)S 22 x(required)S 22 x(to)S 22 x(be)S 22 x
(portable.)S 35 x(In)S 21 x(particular,)S 23 x(an)S 22 x
(implementation)S 22 x(of)S 22 x(the)S 22 x(standard)S 50 y 300 X
(in)S 17 x(Ada)S 17 x(may)S 17 x(use)S 16 x(pragma)S 17 x F48
(INTERFACE)S 14 x F6(or)S 17 x(other)S 17 x(pragmas,)S 17 x
(unchecked)S 17 x(conversion,)S 17 x(machine-code)S 16 x
(insertions,)S 17 x(or)S 17 x(other)S 50 y 300 X(machine-dependent)S
20 x(techniques)S 20 x(as)S 20 x(desired.)S 3128 Y 1265 X(4)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 717
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F6(An)S 21 x(implementation)S 21 x(is)S 21 x(allowed)S
21 x(to)S 21 x(limit)S 21 x(the)S 21 x(precision)S 21 x(it)S 21 x
(supports)S 21 x(\(by)S 20 x(stating)S 21 x(an)S 21 x(assumed)S 21 x
(maximum)S 21 x(value)S 49 y 300 X(for)S 22 x F48(SYSTEM)S
XP /F48 13 22 8 14 13 26 12 8 0
<20 70 F8 70 70 70 70 70 70 70 70 70>
PXLC RP
501 391 XY F48(\015MAX_)S
XP /F48 68 22 0 0 19 25 25 24 0
<7FF800 FFFE00 7FFF00 1C0F00 1C0780 1C03C0 1C01C0 1C01C0 1C01E0
1C00E0 1C00E0 1C00E0 1C00E0 1C00E0 1C00E0 1C00E0 1C00E0 1C01C0
1C01C0 1C03C0 1C0780 1C0F80 7FFF00 FFFE00 7FF800>
PXLC RP
610 391 XY F48(DIGITS)S F6(\),)S 21 x(since)S 22 x(portable)S 22 x
(implementations)S 22 x(would)S 22 x(not,)S 24 x(in)S 22 x(general,)S
23 x(be)S 22 x(possible)S 22 x(otherwise.)S 35 x(An)S 50 y 300 X
(implementation)S 19 x(is)S 19 x(also)S 19 x(allowed)S 19 x(to)S
19 x(make)S 19 x(other)S 19 x(reasonable)S 19 x(assumptions)S 19 x
(about)S 19 x(the)S 19 x(environment)S 19 x(in)S 19 x(which)S 19 x
(it)S 19 x(is)S 19 x(to)S 50 y 300 X(be)S 21 x(used,)S 21 x(but)S
21 x(only)S 20 x(when)S 20 x(necessary)S 20 x(in)S 20 x(order)S 20 x
(to)S 21 x(match)S 21 x(algorithms)S 21 x(to)S 20 x(hardware)S 20 x
(characteristics)S 20 x(in)S 20 x(an)S 21 x(economical)S 50 y 300 X
(manner.)S 31 x(All)S 20 x(such)S 20 x(limits)S 20 x(and)S 20 x
(assumptions)S 20 x(must)S 20 x(be)S 20 x(clearly)S 20 x
(documented.)S 31 x(By)S 20 x(convention,)S 21 x(an)S 20 x
(implementation)S 20 x(of)S 50 y 300 X F48
(GENERIC_ELEMENTARY_FUNCTIONS)S 9 x F6(is)S 15 x(said)S 14 x(not)S
15 x(to)S 14 x(conform)S 14 x(to)S 14 x(this)S 15 x(standard)S 15 x
(in)S 14 x(any)S 15 x(environment)S 14 x(in)S 15 x(which)S 15 x(its)S
14 x(limits)S 49 y 300 X(or)S 14 x(assumptions)S 14 x(are)S 15 x
(not)S 15 x(satis\014ed,)S 15 x(and)S 14 x(this)S 15 x(standard)S
15 x(does)S 14 x(not)S 15 x(de\014ne)S 14 x(its)S 14 x(behavior)S
14 x(in)S 14 x(that)S 14 x(environment.)S 20 x(In)S 15 x(ef)S -1 x
(fect,)S 16 x(this)S 50 y 300 X(convention)S 20 x(delimits)S 19 x
(the)S 19 x(portability)S 19 x(of)S 19 x(implementations.)S 787 Y
383 X(An)S 19 x(implementation)S 19 x(is)S 19 x(allowed)S 19 x(to)S
20 x(impose)S 20 x(a)S 20 x(restriction)S 19 x(that)S 19 x(the)S
19 x(generic)S 19 x(actual)S 19 x(type)S 20 x(must)S 19 x(not)S 19 x
(have)S 19 x(a)S 20 x(range)S 49 y 300 X(constraint)S 13 x(that)S
14 x(reduces)S 13 x(the)S 13 x(range)S 14 x(of)S 14 x(allowable)S
13 x(values.)S 18 x(If)S 13 x(it)S 14 x(does)S 13 x(impose)S 13 x
(this)S 14 x(restriction,)S 13 x(then)S 14 x(the)S 13 x(restriction)S
14 x(must)S 14 x(be)S 50 y 300 X(documented,)S 17 x(and)S 16 x(the)S
16 x(ef)S -1 x(fects)S 17 x(of)S 16 x(violating)S 16 x(the)S 16 x
(restriction)S 16 x(must)S 16 x(be)S 16 x(one)S 17 x(of)S 17 x(the)S
17 x(following:)S 978 Y 383 X(\(1\))S 35 x(Compilation)S 14 x(of)S
15 x(a)S 14 x(unit)S 14 x(containing)S 14 x(an)S 14 x(instantiation)S
14 x(of)S 15 x F48(GENERIC_ELEMENTARY_FUNCTIONS)S 8 x F6(is)S 14 x
(rejected.)S 63 y 383 X(\(2\))S 35 x F48(CONSTRAINT_ERROR)S 27 x F6
(or)S 30 x F48(PROGRAM_ERROR)S 28 x F6(is)S 30 x(raised)S 30 x
(during)S 30 x(the)S 30 x(elaboration)S 30 x(of)S 30 x(an)S 30 x
(instantiation)S 30 x(of)S 49 y 466 X F48
(GENERIC_ELEMENTARY_FUNCTIONS)S F6(.)S 1183 Y 300 X(Conversely,)S
16 x(if)S 15 x(an)S 16 x(implementation)S 15 x(does)S 16 x(not)S
16 x(impose)S 16 x(the)S 15 x(restriction,)S 16 x(then)S 16 x(it)S
16 x(must)S 16 x(not)S 16 x(allow)S 15 x(such)S 15 x(a)S 15 x(range)S
16 x(constraint,)S 49 y 300 X(when)S 16 x(included)S 16 x(with)S
15 x(the)S 16 x(user's)S 16 x(actual)S 16 x(type,)S 16 x(to)S 16 x
(interfere)S 16 x(with)S 16 x(the)S 16 x(internal)S 16 x
(computations)S 16 x(of)S 16 x(the)S 16 x(functions;)S 16 x(that)S
16 x(is,)S 17 x(if)S 50 y 300 X(the)S 14 x(ar)S -1 x(gument)S 15 x
(and)S 15 x(result)S 14 x(are)S 15 x(within)S 14 x(the)S 15 x(range)S
15 x(of)S 15 x(the)S 14 x(type,)S 15 x(then)S 15 x(the)S 14 x
(implementation)S 14 x(must)S 15 x(return)S 14 x(the)S 15 x(result)S
15 x(and)S 14 x(must)S 50 y 300 X(not)S 19 x(raise)S 19 x(an)S 19 x
(exception)S 19 x(\(such)S 19 x(as)S 20 x F48(CONSTRAINT_ERROR)S F6
(\).)S 1428 Y 383 X(An)S 15 x(implementation)S 16 x(must)S 15 x
(function)S 15 x(properly)S 16 x(in)S 15 x(a)S 15 x(tasking)S 15 x
(environment.)S 21 x(Apart)S 15 x(from)S 15 x(the)S 15 x(obvious)S
15 x(restriction)S 15 x(that)S 50 y 300 X(an)S 19 x(implementation)S
19 x(of)S 19 x F48(GENERIC_ELEMENTARY_FUNCTIONS)S 14 x F6(must)S
19 x(avoid)S 19 x(declaring)S 19 x(variables)S 19 x(that)S 19 x(are)S
19 x(global)S 19 x(to)S 19 x(the)S 50 y 300 X(functions,)S 19 x(no)S
19 x(special)S 18 x(constraints)S 19 x(are)S 19 x(imposed)S 19 x(on)S
19 x(implementations.)S 27 x(Nothing)S 19 x(in)S 18 x(this)S 19 x
(standard)S 19 x(requires)S 19 x(the)S 19 x(use)S 18 x(of)S 50 y
300 X(such)S 22 x(global)S 22 x(variables.)S 1674 Y 383 X(Some)S
32 x(hardware)S 33 x(and)S 33 x(their)S 32 x(accompanying)S 32 x
(Ada)S 32 x(implementations)S 33 x(have)S 33 x(the)S 33 x
(capability)S 32 x(of)S 33 x(representing)S 50 y 300 X(and)S 30 x
(discriminating)S 30 x(between)S 30 x(positively)S 29 x(and)S 30 x
(negatively)S 30 x(signed)S 30 x(zeros)S 30 x(as)S 30 x(a)S 29 x
(means,)S 31 x(e.g.,)S 31 x(of)S 29 x(preserving)S 29 x(the)S 50 y
300 X(sign)S 27 x(of)S 27 x(an)S 27 x(in\014nitesimal)S 27 x
(quantity)S 27 x(that)S 27 x(has)S 27 x(under\015owed)S 27 x(to)S
27 x(zero.)S 44 x(This)S 27 x(standard)S 27 x(allows)S 27 x
(implementations)S 26 x(of)S 50 y 300 X F48
(GENERIC_ELEMENTARY_FUNCTIONS)S 12 x F6(to)S 18 x(exploit)S 18 x
(that)S 18 x(capability,)S 19 x(when)S 18 x(available,)S 18 x(so)S
18 x(as)S 18 x(to)S 18 x(exhibit)S 18 x(continuity)S 18 x(in)S 18 x
(the)S 49 y 300 X(results)S 11 x(of)S 11 x F48(ARCTAN)S 10 x F6(and)S
11 x F48(ARCCOT)S 10 x F6(as)S 11 x(certain)S 11 x(limits)S 11 x
(are)S 12 x(approached.)S 17 x(At)S 11 x(the)S 11 x(same)S 11 x
(time,)S 11 x(it)S 12 x(accommodates)S 11 x(implementations)S 50 y
300 X(in)S 15 x(which)S 15 x(that)S 15 x(capability)S 15 x(is)S 15 x
(unavailable.)S 21 x(Because)S 15 x(a)S 15 x(de\014nition)S 15 x(of)S
15 x(what)S 15 x(comprises)S 16 x(the)S 15 x(capability)S 15 x(of)S
15 x(representing)S 15 x(and)S 50 y 300 X(distinguishing)S 19 x
(signed)S 19 x(zeros)S 19 x(is)S 19 x(beyond)S 18 x(the)S 18 x
(scope)S 18 x(of)S 18 x(this)S 19 x(standard,)S 19 x
(implementations)S 18 x(are)S 18 x(allowed)S 18 x(the)S 18 x
(freedom)S 18 x(not)S 50 y 300 X(to)S 17 x(exploit)S 17 x(the)S 17 x
(capability,)S 17 x(even)S 17 x(when)S 17 x(it)S 16 x(is)S 17 x
(available.)S 24 x(This)S 17 x(standard)S 16 x(accommodates)S 17 x
(the)S 16 x(various)S 16 x(choices)S 17 x(allowed)S 17 x(to)S 50 y
300 X(implementations)S 16 x(by,)S 17 x(e.g.,)S 17 x(de\014ning)S
16 x(the)S 16 x(results)S 16 x(of)S 17 x F48(ARCTAN)S 15 x F6(and)S
16 x F48(ARCCOT)S 16 x F6(to)S 17 x(be)S 16 x(an)S 16 x
(implementation)S 16 x(dependent)S 17 x(choice)S 49 y 300 X(between)S
20 x(two)S 20 x(values)S 20 x(in)S 20 x(certain)S 20 x(limited)S
20 x(cases)S 20 x(involving)S 20 x(a)S 20 x(zero)S 20 x(ar)S -1 x
(gument.)S 31 x(An)S 20 x(implementation)S 20 x(must)S 20 x
(exercise)S 20 x(its)S 50 y 300 X(choice)S 14 x(consistently,)S 14 x
(either)S 14 x(exploiting)S 14 x(signed-zero)S 14 x(behavior)S 14 x
(everywhere)S 14 x(or)S 14 x(nowhere)S 14 x(in)S 15 x(this)S 15 x
(package.)S 19 x(In)S 14 x(addition,)S 14 x(an)S 50 y 300 X
(implementation)S 17 x(must)S 17 x(document)S 17 x(its)S 17 x
(behavior)S 18 x(with)S 18 x(respect)S 18 x(to)S 18 x(signed)S 17 x
(zeros.)S 2466 Y 300 X F50(5.)S 34 x(Exceptions)S 2601 Y 383 X F6
(One)S 13 x(exception,)S 13 x F48(ARGUMENT_ERROR)S F6(,)S 10 x(is)S
13 x(declared)S 12 x(in)S 12 x F48(GENERIC_ELEMENTARY_FUNCTIONS)S
F6(.)S 8 x(This)S 12 x(exception)S 12 x(is)S 13 x(raised)S 50 y
300 X(by)S 20 x(a)S 20 x(function)S 21 x(in)S 21 x(the)S 21 x
(generic)S 21 x(package)S 21 x(only)S 20 x(when)S 21 x(the)S 21 x
(ar)S -1 x(gument\(s\))S 21 x(of)S 20 x(the)S 21 x(function)S 21 x
(violate)S 21 x(one)S 21 x(or)S 21 x(more)S 21 x(of)S 20 x(the)S
49 y 300 X(conditions)S 15 x(given)S 14 x(in)S 14 x(the)S 15 x
(function's)S 15 x(domain)S 15 x(de\014nition)S 14 x(\(cf.)S 14 x
(Section)S 15 x(8\).)S 20 x(Note)S 14 x(that)S 15 x(these)S 15 x
(conditions)S 14 x(are)S 15 x(related)S 14 x(only)S 15 x(to)S 50 y
300 X(the)S 16 x(mathematical)S 16 x(de\014nition)S 16 x(of)S 16 x
(the)S 16 x(function)S 16 x(and)S 16 x(are)S 15 x(therefore)S 16 x
(implementation)S 16 x(independent.)S 2847 Y 383 X(The)S 20 x F48
(ARGUMENT_ERROR)S 18 x F6(exception)S 21 x(is)S 20 x(declared)S 21 x
(as)S 21 x(a)S 21 x(renaming)S 20 x(of)S 21 x(the)S 21 x(exception)S
20 x(of)S 20 x(the)S 21 x(same)S 21 x(name)S 20 x(declared)S 49 y
300 X(in)S 27 x(the)S 27 x F48(ELEMENTARY_FUNCTIONS_EXCEPTIONS)S
20 x F6(package.)S 44 x(Thus,)S 28 x(this)S 27 x(exception)S 27 x
(distinguishes)S 27 x(neither)S 27 x(between)S 50 y 300 X(dif)S -1 x
(ferent)S 25 x(kinds)S 25 x(of)S 25 x(ar)S -1 x(gument)S 25 x
(errors,)S 26 x(nor)S 25 x(between)S 25 x(dif)S -1 x(ferent)S 25 x
(functions,)S 26 x(nor)S 25 x(between)S 25 x(dif)S -1 x(ferent)S
25 x(instantiations)S 25 x(of)S 50 y 300 X F48
(GENERIC_ELEMENTARY_FUNCTIONS)S F6(.)S 3128 Y 1265 X(5)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F6(Besides)S 16 x F48(ARGUMENT_ERROR)S F6(,)S 13 x(the)S
16 x(only)S 16 x(exceptions)S 17 x(allowed)S 16 x(during)S 16 x(a)S
16 x(call)S 16 x(to)S 16 x(a)S 17 x(function)S 16 x(in)S 17 x F48
(GENERIC_ELEMENTA-)S 49 y 300 X(RY_FUNCTIONS)S 17 x F6(are)S 20 x
(prede)S
(\014ned)S 19 x(exceptions,)S 20 x(as)S 20 x(follows:)S 75 y 383 X
(\(1\))S 35 x(V)S -2 x(irtually)S 24 x(any)S 24 x(prede\014ned)S
23 x(exception)S 23 x(is)S 23 x(possible)S 23 x(during)S 23 x(the)S
23 x(evaluation)S 23 x(of)S 23 x(an)S 23 x(ar)S -1 x(gument)S 23 x
(of)S 23 x(a)S 23 x(function)S 49 y 466 X(in)S 23 x F48
(GENERIC_ELEMENTARY_FUNCTIONS)S F6(.)S 16 x(For)S 22 x(example,)S
24 x F48(NUMERIC_ERROR)S F6(,)S 20 x F48(CONSTRAINT_ERROR)S F6(,)S
18 x(or)S 23 x(even)S 50 y 466 X F48(PROGRAM_ERROR)S 16 x F6(could)S
19 x(be)S 19 x(raised)S 18 x(if)S 18 x(an)S 18 x(ar)S -1 x(gument)S
19 x(has)S 19 x(an)S 19 x(unde\014ned)S 18 x(value;)S 19 x(and,)S
19 x(as)S 18 x(stated)S 19 x(in)S 19 x(Section)S 19 x(3,)S 50 y
466 X(if)S 22 x(the)S 21 x(implementation)S 22 x(allows)S 22 x
(range)S 21 x(constraints)S 22 x(in)S 22 x(the)S 21 x(generic)S 22 x
(actual)S 22 x(type,)S 22 x(then)S 21 x F48(CONSTRAINT_ERROR)S 50 y
466 X F6(will)S 17 x(be)S 18 x(raised)S 17 x(when)S 17 x(the)S 17 x
(value)S 18 x(of)S 18 x(an)S 17 x(ar)S -1 x(gument)S 19 x(lies)S
18 x(outside)S 17 x(the)S 17 x(range)S 18 x(of)S 18 x(the)S 18 x
(user's)S 17 x(generic)S 18 x(actual)S 17 x(type.)S 50 y 466 X
(Additionally,)S 13 x F48(STORAGE_ERROR)S 11 x F6(could)S 13 x(be)S
14 x(raised,)S 13 x(e.g.)S 13 x(if)S 13 x(insuf)S -1 x(\014cient)S
13 x(storage)S 13 x(is)S 13 x(available)S 13 x(to)S 13 x(perform)S
13 x(the)S 13 x(call.)S 49 y 466 X(All)S 15 x(these)S 15 x
(exceptions)S 15 x(are)S 15 x(raised)S 15 x(before)S 14 x(the)S 15 x
(body)S 15 x(of)S 15 x(the)S 14 x(function)S 14 x(is)S 15 x(entered)S
15 x(and)S 15 x(therefore)S 15 x(have)S 15 x(no)S 15 x(bearing)S
50 y 466 X(on)S 17 x(implementations)S 18 x(of)S 17 x F48
(GENERIC_ELEMENTARY_FUNCTIONS)S F6(.)S 63 y 383 X(\(2\))S 35 x(Also)S
18 x(as)S 17 x(stated)S 18 x(in)S 18 x(Section)S 18 x(3,)S 18 x(if)S
17 x(the)S 18 x(implementation)S 18 x(allows)S 18 x(range)S 18 x
(constraints)S 17 x(in)S 17 x(the)S 18 x(generic)S 17 x(actual)S
18 x(type,)S 49 y 466 X(then)S 13 x F48(CONSTRAINT_ERROR)S 9 x F6
(will)S 13 x(be)S 13 x(raised)S 13 x(when)S 13 x(a)S 13 x(function)S
13 x(in)S 13 x F48(GENERIC_ELEMENTARY_FUNCTIONS)S 7 x F6(attempts)S
50 y 466 X(to)S 14 x(return)S 14 x(a)S 14 x(value)S 14 x(outside)S
13 x(the)S 14 x(range)S 14 x(of)S 14 x(the)S 14 x(user's)S 13 x
(generic)S 13 x(actual)S 13 x(type.)S 19 x(The)S 14 x(exception)S
14 x(raised)S 14 x(for)S 14 x(this)S 14 x(reason)S 50 y 466 X(must)S
19 x(be)S 18 x(propagated)S 19 x(to)S 19 x(the)S 19 x(caller)S 19 x
(of)S 18 x(the)S 19 x(function.)S 62 y 383 X(\(3\))S 35 x(Whenever)S
19 x(the)S 19 x(ar)S -1 x(guments)S 20 x(of)S 19 x(a)S 19 x
(function)S 18 x(are)S 19 x(such)S 19 x(that)S 19 x(a)S 19 x(result)S
19 x(permitted)S 19 x(by)S 19 x(the)S 19 x(accuracy)S 19 x
(requirements)S 50 y 466 X(would)S 22 x(exceed)S 22 x F48
(FLOAT_TYPE)S
(\015SAFE_LARGE)S 18 x F6(in)S 22 x(absolute)S 23 x(value,)S 24 x
(as)S 22 x(formalized)S 22 x(below)S 22 x(in)S 22 x(Section)S 22 x
(11,)S 24 x(an)S 50 y 466 X(implementation)S 18 x(may)S 18 x(raise)S
19 x(\(and)S 19 x(must)S 18 x(then)S 19 x(propagate)S 18 x(to)S 19 x
(the)S 19 x(caller\))S 18 x(the)S 18 x(exception)S 18 x(speci\014ed)S
18 x(by)S 18 x(Ada)S 19 x(for)S 50 y 466 X(signaling)S 22 x(over)S
(\015ow.)S 62 y 383 X(\(4\))S 35 x(Whenever)S 15 x(the)S 15 x(ar)S
-1 x(guments)S 15 x(of)S 15 x(a)S 15 x(function)S 15 x(are)S 15 x
(such)S 15 x(that)S 15 x(the)S 15 x(corresponding)S 16 x
(mathematical)S 16 x(function)S 15 x(is)S 15 x(in\014nite)S 50 y
466 X(\(cf.)S 19 x(Section)S 18 x(11\),)S 19 x(an)S 19 x
(implementation)S 19 x(must)S 19 x(raise)S 19 x(and)S 18 x
(propagate)S 18 x(to)S 18 x(the)S 19 x(caller)S 18 x(the)S 18 x
(exception)S 18 x(speci\014ed)S 18 x(by)S 50 y 466 X(Ada)S 20 x(for)S
20 x(signaling)S 20 x(division)S 20 x(by)S 20 x(zero.)S 62 y 383 X
(\(5\))S 35 x(Once)S 13 x(execution)S 13 x(of)S 13 x(the)S 14 x
(body)S 13 x(of)S 13 x(a)S 13 x(function)S 13 x(has)S 13 x(begun,)S
14 x(an)S 13 x(implementation)S 13 x(may)S 13 x(propagate)S 14 x F48
(STORAGE_ERROR)S 50 y 466 X F6(to)S 16 x(the)S 16 x(caller)S 16 x
(of)S 16 x(the)S 16 x(function,)S 16 x(but)S 17 x(only)S 16 x(to)S
16 x(signal)S 16 x(the)S 16 x(exhaustion)S 16 x(of)S 16 x(storage.)S
23 x(Similarly,)S 16 x(once)S 16 x(execution)S 16 x(of)S 49 y 466 X
(the)S 13 x(body)S 13 x(of)S 13 x(a)S 13 x(function)S 14 x(has)S
13 x(begun,)S 13 x(an)S 13 x(implementation)S 13 x(may)S 14 x
(propagate)S 14 x F48(PROGRAM_ERROR)S 10 x F6(to)S 13 x(the)S 13 x
(caller)S 13 x(of)S 13 x(the)S 50 y 466 X(function,)S 15 x(but)S
15 x(only)S 15 x(to)S 15 x(signal)S 15 x(errors)S 15 x(made)S 15 x
(by)S 15 x(the)S 15 x(user)S 15 x(of)S 15 x F48
(GENERIC_ELEMENTARY_FUNCTIONS)S F6(.)S 75 y 300 X(No)S 14 x
(exception)S 14 x(is)S 15 x(allowed)S 15 x(during)S 15 x(a)S 15 x
(call)S 15 x(to)S 15 x(a)S 15 x(function)S 15 x(in)S 15 x F48
(GENERIC_ELEMENTARY_FUNCTIONS)S 9 x F6(except)S 15 x(those)S 15 x
(permitted)S 49 y 300 X(by)S 11 x(the)S 11 x(foregoing)S 11 x
(rules.)S 17 x(In)S 11 x(particular,)S 12 x(for)S 11 x(ar)S -1 x
(guments)S 11 x(for)S 12 x(which)S 12 x(all)S 12 x(results)S 12 x
(satisfying)S 11 x(the)S 12 x(accuracy)S 12 x(requirements)S 12 x
(remain)S 50 y 300 X(less)S 19 x(than)S 18 x(or)S 19 x(equal)S 19 x
(to)S 19 x F48(FLOAT_TYPE\015SAFE_LARGE)S 14 x F6(in)S 19 x
(absolute)S 18 x(value,)S 19 x(a)S 18 x(function)S 19 x(must)S 19 x
(locally)S 19 x(handle)S 18 x(an)S 18 x(over\015ow)S 50 y 300 X
(occurring)S 15 x(during)S 15 x(the)S 15 x(computation)S 15 x(of)S
15 x(an)S 16 x(intermediate)S 16 x(result,)S 16 x(if)S 16 x(such)S
15 x(an)S 16 x(over\015ow)S 16 x(is)S 15 x(possible,)S 16 x(and)S
15 x(not)S 16 x(propagate)S 16 x(an)S 50 y 300 X(exception)S 19 x
(signaling)S 18 x(that)S 18 x(over\015ow)S 18 x(to)S 19 x(the)S 19 x
(caller)S 18 x(of)S 18 x(the)S 18 x(function.)S 1964 Y 383 X(The)S
20 x(only)S 20 x(exceptions)S 20 x(allowed)S 20 x(during)S 21 x(an)S
20 x(instantiation)S 20 x(of)S 20 x F48
(GENERIC_ELEMENTARY_FUNCTIONS)S F6(,)S 14 x(including)S 20 x(the)S
49 y 300 X(execution)S 29 x(of)S 29 x(the)S 29 x(optional)S 28 x
(sequence)S 28 x(of)S 28 x(statements)S 29 x(in)S 28 x(the)S 28 x
(body)S 29 x(of)S 28 x(the)S 28 x(instance,)S 30 x(are)S 28 x F48
(CONSTRAINT_ERROR)S F6(,)S 50 y 300 X F48(PROGRAM_ERROR)S F6(,)S
30 x(and)S 33 x F48(STORAGE_ERROR)S F6(,)S 31 x(and)S 34 x(then)S
33 x(only)S 34 x(for)S 33 x(the)S 33 x(reasons)S 33 x(given)S 33 x
(below.)S 57 x(The)S 33 x(raising)S 33 x(of)S 50 y 300 X F48
(CONSTRAINT_ERROR)S 16 x F6(during)S 19 x(instantiation)S 19 x(is)S
20 x(only)S 19 x(allowed)S 19 x(when)S 20 x(the)S 19 x
(implementation)S 20 x(imposes)S 19 x(the)S 20 x(restriction)S 20 x
(that)S 50 y 300 X(the)S 15 x(generic)S 16 x(actual)S 15 x(type)S
16 x(must)S 15 x(not)S 15 x(have)S 15 x(a)S 16 x(range)S 15 x
(constraint,)S 16 x(and)S 15 x(the)S 15 x(user)S 16 x(violates)S
15 x(that)S 16 x(restriction)S 15 x(\(it)S 16 x(may,)S 15 x(in)S
16 x(fact,)S 16 x(be)S 50 y 300 X(an)S 15 x(inescapable)S 15 x
(consequence)S 14 x(of)S 14 x(the)S 14 x(violation\).)S 19 x(The)S
14 x(raising)S 14 x(of)S 14 x F48(PROGRAM_ERROR)S 12 x F6(during)S
15 x(instantiation)S 14 x(is)S 14 x(only)S 15 x(allowed)S 50 y 300 X
(for)S 16 x(the)S 16 x(purpose)S 16 x(of)S 16 x(signaling)S 16 x
(errors)S 15 x(made)S 16 x(by)S 16 x(the)S 16 x(user\320for)S 15 x
(example,)S 16 x(violation)S 16 x(of)S 16 x(this)S 16 x(same)S 16 x
(restriction,)S 16 x(or)S 15 x(of)S 16 x(other)S 49 y 300 X
(limitations)S 19 x(of)S 19 x(the)S 19 x(implementation.)S 28 x(The)S
19 x(raising)S 19 x(of)S 19 x F48(STORAGE_ERROR)S 17 x F6(during)S
19 x(instantiation)S 19 x(is)S 19 x(only)S 19 x(allowed)S 19 x(for)S
19 x(the)S 50 y 300 X(purpose)S 20 x(of)S 20 x(signaling)S 20 x(the)S
20 x(exhaustion)S 20 x(of)S 20 x(storage.)S 2478 Y 300 X F2(Note:)S
2570 Y -33 x F6(In)S 26 x(the)S 26 x(Ada)S 26 x(Reference)S 26 x
(Manual,)S 27 x(the)S 26 x(exception)S 26 x(speci\014ed)S 25 x(for)S
26 x(signaling)S 26 x(over\015ow)S 26 x(or)S 26 x(division)S 26 x
(by)S 26 x(zero)S 26 x(is)S 50 y 300 X F48(NUMERIC_ERROR)S F6(,)S
14 x(but)S 18 x(AI-00387)S 17 x(replaces)S 18 x(that)S 18 x(by)S
17 x F48(CONSTRAINT_ERROR)S F6(.)S 2792 Y 300 X F50(6.)S 34 x
(Arguments)S 24 x(outside)S 23 x(the)S 24 x(range)S 23 x(of)S 24 x
(safe)S 24 x(numbers)S 2891 Y 383 X F6(The)S 18 x(current)S 18 x
(Ada)S 19 x(standard)S 18 x(fails)S 18 x(to)S 19 x(de\014ne)S 19 x
(the)S 18 x(result)S 19 x(safe)S 18 x(interval)S 19 x(of)S 19 x(any)S
18 x(basic)S 18 x(or)S 18 x(prede\014ned)S 18 x(operation)S 18 x(of)S
19 x(a)S 50 y 300 X(real)S 21 x(subtype)S 20 x(when)S 20 x(the)S
21 x(absolute)S 20 x(value)S 21 x(of)S 21 x(one)S 21 x(of)S 21 x
(its)S 20 x(operands)S 21 x(exceeds)S 20 x(the)S 21 x(lar)S -1 x
(gest)S 22 x(safe)S 20 x(number)S 20 x(of)S 20 x(the)S 20 x(operand)S
50 y 300 X(subtype.)S 22 x(\(The)S 16 x(failure)S 16 x(to)S 16 x(de)S
(\014ne)S 15 x(a)S 16 x(result)S 16 x(in)S 16 x(this)S 16 x(case)S
16 x(occurs)S 16 x(because)S 16 x(no)S 16 x(safe)S 15 x(interval)S
16 x(is)S 16 x(de\014ned)S 16 x(for)S 16 x(the)S 16 x(operand)S 16 x
(in)S 3128 Y 1265 X(6)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 300 0 XY
%%EndPageSetup
300 342 XY F6(question.\))S 19 x(In)S 14 x(order)S 14 x(to)S 14 x
(avoid)S 14 x(imposing)S 14 x(requirements)S 14 x(that)S 14 x
(would,)S 14 x(consequently,)S 14 x(be)S 14 x(more)S 14 x(stringent)S
14 x(than)S 14 x(those)S 14 x(of)S 14 x(Ada)S 49 y 300 X(itself,)S
16 x(this)S 15 x(standard)S 15 x(likewise)S 15 x(does)S 16 x(not)S
15 x(de\014ne)S 15 x(the)S 15 x(result)S 15 x(of)S 15 x(a)S 16 x
(contained)S 16 x(function)S 15 x(when)S 16 x(the)S 15 x(absolute)S
16 x(value)S 15 x(of)S 15 x(one)S 15 x(of)S 50 y 300 X(its)S 18 x
(ar)S -1 x(guments)S 19 x(exceeds)S 18 x F48
(FLOAT_TYPE\015SAFE_LARGE)S F6(.)S 13 x(All)S 18 x(of)S 18 x(the)S
18 x(accuracy)S 18 x(requirements)S 18 x(and)S 18 x(other)S 18 x
(provisions)S 18 x(of)S 18 x(the)S 50 y 300 X(following)S 13 x
(sections)S 13 x(are)S 13 x(understood)S 13 x(to)S 13 x(be)S 13 x
(implicitly)S 13 x(quali\014ed)S 13 x(by)S 12 x(the)S 13 x
(assumption)S 12 x(that)S 12 x(function)S 12 x(ar)S -1 x(guments)S
12 x(are)S 13 x(less)S 13 x(than)S 50 y 300 X(or)S 18 x(equal)S 19 x
(to)S 18 x F48(FLOAT_TYPE\015SAFE_LARGE)S 15 x F6(in)S 19 x
(absolute)S 18 x(value.)S 707 Y 300 X F50(7.)S 34 x(Method)S 26 x
(of)S 25 x(speci\014cation)S 25 x(of)S 26 x(functions)S 804 Y 383 X
F6(Some)S 17 x(of)S 18 x(the)S 18 x(functions)S 17 x(have)S 18 x
(two)S 18 x(overloaded)S 18 x(forms.)S 26 x(For)S 18 x(each)S 18 x
(form)S 18 x(of)S 17 x(a)S 18 x(function)S 18 x(covered)S 18 x(by)S
18 x(this)S 18 x(standard,)S 50 y 300 X(the)S 15 x(function)S 15 x
(is)S 15 x(speci\014ed)S 15 x(by)S 15 x(its)S 15 x(parameter)S 15 x
(and)S 15 x(result)S 15 x(type)S 15 x(pro\014le,)S 15 x(the)S 15 x
(domain)S 15 x(of)S 15 x(its)S 15 x(ar)S -1 x(gument\(s\),)S 16 x
(its)S 15 x(range,)S 15 x(and)S 15 x(the)S 50 y 300 X(accuracy)S
16 x(required)S 15 x(of)S 16 x(its)S 16 x(implementation.)S 22 x
(The)S 16 x(meaning)S 15 x(of,)S 16 x(and)S 16 x(conventions)S 16 x
(applicable)S 16 x(to,)S 16 x(the)S 15 x(domain,)S 16 x(range,)S
16 x(and)S 49 y 300 X(accuracy)S 21 x(speci\014cations)S 20 x(are)S
20 x(described)S 21 x(below.)S 1119 Y 300 X F50(8.)S 34 x(Domain)S
29 x(de\014nitions)S 1217 Y 383 X F6(The)S 27 x(speci\014cation)S
28 x(of)S 27 x(each)S 27 x(function)S 27 x(covered)S 27 x(by)S 27 x
(this)S 27 x(standard)S 27 x(includes,)S 29 x(under)S 27 x(the)S
27 x(heading)S 27 x F7(Domain)S F6(,)S 29 x(a)S 49 y 300 X
(characterization)S 21 x(of)S 20 x(the)S 21 x(ar)S -1 x(gument)S
21 x(values)S 21 x(for)S 21 x(which)S 21 x(the)S 21 x(function)S
21 x(is)S 20 x(mathematically)S 21 x(de\014ned.)S 32 x(It)S 20 x(is)S
21 x(expressed)S 20 x(by)S 50 y 300 X(inequalities)S 24 x(or)S 24 x
(other)S 23 x(conditions)S 23 x(which)S 23 x(the)S 23 x(ar)S -1 x
(guments)S 25 x(must)S 24 x(satisfy)S 23 x(to)S 23 x(be)S 23 x
(valid.)S 37 x(The)S 23 x(phrase)S 24 x(\252mathematically)S 50 y
300 X(unbounded\272)S 18 x(in)S 18 x(a)S 17 x(domain)S 18 x
(de\014nition)S 18 x(indicates)S 18 x(that)S 18 x(all)S 18 x
(representable)S 18 x(values)S 18 x(of)S 18 x(the)S 18 x(ar)S -1 x
(gument)S 18 x(are)S 18 x(valid.)S 26 x(Whenever)S 50 y 300 X(the)S
14 x(ar)S -1 x(guments)S 16 x(fail)S 15 x(to)S 15 x(satisfy)S 14 x
(all)S 14 x(the)S 15 x(conditions,)S 15 x(the)S 15 x(implementation)S
15 x(must)S 14 x(raise)S 14 x F48(ARGUMENT_ERROR)S F6(.)S 12 x(It)S
15 x(must)S 14 x(not)S 15 x(raise)S 50 y 300 X(that)S 20 x
(exception)S 20 x(if)S 20 x(all)S 19 x(the)S 20 x(conditions)S 19 x
(are)S 20 x(satis\014ed.)S 1545 Y 383 X(Inability)S 19 x(to)S 19 x
(deliver)S 19 x(a)S 18 x(result)S 19 x(for)S 19 x(valid)S 19 x(ar)S
-1 x(guments)S 19 x(because)S 18 x(the)S 19 x(result)S 19 x(over)S
(\015ows,)S 20 x(for)S 19 x(example,)S 20 x(must)S 19 x(not)S 19 x
(raise)S 49 y 300 X F48(ARGUMENT_ERROR)S F6(,)S 10 x(but)S 13 x
(must)S 13 x(be)S 13 x(treated)S 13 x(in)S 13 x(the)S 12 x(same)S
13 x(way)S 13 x(that)S 12 x(Ada)S 13 x(de\014nes)S 12 x(for)S 12 x
(its)S 13 x(prede\014ned)S 13 x(\015oating-point)S 12 x(operations)S
50 y 300 X(\(cf.)S 14 x(Section)S 17 x(11\);)S 19 x(after)S 18 x
(all,)S 19 x(one)S 17 x(of)S 17 x(these)S 17 x(operations)S 18 x
(causes)S 18 x(the)S 17 x(over\015ow.)S 1760 Y 300 X F2(Note:)S
1852 Y -33 x F6(Unbounded)S 19 x(portions)S 19 x(of)S 19 x(the)S
19 x(domains)S 19 x(of)S 19 x(the)S 19 x(functions)S 19 x F48(EXP)S
F6(,)S 18 x F48("**")S F6(,)S 20 x F48(SINH)S F6(,)S 18 x(and)S 19 x
F48(COSH)S F6(,)S 18 x(which)S 19 x(are)S 19 x(\252expansion\272)S
50 y 300 X(functions)S 14 x(with)S 14 x(unbounded)S 14 x(or)S 14 x
(semi-unbounded)S 14 x(mathematical)S 14 x(domains,)S 14 x(are)S
14 x(unexploitable)S 14 x(because)S 14 x(the)S 15 x(corresponding)S
49 y 300 X(function)S 20 x(values)S 20 x(\(satisfying)S 19 x(the)S
20 x(accuracy)S 20 x(requirements\))S 20 x(cannot)S 20 x(be)S 20 x
(represented.)S 29 x(Their)S 20 x(\252usable)S 20 x(domains,\272)S
20 x(i.e.)S 19 x(the)S 50 y 300 X(portions)S 21 x(of)S 21 x(the)S
20 x(mathematical)S 21 x(domains)S 20 x(given)S 21 x(in)S 21 x
(their)S 21 x(domain)S 21 x(de\014nitions)S 21 x(that)S 21 x(are)S
21 x(exploitable)S 21 x(in)S 21 x(the)S 21 x(sense)S 21 x(that)S
50 y 300 X(they)S 14 x(produce)S 13 x(representable)S 13 x(results,)S
14 x(are)S 14 x(given)S 14 x(by)S 14 x(the)S 13 x(notes)S 14 x
(accompanying)S 13 x(their)S 14 x(speci\014cations.)S 19 x(Because)S
14 x(of)S 14 x(permitted)S 50 y 300 X(variations)S 10 x(in)S 10 x
(implementations,)S 11 x(these)S 10 x(usable)S 10 x(domains)S 10 x
(can)S 10 x(only)S 10 x(be)S 11 x(stated)S 11 x(approximately.)S
16 x(In)S 10 x(a)S 11 x(similar)S 10 x(manner,)S 10 x(functions)S
50 y 300 X(such)S 13 x(as)S 13 x F48(TAN)S 12 x F6(and)S 13 x F48
(COT)S 12 x F6(with)S 13 x(periodic)S 13 x(\252poles\272)S 13 x(in)S
13 x(their)S 13 x(domains)S 13 x(might)S 13 x(or)S 13 x(might)S 12 x
(not)S 13 x(\(depending)S 13 x(on)S 13 x(the)S 13 x
(implementation\))S 49 y 300 X(have)S 16 x(small)S 15 x(unusable)S
15 x(portions)S 16 x(of)S 16 x(their)S 16 x(domains)S 16 x(in)S 15 x
(the)S 16 x(vicinities)S 15 x(of)S 15 x(the)S 16 x(poles.)S 21 x
(Also,)S 16 x(range)S 16 x(constraints)S 16 x(in)S 16 x(the)S 16 x
(user's)S 50 y 300 X(generic)S 13 x(actual)S 13 x(type)S 14 x(can,)S
13 x(by)S 14 x(narrowing)S 14 x(a)S 13 x(function's)S 13 x(range,)S
13 x(make)S 13 x(further)S 13 x(portions)S 14 x(of)S 14 x(the)S 14 x
(function's)S 13 x(domain)S 13 x(unusable.)S 2416 Y 300 X F50(9.)S
34 x(Range)S 30 x(de\014nitions)S 2513 Y 383 X F6(The)S 12 x(usual)S
12 x(mathematical)S 12 x(meaning)S 12 x(of)S 12 x(the)S 12 x
(\252range)S
(\272)S 13 x(of)S 13 x(a)S 12 x(function)S 12 x(is)S 12 x(the)S 12 x
(set)S 13 x(of)S 12 x(values)S 12 x(into)S 13 x(which)S 13 x(the)S
13 x(function)S 12 x(maps)S 50 y 300 X(the)S 12 x(values)S 12 x(in)S
12 x(its)S 12 x(domain.)S 18 x(Some)S 12 x(of)S 13 x(the)S 13 x
(functions)S 13 x(covered)S 12 x(by)S 12 x(this)S 12 x(standard)S
12 x(\(for)S 13 x(example,)S 12 x F48(ARCSIN)S F6(\))S 11 x(are)S
12 x(mathematically)S 50 y 300 X(multivalued,)S 17 x(in)S 17 x(the)S
17 x(sense)S 16 x(that)S 16 x(a)S 16 x(given)S 16 x(ar)S -1 x
(gument)S 18 x(value)S 16 x(can)S 17 x(be)S 16 x(mapped)S 16 x(by)S
17 x(the)S 17 x(function)S 17 x(into)S 16 x(many)S 17 x(dif)S -1 x
(ferent)S 17 x(result)S 50 y 300 X(values.)S 18 x(By)S 11 x(means)S
11 x(of)S 11 x(range)S 11 x(restrictions,)S 11 x(this)S 11 x
(standard)S 11 x(imposes)S 11 x(a)S 11 x(uniqueness)S 11 x
(requirement)S 11 x(on)S 11 x(the)S 12 x(results)S 11 x(of)S 11 x
(multivalued)S 50 y 300 X(functions,)S 19 x(thereby)S 18 x(reducing)S
19 x(them)S 19 x(to)S 19 x(single-valued)S 19 x(functions.)S 2792 Y
383 X(Some)S 16 x(of)S 16 x(the)S 16 x(functions)S 16 x(covered)S
17 x(by)S 17 x(this)S 16 x(standard)S 16 x(\(for)S 17 x(example,)S
17 x F48(EXP)S F6(\))S 15 x(have)S 16 x(asymptotic)S 17 x(behavior)S
16 x(for)S 16 x(extremely)S 49 y 300 X(positive)S 14 x(or)S 13 x
(negative)S 13 x(ar)S -1 x(guments.)S 19 x(Although)S 13 x(there)S
13 x(is)S 13 x(no)S 13 x(\014nite)S 13 x(ar)S -1 x(gument)S 14 x
(for)S 13 x(which)S 13 x(such)S 13 x(a)S 13 x(function)S 13 x(can)S
13 x(mathematically)S 50 y 300 X(yield)S 21 x(its)S 22 x(asymptotic)S
21 x(limit,)S 22 x(that)S 21 x(limit)S 21 x(is)S 21 x(always)S 21 x
(included)S 22 x(in)S 21 x(its)S 21 x(range)S 21 x(here,)S 22 x(and)S
21 x(it)S 21 x(is)S 21 x(an)S 21 x(allowed)S 21 x(result)S 22 x(of)S
21 x(the)S 50 y 300 X(implemented)S 18 x(function,)S 19 x(in)S 19 x
(recognition)S 18 x(of)S 18 x(the)S 18 x(fact)S 18 x(that)S 19 x
(the)S 19 x(limit)S 19 x(value)S 18 x(itself)S 19 x(could)S 18 x(be)S
19 x(closer)S 18 x(to)S 18 x(the)S 18 x(mathematical)S 50 y 300 X
(result)S 21 x(than)S 20 x(any)S 21 x(other)S 20 x(representable)S
20 x(value.)S 3127 Y 1265 X(7)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F6(The)S 12 x(range)S 12 x(of)S 13 x(each)S 12 x
(function)S 12 x(is)S 13 x(shown)S 13 x(under)S 12 x(the)S 13 x
(heading)S 13 x F7(Range)S 13 x F6(in)S 13 x(the)S 12 x
(speci\014cations.)S 18 x(Range)S 12 x(de\014nitions)S 12 x(take)S
12 x(the)S 49 y 300 X(form)S 12 x(of)S 13 x(inequalities)S 13 x
(limiting)S 12 x(the)S 13 x(function)S 13 x(value.)S 18 x(An)S 13 x
(implementation)S 13 x(must)S 13 x(not)S 13 x(exceed)S 13 x(a)S 13 x
(limit)S 13 x(of)S 13 x(the)S 13 x(range)S 13 x(when)S 13 x(that)S
50 y 300 X(limit)S 16 x(is)S 16 x(a)S 16 x(safe)S 15 x(number)S 16 x
(of)S 15 x F48(FLOAT_TYPE)S 14 x F6(\(like)S 16 x F48(0.0)S F6(,)S
15 x F48(1.0)S F6(,)S 15 x(or)S 16 x F48(CYCLE)S
XP /F21 /cmmi10 300 41.5 41.5 128 [-1 -10 43 31] PXLNF RP
XP /F21 61 21 2 -10 18 31 41 16 0
<0003 0003 0007 0006 0006 000E 000C 001C 0018 0018 0038 0030 0030
0070 0060 0060 00E0 00C0 00C0 01C0 0180 0380 0300 0300 0700 0600
0600 0E00 0C00 0C00 1C00 1800 1800 3800 3000 7000 6000 6000 E000
C000 C000>
PXLC RP
1416 441 XY F21(=)S
XP /F48 52 22 1 0 20 25 25 24 0
<007C00 00FC00 00DC00 01DC00 039C00 039C00 071C00 0F1C00 0E1C00
1E1C00 3C1C00 381C00 781C00 F01C00 FFFFE0 FFFFE0 FFFFE0 001C00
001C00 001C00 001C00 001C00 01FFC0 01FFC0 01FFC0>
PXLC RP
1437 441 XY F48(4.0)S 15 x F6(for)S 16 x(certain)S 16 x(values)S
15 x(of)S 16 x F48(CYCLE)S F6(\).)S 15 x(On)S 16 x(the)S 16 x(other)S
50 y 300 X(hand,)S 16 x(when)S 16 x(a)S 15 x(range)S 15 x(limit)S
16 x(is)S 16 x(not)S 15 x(a)S 16 x(safe)S 15 x(number)S 15 x(of)S
16 x F48(FLOAT_TYPE)S 13 x F6(\(like)S
XP /F21 25 24 2 0 23 18 18 24 0
<0FFFF8 1FFFF8 3FFFF0 608400 408400 808C00 010C00 010C00 030C00
030C00 020C00 061C00 061C00 0E1C00 0C1C00 1C0E00 1C0E00 180C00>
PXLC RP
1490 491 XY F21(\031)S 1 x F6(,)S 15 x(or)S 15 x F48(CYCLE)S -1 x
F21(=)S F48(4.0)S 15 x F6(for)S 15 x(certain)S 15 x(other)S 15 x
(values)S 15 x(of)S 50 y 300 X F48(CYCLE)S F6(\),)S 15 x(an)S 16 x
(implementation)S 16 x(is)S 15 x(allowed)S 16 x(to)S 16 x(exceed)S
15 x(the)S 16 x(range)S 16 x(limit,)S 16 x(but)S 15 x(it)S 16 x(is)S
15 x(not)S 16 x(allowed)S 15 x(to)S 15 x(exceed)S 15 x(the)S 16 x
(safe)S 16 x(number)S 50 y 300 X(of)S 14 x F48(FLOAT_TYPE)S 11 x F6
(next)S 14 x(beyond)S 14 x(the)S 14 x(range)S 14 x(limit)S 14 x(in)S
14 x(the)S 14 x(direction)S 14 x(away)S 14 x(from)S 14 x(the)S 14 x
(interior)S 14 x(of)S 14 x(the)S 14 x(range;)S 14 x(this)S 14 x(is)S
14 x(in)S 14 x(general)S 49 y 300 X(the)S 17 x(best)S 17 x(that)S
17 x(can)S 18 x(be)S 17 x(expected)S 17 x(from)S 17 x(a)S 17 x
(portable)S 17 x(implementation.)S 26 x(Ef)S -1 x(fectively,)S 17 x
(therefore,)S 17 x(range)S 17 x(de\014nitions)S 18 x(have)S 17 x
(the)S 50 y 300 X(added)S 15 x(ef)S -1 x(fect)S 15 x(of)S 15 x
(imposing)S 16 x(accuracy)S 15 x(requirements)S 15 x(on)S 15 x
(implementations)S 15 x(above)S 15 x(and)S 15 x(beyond)S 16 x(those)S
15 x(presented)S 16 x(under)S 15 x(the)S 50 y 300 X(heading)S 19 x
F7(Accuracy)S 19 x F6(in)S 19 x(the)S 19 x(speci\014cations)S 19 x
(\(cf.)S 14 x(Section)S 19 x(10\).)S 820 Y 383 X(The)S 12 x(phrase)S
13 x(\252mathematically)S 12 x(unbounded\272)S 13 x(in)S 12 x(a)S
12 x(range)S 13 x(de\014nition)S 12 x(indicates)S 12 x(that)S 13 x
(the)S 13 x(range)S 12 x(of)S 12 x(values)S 13 x(of)S 13 x(the)S
13 x(function)S 50 y 300 X(is)S 14 x(not)S 14 x(bounded)S 13 x(by)S
14 x(its)S 14 x(mathematical)S 14 x(de\014nition.)S 19 x(It)S 14 x
(also)S 14 x(implies)S 14 x(that)S 14 x(the)S 14 x(function)S 14 x
(is)S 14 x(not)S 14 x(mathematically)S 14 x(multivalued.)S 987 Y
300 X F2(Note:)S 1080 Y -33 x F6(Unbounded)S 11 x(portions)S 11 x
(of)S 11 x(the)S 11 x(ranges)S 12 x(of)S 12 x(the)S 12 x(functions)S
11 x F48(SQRT)S F6(,)S 10 x F48(LOG)S F6(,)S 11 x F48(ARCSINH)S F6
(,)S 10 x(and)S 12 x F48(ARCCOSH)S F6(,)S 10 x(which)S 11 x(are)S
11 x(\252contraction\272)S 49 y 300 X(functions)S 19 x(with)S 19 x
(unbounded)S 20 x(or)S 19 x(semi-unbounded)S 19 x(mathematical)S
19 x(ranges,)S 20 x(are)S 19 x(unreachable)S 19 x(because)S 20 x
(the)S 20 x(corresponding)S 50 y 300 X(ar)S -1 x(guments)S 20 x
(cannot)S 19 x(be)S 19 x(represented.)S 28 x(Their)S 19 x
(\252reachable)S 19 x(ranges,\272)S 18 x(i.e.)S 19 x(the)S 19 x
(portions)S 19 x(of)S 19 x(the)S 19 x(mathematical)S 18 x(ranges)S
19 x(given)S 50 y 300 X(in)S 16 x(their)S 16 x(range)S 16 x
(de\014nitions)S 16 x(that)S 16 x(are)S 15 x(reachable)S 16 x
(through)S 16 x(appropriate)S 16 x(ar)S -1 x(guments,)S 16 x(are)S
16 x(given)S 16 x(by)S 16 x(the)S 16 x(notes)S 16 x(accompanying)S
50 y 300 X(their)S 14 x(speci\014cations.)S 19 x(Because)S 14 x(of)S
14 x(permitted)S 14 x(variations)S 14 x(in)S 14 x(implementations,)S
14 x(these)S 14 x(reachable)S 14 x(ranges)S 14 x(can)S 14 x(only)S
14 x(be)S 14 x(stated)S 50 y 300 X(approximately.)S 25 x(Also,)S
17 x(range)S 17 x(constraints)S 17 x(in)S 17 x(the)S 17 x(user's)S
17 x(generic)S 17 x(actual)S 17 x(type)S 17 x(can,)S 18 x(by)S 17 x
(narrowing)S 16 x(a)S 17 x(function's)S 17 x(domain,)S 49 y 300 X
(make)S 19 x(further)S 18 x(portions)S 19 x(of)S 19 x(the)S 19 x
(function's)S 19 x(range)S 19 x(unreachable.)S 1557 Y 300 X F50(10.)S
33 x(Accuracy)S 28 x(requirements)S 1659 Y 383 X F6(Because)S 16 x
(they)S 15 x(are)S 15 x(implemented)S 15 x(on)S 15 x(digital)S 15 x
(computers)S 15 x(with)S 15 x(only)S 15 x(\014nite)S 15 x
(precision,)S 15 x(the)S 15 x(functions)S 16 x(provided)S 15 x(in)S
15 x(this)S 50 y 300 X(generic)S 15 x(package)S 15 x(can,)S 16 x(at)S
15 x(best,)S 15 x(only)S 15 x(approximate)S 15 x(the)S 16 x
(corresponding)S 15 x(mathematically)S 15 x(de\014ned)S 15 x
(functions.)S 1789 Y 383 X(The)S 15 x(accuracy)S 16 x(requirements)S
16 x(contained)S 15 x(in)S 15 x(this)S 15 x(standard)S 15 x
(de\014ne)S 16 x(the)S 16 x(latitude)S 16 x(that)S 15 x
(implementations)S 15 x(are)S 15 x(allowed)S 16 x(in)S 49 y 300 X
(approximating)S 17 x(the)S 17 x(intended)S 16 x(precise)S 16 x
(mathematical)S 16 x(result)S 17 x(with)S 17 x(\015oating-point)S
16 x(computations.)S 24 x(Accuracy)S 16 x(requirements)S 50 y 300 X
(of)S 18 x(two)S 18 x(kinds)S 18 x(are)S 18 x(stated)S 18 x(under)S
17 x(the)S 18 x(heading)S 17 x F7(Accuracy)S 18 x F6(in)S 18 x(the)S
18 x(speci\014cations.)S 27 x(Additionally,)S 19 x(range)S 18 x(de)S
(\014nitions)S 18 x(stated)S 50 y 300 X(under)S 15 x(the)S 16 x
(heading)S 16 x F7(Range)S 16 x F6(impose)S 16 x(requirements)S 15 x
(that)S 16 x(constrain)S 16 x(the)S 16 x(values)S 16 x
(implementations)S 16 x(may)S 16 x(yield,)S 16 x(so)S 16 x(the)S
16 x(range)S 50 y 300 X(de\014nitions)S 18 x(are)S 17 x(another)S
17 x(source)S 18 x(of)S 18 x(accuracy)S 18 x(requirements)S 17 x
(\(the)S 17 x(precise)S 17 x(meaning)S 18 x(of)S 18 x(a)S 18 x
(range)S 18 x(limit)S 18 x(that)S 17 x(is)S 18 x(not)S 17 x(a)S 17 x
(safe)S 50 y 300 X(number)S 17 x(of)S 17 x F48(FLOAT_TYPE)S F6(,)S
16 x(as)S 17 x(an)S 17 x(accuracy)S 18 x(requirement,)S 17 x(is)S
17 x(discussed)S 17 x(above)S 17 x(in)S 17 x(Section)S 18 x(9\).)S
25 x(Every)S 17 x(result)S 17 x(yielded)S 17 x(by)S 50 y 300 X(a)S
18 x(function)S 17 x(is)S 17 x(subject)S 17 x(to)S 18 x(all)S 17 x
(of)S 17 x(the)S 17 x(function's)S 18 x(applicable)S 17 x(accuracy)S
17 x(requirements,)S 18 x(except)S 18 x(in)S 17 x(the)S 17 x(one)S
17 x(case)S 17 x(described)S 49 y 300 X(in)S 17 x(Section)S 16 x
(12,)S 17 x(below.)S 24 x(In)S 16 x(that)S 16 x(case,)S 17 x(the)S
17 x(result)S 16 x(will)S 17 x(satisfy)S 17 x(a)S 17 x(small)S 16 x
(absolute)S 17 x(error)S 17 x(requirement)S 17 x(in)S 17 x(lieu)S
17 x(of)S 16 x(the)S 17 x(other)S 50 y 300 X(accuracy)S 20 x
(requirements)S 20 x(de\014ned)S 20 x(for)S 20 x(the)S 19 x
(function.)S 2267 Y 383 X(The)S 16 x(\014rst)S 16 x(kind)S 16 x(of)S
16 x(accuracy)S 16 x(requirement)S 16 x(used)S 15 x(under)S 16 x
(the)S 16 x(heading)S 16 x F7(Accuracy)S 16 x F6(in)S 16 x(the)S
16 x(speci\014cations)S 16 x(is)S 16 x(a)S 16 x(bound)S 15 x(on)S
50 y 300 X(the)S 19 x(relative)S 19 x(error)S 19 x(in)S 18 x(the)S
19 x(computed)S 18 x(value)S 19 x(of)S 19 x(the)S 19 x(function,)S
19 x(which)S 18 x(must)S 19 x(hold)S 19 x(\(except)S 19 x(as)S 19 x
(provided)S 18 x(by)S 19 x(the)S 19 x(rules)S 19 x(in)S 50 y 300 X
(Sections)S 12 x(11)S 12 x(and)S 12 x(12\))S 12 x(for)S 12 x(all)S
12 x(ar)S -1 x(guments)S 12 x(satisfying)S 12 x(the)S 12 x
(conditions)S 12 x(in)S 12 x(the)S 12 x(domain)S 12 x(de\014nition,)S
12 x(providing)S 12 x(the)S 12 x(mathematical)S 50 y 300 X(result)S
17 x(is)S 17 x(nonzero.)S 25 x(For)S 17 x(a)S 18 x(given)S 17 x
(function)S
XP /F21 102 20 2 -8 23 29 37 24 0
<0001E0 000630 000E78 000CF0 001C60 001C00 001C00 001C00 003C00
003800 003800 03FFC0 003800 003800 007000 007000 007000 007000
007000 00E000 00E000 00E000 00E000 00E000 01C000 01C000 01C000
01C000 01C000 018000 038000 038000 630000 F30000 F60000 E40000
780000>
PXLC RP
998 2417 XY F21(f)S 4 x F6(,)S 19 x(the)S 17 x(relative)S 17 x
(error)S
XP /F21 114 19 2 0 18 18 18 16 0
<383C 4E42 4687 470F 8E1E 8E0C 0E00 0E00 1C00 1C00 1C00 1C00 3800
3800 3800 3800 7000 3000>
PXLC RP
1358 2417 XY F21(r)S
XP /F21 101 19 2 0 16 18 18 16 0
<01F0 0708 0C08 1804 3808 3008 7030 7FC0 E000 E000 E000 E000 E000
E004 6008 6010 3060 0F80>
PXLC RP
1378 2417 XY F21(e)S
XP /F20 /cmr10 300 41.5 41.5 128 [-3 -11 41 31] PXLNF RP
XP /F20 40 16 3 -11 13 31 42 16 0
<0040 0080 0100 0200 0600 0C00 0C00 1800 1800 3000 3000 7000 6000
6000 6000 E000 E000 E000 E000 E000 E000 E000 E000 E000 E000 E000
E000 6000 6000 6000 7000 3000 3000 1800 1800 0C00 0C00 0600 0200
0100 0080 0040>
PXLC RP
1397 2417 XY F20(\()S
XP /F21 88 34 1 0 34 28 28 40 0
<01FFC0FF80 001E003C00 001E003000 000E002000 000F004000 0007008000
0007010000 0007820000 0003840000 0003C80000 0001D00000 0001F00000
0000E00000 0000E00000 0000F00000 0001700000 0002700000 0004380000
0008380000 00103C0000 00201C0000 00401E0000 00800E0000 01800E0000
03000F0000 0600070000 1E000F8000 FF803FF000>
PXLC RP
1414 2417 XY F21(X)S
XP /F20 41 16 2 -11 12 31 42 16 0
<8000 4000 2000 1000 1800 0C00 0C00 0600 0600 0300 0300 0380 0180
0180 0180 01C0 01C0 01C0 01C0 01C0 01C0 01C0 01C0 01C0 01C0 01C0
01C0 0180 0180 0180 0380 0300 0300 0600 0600 0C00 0C00 1800 1000
2000 4000 8000>
PXLC RP
1451 2417 XY F20(\))S 17 x F6(in)S 17 x(a)S 17 x(computed)S 17 x
(result)S
XP /F21 70 27 2 0 30 28 28 32 0
<01FFFFF0 003C00F0 00380030 00380020 00380020 00380020 00700020
00700020 00701020 00701000 00E02000 00E02000 00E06000 00FFE000
01C04000 01C04000 01C04000 01C04000 03808000 03800000 03800000
03800000 07000000 07000000 07000000 07000000 0F000000 FFF00000>
PXLC RP
1860 2417 XY F21(F)S 6 x F20(\()S -1 x F21(X)S 3 x F20(\))S 18 x F6
(at)S 17 x(the)S 17 x(ar)S -1 x(gument)S 49 y 300 X F21(X)S 25 x F6
(is)S 21 x(de\014ned)S 20 x(in)S 21 x(the)S 21 x(usual)S 21 x(way,)S
2588 Y 1050 X F21(r)S 1 x(e)S F20(\()S F21(X)S 3 x F20(\))S
XP /F20 61 32 2 4 29 16 12 32 0
<7FFFFFC0 FFFFFFE0 00000000 00000000 00000000 00000000 00000000
00000000 00000000 00000000 FFFFFFE0 7FFFFFC0>
PXLC RP
1171 2588 XY F20(=)S
XP /F23 /cmex10 300 41.5 41.5 128 [-1 -123 60 32] PXLNF RP
XP /F23 12 14 6 -26 8 1 27 8 0
<C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0
C0 C0 C0 C0>
PXLC RP
1215 2528 XY F23(\014)S 25 y -14 x(\014)S 25 y -14 x(\014)S 25 y
-14 x(\014)S -43 y 4 x F21(F)S 6 x F20(\()S F21(X)S 3 x F20(\))S
XP /F22 /cmsy10 300 41.5 41.5 128 [-1 -40 45 32] PXLNF RP
XP /F22 0 32 3 9 28 11 2 32 0
<FFFFFF80 FFFFFF80>
PXLC RP
1345 2560 XY F22(\000)S 9 x F21(f)S 4 x F20(\()S 1 x F21(X)S 3 x F20
(\))S 1233 2579 XY 248 2 R 38 y 1310 X F21(f)S 4 x F20(\()S 1 x F21
(X)S 3 x F20(\))S 2528 Y 1486 X F23(\014)S 25 y -14 x(\014)S 25 y
-14 x(\014)S 25 y -14 x(\014)S 2712 Y 300 X F6(providing)S 24 x(the)S
23 x(mathematical)S 23 x(result)S 23 x F21(f)S 4 x F20(\()S 1 x F21
(X)S 3 x F20(\))S 24 x F6(is)S 23 x(\014nite)S 23 x(and)S 23 x
(nonzero.)S 37 x(\(The)S 23 x(relative)S 23 x(error)S 23 x(is)S 23 x
(not)S 23 x(de\014ned)S 23 x(when)S 23 x(the)S 49 y 300 X
(mathematical)S 16 x(result)S 16 x(is)S 15 x(in\014nite)S 16 x(or)S
16 x(zero.\))S 23 x(For)S 16 x(each)S 16 x(function,)S 17 x(the)S
16 x(bound)S 16 x(on)S 16 x(the)S 16 x(relative)S 16 x(error)S 16 x
(is)S 16 x(identi\014ed)S 16 x(under)S 16 x(the)S 50 y 300 X
(heading)S 20 x F7(Accuracy)S 19 x F6(as)S 20 x(its)S 19 x(maximum)S
19 x(relative)S 20 x(error.)S 2891 Y 383 X(The)S 11 x(second)S 11 x
(kind)S 11 x(of)S 11 x(accuracy)S 11 x(requirement)S 11 x(used)S
11 x(under)S 11 x(the)S 11 x(heading)S 11 x F7(Accuracy)S 11 x F6
(in)S 11 x(the)S 11 x(speci\014cations)S 12 x(is)S 12 x(a)S 11 x
(stipulation,)S 50 y 300 X(in)S 14 x(the)S 14 x(form)S 14 x(of)S
14 x(an)S 14 x(equality,)S 14 x(that)S 14 x(the)S 14 x
(implementation)S 14 x(must)S 13 x(deliver)S 13 x(\252prescribed)S
14 x(results\272)S 14 x(for)S 14 x(certain)S 14 x(special)S 13 x(ar)S
-1 x(guments.)S 50 y 300 X(It)S 18 x(is)S 18 x(used)S 18 x(for)S
18 x(two)S 18 x(purposes:)S 20 x(to)S 18 x(de\014ne)S 18 x(the)S
18 x(computed)S 17 x(result)S 17 x(to)S 18 x(be)S 18 x(zero)S 18 x
(when)S 18 x(the)S 18 x(relative)S 17 x(error)S 18 x(is)S 17 x(unde)S
(\014ned,)S 18 x(i.e.,)S 3128 Y 1265 X(8)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 300 0 XY
%%EndPageSetup
300 342 XY F6(when)S 19 x(the)S 19 x(mathematical)S 19 x(result)S
19 x(is)S 19 x(zero,)S 20 x(and)S 19 x(to)S 19 x(strengthen)S 19 x
(the)S 19 x(accuracy)S 19 x(requirements)S 19 x(at)S 19 x(special)S
19 x(ar)S -1 x(gument)S 19 x(values.)S 49 y 300 X(When)S 15 x(such)S
16 x(a)S 15 x(prescribed)S 15 x(result)S 15 x(is)S 15 x(a)S 15 x
(safe)S 15 x(number)S 15 x(of)S 15 x F48(FLOAT_TYPE)S 13 x F6
(\(like)S 15 x F48(0.0)S F6(,)S 14 x F48(1.0)S F6(,)S 14 x(or)S 15 x
F48(CYCLE)S -1 x F21(=)S F48(4.0)S 14 x F6(for)S 15 x(certain)S 15 x
(values)S 50 y 300 X(of)S 20 x F48(CYCLE)S F6(\),)S 19 x(an)S 20 x
(implementation)S 20 x(must)S 20 x(deliver)S 20 x(that)S 20 x
(result.)S 31 x(On)S 20 x(the)S 20 x(other)S 20 x(hand,)S 20 x(when)S
20 x(a)S 20 x(prescribed)S 20 x(result)S 20 x(is)S 20 x(not)S 20 x
(a)S 50 y 300 X(safe)S 17 x(number)S 16 x(of)S 17 x F48(FLOAT_TYPE)S
15 x F6(\(like)S 17 x F21(\031)S 1 x F6(,)S 18 x(or)S 17 x F48
(CYCLE)S -1 x F21(=)S F48(4.0)S 16 x F6(for)S 17 x(certain)S 17 x
(other)S 16 x(values)S 17 x(of)S 17 x F48(CYCLE)S F6(\),)S 16 x(an)S
17 x(implementation)S 17 x(may)S 50 y 300 X(deliver)S 14 x(any)S
14 x(value)S 13 x(in)S 13 x(the)S 14 x(surrounding)S 14 x(safe)S
14 x(interval.)S 18 x(Prescribed)S 14 x(results)S 13 x(take)S 14 x
(precedence)S 14 x(over)S 14 x(maximum)S 14 x(relative)S 13 x(error)S
50 y 300 X(requirements)S 20 x(but)S 21 x(never)S 20 x(contravene)S
21 x(them.)S 671 Y 383 X(Range)S 23 x(de\014nitions,)S 24 x(under)S
23 x(the)S 23 x(heading)S 23 x F7(Range)S 23 x F6(in)S 23 x(the)S
23 x(speci\014cations,)S 25 x(are)S 24 x(an)S 23 x(additional)S 23 x
(source)S 23 x(of)S 24 x(accuracy)S 50 y 300 X(requirements,)S 28 x
(as)S 27 x(stated)S 27 x(above)S 27 x(in)S 27 x(Section)S 27 x(9.)S
44 x(As)S 27 x(an)S 27 x(accuracy)S 27 x(requirement,)S 28 x(a)S
27 x(range)S 27 x(de\014nition)S 27 x(\(other)S 27 x(than)S 50 y
300 X(\252mathematically)S 15 x(unbounded\272\))S 14 x(has)S 14 x
(the)S 14 x(ef)S -1 x(fect)S 15 x(of)S 14 x(eliminating)S 15 x(some)S
14 x(of)S 14 x(the)S 14 x(values)S 14 x(permitted)S 14 x(by)S 14 x
(the)S 14 x(maximum)S 15 x(relative)S 49 y 300 X(error)S 19 x
(requirements,)S 21 x(e.g.,)S 20 x(those)S 20 x(outside)S 19 x(the)S
20 x(range.)S 1000 Y 300 X F50(11.)S 33 x(Over\015ow)S 1103 Y 383 X
F6(Floating-point)S 26 x(hardware)S 27 x(is)S 27 x(typically)S 27 x
(incapable)S 27 x(of)S 27 x(representing)S 27 x(numbers)S 27 x
(whose)S 27 x(absolute)S 27 x(value)S 27 x(exceeds)S 50 y 300 X
(some)S 34 x(implementation-de\014ned)S 34 x(maximum.)S 60 x(For)S
35 x(the)S 35 x(type)S 35 x F48(FLOAT_TYPE)S F6(,)S 32 x(that)S 34 x
(maximum)S 35 x(will)S 35 x(be)S 35 x(at)S 35 x(least)S 50 y 300 X
F48(FLOAT_TYPE\015SAFE_LARGE)S F6(.)S 18 x(For)S 22 x(the)S 22 x
(functions)S 22 x(de\014ned)S 22 x(by)S 22 x(this)S 21 x(standard,)S
22 x(whenever)S 21 x(the)S 22 x(maximum)S 21 x(relative)S 21 x
(error)S 49 y 300 X(requirements)S 15 x(permit)S 15 x(a)S 15 x
(result)S 16 x(whose)S 15 x(absolute)S 15 x(value)S 16 x(is)S 16 x
(greater)S 16 x(than)S 16 x F48(FLOAT_TYPE\015SAFE_LARGE)S F6(,)S
10 x(the)S 15 x(implementation)S 50 y 300 X(may)S 1378 Y 12 x(\(1\))S
35 x(yield)S 17 x(any)S 17 x(result)S 17 x(permitted)S 16 x(by)S
16 x(the)S 16 x(maximum)S 16 x(relative)S 16 x(error)S 16 x
(requirements,)S 16 x(or)S 63 y 383 X(\(2\))S 35 x(raise)S 18 x(the)S
18 x(exception)S 18 x(speci\014ed)S 18 x(by)S 17 x(Ada)S 17 x(for)S
17 x(signaling)S 17 x(over\015ow.)S 1521 Y 383 X(An)S 14 x
(implementation)S 15 x(must)S 15 x(raise)S 15 x(the)S 14 x
(exception)S 14 x(speci\014ed)S 15 x(by)S 15 x(Ada)S 15 x(for)S 15 x
(signaling)S 15 x(division)S 15 x(by)S 14 x(zero)S 14 x(in)S 14 x
(the)S 15 x(following)S 50 y 300 X(speci\014c)S 23 x(cases:)S 1647 Y
383 X(\(1\))S 35 x F48(LOG\(X\))S 20 x F6(when)S 21 x F48(X)S 19 x
F20(=)S 20 x F48(0.0)S -1 x F6(;)S 62 y 383 X(\(2\))S 35 x F48
(LOG\(X,)S 20 x(BASE\))S 19 x F6(when)S 20 x F48(X)S 19 x F20(=)S
19 x F48(0.0)S -1 x F6(;)S 63 y 383 X(\(3\))S 35 x F48(X)S 21 x(**)S
20 x(Y)S 19 x F6(when)S 20 x F48(X)S 18 x F20(=)S 18 x F48(0.0)S
19 x F6(and)S 20 x F48(Y)S
XP /F21 60 32 3 -2 28 22 24 32 0
<00000380 00000F00 00003C00 0000F000 0003C000 000F0000 003C0000
00F00000 03C00000 0F000000 3C000000 F0000000 F0000000 3C000000
0F000000 03C00000 00F00000 003C0000 000F0000 0003C000 0000F000
00003C00 00000F00 00000380>
PXLC RP
1019 1772 XY F21(<)S 18 x F48(0.0)S F6(;)S 62 y 383 X(\(4\))S 35 x
F48(TAN\(X,)S 20 x(CYCLE\))S 16 x F6(when)S 17 x F48(X)S 15 x F20(=)S
16 x(\()S
XP /F20 50 21 2 0 18 28 28 16 0
<07C0 1830 201C 400C 400E F00F F80F F807 F807 7007 000F 000E 000E
001C 001C 0038 0070 0060 00C0 0180 0300 0601 0C01 1801 1002 3FFE
7FFE FFFE>
PXLC RP
974 1834 XY F20(2)S
XP /F21 107 22 2 0 20 29 29 24 0
<0FC000 01C000 01C000 038000 038000 038000 038000 070000 070000
070000 070000 0E0700 0E1880 0E21C0 0E23C0 1C4780 1C8300 1D0000
1E0000 3F8000 39C000 38E000 38E000 70E100 70E100 70E100 70E200
E06200 603C00>
PXLC RP
995 1834 XY F21(k)S
XP /F20 43 32 2 -4 29 24 28 32 0
<00060000 00060000 00060000 00060000 00060000 00060000 00060000
00060000 00060000 00060000 00060000 00060000 00060000 FFFFFFE0
FFFFFFE0 00060000 00060000 00060000 00060000 00060000 00060000
00060000 00060000 00060000 00060000 00060000 00060000 00060000>
PXLC RP
1027 1834 XY F20(+)S
XP /F20 49 21 4 0 17 28 28 16 0
<0300 0700 3F00 C700 0700 0700 0700 0700 0700 0700 0700 0700 0700
0700 0700 0700 0700 0700 0700 0700 0700 0700 0700 0700 0700 0700
0F80 FFF8>
PXLC RP
1068 1834 XY F20(1\))S
XP /F22 1 12 4 8 8 12 4 8 0
<60 F0 F0 60>
PXLC RP
1116 1834 XY F22(\001)S 10 x F48(CYCLE)S -1 x F21(=)S F48(4.0)S -1 x
F6(,)S 18 x(for)S 17 x(integer)S 17 x F21(k)S 1 x F6(;)S 62 y 383 X
(\(5\))S 35 x F48(COT\(X\))S 20 x F6(when)S 21 x F48(X)S 19 x F20(=)S
20 x F48(0.0)S -1 x F6(;)S 62 y 383 X(\(6\))S 35 x F48(COT\(X,)S
20 x(CYCLE\))S 16 x F6(when)S 18 x F48(X)S 16 x F20(=)S 16 x F21(k)S
12 x F22(\001)S 11 x F48(CYCLE)S -1 x F21(=)S
XP /F48 50 22 2 0 19 25 25 24 0
<07E000 1FF800 7FFE00 783F00 F00F00 F00780 F00380 F00380 000380
000380 000780 000700 000F00 001E00 003C00 007800 00F000 03E000
078000 0F0000 1E0380 3C0380 7FFF80 FFFF80 7FFF80>
PXLC RP
1147 1958 XY F48(2.0)S -1 x F6(,)S 19 x(for)S 18 x(integer)S 18 x
F21(k)S 1 x F6(;)S 63 y 383 X(\(7\))S 35 x F48(COTH\(X\))S 20 x F6
(when)S 21 x F48(X)S 20 x F20(=)S 19 x F48(0.0)S F6(;)S 62 y 383 X
(\(8\))S 35 x F48(ARCTANH\(X\))S 18 x F6(when)S 20 x F48(X)S 18 x
F20(=)S
XP /F22 6 32 2 -1 29 27 28 32 0
<00060000 00060000 00060000 00060000 00060000 00060000 00060000
00060000 00060000 00060000 00060000 00060000 00060000 FFFFFFE0
FFFFFFE0 00060000 00060000 00060000 00060000 00060000 00060000
00060000 00060000 00060000 00060000 00060000 FFFFFFE0 FFFFFFE0>
PXLC RP
905 2083 XY F22(\006)S F48(1.0)S -1 x F6(;)S 21 x(and)S 62 y 383 X
(\(9\))S 35 x F48(ARCCOTH\(X\))S 18 x F6(when)S 21 x F48(X)S 18 x
F20(=)S 19 x F22(\006)S F48(1.0)S F6(.)S 2221 Y 300 X(\(At)S 18 x
(these)S 17 x(ar)S -1 x(guments,)S 18 x(the)S 17 x(corresponding)S
17 x(mathematical)S 18 x(functions)S 17 x(are)S 17 x(in\014nite.\))S
2339 Y 300 X F2(Notes:)S 2432 Y -53 x F6(This)S 21 x(rule)S 21 x
(permits)S 22 x(an)S 21 x(implementation)S 21 x(to)S 21 x(raise)S
21 x(an)S 22 x(exception,)S 22 x(instead)S 21 x(of)S 21 x
(delivering)S 22 x(a)S 21 x(result,)S 22 x(for)S 21 x(ar)S -1 x
(guments)S 50 y 300 X(for)S 18 x(which)S 18 x(the)S 17 x
(mathematical)S 17 x(result)S 18 x(is)S 17 x(close)S 18 x(to)S 18 x
(but)S 17 x(does)S 18 x(not)S 17 x(exceed)S 18 x F48
(FLOAT_TYPE\015SAFE_LARGE)S 13 x F6(in)S 18 x(absolute)S 18 x
(value.)S 49 y 300 X(Such)S 19 x(ar)S -1 x(guments)S 18 x(must)S
18 x(necessarily)S 18 x(be)S 18 x(very)S 18 x(close)S 18 x(to)S 19 x
(an)S 19 x(ar)S -1 x(gument)S 18 x(for)S 18 x(which)S 18 x(the)S
18 x(mathematical)S 18 x(result)S 18 x(does)S 19 x(exceed)S 50 y
300 X F48(FLOAT_TYPE\015SAFE_LARGE)S 14 x F6(in)S 18 x(absolute)S
19 x(value.)S 28 x(In)S 18 x(general,)S 19 x(this)S 19 x(is)S 19 x
(the)S 18 x(best)S 19 x(that)S 19 x(can)S 19 x(be)S 19 x(expected)S
19 x(from)S 19 x(a)S 19 x(portable)S 50 y 300 X(implementation)S
19 x(with)S 19 x(a)S 19 x(reasonable)S 20 x(amount)S 20 x(of)S 20 x
(ef)S -1 x(fort.)S 2711 Y 383 X(The)S 13 x(rule)S 14 x(is)S 14 x
(motivated)S 14 x(by)S 14 x(the)S 13 x(behavior)S 13 x(prescribed)S
14 x(by)S 13 x(the)S 14 x(Ada)S 14 x(Reference)S 14 x(Manual)S 14 x
(for)S 13 x(the)S 14 x(prede\014ned)S 14 x(operations.)S 50 y 300 X
(That)S 13 x(is,)S 13 x(when)S 13 x(the)S 13 x(set)S 13 x(of)S 13 x
(possible)S 13 x(results)S 13 x(of)S 13 x(a)S 13 x(prede\014ned)S
13 x(operation)S 13 x(includes)S 14 x(a)S 13 x(number)S 13 x(whose)S
13 x(absolute)S 13 x(value)S 13 x(exceeds)S 50 y 300 X(the)S 14 x
(implementation-de)S
(\014ned)S 14 x(maximum,)S 14 x(the)S 14 x(implementation)S 14 x(is)S
14 x(allowed)S 14 x(to)S 14 x(raise)S 14 x(the)S 14 x(exception)S
14 x(speci\014ed)S 14 x(for)S 14 x(signaling)S 50 y 300 X
(over\015ow)S 20 x(instead)S 20 x(of)S 20 x(delivering)S 20 x(a)S
20 x(result.)S 2941 Y 383 X(In)S 11 x(the)S 12 x(Ada)S 11 x
(Reference)S 11 x(Manual,)S 11 x(the)S 12 x(exception)S 12 x(speci)S
(\014ed)S 12 x(for)S 12 x(signaling)S 12 x(over\015ow)S 11 x(is)S
12 x F48(NUMERIC_ERROR)S F6(,)S 9 x(but)S 12 x(AI-00387)S 50 y 300 X
(replaces)S 21 x(that)S 21 x(by)S 21 x F48(CONSTRAINT_ERROR)S F6(.)S
3128 Y 1265 X(9)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 300 0 XY
%%EndPageSetup
300 342 XY F50(12.)S 33 x(Under\015ow)S 449 Y 383 X F6
(Floating-point)S 22 x(hardware)S 22 x(is)S 22 x(typically)S 22 x
(incapable)S 22 x(of)S 22 x(representing)S 22 x(nonzero)S 22 x
(numbers)S 22 x(whose)S 22 x(absolute)S 22 x(value)S 22 x(is)S 50 y
300 X(less)S 22 x(than)S 22 x(some)S 22 x(implementation-de\014ned)S
21 x(minimum.)S 34 x(For)S 22 x(the)S 21 x(type)S 21 x F48
(FLOAT_TYPE)S F6(,)S 19 x(that)S 22 x(minimum)S 22 x(will)S 21 x(be)S
22 x(at)S 21 x(most)S 49 y 300 X F48(FLOAT_TYPE\015SAFE_SMALL)S F6
(.)S 18 x(For)S 22 x(the)S 22 x(functions)S 22 x(de\014ned)S 22 x
(by)S 22 x(this)S 21 x(standard,)S 22 x(whenever)S 21 x(the)S 22 x
(maximum)S 21 x(relative)S 21 x(error)S 50 y 300 X(requirements)S
15 x(permit)S 15 x(a)S 15 x(result)S 16 x(whose)S 15 x(absolute)S
15 x(value)S 16 x(is)S 16 x(less)S 16 x(than)S 16 x F48(FLOAT_TYPE)S
(\015SAFE_SMALL)S 11 x F6(and)S 15 x(a)S 15 x(prescribed)S 16 x
(result)S 50 y 300 X(is)S 20 x(not)S 20 x(stipulated,)S 21 x(the)S
20 x(implementation)S 20 x(may)S 726 Y 383 X(\(1\))S 35 x(yield)S
17 x(any)S 16 x(result)S 16 x(permitted)S 16 x(by)S 17 x(the)S 17 x
(maximum)S 17 x(relative)S 16 x(error)S 17 x(requirements;)S 63 y
383 X(\(2\))S 35 x(yield)S 28 x(any)S 28 x(nonzero)S 28 x(result)S
28 x(having)S 28 x(the)S 28 x(correct)S 28 x(sign)S 28 x(and)S 28 x
(an)S 28 x(absolute)S 28 x(value)S 28 x(less)S 29 x(than)S 28 x(or)S
28 x(equal)S 28 x(to)S 49 y 466 X F48(FLOAT_TYPE\015SAFE_SMALL)S F6
(;)S 17 x(or)S 63 y 383 X(\(3\))S 35 x(yield)S 22 x(zero.)S 1021 Y
300 X F2(Notes:)S 1115 Y -53 x F6(Whenever)S 16 x(part)S 17 x(\(2\))S
17 x(or)S 17 x(\(3\))S 17 x(of)S 16 x(this)S 17 x(rule)S 16 x(takes)S
16 x(ef)S -1 x(fect,)S 17 x(the)S 17 x(maximum)S 17 x(relative)S
16 x(error)S 17 x(requirements)S 16 x(are,)S 17 x(in)S 16 x
(general,)S 50 y 300 X(unachievable)S 13 x(and)S 14 x(are)S 13 x
(waived.)S 18 x(In)S 14 x(such)S 13 x(cases,)S 14 x(the)S 14 x
(computed)S 14 x(result)S 14 x(will)S 14 x(exhibit)S 13 x(an)S 13 x
(error)S 13 x(which,)S 13 x(while)S 13 x(not)S 14 x(necessarily)S
50 y 300 X(small)S 16 x(in)S 16 x(relative)S 16 x(terms,)S 17 x(is)S
17 x(small)S 16 x(in)S 16 x(absolute)S 17 x(terms.)S 23 x(The)S 16 x
(absolute)S 16 x(error)S 16 x(will,)S 17 x(in)S 17 x(these)S 17 x
(cases,)S 17 x(be)S 16 x(less)S 16 x(than)S 16 x(or)S 16 x(equal)S
50 y 300 X(to)S 16 x F48(FLOAT_TYPE\015SAFE_SMALL)S -4 x F21(=)S F20
(\()S F48(1.0)S 8 x F22(\000)S
XP /F21 109 36 2 0 34 18 18 32 0
<381F81F0 4E20C618 4640E81C 4680F01C 8F00F01C 8E00E01C 0E00E01C
0E00E01C 1C01C038 1C01C038 1C01C038 1C01C070 38038071 38038071
380380E1 380380E2 70070064 30030038>
PXLC RP
959 1265 XY F21(mr)S 1 x(e)S F20(\))S 1 x F6(,)S 16 x(where)S 15 x
F21(mr)S 1 x(e)S 17 x F6(is)S 16 x(the)S 16 x(maximum)S 15 x
(relative)S 16 x(error)S 16 x(speci\014ed)S 16 x(for)S 16 x(the)S
16 x(function)S 50 y 300 X(under)S 21 x(the)S 21 x(heading)S 21 x
F7(Accuracy)S F6(.)S 1397 Y 383 X(The)S 19 x(rule)S 19 x(permits)S
19 x(an)S 19 x(implementation)S 19 x(to)S 19 x(deliver)S 19 x(a)S
19 x(result)S 19 x(violating)S 19 x(the)S 19 x(maximum)S 19 x
(relative)S 19 x(error)S 19 x(requirements)S 50 y 300 X(for)S 15 x
(ar)S -1 x(guments)S 15 x(for)S 14 x(which)S 14 x(the)S 14 x
(mathematical)S 15 x(result)S 14 x(equals)S 15 x(or)S 15 x(slightly)S
15 x(exceeds)S 15 x F48(FLOAT_TYPE\015SAFE_SMALL)S 10 x F6(in)S 15 x
(absolute)S 50 y 300 X(value.)S 25 x(Such)S 17 x(ar)S -1 x(guments)S
18 x(must)S 17 x(necessarily)S 17 x(be)S 17 x(very)S 17 x(close)S
17 x(to)S 17 x(an)S 17 x(ar)S -1 x(gument)S 17 x(for)S 17 x(which)S
17 x(the)S 17 x(mathematical)S 17 x(result)S 17 x(is)S 17 x(less)S
50 y 300 X(than)S 14 x F48(FLOAT_TYPE\015SAFE_SMALL)S 9 x F6(in)S
13 x(absolute)S 13 x(value.)S 19 x(In)S 14 x(general,)S 14 x(this)S
14 x(is)S 14 x(the)S 13 x(best)S 14 x(that)S 14 x(can)S 14 x(be)S
14 x(expected)S 14 x(from)S 14 x(a)S 14 x(portable)S 49 y 300 X
(implementation)S 19 x(with)S 19 x(a)S 19 x(reasonable)S 20 x
(amount)S 20 x(of)S 20 x(ef)S -1 x(fort.)S 1679 Y 383 X(The)S 18 x
(rule)S 18 x(is)S 18 x(motivated)S 18 x(by)S 18 x(the)S 18 x
(behavior)S 19 x(prescribed)S 18 x(by)S 18 x(the)S 18 x(Ada)S 18 x
(Reference)S 18 x(Manual)S 18 x(for)S 18 x(prede\014ned)S 18 x
(operations.)S 50 y 300 X(That)S 13 x(is,)S 13 x(when)S 13 x(the)S
13 x(set)S 13 x(of)S 13 x(possible)S 13 x(results)S 13 x(of)S 13 x
(a)S 13 x(prede\014ned)S 13 x(operation)S 13 x(includes)S 13 x(a)S
13 x(nonzero)S 13 x(number)S 13 x(whose)S 13 x(absolute)S 13 x
(value)S 50 y 300 X(is)S 19 x(less)S 19 x(than)S 19 x(the)S 19 x
(implementation-de)S
(\014ned)S 19 x(minimum,)S 20 x(the)S 19 x(implementation)S 19 x(is)S
19 x(allowed)S 19 x(to)S 19 x(yield)S 19 x(zero)S 19 x(or)S 18 x
(any)S 19 x(nonzero)S 49 y 300 X(number)S 15 x(having)S 15 x(the)S
15 x(correct)S 15 x(sign)S 15 x(and)S 15 x(an)S 15 x(absolute)S 15 x
(value)S 15 x(less)S 15 x(than)S 15 x(or)S 15 x(equal)S 15 x(to)S
15 x(that)S 15 x(minimum.)S 21 x(An)S 15 x(exception)S 15 x(is)S
15 x(never)S 50 y 300 X(raised)S 23 x(in)S 22 x(this)S 23 x(case.)S
2067 Y 300 X F50(13.)S 33 x(Speci\014cations)S 27 x(of)S 27 x(the)S
27 x(functions)S 2174 Y 383 X F6(Under)S 12 x(the)S 12 x(heading)S
12 x F7(De\014nition)S 12 x F6(in)S 12 x(each)S 12 x(of)S 12 x(the)S
12 x(following)S 12 x(subsections,)S 13 x(the)S 12 x(semantics)S
13 x(of)S 12 x(an)S 12 x(Ada)S 12 x(call)S 12 x(to)S 12 x(the)S 13 x
(function)S 50 y 300 X(being)S 16 x(de\014ned)S 16 x(is)S 17 x
(provided)S 16 x(by)S 16 x(a)S 17 x(mathematical)S 16 x
(de\014nition)S 16 x(in)S 16 x(the)S 16 x(form)S 16 x(of)S 16 x(an)S
16 x(approximation.)S 23 x(The)S 16 x(left-hand)S 16 x(side)S 16 x
(\(the)S 50 y 300 X(function)S 15 x(call\))S 14 x(is)S 14 x(set)S
14 x(in)S 15 x(the)S 14 x(\014xed-width)S 14 x(font)S 15 x(used)S
14 x(throughout)S 15 x(this)S 14 x(document)S 15 x(for)S 15 x
(program)S 15 x(fragments.)S 20 x(The)S 14 x(right-hand)S 49 y 300 X
(side)S 12 x(is)S 12 x(to)S 12 x(be)S 12 x(interpreted)S 12 x(as)S
12 x(an)S 12 x(exact)S 12 x(mathematical)S 12 x(formula;)S 12 x(as)S
12 x(such,)S 13 x(it)S 12 x(and)S 11 x(similar)S 12 x(mathematical)S
12 x(formulas)S 12 x(throughout)S 50 y 300 X(this)S 17 x(document)S
17 x(employ)S 17 x(standard)S 18 x(mathematical)S 17 x(symbols,)S
18 x(notation,)S 18 x(and)S 17 x(fonts)S 17 x(\(except)S 18 x(for)S
17 x(variable)S 17 x(names)S 17 x(and)S 17 x(some)S 50 y 300 X(real)S
15 x(literals,)S 15 x(which)S 15 x(are)S 15 x(set)S 15 x(in)S 15 x
(the)S 15 x(\014xed-width)S 15 x(\252program-fragment\272)S 15 x
(font\).)S 21 x(The)S 15 x(degree)S 15 x(to)S 15 x(which)S 15 x(the)S
15 x(function)S 15 x(call)S 14 x(on)S 50 y 300 X(the)S 15 x
(left-hand)S 15 x(side)S 15 x(is)S 15 x(allowed)S 15 x(to)S 15 x
(approximate)S 15 x(the)S 15 x(value)S 15 x(of)S 15 x(the)S 15 x
(formula)S 15 x(on)S 15 x(the)S 15 x(right-hand)S 15 x(side)S 15 x
(is,)S 15 x(of)S 15 x(course,)S 15 x(spelled)S 50 y 300 X(out)S 19 x
(under)S 19 x(the)S 19 x(heading)S 19 x F7(Accuracy)S F6(,)S 19 x
(as)S 18 x(discussed)S 19 x(in)S 19 x(Section)S 19 x(10.)S 2683 Y
300 X F50(13.1.)S 33 x(SQRT)S 28 x(\320)S 28 x(Square)S 28 x(Root)S
2839 Y 383 X F2(Declaration:)S 2994 Y 466 X F48(function)S 20 x
(SQRT)S 21 x(\(X)S 22 x(:)S 21 x(FLOAT_TYPE\))S 20 x(return)S 20 x
(FLOAT_TYPE;)S 3128 Y 1254 X F6(10)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 717
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(De\014nition:)S 459 Y 466 X F48(SQRT\(X\))S
XP /F22 25 32 2 1 29 20 19 32 0
<07C00020 1FE00020 3FF80020 783C0060 E01F00E0 C00783C0 8003FF80
8000FF00 80007C00 00000000 07C00020 1FE00020 3FF80020 783C0060
E01F00E0 C00783C0 8003FF80 8000FF00 80007C00>
PXLC RP
639 459 XY F22(\031)S
XP /F22 112 35 2 -40 36 2 42 40 0
<00000000C0 00000001C0 0000000180 0000000380 0000000300 0000000700
0000000600 0000000E00 0000000C00 0000001C00 0000001800 0000003800
0000003000 0000007000 0000006000 000000E000 000000C000 000001C000
0000018000 0000038000 0000030000 0C00070000 3C00060000 4E000E0000
8E000C0000 07001C0000 0700180000 0380380000 0380300000 0380700000
01C0600000 01C0E00000 00E0C00000 00E1C00000 0071800000 0073800000
003B000000 003F000000 001E000000 001E000000 000C000000 000C000000>
PXLC RP
692 425 XY F22(p)S 726 425 XY 22 2 R 34 y -22 x F48(X)S 607 Y 383 X
F2(Usage:)S
XP /F48 90 22 2 0 19 25 25 24 0
<7FFF80 FFFF80 FFFF80 E00700 E00F00 E01E00 E01C00 003C00 007800
007000 00F000 01E000 01C000 03C000 078000 070000 0F0000 1E0380
1C0380 3C0380 780380 700380 FFFF80 FFFF80 FFFF80>
PXLC RP
466 755 XY F48(Z)S 22 x(:=)S 21 x(SQRT\(X\);)S 902 Y 383 X F2
(Domain:)S 1020 Y 466 X F48(X)S
XP /F22 21 32 3 -8 28 26 34 32 0
<C0000000 F0000000 3C000000 0F000000 03C00000 00F00000 003C0000
000F0000 0003C000 0000F000 00003C00 00000F00 00000380 00000F00
00003C00 0000F000 0003C000 000F0000 003C0000 00F00000 03C00000
0F000000 3C000000 F0000000 C0000000 00000000 00000000 00000000
00000000 00000000 00000000 00000000 FFFFFF80 FFFFFF80>
PXLC RP
509 1020 XY F22(\025)S 21 x F48(0.0)S 1168 Y 383 X F2(Range:)S 1285 Y
-69 x F48(SQRT\(X\))S 19 x F22(\025)S 21 x F48(0.0)S 1433 Y 383 X
F2(Accuracy:)S 1550 Y 466 X F6(\(a\))S 37 x(Maximum)S 17 x(relative)S
17 x(error)S 17 x F20(=)S 15 x F48(2.0)S 10 x F22(\001)S 10 x F48
(FLOAT_TYPE)S
(\015BASE\015EPSILON)S 62 y 466 X F6(\(b\))S 35 x F48(SQRT\(0.0\))S
18 x F20(=)S 20 x F48(0.0)S 1760 Y 383 X F2(Notes:)S 1877 Y -53 x
F6(The)S 16 x(upper)S 16 x(bound)S 16 x(of)S 16 x(the)S 16 x
(reachable)S 16 x(range)S 16 x(of)S 16 x F48(SQRT)S 16 x F6(is)S
16 x(approximately)S 16 x(given)S 16 x(by)S 1979 Y 925 X F48
(SQRT\(X\))S
XP /F22 20 32 3 -8 28 26 34 32 0
<00000180 00000780 00001E00 00007800 0001E000 00078000 001E0000
00780000 01E00000 07800000 1E000000 78000000 E0000000 78000000
1E000000 07800000 01E00000 00780000 001E0000 00078000 0001E000
00007800 00001E00 00000780 00000180 00000000 00000000 00000000
00000000 00000000 00000000 00000000 FFFFFF80 FFFFFF80>
PXLC RP
1089 1979 XY F22(\024)S -33 y 12 x(p)S 1167 1946 XY 458 2 R 33 y
1167 X F48(FLOAT_TYPE\015SAFE_LARGE)S 2134 Y 300 X F50(13.2.)S 33 x
(LOG)S 27 x(\320)S 27 x(Natural)S 27 x(Logarithm)S 2282 Y 383 X F2
(Declaration:)S 2430 Y 466 X F48(function)S 20 x(LOG)S 21 x(\(X)S
22 x(:)S 21 x(FLOAT_TYPE\))S 20 x(return)S 20 x(FLOAT_TYPE;)S 2578 Y
383 X F2(De\014nition:)S 2695 Y 466 X F48(LOG\(X\))S 19 x F22(\031)S
XP /F20 108 12 1 0 10 29 29 16 0
<FC00 1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00
1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00
1C00 1C00 FF80>
PXLC RP
670 2695 XY F20(l)S
XP /F20 111 21 1 0 19 18 18 24 0
<03F000 0E1C00 180600 300300 700380 600180 E001C0 E001C0 E001C0
E001C0 E001C0 E001C0 600180 700380 300300 180600 0E1C00 03F000>
PXLC RP
681 2695 XY F20(o)S
XP /F20 103 21 1 -9 19 19 28 24 0
<000380 03C4C0 0C38C0 1C3880 181800 381C00 381C00 381C00 381C00
181800 1C3800 0C3000 13C000 100000 300000 180000 1FF800 1FFF00
1FFF80 300380 6001C0 C000C0 C000C0 C000C0 600180 300300 1C0E00
07F800>
PXLC RP
702 2695 XY F20(g)S
XP /F55 /cmmi7 300 29.1 29.1 128 [-1 -7 32 22] PXLNF RP
XP /F55 101 16 2 0 13 13 13 16 0
<0780 0C40 1020 3040 6040 7F80 6000 4000 C000 4020 6040 2180 1E00>
PXLC RP
723 2705 XY F55(e)S -10 y 9 x F48(X)S 2843 Y 383 X F2(Usage:)S 2991 Y
-61 x F48(Z)S 22 x(:=)S 21 x(LOG\(X\);)S 64 x(--)S 21 x(natura)S
XP /F48 108 22 2 0 19 25 25 24 0
<FFC000 FFC000 FFC000 01C000 01C000 01C000 01C000 01C000 01C000
01C000 01C000 01C000 01C000 01C000 01C000 01C000 01C000 01C000
01C000 01C000 01C000 01C000 FFFF80 FFFF80 FFFF80>
PXLC RP
989 2991 XY F48(l)S 22 x(logarithm)S 3128 Y 23 x F6(11)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 428 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Domain:)S 455 Y 466 X F48(X)S 21 x F22(\025)S 21 x F48
(0.0)S 599 Y 383 X F2(Range:)S 713 Y -69 x F6(Mathematically)S 20 x
(unbounded)S 856 Y 383 X F2(Accuracy:)S 970 Y 466 X F6(\(a\))S 37 x
(Maximum)S 17 x(relative)S 17 x(error)S 17 x F20(=)S 15 x F48(4.0)S
10 x F22(\001)S 10 x F48(FLOAT_TYPE\015BASE\015EPSILON)S 62 y 466 X
F6(\(b\))S 35 x F48(LOG\(1.0\))S 18 x F20(=)S 20 x F48(0.0)S 1176 Y
383 X F2(Notes:)S 1289 Y -53 x F6(\(a\))S 37 x(The)S 17 x(reachable)S
18 x(range)S 18 x(of)S 18 x F48(LOG)S 17 x F6(is)S 17 x
(approximately)S 18 x(given)S 17 x(by)S 1390 Y 660 X F20(log)S 10 y
-1 x F55(e)S -10 y 9 x F48(FLOAT_TYPE\015SAFE_SMALL)S 7 x F22(\024)S
12 x F48(LOG\(X\))S 10 x F22(\024)S 12 x F20(log)S 10 y F55(e)S -10 y
9 x F48(FLOAT_TYPE\015SAFE_LARGE)S 1503 Y 466 X F6(\(b\))S 35 x
(When)S 20 x F48(X)S 18 x F20(=)S 18 x F48(0.0)S F6(,)S 21 x(see)S
20 x(Section)S 20 x(11.)S 1654 Y 300 X F50(13.3.)S 33 x(LOG)S 25 x
(\320)S 24 x(Logarithm)S 25 x(to)S 25 x(an)S 24 x(Arbitrary)S 25 x
(Base)S 1797 Y 383 X F2(Declaration:)S 1941 Y 466 X F48(function)S
20 x(LOG)S 21 x(\(X,)S 22 x(BASE)S 20 x(:)S 22 x(FLOAT_TYPE\))S 20 x
(return)S 20 x(FLOAT_TYPE;)S 2084 Y 383 X F2(De\014nition:)S 2198 Y
466 X F48(LOG\(X,BASE\))S 17 x F22(\031)S 20 x F20(log)S
XP /F65 /cmtt10 300 41.5 29.1 128 [0 -10 22 29] PXLF RP
XP /F65 66 21 1 0 19 25 25 24 0
<7FF800 FFFE00 7FFF00 1C0F00 1C0780 1C0380 1C0380 1C0380 1C0780
1C0700 1FFF00 1FFE00 1FFE00 1C1F00 1C0380 1C03C0 1C01C0 1C01C0
1C01C0 1C01C0 1C03C0 1C0780 7FFF80 FFFF00 7FFC00>
PXLC RP
830 2208 XY F65(B)S
XP /F65 65 21 1 0 20 25 25 24 0
<00E000 01F000 01F000 01B000 01B000 03B800 03B800 03B800 031800
071C00 071C00 071C00 071C00 071C00 0E0E00 0E0E00 0FFE00 0FFE00
1FFF00 1C0700 1C0700 1C0700 7F1FC0 FF1FE0 7F1FC0>
PXLC RP
846 2208 XY F65(A)S
XP /F65 83 21 2 0 19 25 25 24 0
<07E300 1FFF00 7FFF00 781F00 F00F00 E00700 E00700 E00000 F00000
780000 7F8000 1FF000 07FC00 00FE00 000F00 000780 000380 000380
E00380 E00380 F00780 F80F00 FFFE00 FFFC00 C7F000>
PXLC RP
861 2208 XY F65(S)S
XP /F65 69 21 1 0 20 25 25 24 0
<7FFFC0 FFFFC0 7FFFC0 1C01C0 1C01C0 1C01C0 1C01C0 1C0000 1C0000
1C1C00 1C1C00 1FFC00 1FFC00 1FFC00 1C1C00 1C1C00 1C0000 1C00E0
1C00E0 1C00E0 1C00E0 1C00E0 7FFFE0 FFFFE0 7FFFE0>
PXLC RP
876 2208 XY F65(E)S -10 y 9 x F48(X)S 2342 Y 383 X F2(Usage:)S 2485 Y
-61 x F48(Z)S 22 x(:=)S 21 x(LOG\(X,)S 21 x(10.0\);)S 64 x(--)S
XP /F48 98 22 0 0 20 25 25 24 0
<7E0000 FE0000 7E0000 0E0000 0E0000 0E0000 0E0000 0E3E00 0EFF80
0FFFC0 0F83E0 0F01E0 0E00F0 0E00F0 0E0070 0E0070 0E0070 0E0070
0E00F0 0F00E0 0F01E0 0F83C0 0FFFC0 0EFF00 063C00>
PXLC RP
989 2485 XY F48(base)S 21 x(10)S 21 x(logarithm)S 50 y 466 X(Z)S
22 x(:=)S 21 x(LOG\(X,)S 21 x(2.0\);)S 924 X(--)S 21 x(base)S 21 x
(2)S 22 x(logarithm)S 50 y 466 X(Z)S 22 x(:=)S 21 x(LOG\(X,)S 21 x
(BASE\);)S 64 x(--)S 21 x(base)S 21 x(BASE)S 21 x(logarithm)S 2728 Y
383 X F2(Domain:)S 2842 Y 466 X F6(\(a\))S 37 x F48(X)S 20 x F22
(\025)S 21 x F48(0.0)S 62 y 466 X F6(\(b\))S 35 x F48(BASE)S
XP /F21 62 32 3 -2 28 22 24 32 0
<E0000000 78000000 1E000000 07800000 01E00000 00780000 001E0000
00078000 0001E000 00007800 00001E00 00000780 00000780 00001E00
00007800 0001E000 00078000 001E0000 00780000 01E00000 07800000
1E000000 78000000 E0000000>
PXLC RP
656 2904 XY F21(>)S 21 x F48(0.0)S 62 y 466 X F6(\(c\))S 37 x F48
(BASE)S
XP /F22 54 0 6 -10 25 30 40 24 0
<000060 000060 0000E0 0000C0 0001C0 000180 000380 000300 000700
000600 000600 000E00 000C00 001C00 001800 003800 003000 007000
006000 00E000 00C000 00C000 01C000 018000 038000 030000 070000
060000 0E0000 0C0000 0C0000 1C0000 180000 380000 300000 700000
600000 E00000 C00000 C00000>
PXLC RP
656 2966 XY F22(6)S F20(=)S 21 x F48(1.0)S 3128 Y 1254 X F6(12)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 474 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Range:)S 453 Y -69 x F6(Mathematically)S 20 x
(unbounded)S 592 Y 383 X F2(Accuracy:)S 704 Y 466 X F6(\(a\))S 37 x
(Maximum)S 17 x(relative)S 17 x(error)S 17 x F20(=)S 15 x F48(4.0)S
10 x F22(\001)S 10 x F48(FLOAT_TYPE\015BASE\015EPSILON)S 62 y 466 X
F6(\(b\))S 35 x F48(LOG\(1.0,)S 19 x(BASE\))S 18 x F20(=)S 19 x F48
(0.0)S 906 Y 383 X F2(Notes:)S 1017 Y -53 x F6(\(a\))S 37 x(When)S
16 x F48(BASE)S 13 x F21(>)S 14 x F48(1.0)S F6(,)S 16 x(the)S 16 x
(reachable)S 16 x(range)S 16 x(of)S 16 x F48(LOG)S 15 x F6(is)S 16 x
(approximately)S 16 x(given)S 16 x(by)S 1109 Y 708 X F20(log)S 10 y
-1 x F65(BASE)S -10 y 10 x F48(FLOAT_TYPE\015SAFE_SMALL)S 7 x F22
(\024)S 12 x F48(LOG\(X,)S 20 x(BASE\))S 63 y 1300 X F22(\024)S 12 x
F20(log)S 10 y F65(BASE)S -10 y 10 x F48(FLOAT_TYPE\015SAFE_LARGE)S
1275 Y 466 X F6(\(b\))S 35 x(When)S 15 x F48(0.0)S 13 x F21(<)S 13 x
F48(BASE)S 13 x F21(<)S 13 x F48(1.0)S -1 x F6(,)S 15 x(the)S 15 x
(reachable)S 16 x(range)S 15 x(of)S 15 x F48(LOG)S 15 x F6(is)S 16 x
(approximately)S 16 x(given)S 15 x(by)S 1367 Y 708 X F20(log)S 10 y
-1 x F65(BASE)S -10 y 10 x F48(FLOAT_TYPE\015SAFE_LARGE)S 7 x F22
(\024)S 12 x F48(LOG\(X,)S 20 x(BASE\))S 63 y 1300 X F22(\024)S 12 x
F20(log)S 11 y F65(BASE)S -11 y 10 x F48(FLOAT_TYPE\015SAFE_SMALL)S
1533 Y 466 X F6(\(c\))S 37 x(When)S 20 x F48(X)S 18 x F20(=)S 18 x
F48(0.0)S F6(,)S 21 x(see)S 20 x(Section)S 20 x(11.)S 1682 Y 300 X
F50(13.4.)S 33 x(EXP)S 26 x(\320)S 27 x(Exponential)S 27 x(Function)S
1821 Y 383 X F2(Declaration:)S 1962 Y 466 X F48(function)S 20 x(EXP)S
21 x(\(X)S 22 x(:)S 21 x(FLOAT_TYPE\))S 20 x(return)S 20 x
(FLOAT_TYPE;)S 2101 Y 383 X F2(De\014nition:)S 2213 Y 466 X F48
(EXP\(X\))S 19 x F22(\031)S 21 x F21(e)S
XP /F65 88 21 1 0 20 25 25 24 0
<7F1F80 7F3F80 7F1F80 0E1E00 0E1C00 073C00 073800 03B800 03F000
01F000 01E000 00E000 01E000 01F000 03F000 03B800 07B800 071C00
071C00 0E0E00 0E0E00 1C0700 7F1FC0 FF1FE0 7F1FC0>
PXLC RP
690 2198 XY F65(X)S 2352 Y 383 X F2(Usage:)S 2493 Y -61 x F48(Z)S
22 x(:=)S 21 x(EXP\(X\);)S 64 x(--)S 21 x(e)S 22 x(raised)S 20 x(to)S
22 x(the)S 21 x(power)S 21 x(X)S 2632 Y 383 X F2(Domain:)S 2743 Y
466 X F6(Mathematically)S 20 x(unbounded)S 2883 Y 383 X F2(Range:)S
2994 Y -69 x F48(EXP\(X\))S 19 x F22(\025)S 21 x F48(0.0)S 3128 Y
1254 X F6(13)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 468 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Accuracy:)S 450 Y 466 X F6(\(a\))S 37 x(Maximum)S 17 x
(relative)S 17 x(error)S 17 x F20(=)S 15 x F48(4.0)S 10 x F22(\001)S
10 x F48(FLOAT_TYPE\015BASE\015EPSILON)S 62 y 466 X F6(\(b\))S 35 x
F48(EXP\(0.0\))S 18 x F20(=)S 20 x F48(1.0)S 647 Y 383 X F2(Notes:)S
755 Y -53 x F6(The)S 18 x(usable)S 18 x(domain)S 19 x(of)S 18 x F48
(EXP)S 18 x F6(is)S 19 x(approximately)S 19 x(given)S 18 x(by)S
840 Y 968 X F48(X)S 12 x F22(\024)S 12 x F20(log)S 10 y -1 x F55(e)S
-10 y 9 x F48(FLOAT_TYPE\015SAFE_LARGE)S 986 Y 300 X F50(13.5.)S
33 x(\201**\201)S 26 x(\320)S 26 x(Exponentiation)S 26 x(Operator)S
1120 Y 383 X F2(Declaration:)S 1258 Y 466 X F48(function)S 20 x
("**")S 21 x(\(X,)S 21 x(Y)S 22 x(:)S 21 x(FLOAT_TYPE\))S 20 x
(return)S 21 x(FLOAT_TYPE;)S 1392 Y 383 X F2(De\014nition:)S 1500 Y
466 X F48(X)S 21 x(**)S 20 x(Y)S 20 x F22(\031)S 21 x F48(X)S
XP /F65 89 21 1 0 20 25 25 24 0
<FE0FE0 FF1FE0 FE0FE0 1C0700 1C0700 0E0E00 0E0E00 071C00 071C00
071C00 03B800 03B800 01F000 01F000 00E000 00E000 00E000 00E000
00E000 00E000 00E000 00E000 03F800 07FC00 03F800>
PXLC RP
690 1485 XY F65(Y)S 1635 Y 383 X F2(Usage:)S 1772 Y -61 x F48(Z)S
22 x(:=)S 21 x(X)S 22 x(**)S 21 x(Y;)S 65 x(--)S 21 x(X)S 22 x
(raised)S 20 x(to)S 22 x(the)S 21 x(power)S 21 x(Y)S 1907 Y 383 X
F2(Domain:)S 2015 Y 466 X F6(\(a\))S 37 x F48(X)S 20 x F22(\025)S
21 x F48(0.0)S 63 y 466 X F6(\(b\))S 35 x F48(Y)S 19 x F22(6)S F20
(=)S 19 x F48(0.0)S 20 x F6(when)S 20 x F48(X)S 19 x F20(=)S 19 x
F48(0.0)S 2212 Y 383 X F2(Range:)S 2321 Y -69 x F48(X)S 21 x(**)S
20 x(Y)S 20 x F22(\025)S 21 x F48(0.0)S 2455 Y 383 X F2(Accuracy:)S
2564 Y 466 X F6(\(a\))S 37 x(Maximum)S 19 x(relative)S 19 x(error)S
19 x(\(when)S 18 x F48(X)S 17 x F21(>)S 17 x F48(0.0)S -1 x F6(\))S
19 x F20(=)S
XP /F23 18 31 9 -97 29 2 99 24 0
<000030 000060 0000C0 000180 000300 000700 000E00 000C00 001800
003800 003000 007000 00E000 00C000 01C000 018000 038000 038000
030000 070000 060000 0E0000 0E0000 0C0000 1C0000 1C0000 1C0000
180000 380000 380000 380000 380000 700000 700000 700000 700000
700000 700000 700000 E00000 E00000 E00000 E00000 E00000 E00000
E00000 E00000 E00000 E00000 E00000 E00000 E00000 E00000 E00000
E00000 E00000 E00000 E00000 E00000 E00000 700000 700000 700000
700000 700000 700000 700000 380000 380000 380000 380000 180000
1C0000 1C0000 1C0000 0C0000 0E0000 0E0000 060000 070000 030000
038000 038000 018000 01C000 00C000 00E000 007000 003000 003800
001800 000C00 000E00 000700 000300 000180 0000C0 000060 000030>
PXLC RP
870 2608 XY F23(\022)S 59 y -1 x F48(4.0)S 9 x F20(+)S
XP /F22 106 12 5 -10 7 31 41 8 0
<C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0
C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0 C0>
PXLC RP
1021 2639 XY F22(j)S F48(Y)S 9 x F22(\001)S 9 x F20(log)S 10 y -1 x
F55(e)S -10 y 9 x F48(X)S F22(j)S 1021 2657 XY 175 2 R
XP /F48 51 22 2 0 19 25 25 24 0
<07E000 1FFC00 7FFE00 781F00 780F00 780700 000700 000F00 000F00
003E00 07FC00 07F800 07FC00 001E00 000700 000780 000380 000380
F00380 F00780 F00700 F81F00 7FFE00 3FFC00 07E000>
PXLC RP
1065 2695 XY F48(32.0)S
XP /F23 19 31 1 -97 21 2 99 24 0
<C00000 600000 300000 180000 0C0000 0E0000 070000 030000 018000
01C000 00C000 00E000 007000 003000 003800 001800 001C00 001C00
000C00 000E00 000600 000700 000700 000300 000380 000380 000380
000180 0001C0 0001C0 0001C0 0001C0 0000E0 0000E0 0000E0 0000E0
0000E0 0000E0 0000E0 000070 000070 000070 000070 000070 000070
000070 000070 000070 000070 000070 000070 000070 000070 000070
000070 000070 000070 000070 000070 000070 0000E0 0000E0 0000E0
0000E0 0000E0 0000E0 0000E0 0001C0 0001C0 0001C0 0001C0 000180
000380 000380 000380 000300 000700 000700 000600 000E00 000C00
001C00 001C00 001800 003800 003000 007000 00E000 00C000 01C000
018000 030000 070000 0E0000 0C0000 180000 300000 600000 C00000>
PXLC RP
1201 2608 XY F23(\023)S 59 y 9 x F22(\001)S 9 x F48
(FLOAT_TYPE\015BASE)S
(\015EPSILON)S 2783 Y 466 X F6(\(b\))S 35 x F48(X)S 21 x(**)S 20 x
(0.0)S 17 x F20(=)S 19 x F48(1.0)S 19 x F6(when)S 20 x F48(X)S 17 x
F21(>)S 19 x F48(0.0)S 62 y 466 X F6(\(c\))S 37 x F48(0.0)S 20 x(**)S
21 x(Y)S 17 x F20(=)S 19 x F48(0.0)S 19 x F6(when)S 20 x F48(Y)S
17 x F21(>)S 19 x F48(0.0)S 62 y 466 X F6(\(d\))S 35 x F48(X)S 21 x
(**)S 20 x(1.0)S 19 x F20(=)S 21 x F48(X)S 62 y 466 X F6(\(e\))S
37 x F48(1.0)S 20 x(**)S 21 x(Y)S 19 x F20(=)S 20 x F48(1.0)S 3128 Y
1254 X F6(14)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 423 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Notes:)S 456 Y -53 x F6(\(a\))S 37 x(The)S 11 x
(usable)S 11 x(domain)S 11 x(of)S 11 x F48("**")S F6(,)S 11 x(when)S
11 x F48(X)S 12 x F21(>)S 12 x F48(0.0)S -1 x F6(,)S 12 x(is)S 11 x
(approximately)S 12 x(the)S 12 x(set)S 11 x(of)S 12 x(values)S 11 x
(for)S 11 x F48(X)S 11 x F6(and)S 11 x F48(Y)S 11 x F6(satisfying)S
557 Y 945 X F48(Y)S 9 x F22(\001)S 9 x F20(log)S 10 y -1 x F55(e)S
-10 y 9 x F48(X)S 11 x F22(\024)S 12 x F20(log)S 10 y F55(e)S -10 y
9 x F48(FLOAT_TYPE\015SAFE_LARGE)S 657 Y 549 X F6(This)S 14 x
(imposes)S 13 x(a)S 14 x(positive)S 14 x(upper)S 14 x(bound)S 14 x
(on)S 14 x F48(Y)S 14 x F6(\(as)S 14 x(a)S 14 x(function)S 14 x(of)S
13 x F48(X)S F6(\))S 14 x(when)S 13 x F48(X)S 12 x F21(>)S 12 x F48
(1.0)S -1 x F6(,)S 14 x(and)S 14 x(a)S 14 x(negative)S 13 x(lower)S
50 y 549 X(bound)S 18 x(on)S 18 x F48(Y)S 17 x F6(\(as)S 17 x(a)S
17 x(function)S 17 x(of)S 18 x F48(X)S F6(\))S 17 x(when)S 17 x F48
(0.0)S 16 x F21(<)S 16 x F48(X)S 15 x F21(<)S 16 x F48(1.0)S F6(.)S
63 y 466 X(\(b\))S 35 x(When)S 18 x F48(X)S 15 x F20(=)S 16 x F48
(0.0)S 17 x F6(and)S 18 x F48(Y)S 16 x F21(<)S 16 x F48(0.0)S 17 x
F6(\(together\),)S 18 x(see)S 17 x(Section)S 18 x(11.)S 921 Y 300 X
F50(13.6.)S 33 x(SIN)S 20 x(\320)S 19 x(T)S -3 x(rigonometric)S 19 x
(Sine)S 19 x(Function,)S 71 y 656 X(Natural)S 25 x(Cycle)S 24 x
(\(Angle)S 24 x(in)S 24 x(Radians\))S 1136 Y 383 X F2(Declaration:)S
1280 Y 466 X F48(function)S 20 x(SIN)S 21 x(\(X)S 22 x(:)S 21 x
(FLOAT_TYPE\))S 20 x(return)S 20 x(FLOAT_TYPE;)S 1425 Y 383 X F2(De)S
(\014nition:)S 1539 Y 466 X F48(SIN\(X\))S 19 x F22(\031)S
XP /F20 115 16 1 0 14 18 18 16 0
<1F90 3070 4030 C010 C010 E010 F800 7F80 3FE0 0FF0 00F8 8038 8018
C018 C018 E010 D060 8FC0>
PXLC RP
670 1539 XY F20(s)S
XP /F20 105 12 1 0 10 29 29 16 0
<1800 3C00 3C00 1800 0000 0000 0000 0000 0000 0000 0000 FC00 1C00
1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00
1C00 1C00 FF80>
PXLC RP
686 1539 XY F20(i)S
XP /F20 110 23 1 0 21 18 18 24 0
<FC7C00 1C8700 1D0300 1E0380 1C0380 1C0380 1C0380 1C0380 1C0380
1C0380 1C0380 1C0380 1C0380 1C0380 1C0380 1C0380 1C0380 FF9FF0>
PXLC RP
698 1539 XY F20(n)S 7 x F48(X)S 1683 Y 383 X F2(Usage:)S 1827 Y -61 x
F48(Z)S 22 x(:=)S 21 x(SIN\(X\);)S 64 x(--)S 21 x(X)S 22 x(in)S 21 x
(radians)S 1972 Y 383 X F2(Domain:)S 2086 Y 466 X F6(Mathematically)S
20 x(unbounded)S 2230 Y 383 X F2(Range:)S 2345 Y -69 x F22(j)S F48
(SIN\(X\))S -2 x F22(j)S 20 x(\024)S 21 x F48(1.0)S 2489 Y 383 X F2
(Accuracy:)S 2603 Y 466 X F6(\(a\))S 37 x(Maximum)S 12 x(relative)S
12 x(error)S 12 x F20(=)S 12 x F48(2.0)S 6 x F22(\001)S 6 x F48
(FLOAT_TYPE)S
(\015BASE\015EPSILON)S 7 x F6(when)S 12 x F22(j)S F48(X)S F22(j)S
11 x F6(is)S 12 x(less)S 12 x(than)S 13 x(or)S 13 x(equal)S 13 x(to)S
12 x(some)S 50 y 549 X(documented)S 16 x(implementation-dependent)S
15 x(threshold,)S 16 x(which)S 16 x(must)S 15 x(not)S 16 x(be)S 15 x
(less)S 15 x(than)S 2754 Y 832 X F48(FLOAT_TYPE\015MACHINE_RADIX)S
XP /F65 70 21 1 0 20 25 25 24 0
<FFFFE0 FFFFE0 FFFFE0 1C00E0 1C00E0 1C00E0 1C00E0 1C0000 1C0000
1C1C00 1C1C00 1FFC00 1FFC00 1FFC00 1C1C00 1C1C00 1C0000 1C0000
1C0000 1C0000 1C0000 1C0000 FF8000 FFC000 FF8000>
PXLC RP
1355 2737 XY F65(F)S
XP /F65 76 21 1 0 20 25 25 24 0
<FFC000 FFC000 FFC000 1C0000 1C0000 1C0000 1C0000 1C0000 1C0000
1C0000 1C0000 1C0000 1C0000 1C0000 1C0000 1C0000 1C0000 1C0040
1C00E0 1C00E0 1C00E0 1C00E0 FFFFE0 FFFFE0 FFFFE0>
PXLC RP
1370 2737 XY F65(L)S
XP /F65 79 21 2 0 19 25 25 24 0
<1FFC00 3FFE00 7FFF00 780F00 F00780 E00380 E00380 E00380 E00380
E00380 E00380 E00380 E00380 E00380 E00380 E00380 E00380 E00380
E00380 F00780 F00780 780F00 7FFF00 3FFE00 1FFC00>
PXLC RP
1385 2737 XY F65(OA)S
XP /F65 84 21 1 0 20 25 25 24 0
<7FFFE0 FFFFE0 FFFFE0 E0E0E0 E0E0E0 E0E0E0 E0E0E0 00E000 00E000
00E000 00E000 00E000 00E000 00E000 00E000 00E000 00E000 00E000
00E000 00E000 00E000 00E000 07FC00 0FFE00 07FC00>
PXLC RP
1416 2737 XY F65(T)S
XP /F65 95 21 2 -4 19 -1 3 24 0
<FFFF80 FFFF80 FFFF80>
PXLC RP
1431 2737 XY F65(_TY)S
XP /F65 80 21 1 0 19 25 25 24 0
<7FF800 FFFE00 7FFF00 1C0F80 1C0380 1C03C0 1C01C0 1C01C0 1C01C0
1C03C0 1C0380 1C0F80 1FFF00 1FFE00 1FF800 1C0000 1C0000 1C0000
1C0000 1C0000 1C0000 1C0000 7F0000 FF8000 7F0000>
PXLC RP
1477 2737 XY F65(PE)S
XP /F65 13 21 8 14 13 26 12 8 0
<20 70 F8 70 70 70 70 70 70 70 70 70>
PXLC RP
1507 2737 XY F65(\015)S
XP /F65 77 21 1 0 20 25 25 24 0
<FC07E0 FE0FE0 FE0FE0 3A0B80 3B1B80 3B1B80 3B1B80 3B1B80 3B1B80
3BBB80 39B380 39B380 39B380 39B380 39F380 38E380 38E380 380380
380380 380380 380380 380380 FE0FE0 FE0FE0 FE0FE0>
PXLC RP
1523 2737 XY F65(MA)S
XP /F65 67 21 2 0 19 25 25 24 0
<01F180 07FF80 0FFF80 1F0F80 3C0780 780780 780380 700380 F00000
E00000 E00000 E00000 E00000 E00000 E00000 E00000 F00000 700380
780380 780380 3C0780 1F0F00 0FFE00 07FC00 01F000>
PXLC RP
1553 2737 XY F65(C)S
XP /F65 72 21 1 0 20 25 25 24 0
<7F1FC0 FFBFE0 7F1FC0 1C0700 1C0700 1C0700 1C0700 1C0700 1C0700
1C0700 1FFF00 1FFF00 1FFF00 1C0700 1C0700 1C0700 1C0700 1C0700
1C0700 1C0700 1C0700 1C0700 7F1FC0 FFBFE0 7F1FC0>
PXLC RP
1568 2737 XY F65(H)S
XP /F65 73 21 3 0 18 25 25 16 0
<FFFE FFFE FFFE 0380 0380 0380 0380 0380 0380 0380 0380 0380 0380
0380 0380 0380 0380 0380 0380 0380 0380 0380 FFFE FFFE FFFE>
PXLC RP
1584 2737 XY F65(I)S
XP /F65 78 21 1 0 20 25 25 24 0
<7E1FC0 FF3FE0 7F1FC0 1D0700 1D8700 1D8700 1D8700 1DC700 1DC700
1CC700 1CC700 1CE700 1CE700 1CE700 1C6700 1C6700 1C7700 1C7700
1C3700 1C3700 1C3700 1C1700 7F1F00 FF9F00 7F0F00>
PXLC RP
1599 2737 XY F65(NE_MANTISSA)S
XP /F55 61 17 2 -7 13 22 29 16 0
<0060 0060 00E0 00C0 00C0 01C0 0180 0180 0380 0300 0300 0700 0600
0600 0E00 0C00 0C00 1C00 1800 1800 3800 3000 3000 7000 6000 6000
E000 C000 C000>
PXLC RP
1767 2737 XY F55(=)S
XP /F65 50 21 2 0 19 25 25 24 0
<07E000 1FF800 7FFE00 783F00 F00F00 F00780 F00380 F00380 000380
000380 000780 000700 000F00 001E00 003C00 007800 00F000 03E000
078000 0F0000 1E0380 3C0380 7FFF80 FFFF80 7FFF80>
PXLC RP
1784 2737 XY F65(2)S 2855 Y 549 X F6(For)S 21 x(lar)S -1 x(ger)S
21 x(values)S 21 x(of)S 21 x F22(j)S -1 x F48(X)S F22(j)S F6(,)S
22 x(degraded)S 21 x(accuracy)S 21 x(is)S 21 x(allowed.)S 33 x(An)S
21 x(implementation)S 21 x(must)S 21 x(document)S 21 x(its)S 50 y
549 X(behavior)S 21 x(for)S 20 x(lar)S -1 x(ge)S 20 x F22(j)S F48(X)S
F22(j)S -1 x F6(.)S 62 y 466 X(\(b\))S 35 x F48(SIN\(0.0\))S 18 x
F20(=)S 20 x F48(0.0)S 3128 Y 1254 X F6(15)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 300 0 XY
%%EndPageSetup
300 343 XY F50(13.7.)S 33 x(SIN)S 20 x(\320)S 19 x(T)S -3 x
(rigonometric)S 19 x(Sine)S 19 x(Function,)S 71 y 656 X(Arbitrary)S
22 x(Cycle)S 23 x(\(Angle)S 22 x(in)S 23 x(Arbitrary)S 23 x(Units\))S
566 Y 383 X F2(Declaration:)S 717 Y 466 X F48(function)S 20 x(SIN)S
21 x(\(X,)S 22 x(CYCLE)S 20 x(:)S 22 x(FLOAT_TYPE\))S 19 x(return)S
21 x(FLOAT_TYPE;)S 869 Y 383 X F2(De\014nition:)S 989 Y 466 X F48
(SIN\(X,)S 20 x(CYCLE\))S 16 x F22(\031)S 19 x F20(sin)S 7 x(\(2)S
F21(\031)S 10 x F22(\001)S 9 x F48(X)S F21(=)S F48(CYCLE)S -2 x F20
(\))S 1140 Y 383 X F2(Usage:)S 1292 Y -61 x F48(Z)S 22 x(:=)S 21 x
(SIN\(X,)S 21 x(3)S
XP /F48 54 22 2 0 19 25 25 24 0
<00F800 03FE00 0FFF00 1F0F00 3E0F00 3C0F00 780600 700000 F00000
F3F800 EFFE00 FFFE00 F80F00 F00780 F00780 E00380 F00380 F00380
700380 780780 780F00 3C1F00 1FFE00 0FF800 03E000>
PXLC RP
749 1292 XY F48(60.0\);)S 64 x(--)S 22 x(X)S 21 x(in)S 22 x(degrees)S
50 y 466 X(Z)S 22 x(:=)S 21 x(SIN\(X,)S 21 x(CYCLE\);)S 63 x(--)S
22 x(X)S 21 x(in)S 22 x(units)S 21 x(such)S 21 x(that)S 21 x(one)S
21 x(complete)S 50 y 945 X(--)S 22 x(cycle)S 21 x(of)S 21 x
(rotation)S 20 x(corresponds)S 20 x(to)S 49 y 945 X(--)S 22 x(X)S
21 x(=)S 22 x(CYCLE)S 1593 Y 383 X F2(Domain:)S 1713 Y 466 X F6
(\(a\))S 37 x F48(X)S 20 x F6(mathematically)S 20 x(unbounded)S 62 y
466 X(\(b\))S 35 x F48(CYCLE)S 19 x F21(>)S 21 x F48(0.0)S 1927 Y
383 X F2(Range:)S 2047 Y -69 x F22(j)S F48(SIN\(X,)S 19 x(CYCLE\))S
-1 x F22(j)S 19 x(\024)S 20 x F48(1.0)S 2199 Y 383 X F2(Accuracy:)S
2318 Y 466 X F6(\(a\))S 37 x(Maximum)S 17 x(relative)S 17 x(error)S
17 x F20(=)S 15 x F48(2.0)S 10 x F22(\001)S 10 x F48
(FLOAT_TYPE\015BASE)S
(\015EPSILON)S 2425 Y 466 X F6(\(b\))S 35 x(For)S 16 x(integer)S
16 x F21(k)S 1 x F6(,)S 16 x F48(SIN\(X,)S 20 x(CYCLE\))S 13 x F20
(=)S
XP /F23 56 37 16 -38 29 -1 37 16 0
<0018 0078 00F0 01E0 03C0 0780 0F00 1F00 1E00 3E00 3C00 7C00 7C00
7800 F800 F800 F800 F800 F800 F800 F800 F800 F800 F800 F800 F800
F800 F800 F800 F800 F800 F800 F800 F800 F800 F800 F800>
PXLC RP
1147 2340 XY F23(8)S
XP /F23 60 37 7 -76 21 1 77 16 0
<007C 007C 007C 007C 007C 007C 007C 007C 007C 007C 007C 007C 007C
007C 007C 007C 007C 007C 007C 007C 007C 007C 007C 007C 00F8 00F8
00F8 00F0 01F0 01E0 03E0 03C0 0780 0700 0E00 1C00 3800 F000 C000
F000 3800 1C00 0E00 0700 0780 03C0 03E0 01E0 01F0 00F0 00F8 00F8
00F8 007C 007C 007C 007C 007C 007C 007C 007C 007C 007C 007C 007C
007C 007C 007C 007C 007C 007C 007C 007C 007C 007C 007C 007C>
PXLC RP
1147 2377 XY F23(<)S
XP /F23 58 37 16 -36 29 1 37 16 0
<F800 F800 F800 F800 F800 F800 F800 F800 F800 F800 F800 F800 F800
F800 F800 F800 F800 F800 F800 F800 F800 F800 F800 7800 7C00 7C00
3C00 3E00 1E00 1F00 0F00 0780 03C0 01E0 00F0 0078 0018>
PXLC RP
1147 2452 XY F23(:)S 2375 Y 7 x F48(0.0)S
XP /F21 59 12 4 -8 8 4 12 8 0
<60 F0 F0 70 10 10 10 10 20 20 40 80>
PXLC RP
1257 2375 XY F21(;)S 73 x F48(X)S 11 x F20(=)S 12 x F21(k)S 10 x F22
(\001)S 9 x F48(CYCLE)S -1 x F21(=)S F48(2.0)S 50 y 1191 X(1.0)S F21
(;)S 73 x F48(X)S 11 x F20(=)S 12 x(\()S
XP /F20 52 21 1 0 19 28 28 24 0
<000C00 000C00 001C00 003C00 003C00 005C00 00DC00 009C00 011C00
031C00 021C00 041C00 0C1C00 081C00 101C00 301C00 201C00 401C00
C01C00 FFFFC0 001C00 001C00 001C00 001C00 001C00 001C00 001C00
01FFC0>
PXLC RP
1435 2425 XY F20(4)S F21(k)S 10 x F20(+)S 10 x(1)S -1 x(\))S 10 x
F22(\001)S 8 x F48(CYCLE)S -1 x F21(=)S F48(4.0)S 50 y 1191 X F22
(\000)S F48(1.0)S F21(;)S 41 x F48(X)S 11 x F20(=)S 12 x(\(4)S F21
(k)S 10 x F20(+)S
XP /F20 51 21 2 -1 18 28 29 16 0
<07E0 1830 201C 201C 781E 780E 781E 381E 001C 001C 0018 0030 0060
07E0 0030 001C 001C 000E 000F 000F 700F F80F F80F F80F F00E 401C
201C 1830 07E0>
PXLC RP
1530 2475 XY F20(3)S -1 x(\))S 10 x F22(\001)S 8 x F48(CYCLE)S -1 x
F21(=)S F48(4.0)S 2620 Y 300 X F50(13.8.)S 33 x(COS)S 20 x(\320)S
19 x(T)S -3 x(rigonometric)S 19 x(Cosine)S 19 x(Function,)S 71 y
685 X(Natural)S 25 x(Cycle)S 24 x(\(Angle)S 24 x(in)S 24 x
(Radians\))S 2843 Y 383 X F2(Declaration:)S 2994 Y 466 X F48
(function)S 20 x(COS)S 21 x(\(X)S 22 x(:)S 21 x(FLOAT_TYPE\))S 20 x
(return)S 20 x(FLOAT_TYPE;)S 3128 Y 1254 X F6(16)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 435 717
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(De\014nition:)S 452 Y 466 X F48(COS\(X\))S 19 x F22
(\031)S
XP /F20 99 18 2 0 16 18 18 16 0
<07E0 0C30 1878 3078 7030 6000 E000 E000 E000 E000 E000 E000 6000
7004 3004 1808 0C30 07C0>
PXLC RP
670 452 XY F20(cos)S 7 x F48(X)S 591 Y 383 X F2(Usage:)S 730 Y -61 x
F48(Z)S 22 x(:=)S 21 x(COS\(X\);)S 64 x(--)S 21 x(X)S 22 x(in)S 21 x
(radians)S 869 Y 383 X F2(Domain:)S 979 Y 466 X F6(Mathematically)S
20 x(unbounded)S 1118 Y 383 X F2(Range:)S 1229 Y -69 x F22(j)S F48
(COS\(X\))S -2 x F22(j)S 20 x(\024)S 21 x F48(1.0)S 1367 Y 383 X F2
(Accuracy:)S 1478 Y 466 X F6(\(a\))S 37 x(Maximum)S 12 x(relative)S
12 x(error)S 12 x F20(=)S 12 x F48(2.0)S 6 x F22(\001)S 6 x F48
(FLOAT_TYPE)S
(\015BASE\015EPSILON)S 7 x F6(when)S 12 x F22(j)S F48(X)S F22(j)S
11 x F6(is)S 12 x(less)S 12 x(than)S 13 x(or)S 13 x(equal)S 13 x(to)S
12 x(some)S 50 y 549 X(documented)S 16 x(implementation-dependent)S
15 x(threshold,)S 16 x(which)S 16 x(must)S 15 x(not)S 16 x(be)S 15 x
(less)S 15 x(than)S 1621 Y 832 X F48(FLOAT_TYPE\015MACHINE_RADIX)S
-17 y F65(FLOAT_TYPE\015MACHINE_MANTISSA)S F55(=)S F65(2)S 1714 Y
549 X F6(For)S 21 x(lar)S -1 x(ger)S 21 x(values)S 21 x(of)S 21 x
F22(j)S -1 x F48(X)S F22(j)S F6(,)S 22 x(degraded)S 21 x(accuracy)S
21 x(is)S 21 x(allowed.)S 33 x(An)S 21 x(implementation)S 21 x(must)S
21 x(document)S 21 x(its)S 50 y 549 X(behavior)S 21 x(for)S 20 x
(lar)S -1 x(ge)S 20 x F22(j)S F48(X)S F22(j)S -1 x F6(.)S 62 y 466 X
(\(b\))S 35 x F48(COS\(0.0\))S 18 x F20(=)S 20 x F48(1.0)S 1975 Y
300 X F50(13.9.)S 33 x(COS)S 20 x(\320)S 19 x(T)S -3 x(rigonometric)S
19 x(Cosine)S 19 x(Function,)S 70 y 685 X(Arbitrary)S 22 x(Cycle)S
23 x(\(Angle)S 23 x(in)S 23 x(Arbitrary)S 23 x(Units\))S 2184 Y
383 X F2(Declaration:)S 2323 Y 466 X F48(function)S 20 x(COS)S 21 x
(\(X,)S 22 x(CYCLE)S 20 x(:)S 22 x(FLOAT_TYPE\))S 19 x(return)S 21 x
(FLOAT_TYPE;)S 2462 Y 383 X F2(De\014nition:)S 2572 Y 466 X F48
(COS\(X,)S 20 x(CYCLE\))S 16 x F22(\031)S 19 x F20(cos)S 7 x(\(2)S
F21(\031)S 11 x F22(\001)S 8 x F48(X)S F21(=)S F48(CYCLE)S -1 x F20
(\))S 2711 Y 383 X F2(Usage:)S 2851 Y -61 x F48(Z)S 22 x(:=)S 21 x
(COS\(X,)S 21 x(360.0\);)S 63 x(--)S 22 x(X)S 21 x(in)S 22 x
(degrees)S 49 y 466 X(Z)S 22 x(:=)S 21 x(COS\(X,)S 21 x(CYCLE\);)S
63 x(--)S 22 x(X)S 21 x(in)S 22 x(units)S 21 x(such)S 21 x(that)S
21 x(one)S 21 x(complete)S 50 y 945 X(--)S 22 x(cycle)S 21 x(of)S
21 x(rotation)S 20 x(corresponds)S 20 x(to)S 50 y 945 X(--)S 22 x(X)S
21 x(=)S 22 x(CYCLE)S 3128 Y 46 x F6(17)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Domain:)S 468 Y 466 X F6(\(a\))S 37 x F48(X)S 20 x F6
(mathematically)S 20 x(unbounded)S 63 y 466 X(\(b\))S 35 x F48
(CYCLE)S 19 x F21(>)S 21 x F48(0.0)S 692 Y 383 X F2(Range:)S 818 Y
-69 x F22(j)S F48(COS\(X,)S 19 x(CYCLE\))S -1 x F22(j)S 19 x(\024)S
20 x F48(1.0)S 979 Y 383 X F2(Accuracy:)S 1106 Y 466 X F6(\(a\))S
37 x(Maximum)S 17 x(relative)S 17 x(error)S 17 x F20(=)S 15 x F48
(2.0)S 10 x F22(\001)S 10 x F48(FLOAT_TYPE\015BASE\015EPSILON)S
1212 Y 466 X F6(\(b\))S 35 x(For)S 16 x(integer)S 16 x F21(k)S 1 x
F6(,)S 16 x F48(COS\(X,)S 20 x(CYCLE\))S 13 x F20(=)S 1127 Y 14 x
F23(8)S 38 y -37 x(<)S 74 y -37 x(:)S 1161 Y 7 x F48(1.0)S F21(;)S
73 x F48(X)S 11 x F20(=)S 12 x F21(k)S 10 x F22(\001)S 9 x F48
(CYCLE)S 50 y 1191 X(0.0)S F21(;)S 73 x F48(X)S 11 x F20(=)S 12 x
(\(2)S F21(k)S 10 x F20(+)S 10 x(1)S -1 x(\))S 10 x F22(\001)S 8 x
F48(CYCLE)S -1 x F21(=)S F48(4.0)S 50 y 1191 X F22(\000)S F48(1.0)S
F21(;)S 41 x F48(X)S 11 x F20(=)S 12 x(\(2)S F21(k)S 10 x F20(+)S
10 x(1)S -1 x(\))S 10 x F22(\001)S 8 x F48(CYCLE)S -1 x F21(=)S F48
(2.0)S 1414 Y 300 X F50(13.10.)S 33 x(T)S -4 x(AN)S 19 x(\320)S 20 x
(T)S -3 x(rigonometric)S 20 x(T)S -4 x(angent)S 20 x(Function,)S
70 y 707 X(Natural)S 24 x(Cycle)S 24 x(\(Angle)S 24 x(in)S 24 x
(Radians\))S 1645 Y 383 X F2(Declaration:)S 1806 Y 466 X F48
(function)S 20 x(TAN)S 21 x(\(X)S 22 x(:)S 21 x(FLOAT_TYPE\))S 20 x
(return)S 20 x(FLOAT_TYPE;)S 1967 Y 383 X F2(De\014nition:)S 2094 Y
466 X F48(TAN\(X\))S 19 x F22(\031)S
XP /F20 116 16 1 0 13 26 26 16 0
<0400 0400 0400 0400 0C00 0C00 1C00 3C00 FFE0 1C00 1C00 1C00 1C00
1C00 1C00 1C00 1C00 1C00 1C10 1C10 1C10 1C10 1C10 0C10 0E20 03C0>
PXLC RP
670 2094 XY F20(t)S
XP /F20 97 21 2 0 20 18 18 24 0
<1FC000 307000 783800 781C00 301C00 001C00 001C00 01FC00 0F1C00
381C00 701C00 601C00 E01C40 E01C40 E01C40 603C40 304E80 1F8700>
PXLC RP
686 2094 XY F20(an)S 7 x F48(X)S 2254 Y 383 X F2(Usage:)S 2415 Y
-61 x F48(Z)S 22 x(:=)S 21 x(TAN\(X\);)S 64 x(--)S 21 x(X)S 22 x(in)S
21 x(radians)S 2576 Y 383 X F2(Domain:)S 2703 Y 466 X F6
(Mathematically)S 20 x(unbounded)S 2864 Y 383 X F2(Range:)S 2991 Y
-69 x F6(Mathematically)S 20 x(unbounded)S 3128 Y 1254 X(18)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 430 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Accuracy:)S 458 Y 466 X F6(\(a\))S 37 x(Maximum)S 12 x
(relative)S 12 x(error)S 12 x F20(=)S 12 x F48(4.0)S 6 x F22(\001)S
6 x F48(FLOAT_TYPE\015BASE\015EPSILON)S 7 x F6(when)S 12 x F22(j)S
F48(X)S F22(j)S 11 x F6(is)S 12 x(less)S 12 x(than)S 13 x(or)S 13 x
(equal)S 13 x(to)S 12 x(some)S 50 y 549 X(documented)S 16 x
(implementation-dependent)S 15 x(threshold,)S 16 x(which)S 16 x
(must)S 15 x(not)S 16 x(be)S 15 x(less)S 15 x(than)S 610 Y 832 X F48
(FLOAT_TYPE)S
(\015MACHINE_RADIX)S -18 y F65(FLOAT_TYPE\015MACHINE_MANTISSA)S F55
(=)S F65(2)S 711 Y 549 X F6(For)S 21 x(lar)S -1 x(ger)S 21 x(values)S
21 x(of)S 21 x F22(j)S -1 x F48(X)S F22(j)S F6(,)S 22 x(degraded)S
21 x(accuracy)S 21 x(is)S 21 x(allowed.)S 33 x(An)S 21 x
(implementation)S 21 x(must)S 21 x(document)S 21 x(its)S 50 y 549 X
(behavior)S 21 x(for)S 20 x(lar)S -1 x(ge)S 20 x F22(j)S F48(X)S F22
(j)S -1 x F6(.)S 62 y 466 X(\(b\))S 35 x F48(TAN\(0.0\))S 18 x F20
(=)S 20 x F48(0.0)S 977 Y 300 X F50(13.11.)S 33 x(T)S -4 x(AN)S 19 x
(\320)S 20 x(T)S -3 x(rigonometric)S 20 x(T)S -4 x(angent)S 20 x
(Function,)S 71 y 707 X(Arbitrary)S 22 x(Cycle)S 23 x(\(Angle)S 22 x
(in)S 23 x(Arbitrary)S 22 x(Units\))S 1195 Y 383 X F2(Declaration:)S
1342 Y 466 X F48(function)S 20 x(TAN)S 21 x(\(X,)S 22 x(CYCLE)S 20 x
(:)S 22 x(FLOAT_TYPE\))S 19 x(return)S 21 x(FLOAT_TYPE;)S 1489 Y
383 X F2(De\014nition:)S 1605 Y 466 X F48(TAN\(X,)S 20 x(CYCLE\))S
16 x F22(\031)S 19 x F20(tan)S 7 x(\(2)S F21(\031)S 10 x F22(\001)S
9 x F48(X)S F21(=)S F48(CYCLE)S -2 x F20(\))S 1752 Y 383 X F2
(Usage:)S 1899 Y -61 x F48(Z)S 22 x(:=)S 21 x(TAN\(X,)S 21 x
(360.0\);)S 63 x(--)S 22 x(X)S 21 x(in)S 22 x(degrees)S 50 y 466 X
(Z)S 22 x(:=)S 21 x(TAN\(X,)S 21 x(CYCLE\);)S 63 x(--)S 22 x(X)S
21 x(in)S 22 x(units)S 21 x(such)S 21 x(that)S 21 x(one)S 21 x
(complete)S 50 y 945 X(--)S 22 x(cycle)S 21 x(of)S 21 x(rotation)S
20 x(corresponds)S 20 x(to)S 50 y 945 X(--)S 22 x(X)S 21 x(=)S 22 x
(CYCLE)S 2195 Y 383 X F2(Domain:)S 2312 Y 466 X F6(\(a\))S 37 x F48
(X)S 20 x F6(mathematically)S 20 x(unbounded)S 62 y 466 X(\(b\))S
35 x F48(CYCLE)S 19 x F21(>)S 21 x F48(0.0)S 2521 Y 383 X F2(Range:)S
2638 Y -69 x F6(Mathematically)S 20 x(unbounded)S 2785 Y 383 X F2
(Accuracy:)S 2901 Y 466 X F6(\(a\))S 37 x(Maximum)S 17 x(relative)S
17 x(error)S 17 x F20(=)S 15 x F48(4.0)S 10 x F22(\001)S 10 x F48
(FLOAT_TYPE)S
(\015BASE\015EPSILON)S 62 y 466 X F6(\(b\))S 35 x F48(TAN\(X,)S 20 x
(CYCLE\))S 13 x F20(=)S 16 x F48(0.0)S 16 x F6(when)S 17 x F48(X)S
15 x F20(=)S 15 x F21(k)S 11 x F22(\001)S 10 x F48(CYCLE)S -1 x F21
(=)S F48(2.0)S F6(,)S 17 x(for)S 17 x(integer)S 17 x F21(k)S 3128 Y
1254 X F6(19)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Notes:)S 463 Y -53 x F6(When)S 18 x F48(X)S 15 x F20
(=)S 16 x(\(2)S F21(k)S 10 x F20(+)S 9 x(1\))S 11 x F22(\001)S 10 x
F48(CYCLE)S -1 x F21(=)S F48(4.0)S -1 x F6(,)S 17 x(for)S 17 x
(integer)S 18 x F21(k)S 1 x F6(,)S 18 x(see)S 17 x(Section)S 17 x
(11.)S 622 Y 300 X F50(13.12.)S 33 x(COT)S 20 x(\320)S 19 x(T)S -3 x
(rigonometric)S 19 x(Cotangent)S 19 x(Function,)S 71 y 714 X
(Natural)S 23 x(Cycle)S 24 x(\(Angle)S 24 x(in)S 24 x(Radians\))S
847 Y 383 X F2(Declaration:)S 1000 Y 466 X F48(function)S 20 x(COT)S
21 x(\(X)S 22 x(:)S 21 x(FLOAT_TYPE\))S 20 x(return)S 20 x
(FLOAT_TYPE;)S 1154 Y 383 X F2(De\014nition:)S 1276 Y 466 X F48
(COT\(X\))S 19 x F22(\031)S 21 x F20(cot)S 7 x F48(X)S 1430 Y 383 X
F2(Usage:)S 1584 Y -61 x F48(Z)S 22 x(:=)S 21 x(COT\(X\);)S 64 x(--)S
21 x(X)S 22 x(in)S 21 x(radians)S 1738 Y 383 X F2(Domain:)S 1859 Y
466 X F6(Mathematically)S 20 x(unbounded)S 2013 Y 383 X F2(Range:)S
2135 Y -69 x F6(Mathematically)S 20 x(unbounded)S 2289 Y 383 X F2
(Accuracy:)S 2410 Y 466 X F6(Maximum)S 18 x(relative)S 18 x(error)S
18 x F20(=)S 17 x F48(4.0)S 10 x F22(\001)S 11 x F48
(FLOAT_TYPE\015BASE)S
(\015EPSILON)S 13 x F6(when)S 18 x F22(j)S F48(X)S F22(j)S 17 x F6
(is)S 18 x(less)S 18 x(than)S 18 x(or)S 18 x(equal)S 18 x(to)S 18 x
(some)S 50 y 466 X(documented)S 16 x(implementation-dependent)S 16 x
(threshold,)S 16 x(which)S 16 x(must)S 16 x(not)S 16 x(be)S 16 x
(less)S 16 x(than)S 2564 Y 790 X F48(FLOAT_TYPE\015MACHINE_RADIX)S
-17 y F65(FLOAT_TYPE\015MACHINE_MANTISSA)S F55(=)S F65(2)S 2669 Y
466 X F6(For)S 15 x(lar)S -1 x(ger)S 16 x(values)S 16 x(of)S 16 x
F22(j)S -1 x F48(X)S F22(j)S F6(,)S 16 x(degraded)S 16 x(accuracy)S
16 x(is)S 16 x(allowed.)S 22 x(An)S 16 x(implementation)S 15 x(must)S
16 x(document)S 16 x(its)S 16 x(behavior)S 50 y 466 X(for)S 23 x
(lar)S -1 x(ge)S 23 x F22(j)S -1 x F48(X)S F22(j)S F6(.)S 2873 Y
383 X F2(Notes:)S 2994 Y -53 x F6(When)S 20 x F48(X)S 19 x F20(=)S
19 x F48(0.0)S -1 x F6(,)S 21 x(see)S 20 x(Section)S 21 x(11.)S
3128 Y 1254 X(20)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 300 0 XY
%%EndPageSetup
300 343 XY F50(13.13.)S 33 x(COT)S 20 x(\320)S 19 x(T)S -3 x
(rigonometric)S 19 x(Cotangent)S 19 x(Function,)S 71 y 714 X
(Arbitrary)S 22 x(Cycle)S 22 x(\(Angle)S 22 x(in)S 22 x(Arbitrary)S
22 x(Units\))S 553 Y 383 X F2(Declaration:)S 693 Y 466 X F48
(function)S 20 x(COT)S 21 x(\(X,)S 22 x(CYCLE)S 20 x(:)S 22 x
(FLOAT_TYPE\))S 19 x(return)S 21 x(FLOAT_TYPE;)S 832 Y 383 X F2(De)S
(\014nition:)S 943 Y 466 X F48(COT\(X,)S 20 x(CYCLE\))S 16 x F22
(\031)S 19 x F20(cot)S 7 x(\(2)S F21(\031)S 10 x F22(\001)S 9 x F48
(X)S F21(=)S F48(CYCLE)S -1 x F20(\))S 1082 Y 383 X F2(Usage:)S
1222 Y -61 x F48(Z)S 22 x(:=)S 21 x(COT\(X,)S 21 x(360.0\);)S 63 x
(--)S 22 x(X)S 21 x(in)S 22 x(degrees)S 50 y 466 X(Z)S 22 x(:=)S
21 x(COT\(X,)S 21 x(CYCLE\);)S 63 x(--)S 22 x(X)S 21 x(in)S 22 x
(units)S 21 x(such)S 21 x(that)S 21 x(one)S 21 x(complete)S 50 y
945 X(--)S 22 x(cycle)S 21 x(of)S 21 x(rotation)S 20 x(corresponds)S
20 x(to)S 50 y 945 X(--)S 22 x(X)S 21 x(=)S 22 x(CYCLE)S 1511 Y
383 X F2(Domain:)S 1622 Y 466 X F6(\(a\))S 37 x F48(X)S 20 x F6
(mathematically)S 20 x(unbounded)S 62 y 466 X(\(b\))S 35 x F48
(CYCLE)S 19 x F21(>)S 21 x F48(0.0)S 1823 Y 383 X F2(Range:)S 1934 Y
-69 x F6(Mathematically)S 20 x(unbounded)S 2073 Y 383 X F2
(Accuracy:)S 2184 Y 466 X F6(\(a\))S 37 x(Maximum)S 17 x(relative)S
17 x(error)S 17 x F20(=)S 15 x F48(4.0)S 10 x F22(\001)S 10 x F48
(FLOAT_TYPE)S
(\015BASE\015EPSILON)S 62 y 466 X F6(\(b\))S 35 x F48(COT\(X,)S 20 x
(CYCLE\))S 13 x F20(=)S 14 x F48(0.0)S 16 x F6(when)S 16 x F48(X)S
14 x F20(=)S 15 x(\(2)S F21(k)S 10 x F20(+)S 9 x(1\))S 11 x F22
(\001)S 9 x F48(CYCLE)S -1 x F21(=)S F48(4.0)S F6(,)S 17 x(for)S
16 x(integer)S 16 x F21(k)S 2385 Y 383 X F2(Notes:)S 2496 Y -53 x
F6(When)S 18 x F48(X)S 16 x F20(=)S 17 x F21(k)S 12 x F22(\001)S
10 x F48(CYCLE)S -1 x F21(=)S F48(2.0)S -1 x F6(,)S 18 x(for)S 18 x
(integer)S 18 x F21(k)S 1 x F6(,)S 19 x(see)S 18 x(Section)S 18 x
(11.)S 2645 Y 300 X F50(13.14.)S 33 x(ARCSIN)S 19 x(\320)S 19 x
(Inverse)S 19 x(T)S -3 x(rigonometric)S 19 x(Sine)S 19 x(Function,)S
70 y 814 X(Natural)S 23 x(Cycle)S 23 x(\(Angle)S 23 x(in)S 23 x
(Radians\))S 2854 Y 383 X F2(Declaration:)S 2994 Y 466 X F48
(function)S 20 x(ARCSIN)S 21 x(\(X)S 21 x(:)S 22 x(FLOAT_TYPE\))S
19 x(return)S 21 x(FLOAT_TYPE;)S 3128 Y 1254 X F6(21)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 448 717
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(De\014nition:)S 461 Y 466 X F48(ARCSIN\(X\))S 18 x F22
(\031)S 20 x F20(a)S
XP /F20 114 16 1 0 14 18 18 16 0
<FCE0 1D30 1E78 1E78 1C30 1C00 1C00 1C00 1C00 1C00 1C00 1C00 1C00
1C00 1C00 1C00 1C00 FFC0>
PXLC RP
755 461 XY F20(rcsin)S 7 x F48(X)S 613 Y 383 X F2(Usage:)S 765 Y
-61 x F48(Z)S 22 x(:=)S 21 x(ARCSIN\(X\);)S 63 x(--)S 22 x(Z)S 21 x
(in)S 22 x(radians)S 916 Y 383 X F2(Domain:)S 1036 Y 466 X F22(j)S
F48(X)S F22(j)S 20 x(\024)S 21 x F48(1.0)S 1188 Y 383 X F2(Range:)S
1308 Y -69 x F22(j)S F48(ARCSIN\(X\))S -2 x F22(j)S 19 x(\024)S 20 x
F21(\031)S 1 x(=)S F20(2)S 1459 Y 383 X F2(Accuracy:)S 1579 Y 466 X
F6(\(a\))S 37 x(Maximum)S 17 x(relative)S 17 x(error)S 17 x F20(=)S
15 x F48(4.0)S 10 x F22(\001)S 10 x F48
(FLOAT_TYPE\015BASE\015EPSILON)S 63 y 466 X F6(\(b\))S 35 x F48
(ARCSIN\(0.0\))S 17 x F20(=)S 20 x F48(0.0)S 62 y 466 X F6(\(c\))S
37 x F48(ARCSIN\(1.0\))S 17 x F20(=)S 20 x F21(\031)S 1 x(=)S F20(2)S
62 y 466 X F6(\(d\))S 35 x F48(ARCSIN\(-1.0\))S 17 x F20(=)S 19 x
F22(\000)S F21(\031)S 1 x(=)S F20(2)S 1918 Y 383 X F2(Notes:)S 2038 Y
-53 x F22(\000)S F21(\031)S 1 x(=)S F20(2)S 16 x F6(and)S 16 x F21
(\031)S 1 x(=)S F20(2)S 16 x F6(are)S 16 x(not)S 16 x(safe)S 16 x
(numbers)S 16 x(of)S 16 x F48(FLOAT_TYPE)S F6(.)S 15 x(Accordingly,)S
16 x(an)S 16 x(implementation)S 16 x(may)S 16 x(exceed)S 16 x(the)S
49 y 466 X(range)S 14 x(limits,)S 14 x(but)S 14 x(only)S 14 x
(slightly;)S 14 x(cf.)S 14 x(Section)S 14 x(9)S 13 x(for)S 14 x(a)S
14 x(precise)S 14 x(statement)S 14 x(of)S 13 x(the)S 14 x
(requirements.)S 18 x(Similarly,)S 14 x(when)S 50 y 466 X(accuracy)S
16 x(requirement)S 17 x(\(c\))S 17 x(or)S 16 x(\(d\))S 17 x
(applies,)S 17 x(an)S 17 x(implementation)S 17 x(may)S 17 x
(approximate)S 17 x(the)S 17 x(prescribed)S 17 x(result,)S 17 x(but)S
50 y 466 X(only)S 15 x(within)S 16 x(narrow)S 15 x(limits;)S 16 x
(cf.)S 14 x(Section)S 16 x(10)S 16 x(for)S 16 x(a)S 16 x(precise)S
16 x(statement)S 15 x(of)S 15 x(the)S 16 x(requirements.)S 2344 Y
300 X F50(13.15.)S 33 x(ARCSIN)S 19 x(\320)S 19 x(Inverse)S 19 x(T)S
-3 x(rigonometric)S 19 x(Sine)S 19 x(Function,)S 71 y 814 X
(Arbitrary)S 21 x(Cycle)S 22 x(\(Angle)S 21 x(in)S 21 x(Arbitrary)S
21 x(Units\))S 2566 Y 383 X F2(Declaration:)S 2718 Y 466 X F48
(function)S 20 x(ARCSIN)S 21 x(\(X,)S 21 x(CYCLE)S 21 x(:)S 21 x
(FLOAT_TYPE\))S 20 x(return)S 20 x(FLOAT_TYPE;)S 2870 Y 383 X F2(De)S
(\014nition:)S 2990 Y 466 X F48(ARCSIN\(X,)S 19 x(CYCLE\))S 16 x F22
(\031)S 18 x F20(\(arcsin)S 7 x F48(X)S F20(\))S 12 x F22(\001)S
11 x F48(CYCLE)S -1 x F21(=)S F20(2)S F21(\031)S 3128 Y -4 x F6(22)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Usage:)S 479 Y -61 x F48(Z)S 22 x(:=)S 21 x
(ARCSIN\(X,)S 20 x(360.0\);)S 64 x(--)S 21 x(Z)S 22 x(in)S 21 x
(degrees)S 50 y 466 X(Z)S 22 x(:=)S 21 x(ARCSIN\(X,)S 20 x(CYCLE\);)S
64 x(--)S 21 x(Z)S 22 x(in)S 21 x(units)S 21 x(such)S 21 x(that)S
21 x(one)S 21 x(complete)S 49 y 1011 X(--)S 21 x(cycle)S 21 x(of)S
21 x(rotation)S 21 x(corresponds)S 19 x(to)S 50 y 1011 X(--)S 21 x
(Z)S 22 x(=)S 21 x(CYCLE)S 762 Y 383 X F2(Domain:)S 870 Y 466 X F6
(\(a\))S 37 x F22(j)S F48(X)S F22(j)S 19 x(\024)S 21 x F48(1.0)S
62 y 466 X F6(\(b\))S 35 x F48(CYCLE)S 19 x F21(>)S 21 x F48(0.0)S
1066 Y 383 X F2(Range:)S 1174 Y -69 x F22(j)S F48(ARCSIN\(X,)S 18 x
(CYCLE\))S -1 x F22(j)S 18 x(\024)S 19 x F48(CYCLE)S -1 x F21(=)S
F48(4.0)S 1308 Y 383 X F2(Accuracy:)S 1416 Y 466 X F6(\(a\))S 37 x
(Maximum)S 17 x(relative)S 17 x(error)S 17 x F20(=)S 15 x F48(4.0)S
10 x F22(\001)S 10 x F48(FLOAT_TYPE\015BASE\015EPSILON)S 62 y 466 X
F6(\(b\))S 35 x F48(ARCSIN\(0.0,)S 19 x(CYCLE\))S 17 x F20(=)S 19 x
F48(0.0)S 63 y 466 X F6(\(c\))S 37 x F48(ARCSIN\(1.0,)S 19 x
(CYCLE\))S 16 x F20(=)S 18 x F48(CYCLE)S -1 x F21(=)S F48(4.0)S 62 y
466 X F6(\(d\))S 35 x F48(ARCSIN\(-1.0,)S 18 x(CYCLE\))S 17 x F20(=)S
17 x F22(\000)S F48(CYCLE)S -1 x F21(=)S F48(4.0)S 1737 Y 383 X F2
(Notes:)S 1845 Y -53 x F22(\000)S F48(CYCLE)S -1 x F21(=)S F48(4.0)S
10 x F6(and)S 10 x F48(CYCLE)S -1 x F21(=)S F48(4.0)S 9 x F6(might)S
10 x(not)S 10 x(be)S 10 x(safe)S 10 x(numbers)S 10 x(of)S 10 x F48
(FLOAT_TYPE)S F6(.)S 9 x(Accordingly,)S 10 x(an)S 10 x
(implementation)S 50 y 466 X(may)S 14 x(exceed)S 14 x(the)S 14 x
(range)S 14 x(limits,)S 14 x(but)S 14 x(only)S 15 x(slightly;)S 14 x
(cf.)S 14 x(Section)S 14 x(9)S 14 x(for)S 14 x(a)S 14 x(precise)S
15 x(statement)S 14 x(of)S 14 x(the)S 14 x(requirements.)S 49 y
466 X(Similarly,)S 10 x(when)S 9 x(accuracy)S 10 x(requirement)S
10 x(\(c\))S 9 x(or)S 10 x(\(d\))S 9 x(applies,)S 10 x(an)S 10 x
(implementation)S 10 x(may)S 9 x(approximate)S 9 x(the)S 9 x
(prescribed)S 50 y 466 X(result,)S 14 x(but)S 15 x(only)S 14 x
(within)S 15 x(narrow)S 14 x(limits;)S 15 x(cf.)S 14 x(Section)S
15 x(10)S 15 x(for)S 15 x(a)S 15 x(precise)S 15 x(statement)S 15 x
(of)S 15 x(the)S 14 x(requirements.)S 2140 Y 300 X F50(13.16.)S 33 x
(ARCCOS)S 19 x(\320)S 19 x(Inverse)S 19 x(T)S -3 x(rigonometric)S
19 x(Cosine)S 19 x(Function,)S 71 y 843 X(Natural)S 23 x(Cycle)S
23 x(\(Angle)S 23 x(in)S 23 x(Radians\))S 2344 Y 383 X F2
(Declaration:)S 2481 Y 466 X F48(function)S 20 x(ARCCOS)S 21 x(\(X)S
21 x(:)S 22 x(FLOAT_TYPE\))S 19 x(return)S 21 x(FLOAT_TYPE;)S 2615 Y
383 X F2(De\014nition:)S 2723 Y 466 X F48(ARCCOS\(X\))S 18 x F22
(\031)S 20 x F20(arccos)S 8 x F48(X)S 2857 Y 383 X F2(Usage:)S 2994 Y
-61 x F48(Z)S 22 x(:=)S 21 x(ARCCOS\(X\);)S 63 x(--)S 22 x(Z)S 21 x
(in)S 22 x(radians)S 3128 Y 67 x F6(23)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Domain:)S 450 Y 466 X F22(j)S F48(X)S F22(j)S 20 x
(\024)S 21 x F48(1.0)S 584 Y 383 X F2(Range:)S 692 Y -69 x F48(0.0)S
19 x F22(\024)S 20 x F48(ARCCOS\(X\))S 17 x F22(\024)S 20 x F21
(\031)S 826 Y 383 X F2(Accuracy:)S 935 Y 466 X F6(\(a\))S 37 x
(Maximum)S 17 x(relative)S 17 x(error)S 17 x F20(=)S 15 x F48(4.0)S
10 x F22(\001)S 10 x F48(FLOAT_TYPE\015BASE\015EPSILON)S 62 y 466 X
F6(\(b\))S 35 x F48(ARCCOS\(1.0\))S 17 x F20(=)S 20 x F48(0.0)S 62 y
466 X F6(\(c\))S 37 x F48(ARCCOS\(0.0\))S 17 x F20(=)S 20 x F21
(\031)S 1 x(=)S F20(2)S 63 y 466 X F6(\(d\))S 35 x F48
(ARCCOS\(-1.0\))S 17 x F20(=)S 20 x F21(\031)S 1256 Y 383 X F2
(Notes:)S 1364 Y -53 x F21(\031)S 1 x(=)S F20(2)S 13 x F6(and)S 14 x
F21(\031)S 15 x F6(are)S 13 x(not)S 13 x(safe)S 14 x(numbers)S 14 x
(of)S 14 x F48(FLOAT_TYPE)S F6(.)S 12 x(Accordingly,)S 14 x(an)S
13 x(implementation)S 14 x(may)S 14 x(exceed)S 14 x(the)S 13 x
(upper)S 50 y 466 X(range)S 15 x(limit,)S 15 x(but)S 15 x(only)S
15 x(slightly;)S 15 x(cf.)S 14 x(Section)S 15 x(9)S 14 x(for)S 15 x
(a)S 15 x(precise)S 15 x(statement)S 15 x(of)S 14 x(the)S 15 x
(requirements.)S 20 x(Similarly,)S 15 x(when)S 50 y 466 X(accuracy)S
16 x(requirement)S 17 x(\(c\))S 17 x(or)S 16 x(\(d\))S 17 x
(applies,)S 17 x(an)S 17 x(implementation)S 17 x(may)S 17 x
(approximate)S 17 x(the)S 17 x(prescribed)S 17 x(result,)S 17 x(but)S
49 y 466 X(only)S 15 x(within)S 16 x(narrow)S 15 x(limits;)S 16 x
(cf.)S 14 x(Section)S 16 x(10)S 16 x(for)S 16 x(a)S 16 x(precise)S
16 x(statement)S 15 x(of)S 15 x(the)S 16 x(requirements.)S 1659 Y
300 X F50(13.17.)S 33 x(ARCCOS)S 19 x(\320)S 19 x(Inverse)S 19 x(T)S
-3 x(rigonometric)S 19 x(Cosine)S 19 x(Function,)S 71 y 843 X
(Arbitrary)S 21 x(Cycle)S 21 x(\(Angle)S 22 x(in)S 22 x(Arbitrary)S
21 x(Units\))S 1864 Y 383 X F2(Declaration:)S 2001 Y 466 X F48
(function)S 20 x(ARCCOS)S 21 x(\(X,)S 21 x(CYCLE)S 21 x(:)S 21 x
(FLOAT_TYPE\))S 20 x(return)S 20 x(FLOAT_TYPE;)S 2135 Y 383 X F2(De)S
(\014nition:)S 2244 Y 466 X F48(ARCCOS\(X,)S 19 x(CYCLE\))S 16 x F22
(\031)S 18 x F20(\(arccos)S 8 x F48(X)S F20(\))S 11 x F22(\001)S
11 x F48(CYCLE)S -1 x F21(=)S F20(2)S F21(\031)S 2378 Y 383 X F2
(Usage:)S 2515 Y -61 x F48(Z)S 22 x(:=)S 21 x(ARCCOS\(X,)S 20 x
(360.0\);)S 64 x(--)S 21 x(Z)S 22 x(in)S 21 x(degrees)S 50 y 466 X
(Z)S 22 x(:=)S 21 x(ARCCOS\(X,)S 20 x(CYCLE\);)S 64 x(--)S 21 x(Z)S
22 x(in)S 21 x(units)S 21 x(such)S 21 x(that)S 21 x(one)S 21 x
(complete)S 50 y 1011 X(--)S 21 x(cycle)S 21 x(of)S 21 x(rotation)S
21 x(corresponds)S 19 x(to)S 50 y 1011 X(--)S 21 x(Z)S 22 x(=)S 21 x
(CYCLE)S 2799 Y 383 X F2(Domain:)S 2907 Y 466 X F6(\(a\))S 37 x F22
(j)S F48(X)S F22(j)S 19 x(\024)S 21 x F48(1.0)S 62 y 466 X F6(\(b\))S
35 x F48(CYCLE)S 19 x F21(>)S 21 x F48(0.0)S 3128 Y 1254 X F6(24)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Range:)S 462 Y -69 x F48(0.0)S 17 x F22(\024)S 18 x
F48(ARCCOS\(X,)S 19 x(CYCLE\))S 16 x F22(\024)S 18 x F48(CYCLE)S
-1 x F21(=)S F48(2.0)S 615 Y 383 X F2(Accuracy:)S 735 Y 466 X F6
(\(a\))S 37 x(Maximum)S 17 x(relative)S 17 x(error)S 17 x F20(=)S
15 x F48(4.0)S 10 x F22(\001)S 10 x F48
(FLOAT_TYPE\015BASE\015EPSILON)S 63 y 466 X F6(\(b\))S 35 x F48
(ARCCOS\(1.0,)S 19 x(CYCLE\))S 17 x F20(=)S 19 x F48(0.0)S 62 y
466 X F6(\(c\))S 37 x F48(ARCCOS\(0.0,)S 19 x(CYCLE\))S 16 x F20(=)S
18 x F48(CYCLE)S -1 x F21(=)S F48(4.0)S 62 y 466 X F6(\(d\))S 35 x
F48(ARCCOS\(-1.0,)S 18 x(CYCLE\))S 17 x F20(=)S 18 x F48(CYCLE)S
-1 x F21(=)S F48(2.0)S 1075 Y 383 X F2(Notes:)S 1195 Y -53 x F48
(CYCLE)S -1 x F21(=)S F48(4.0)S 12 x F6(and)S 13 x F48(CYCLE)S -1 x
F21(=)S F48(2.0)S 12 x F6(might)S 12 x(not)S 12 x(be)S 12 x(safe)S
13 x(numbers)S 13 x(of)S 13 x F48(FLOAT_TYPE)S F6(.)S 11 x
(Accordingly,)S 13 x(an)S 12 x(implementation)S 50 y 466 X(may)S
23 x(exceed)S 23 x(the)S 24 x(upper)S 23 x(range)S 23 x(limit,)S
24 x(but)S 24 x(only)S 23 x(slightly;)S 26 x(cf.)S 13 x(Section)S
23 x(9)S 23 x(for)S 23 x(a)S 23 x(precise)S 24 x(statement)S 23 x
(of)S 23 x(the)S 50 y 466 X(requirements.)S 46 x(Similarly,)S 29 x
(when)S 28 x(accuracy)S 28 x(requirement)S 27 x(\(c\))S 28 x(or)S
27 x(\(d\))S 27 x(applies,)S 29 x(an)S 27 x(implementation)S 28 x
(may)S 50 y 466 X(approximate)S 16 x(the)S 17 x(prescribed)S 16 x
(result,)S 17 x(but)S 16 x(only)S 16 x(within)S 16 x(narrow)S 16 x
(limits;)S 17 x(cf.)S 14 x(Section)S 16 x(10)S 16 x(for)S 17 x(a)S
16 x(precise)S 16 x(statement)S 50 y 466 X(of)S 21 x(the)S 21 x
(requirements.)S 1553 Y 300 X F50(13.18.)S 33 x(ARCT)S -4 x(AN)S
19 x(\320)S 20 x(Inverse)S 20 x(T)S -3 x(rigonometric)S 19 x(T)S
-4 x(angent)S 19 x(Function,)S 70 y 833 X(Natural)S 23 x(Cycle)S
23 x(\(Angle)S 23 x(in)S 23 x(Radians\))S 1776 Y 383 X F2
(Declaration:)S 1928 Y 466 X F48(function)S 20 x(ARCTAN)S 21 x(\(Y)S
21 x(:)S 22 x(FLOAT_TYPE;)S 50 y 837 X(X)S 21 x(:)S 22 x(FLOAT_TYPE)S
19 x(:=)S 22 x(1.0\))S 21 x(return)S 20 x(FLOAT_TYPE;)S 2131 Y 383 X
F2(De\014nition:)S 2252 Y 466 X F6(\(a\))S 37 x F48(ARCTAN\(Y\))S
17 x F22(\031)S 20 x F20(arctan)S 7 x F48(Y)S 2379 Y 466 X F6(\(b\))S
35 x F48(ARCTAN\(Y,)S 19 x(X\))S 14 x F22(\031)S 2281 Y 16 x F23(8)S
XP /F23 62 37 16 -13 21 1 14 8 0
<F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8 F8>
PXLC RP
872 2318 XY F23(>)S 13 y -37 x(<)S 75 y -37 x(>)S 12 y -37 x(:)S
2304 Y 7 x F20(arctan)S 7 x(\()S F48(Y)S F21(=)S F48(X)S -1 x F20
(\))S F21(;)S 1296 X F48(X)S 11 x F22(\025)S 12 x F48(0.0)S 50 y
916 X F20(\(arctan)S 7 x(\()S F48(Y)S F21(=)S F48(X)S -1 x F20(\))S
1 x(\))S 9 x(+)S 10 x F21(\031)S 1 x(;)S 41 x F48(X)S 11 x F21(<)S
12 x F48(0.0)S 13 x F6(and)S 14 x F48(Y)S 11 x F21(>)S 12 x F48(0.0)S
49 y 916 X F22(\006)S F21(\031)S 22 x F20(\()S F6(see)S 14 x(note)S
14 x(b)S F20(\))S F21(;)S 1296 X F48(X)S 11 x F21(<)S 12 x F48(0.0)S
13 x F6(and)S 14 x F48(Y)S 11 x F20(=)S 12 x F48(0.0)S 50 y 916 X
F20(\(arctan)S 7 x(\()S F48(Y)S F21(=)S F48(X)S -1 x F20(\))S 1 x
(\))S 9 x F22(\000)S 10 x F21(\031)S 1 x(;)S 41 x F48(X)S 11 x F21
(<)S 12 x F48(0.0)S 13 x F6(and)S 14 x F48(Y)S 11 x F21(<)S 12 x F48
(0.0)S 2589 Y 383 X F2(Usage:)S 2742 Y -61 x F48(Z)S 22 x(:=)S 21 x
(ARCTAN\(Y\);)S 924 X(--)S 21 x(Z,)S 21 x(in)S 22 x(radians,)S 20 x
(is)S 21 x(the)S 22 x(angle)S 20 x(\(in)S 21 x(the)S 50 y 924 X(--)S
XP /F48 113 22 2 -9 22 18 27 24 0
<07C700 1FF700 3FFF00 7C3F00 781F00 F00F00 F00700 E00700 E00700
E00700 E00700 F00700 F00F00 781F00 7C3F00 3FFF00 1FF700 07C700
000700 000700 000700 000700 000700 000700 003FE0 007FF0 003FE0>
PXLC RP
989 2792 XY F48(quadrant)S 20 x(containing)S 20 x(the)S 21 x(point)S
21 x(\(1.0,Y\)\))S 49 y 924 X(--)S 21 x(whose)S 21 x(tangent)S 20 x
(is)S 22 x(Y)S 50 y 466 X(Z)S 22 x(:=)S 21 x(ARCTAN\(Y,)S 20 x(X\);)S
65 x(--)S 21 x(Z,)S 21 x(in)S 22 x(radians,)S 20 x(is)S 21 x(the)S
22 x(angle)S 20 x(\(in)S 21 x(the)S 50 y 924 X(--)S 21 x(quadrant)S
20 x(containing)S 20 x(the)S 21 x(point)S 21 x(\(X,Y\)\))S 50 y
924 X(--)S 21 x(whose)S 21 x(tangent)S 20 x(is)S 22 x(Y)S
XP /F48 47 22 2 -3 19 29 32 24 0
<000180 000380 000380 000700 000700 000E00 000E00 001C00 001C00
003800 003800 007000 007000 00E000 00E000 01C000 01C000 038000
038000 070000 070000 0E0000 0E0000 1C0000 1C0000 380000 380000
700000 700000 E00000 E00000 C00000>
PXLC RP
1381 2991 XY F48(/X)S 3128 Y 1254 X F6(25)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Domain:)S 480 Y 466 X F48(X)S 19 x F22(6)S F20(=)S
20 x F48(0.0)S 20 x F6(when)S 21 x F48(Y)S 19 x F20(=)S 20 x F48
(0.0)S 656 Y 383 X F2(Range:)S 795 Y -69 x F6(\(a\))S 37 x F22(j)S
F48(ARCTAN\(Y\))S -2 x F22(j)S 19 x(\024)S 20 x F21(\031)S 1 x(=)S
F20(2)S 62 y 466 X F6(\(b\))S 35 x F48(0.0)S 17 x F22(\024)S 17 x
F48(ARCTAN\(Y,)S 19 x(X\))S 16 x F22(\024)S 18 x F21(\031)S 20 x F6
(when)S 18 x F48(Y)S 17 x F22(\025)S 18 x F48(0.0)S 62 y 466 X F6
(\(c\))S 37 x F22(\000)S F21(\031)S 14 x F22(\024)S 13 x F48
(ARCTAN\(Y,)S 18 x(X\))S 12 x F22(\024)S 13 x F48(0.0)S 14 x F6
(when)S 15 x F48(Y)S 12 x F22(\024)S 12 x F48(0.0)S 14 x F6(\(see)S
15 x(note)S 15 x(b)S 14 x(regarding)S 15 x(the)S 14 x(overlap)S 14 x
(at)S 15 x F48(Y)S 12 x F20(=)S 13 x F48(0.0)S -1 x F6(\))S 1095 Y
383 X F2(Accuracy:)S 1234 Y 466 X F6(\(a\))S 37 x(Maximum)S 17 x
(relative)S 17 x(error)S 17 x F20(=)S 15 x F48(4.0)S 10 x F22(\001)S
10 x F48(FLOAT_TYPE\015BASE\015EPSILON)S 62 y 466 X F6(\(b\))S 35 x
F48(ARCTAN\(0.0\))S 17 x F20(=)S 20 x F48(0.0)S 1377 Y 466 X F6
(\(c\))S 37 x F48(ARCTAN\(0.0,)S 19 x(X\))S 15 x F20(=)S
XP /F23 26 31 5 -97 25 2 99 24 0
<000070 0001F0 0003C0 000780 000E00 001C00 003800 007000 007000
00F000 00E000 00E000 00E000 00E000 00E000 00E000 00E000 00E000
00E000 00E000 00E000 00E000 00E000 00E000 00E000 00E000 00E000
00E000 00E000 00E000 00E000 00E000 00E000 00E000 00E000 00E000
00E000 00E000 00E000 00E000 01C000 01C000 01C000 038000 070000
060000 0E0000 380000 700000 C00000 700000 380000 0E0000 060000
070000 038000 01C000 01C000 01C000 00E000 00E000 00E000 00E000
00E000 00E000 00E000 00E000 00E000 00E000 00E000 00E000 00E000
00E000 00E000 00E000 00E000 00E000 00E000 00E000 00E000 00E000
00E000 00E000 00E000 00E000 00E000 00E000 00E000 00E000 00F000
007000 007000 003800 001C00 000E00 000780 0003C0 0001F0 000070>
PXLC RP
918 1319 XY F23(\032)S 31 y 7 x F48(0.0)S -1 x F21(;)S 1293 X F48(X)S
11 x F21(>)S 12 x F48(0.0)S 49 y 956 X F22(\006)S F21(\031)S 22 x
F20(\()S F6(see)S 14 x(note)S 14 x(b)S F20(\))S 1 x F21(;)S 41 x F48
(X)S 11 x F21(<)S 12 x F48(0.0)S 1491 Y 466 X F6(\(d\))S 35 x F48
(ARCTAN\(Y,)S 19 x(0.0\))S 17 x F20(=)S -59 y 17 x F23(\032)S 34 y
7 x F21(\031)S 1 x(=)S F20(2)S F21(;)S 73 x F48(Y)S 12 x F21(>)S
11 x F48(0.0)S 50 y 958 X F22(\000)S F21(\031)S 1 x(=)S F20(2)S F21
(;)S 41 x F48(Y)S 12 x F21(<)S 11 x F48(0.0)S 1679 Y 383 X F2
(Notes:)S 1818 Y -53 x F6(\(a\))S 37 x F22(\000)S F21(\031)S 1 x F6
(,)S 22 x F22(\000)S F21(\031)S 1 x(=)S F20(2)S F6(,)S 21 x F21
(\031)S 1 x(=)S F20(2)S F6(,)S 21 x(and)S 20 x F21(\031)S 21 x F6
(are)S 20 x(not)S 20 x(safe)S 20 x(numbers)S 20 x(of)S 20 x F48
(FLOAT_TYPE)S F6(.)S 18 x(Accordingly,)S 21 x(an)S 20 x
(implementation)S 49 y 549 X(may)S 21 x(exceed)S 21 x(the)S 21 x
(range)S 21 x(limits)S 21 x(that)S 21 x(involve)S 21 x(these)S 21 x
(numbers,)S 22 x(but)S 21 x(only)S 21 x(slightly;)S 23 x(cf.)S 13 x
(Section)S 21 x(9)S 21 x(for)S 22 x(a)S 50 y 549 X(precise)S 15 x
(statement)S 15 x(of)S 16 x(the)S 16 x(requirements.)S 23 x
(Similarly,)S 16 x(when)S 16 x(accuracy)S 16 x(requirement)S 16 x
(\(c\))S 16 x(or)S 16 x(\(d\))S 16 x(applies,)S 16 x(an)S 50 y 549 X
(implementation)S 16 x(may)S 16 x(approximate)S 16 x(a)S 16 x
(prescribed)S 16 x(result)S 16 x(that)S 17 x(involves)S 16 x(one)S
17 x(of)S 17 x(these)S 16 x(numbers,)S 17 x(but)S 16 x(only)S 50 y
549 X(within)S 16 x(narrow)S 16 x(limits;)S 16 x(cf.)S 13 x(Section)S
15 x(10)S 16 x(for)S 15 x(a)S 15 x(precise)S 16 x(statement)S 15 x
(of)S 15 x(the)S 16 x(requirements.)S 62 y 466 X(\(b\))S 35 x(T)S
-3 x(wo)S 20 x(cases)S 19 x(arise)S 19 x(when)S 18 x F48(X)S 17 x
F21(<)S 17 x F48(0.0)S 18 x F6(and)S 18 x F48(Y)S 17 x F20(=)S 17 x
F48(0.0)S -1 x F6(:)S 2163 Y 549 X(\(i\))S 44 x(in)S 15 x(an)S 14 x
(implementation)S 14 x(exploiting)S 15 x(signed)S 14 x(zeros)S 14 x
(\(cf.)S 14 x(Section)S 15 x(4\),)S 14 x F48(ARCTAN)S 13 x F6(must)S
14 x(deliver)S 14 x F22(\000)S F21(\031)S 16 x F6(when)S 14 x F48(Y)S
49 y 632 X F6(is)S 16 x(a)S 16 x(negatively)S 16 x(signed)S 16 x
(zero)S 16 x(and)S 16 x F21(\031)S 17 x F6(when)S 16 x F48(Y)S 16 x
F6(is)S 16 x(a)S 16 x(positively)S 16 x(signed)S 16 x(zero;)S 50 y
549 X(\(ii\))S 32 x(in)S 16 x(an)S 16 x(implementation)S 16 x(not)S
16 x(exploiting)S 16 x(signed)S 16 x(zeros,)S 16 x F48(ARCTAN)S 14 x
F6(must)S 15 x(deliver)S 15 x F21(\031)S 1 x F6(.)S 2472 Y 300 X F50
(13.19.)S 33 x(ARCT)S -4 x(AN)S 19 x(\320)S 20 x(Inverse)S 20 x(T)S
-3 x(rigonometric)S 19 x(T)S -4 x(angent)S 19 x(Function,)S 70 y
833 X(Arbitrary)S 21 x(Cycle)S 22 x(\(Angle)S 21 x(in)S 21 x
(Arbitrary)S 22 x(Units\))S 2718 Y 383 X F2(Declaration:)S 2895 Y
466 X F48(function)S 20 x(ARCTAN)S 21 x(\(Y)S 967 X(:)S 22 x
(FLOAT_TYPE;)S 49 y 837 X(X)S 967 X(:)S 22 x(FLOAT_TYPE)S 20 x(:=)S
21 x(1.0;)S 50 y 837 X(CYCLE)S 20 x(:)S 22 x(FLOAT_TYPE\))S 1425 X
(return)S 20 x(FLOAT_TYPE;)S 3128 Y 1254 X F6(26)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(De\014nition:)S 483 Y 466 X F6(\(a\))S 37 x F48
(ARCTAN\(Y,)S 19 x(CYCLE)S 20 x(=>)S 20 x(CYCLE\))S 15 x F22(\031)S
16 x F20(\(arctan)S 7 x F48(Y)S F20(\))S 11 x F22(\001)S 10 x F48
(CYCLE)S -1 x F21(=)S F20(2)S F21(\031)S 613 Y 466 X F6(\(b\))S 35 x
F48(ARCTAN\(Y,)S 19 x(X,)S 20 x(CYCLE\))S 12 x F22(\031)S 515 Y 13 x
F23(8)S 38 y -37 x(>)S 12 y -37 x(<)S 75 y -37 x(>)S 12 y -37 x(:)S
538 Y 6 x F20(\()S 1 x(arctan)S 7 x(\()S F48(Y)S F21(=)S F48(X)S
-1 x F20(\))S 1 x(\))S 9 x F22(\001)S 9 x F48(CYCLE)S -1 x F21(=)S
F20(2)S F21(\031)S 1 x(;)S 1681 X F48(X)S 11 x F22(\025)S 12 x F48
(0.0)S 50 y 1062 X F20(\()S 1 x(\(arctan)S 7 x(\()S F48(Y)S F21(=)S
F48(X)S F20(\)\))S 9 x(+)S 10 x F21(\031)S 1 x F20(\))S 9 x F22
(\001)S 9 x F48(CYCLE)S -1 x F21(=)S F20(2)S F21(\031)S 1 x(;)S 41 x
F48(X)S 11 x F21(<)S 12 x F48(0.0)S 13 x F6(and)S 14 x F48(Y)S 11 x
F21(>)S 12 x F48(0.0)S 50 y 1062 X F22(\006)S F48(CYCLE)S F21(=)S
F48(2.0)S 20 x F20(\()S F6(see)S 14 x(note)S 14 x(b)S F20(\))S F21
(;)S 1681 X F48(X)S 11 x F21(<)S 12 x F48(0.0)S 13 x F6(and)S 14 x
F48(Y)S 11 x F20(=)S 12 x F48(0.0)S 50 y 1062 X F20(\()S 1 x
(\(arctan)S 7 x(\()S F48(Y)S F21(=)S F48(X)S F20(\)\))S 9 x F22
(\000)S 10 x F21(\031)S 1 x F20(\))S 9 x F22(\001)S 9 x F48(CYCLE)S
-1 x F21(=)S F20(2)S F21(\031)S 1 x(;)S 41 x F48(X)S 11 x F21(<)S
12 x F48(0.0)S 13 x F6(and)S 14 x F48(Y)S 11 x F21(<)S 12 x F48(0.0)S
851 Y 383 X F2(Usage:)S 1032 Y -61 x F48(Z)S 22 x(:=)S 21 x
(ARCTAN\(Y,)S 20 x(CYCLE)S 21 x(=>)S 21 x(360.0\);)S 64 x(--)S 21 x
(Z,)S 22 x(in)S 21 x(degrees,)S 20 x(is)S 22 x(the)S 49 y 1207 X(--)S
21 x(angle)S 21 x(\(in)S 21 x(the)S 21 x(quadrant)S 50 y 1207 X(--)S
21 x(containing)S 20 x(the)S 21 x(point)S 50 y 1207 X(--)S 21 x
(\(1.0,Y\)\))S 21 x(whose)S 20 x(tangent)S 21 x(is)S 21 x(Y)S 50 y
466 X(Z)S 22 x(:=)S 21 x(ARCTAN\(Y,)S 20 x(CYCLE)S 21 x(=>)S 21 x
(CYCLE\);)S 64 x(--)S 21 x(Z,)S 22 x(in)S 21 x(units)S 21 x(such)S
21 x(that)S 21 x(one)S 50 y 1207 X(--)S 21 x(complete)S 21 x(cycle)S
20 x(of)S 22 x(rotation)S 49 y 1207 X(--)S 21 x(corresponds)S 20 x
(to)S 21 x(Z)S 22 x(=)S 21 x(CYCLE,)S 50 y 1207 X(--)S 21 x(is)S
22 x(the)S 21 x(angle)S 21 x(\(in)S 21 x(the)S 50 y 1207 X(--)S 21 x
(quadrant)S 21 x(containing)S 19 x(the)S 50 y 1207 X(--)S 21 x
(point)S 21 x(\(1.0,Y\)\))S 20 x(whose)S 50 y 1207 X(--)S 21 x
(tangent)S 21 x(is)S 21 x(Y)S 49 y 466 X(Z)S 22 x(:=)S 21 x
(ARCTAN\(Y,)S 20 x(X,)S 21 x(360.0\);)S 1207 X(--)S 21 x(Z,)S 22 x
(in)S 21 x(degrees,)S 20 x(is)S 22 x(the)S 50 y 1207 X(--)S 21 x
(angle)S 21 x(\(in)S 21 x(the)S 21 x(quadrant)S 50 y 1207 X(--)S
21 x(containing)S 20 x(the)S 21 x(point)S 21 x(\(X,Y\)\))S 50 y
1207 X(--)S 21 x(whose)S 21 x(tangent)S 20 x(is)S 22 x(Y/X)S 50 y
466 X(Z)S 22 x(:=)S 21 x(ARCTAN\(Y,)S 20 x(X,)S 21 x(CYCLE\);)S
1207 X(--)S 21 x(Z,)S 22 x(in)S 21 x(units)S 21 x(such)S 21 x(that)S
21 x(one)S 50 y 1207 X(--)S 21 x(complete)S 21 x(cycle)S 20 x(of)S
22 x(rotation)S 49 y 1207 X(--)S 21 x(corresponds)S 20 x(to)S 21 x
(Z)S 22 x(=)S 21 x(CYCLE,)S 50 y 1207 X(--)S 21 x(is)S 22 x(the)S
21 x(angle)S 21 x(\(in)S 21 x(the)S 50 y 1207 X(--)S 21 x(quadrant)S
21 x(containing)S 19 x(the)S 50 y 1207 X(--)S 21 x(point)S 21 x
(\(X,Y\)\))S 21 x(whose)S 50 y 1207 X(--)S 21 x(tangent)S 21 x(is)S
21 x(Y/X)S 2258 Y 383 X F2(Domain:)S 2399 Y 466 X F6(\(a\))S 37 x
F48(X)S 19 x F22(6)S F20(=)S 19 x F48(0.0)S 20 x F6(when)S 20 x F48
(Y)S 19 x F20(=)S 19 x F48(0.0)S 63 y 466 X F6(\(b\))S 35 x F48
(CYCLE)S 19 x F21(>)S 21 x F48(0.0)S 2642 Y 383 X F2(Range:)S 2783 Y
-69 x F6(\(a\))S 37 x F22(j)S F48(ARCTAN\(Y,)S 18 x(CYCLE)S 20 x(=>)S
21 x(CYCLE\))S -2 x F22(j)S 17 x(\024)S 17 x F48(CYCLE)S -1 x F21(=)S
F48(4.0)S 63 y 466 X F6(\(b\))S 35 x F48(0.0)S 15 x F22(\024)S 15 x
F48(ARCTAN\(Y,)S 19 x(X,)S 20 x(CYCLE\))S 14 x F22(\024)S 16 x F48
(CYCLE)S -1 x F21(=)S F48(2.0)S 16 x F6(when)S 17 x F48(Y)S 15 x F22
(\025)S 16 x F48(0.0)S 62 y 466 X F6(\(c\))S 37 x F22(\000)S F48
(CYCLE)S -1 x F21(=)S F48(2.0)S 15 x F22(\024)S 15 x F48(ARCTAN\(Y,)S
19 x(X,)S 20 x(CYCLE\))S 14 x F22(\024)S 16 x F48(0.0)S 17 x F6
(when)S 18 x F48(Y)S 15 x F22(\024)S 15 x F48(0.0)S 17 x F6(\(see)S
17 x(note)S 17 x(b)S 17 x(regarding)S 18 x(the)S 18 x(overlap)S 50 y
549 X(at)S 22 x F48(Y)S 20 x F20(=)S 20 x F48(0.0)S F6(\))S 3128 Y
1254 X(27)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 92 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Accuracy:)S 452 Y 466 X F6(\(a\))S 37 x(Maximum)S 17 x
(relative)S 17 x(error)S 17 x F20(=)S 15 x F48(4.0)S 10 x F22(\001)S
10 x F48(FLOAT_TYPE\015BASE\015EPSILON)S 63 y 466 X F6(\(b\))S 35 x
F48(ARCTAN\(0.0,)S 19 x(CYCLE)S 19 x(=>)S 21 x(CYCLE\))S 16 x F20(=)S
17 x F48(0.0)S 596 Y 466 X F6(\(c\))S 37 x F48(ARCTAN\(0.0,)S 19 x
(X,)S 20 x(CYCLE\))S 13 x F20(=)S -58 y 15 x F23(\032)S 30 y 7 x F48
(0.0)S -1 x F21(;)S 1610 X F48(X)S 12 x F21(>)S 11 x F48(0.0)S 50 y
1104 X F22(\006)S F48(CYCLE)S -1 x F21(=)S F48(2.0)S 20 x F20(\()S
F6(see)S 14 x(note)S 14 x(b)S F20(\))S F21(;)S 41 x F48(X)S 12 x F21
(<)S 11 x F48(0.0)S 709 Y 466 X F6(\(d\))S 35 x F48(ARCTAN\(Y,)S
19 x(0.0,)S 20 x(CYCLE\))S 14 x F20(=)S -58 y 16 x F23(\032)S 33 y
8 x F48(CYCLE)S -2 x F21(=)S F48(4.0)S F21(;)S 73 x F48(Y)S 11 x F21
(>)S 12 x F48(0.0)S 50 y 1107 X F22(\000)S F48(CYCLE)S -1 x F21(=)S
F48(4.0)S -1 x F21(;)S 41 x F48(Y)S 11 x F21(<)S 12 x F48(0.0)S
860 Y 383 X F2(Notes:)S 971 Y -53 x F6(\(a\))S 37 x F22(\000)S F48
(CYCLE)S -1 x F21(=)S F48(2.0)S -1 x F6(,)S 10 x F22(\000)S F48
(CYCLE)S -1 x F21(=)S F48(4.0)S -1 x F6(,)S 10 x F48(CYCLE)S -1 x
F21(=)S F48(4.0)S -1 x F6(,)S 9 x(and)S 9 x F48(CYCLE)S -1 x F21(=)S
F48(2.0)S 9 x F6(might)S 9 x(not)S 9 x(be)S 10 x(safe)S 10 x
(numbers)S 9 x(of)S 10 x F48(FLOAT_TYPE)S F6(.)S 50 y 549 X
(Accordingly,)S 16 x(an)S 16 x(implementation)S 16 x(may)S 16 x
(exceed)S 16 x(the)S 16 x(range)S 16 x(limits)S 16 x(that)S 16 x
(involve)S 16 x(these)S 16 x(numbers,)S 16 x(but)S 16 x(only)S 50 y
549 X(slightly;)S 27 x(cf.)S 14 x(Section)S 23 x(9)S 24 x(for)S 24 x
(a)S 24 x(precise)S 24 x(statement)S 24 x(of)S 23 x(the)S 24 x
(requirements.)S 39 x(Similarly,)S 25 x(when)S 24 x(accuracy)S 50 y
549 X(requirement)S 13 x(\(c\))S 14 x(or)S 13 x(\(d\))S 13 x
(applies,)S 14 x(an)S 14 x(implementation)S 13 x(may)S 14 x
(approximate)S 14 x(a)S 14 x(prescribed)S 13 x(result)S 13 x(that)S
13 x(involves)S 50 y 549 X(one)S 16 x(of)S 16 x(these)S 16 x
(numbers,)S 16 x(but)S 16 x(only)S 16 x(within)S 16 x(narrow)S 16 x
(limits;)S 16 x(cf.)S 14 x(Section)S 17 x(10)S 16 x(for)S 16 x(a)S
16 x(precise)S 16 x(statement)S 17 x(of)S 16 x(the)S 49 y 549 X
(requirements.)S 63 y 466 X(\(b\))S 35 x(T)S -3 x(wo)S 20 x(cases)S
19 x(arise)S 19 x(when)S 18 x F48(X)S 17 x F21(<)S 17 x F48(0.0)S
18 x F6(and)S 18 x F48(Y)S 17 x F20(=)S 17 x F48(0.0)S -1 x F6(:)S
74 y 549 X(\(i\))S 44 x(in)S 12 x(an)S 12 x(implementation)S 11 x
(exploiting)S 12 x(signed)S 12 x(zeros)S 12 x(\(cf.)S 11 x(Section)S
12 x(4\),)S 12 x F48(ARCTAN)S 10 x F6(must)S 12 x(deliver)S 12 x F22
(\000)S F48(CYCLE)S -1 x F21(=)S F48(2.0)S 50 y 632 X F6(when)S 14 x
F48(Y)S 15 x F6(is)S 15 x(a)S 15 x(negatively)S 14 x(signed)S 14 x
(zero)S 14 x(and)S 14 x F48(CYCLE)S -1 x F21(=)S F48(2.0)S 14 x F6
(when)S 14 x F48(Y)S 15 x F6(is)S 15 x(a)S 15 x(positively)S 14 x
(signed)S 15 x(zero;)S 49 y 549 X(\(ii\))S 32 x(in)S 15 x(an)S 15 x
(implementation)S 15 x(not)S 14 x(exploiting)S 15 x(signed)S 15 x
(zeros,)S 15 x F48(ARCTAN)S 13 x F6(must)S 15 x(deliver)S 15 x F48
(CYCLE)S -1 x F21(=)S F48(2.0)S -1 x F6(.)S 1629 Y 300 X F50(13.20.)S
33 x(ARCCOT)S 20 x(\320)S 19 x(Inverse)S 19 x(T)S -3 x(rigonometric)S
18 x(Cotangent)S 20 x(Function,)S 71 y 840 X(Natural)S 23 x(Cycle)S
23 x(\(Angle)S 23 x(in)S 23 x(Radians\))S 1838 Y 383 X F2
(Declaration:)S 1978 Y 466 X F48(function)S 20 x(ARCCOT)S 21 x(\(X)S
21 x(:)S 22 x(FLOAT_TYPE;)S 50 y 837 X(Y)S 21 x(:)S 22 x(FLOAT_TYPE)S
19 x(:=)S 22 x(1.0\))S 21 x(return)S 20 x(FLOAT_TYPE;)S 2167 Y 383 X
F2(De\014nition:)S 2278 Y 466 X F6(\(a\))S 37 x F48(ARCCOT\(X\))S
17 x F22(\031)S 20 x F20(arccot)S 8 x F48(X)S 2405 Y 466 X F6(\(b\))S
35 x F48(ARCCOT\(X,)S 19 x(Y\))S 15 x F22(\031)S 2307 Y 15 x F23(8)S
38 y -37 x(>)S 12 y -37 x(<)S 75 y -37 x(>)S 12 y -37 x(:)S 2330 Y
7 x F20(arccot)S 7 x(\()S F48(X)S F21(=)S F48(Y)S F20(\))S F21(;)S
1291 X F48(Y)S 11 x F21(>)S 12 x F48(0.0)S 50 y 916 X(0.0)S -1 x F21
(;)S 1291 X F48(Y)S 11 x F20(=)S 12 x F48(0.0)S 14 x F6(and)S 14 x
F48(X)S 12 x F21(>)S 11 x F48(0.0)S 50 y 916 X F22(\006)S F21(\031)S
22 x F20(\()S F6(see)S 14 x(note)S 14 x(b)S F20(\))S F21(;)S 1291 X
F48(Y)S 11 x F20(=)S 12 x F48(0.0)S 14 x F6(and)S 14 x F48(X)S 12 x
F21(<)S 11 x F48(0.0)S 50 y 916 X F20(\(arccot)S 7 x(\()S 1 x F48(X)S
F21(=)S F48(Y)S -1 x F20(\)\))S 9 x F22(\000)S 10 x F21(\031)S 1 x
(;)S 41 x F48(Y)S 11 x F21(<)S 12 x F48(0.0)S 2602 Y 383 X F2
(Usage:)S 2742 Y -61 x F48(Z)S 22 x(:=)S 21 x(ARCCOT\(X\);)S 924 X
(--)S 21 x(Z,)S 21 x(in)S 22 x(radians,)S 20 x(is)S 21 x(the)S 22 x
(angle)S 20 x(\(in)S 21 x(the)S 50 y 924 X(--)S 21 x(quadrant)S 20 x
(containing)S 20 x(the)S 21 x(point)S 21 x(\(X,1.0\))S 49 y 924 X
(--)S 21 x(whose)S 21 x(cotangent)S 20 x(is)S 21 x(X)S 50 y 466 X(Z)S
22 x(:=)S 21 x(ARCCOT\(X,)S 20 x(Y\);)S 65 x(--)S 21 x(Z,)S 21 x(in)S
22 x(radians,)S 20 x(is)S 21 x(the)S 22 x(angle)S 20 x(\(in)S 21 x
(the)S 50 y 924 X(--)S 21 x(quadrant)S 20 x(containing)S 20 x(the)S
21 x(point)S 21 x(\(X,Y\)\))S 50 y 924 X(--)S 21 x(whose)S 21 x
(cotangent)S 20 x(is)S 21 x(X/Y)S 3128 Y 1254 X F6(28)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Domain:)S 480 Y 466 X F48(Y)S 19 x F22(6)S F20(=)S
20 x F48(0.0)S 20 x F6(when)S 21 x F48(X)S 19 x F20(=)S 20 x F48
(0.0)S 656 Y 383 X F2(Range:)S 794 Y -69 x F6(\(a\))S 37 x F48(0.0)S
19 x F22(\024)S 19 x F48(ARCCOT\(X\))S 17 x F22(\024)S 19 x F21
(\031)S 62 y 466 X F6(\(b\))S 35 x F48(0.0)S 17 x F22(\024)S 17 x
F48(ARCCOT\(X,)S 19 x(Y\))S 16 x F22(\024)S 18 x F21(\031)S 20 x F6
(when)S 18 x F48(Y)S 17 x F22(\025)S 18 x F48(0.0)S 62 y 466 X F6
(\(c\))S 37 x F22(\000)S F21(\031)S 14 x F22(\024)S 13 x F48
(ARCCOT\(X,)S 18 x(Y\))S 12 x F22(\024)S 13 x F48(0.0)S 14 x F6
(when)S 15 x F48(Y)S 12 x F22(\024)S 12 x F48(0.0)S 14 x F6(\(see)S
15 x(note)S 15 x(b)S 14 x(regarding)S 15 x(the)S 14 x(overlap)S 14 x
(at)S 15 x F48(Y)S 12 x F20(=)S 13 x F48(0.0)S -1 x F6(\))S 1094 Y
383 X F2(Accuracy:)S 1232 Y 466 X F6(\(a\))S 37 x(Maximum)S 17 x
(relative)S 17 x(error)S 17 x F20(=)S 15 x F48(4.0)S 10 x F22(\001)S
10 x F48(FLOAT_TYPE\015BASE\015EPSILON)S 63 y 466 X F6(\(b\))S 35 x
F48(ARCCOT\(0.0\))S 17 x F20(=)S 20 x F21(\031)S 1 x(=)S F20(2)S
1379 Y 466 X F6(\(c\))S 37 x F48(ARCCOT\(0.0,)S 19 x(Y\))S 17 x F20
(=)S -59 y 17 x F23(\032)S 34 y 7 x F21(\031)S 1 x(=)S F20(2)S F21
(;)S 73 x F48(Y)S 12 x F21(>)S 11 x F48(0.0)S 50 y 958 X F22(\000)S
F21(\031)S 1 x(=)S F20(2)S F21(;)S 41 x F48(Y)S 12 x F21(<)S 11 x
F48(0.0)S 1492 Y 466 X F6(\(d\))S 35 x F48(ARCCOT\(X,)S 19 x(0.0\))S
15 x F20(=)S -58 y 17 x F23(\032)S 30 y 7 x F48(0.0)S -1 x F21(;)S
1293 X F48(X)S 11 x F21(>)S 12 x F48(0.0)S 50 y 956 X F22(\006)S F21
(\031)S 22 x F20(\()S F6(see)S 14 x(note)S 14 x(b)S F20(\))S 1 x F21
(;)S 41 x F48(X)S 11 x F21(<)S 12 x F48(0.0)S 1680 Y 383 X F2
(Notes:)S 1819 Y -53 x F6(\(a\))S 37 x F22(\000)S F21(\031)S 1 x F6
(,)S 15 x F22(\000)S F21(\031)S 1 x(=)S F20(2)S F6(,)S 14 x F21
(\031)S 1 x(=)S F20(2)S F6(,)S 14 x(and)S 14 x F21(\031)S 15 x F6
(are)S 14 x(not)S 14 x(safe)S 14 x(numbers)S 14 x(of)S 14 x F48
(FLOAT_TYPE)S F6(.)S 11 x(Accordingly,)S 14 x(an)S 14 x
(implementation)S 14 x(may)S 49 y 549 X(exceed)S 18 x(the)S 18 x
(range)S 19 x(limits)S 18 x(that)S 18 x(involve)S 18 x(these)S 18 x
(numbers,)S 19 x(but)S 18 x(only)S 18 x(slightly;)S 19 x(cf.)S 14 x
(Section)S 18 x(9)S 18 x(for)S 18 x(a)S 18 x(precise)S 50 y 549 X
(statement)S 19 x(of)S 19 x(the)S 19 x(requirements.)S 29 x
(Similarly,)S 20 x(when)S 19 x(accuracy)S 19 x(requirement)S 19 x
(\(b\),)S 20 x(\(c\),)S 20 x(or)S 20 x(\(d\))S 19 x(applies,)S 20 x
(an)S 50 y 549 X(implementation)S 16 x(may)S 16 x(approximate)S 16 x
(a)S 16 x(prescribed)S 16 x(result)S 16 x(that)S 17 x(involves)S
16 x(one)S 17 x(of)S 17 x(these)S 16 x(numbers,)S 17 x(but)S 16 x
(only)S 50 y 549 X(within)S 16 x(narrow)S 16 x(limits;)S 16 x(cf.)S
13 x(Section)S 15 x(10)S 16 x(for)S 15 x(a)S 15 x(precise)S 16 x
(statement)S 15 x(of)S 15 x(the)S 16 x(requirements.)S 62 y 466 X
(\(b\))S 35 x(T)S -3 x(wo)S 20 x(cases)S 19 x(arise)S 19 x(when)S
18 x F48(X)S 17 x F21(<)S 17 x F48(0.0)S 18 x F6(and)S 18 x F48(Y)S
17 x F20(=)S 17 x F48(0.0)S -1 x F6(:)S 2163 Y 549 X(\(i\))S 44 x
(in)S 15 x(an)S 14 x(implementation)S 14 x(exploiting)S 15 x(signed)S
14 x(zeros)S 14 x(\(cf.)S 14 x(Section)S 15 x(4\),)S 14 x F48
(ARCCOT)S 13 x F6(must)S 14 x(deliver)S 14 x F22(\000)S F21(\031)S
16 x F6(when)S 14 x F48(Y)S 50 y 632 X F6(is)S 16 x(a)S 16 x
(negatively)S 16 x(signed)S 16 x(zero)S 16 x(and)S 16 x F21(\031)S
17 x F6(when)S 16 x F48(Y)S 16 x F6(is)S 16 x(a)S 16 x(positively)S
16 x(signed)S 16 x(zero;)S 50 y 549 X(\(ii\))S 32 x(in)S 16 x(an)S
16 x(implementation)S 16 x(not)S 16 x(exploiting)S 16 x(signed)S
16 x(zeros,)S 16 x F48(ARCCOT)S 14 x F6(must)S 15 x(deliver)S 15 x
F21(\031)S 1 x F6(.)S 2472 Y 300 X F50(13.21.)S 33 x(ARCCOT)S 20 x
(\320)S 19 x(Inverse)S 19 x(T)S -3 x(rigonometric)S 18 x(Cotangent)S
20 x(Function,)S 71 y 840 X(Arbitrary)S 21 x(Cycle)S 21 x(\(Angle)S
21 x(in)S 21 x(Arbitrary)S 21 x(Units\))S 2719 Y 383 X F2
(Declaration:)S 2895 Y 466 X F48(function)S 20 x(ARCCOT)S 21 x(\(X)S
967 X(:)S 22 x(FLOAT_TYPE;)S 49 y 837 X(Y)S 967 X(:)S 22 x
(FLOAT_TYPE)S 20 x(:=)S 21 x(1.0;)S 50 y 837 X(CYCLE)S 20 x(:)S 22 x
(FLOAT_TYPE\))S 1425 X(return)S 20 x(FLOAT_TYPE;)S 3128 Y 1254 X F6
(29)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(De\014nition:)S 477 Y 466 X F6(\(a\))S 37 x F48
(ARCCOT\(X,)S 19 x(CYCLE)S 20 x(=>)S 20 x(CYCLE\))S 15 x F22(\031)S
16 x F20(\(arccot)S 7 x F48(X)S F20(\))S 11 x F22(\001)S 11 x F48
(CYCLE)S -1 x F21(=)S F20(2)S F21(\031)S 607 Y 466 X F6(\(b\))S 35 x
F48(ARCCOT\(X,)S 19 x(Y,)S 20 x(CYCLE\))S 12 x F22(\031)S 510 Y 13 x
F23(8)S 37 y -37 x(>)S 12 y -37 x(<)S 75 y -37 x(>)S 13 y -37 x(:)S
532 Y 7 x F20(\(arccot)S 7 x(\()S 1 x F48(X)S F21(=)S F48(Y)S -1 x
F20(\)\))S 9 x F22(\001)S 9 x F48(CYCLE)S -1 x F21(=)S F20(2)S F21
(\031)S 1 x(;)S 1676 X F48(Y)S 11 x F21(>)S 12 x F48(0.0)S 50 y
1063 X(0.0)S -1 x F21(;)S 1676 X F48(Y)S 11 x F20(=)S 12 x F48(0.0)S
13 x F6(and)S 14 x F48(X)S 11 x F21(>)S 12 x F48(0.0)S 50 y 1063 X
F22(\006)S F48(CYCLE)S -1 x F21(=)S F48(2.0)S 20 x F20(\()S F6(see)S
14 x(note)S 14 x(b)S F20(\))S F21(;)S 1676 X F48(Y)S 11 x F20(=)S
12 x F48(0.0)S 13 x F6(and)S 14 x F48(X)S 11 x F21(<)S 12 x F48(0.0)S
50 y 1063 X F20(\(\(arccot)S 8 x(\()S F48(X)S F21(=)S F48(Y)S -1 x
F20(\)\))S 10 x F22(\000)S 9 x F21(\031)S 1 x F20(\))S 10 x F22
(\001)S 8 x F48(CYCLE)S -1 x F21(=)S F20(2)S F21(\031)S 1 x(;)S 41 x
F48(Y)S 11 x F21(<)S 12 x F48(0.0)S 838 Y 383 X F2(Usage:)S 1010 Y
-61 x F48(Z)S 22 x(:=)S 21 x(ARCCOT\(X,)S 20 x(CYCLE)S 21 x(=>)S
21 x(360.0\);)S 64 x(--)S 21 x(Z,)S 22 x(in)S 21 x(degrees,)S 20 x
(is)S 22 x(the)S 50 y 1207 X(--)S 21 x(angle)S 21 x(\(in)S 21 x(the)S
21 x(quadrant)S 50 y 1207 X(--)S 21 x(containing)S 20 x(the)S 21 x
(point)S 50 y 1207 X(--)S 21 x(\(X,1.0\)\))S 21 x(whose)S 20 x
(cotangent)S 50 y 1207 X(--)S 21 x(is)S 22 x(X)S 50 y 466 X(Z)S 22 x
(:=)S 21 x(ARCCOT\(X,)S 20 x(CYCLE)S 21 x(=>)S 21 x(CYCLE\);)S 64 x
(--)S 21 x(Z,)S 22 x(in)S 21 x(units)S 21 x(such)S 21 x(that)S 21 x
(one)S 49 y 1207 X(--)S 21 x(complete)S 21 x(cycle)S 20 x(of)S 22 x
(rotation)S 50 y 1207 X(--)S 21 x(corresponds)S 20 x(to)S 21 x(Z)S
22 x(=)S 21 x(CYCLE,)S 50 y 1207 X(--)S 21 x(is)S 22 x(the)S 21 x
(angle)S 21 x(\(in)S 21 x(the)S 50 y 1207 X(--)S 21 x(quadrant)S
21 x(containing)S 19 x(the)S 50 y 1207 X(--)S 21 x(point)S 21 x
(\(X,1.0\)\))S 20 x(whose)S 49 y 1207 X(--)S 21 x(cotangent)S 20 x
(is)S 22 x(X)S 50 y 466 X(Z)S 22 x(:=)S 21 x(ARCCOT\(X,)S 20 x(Y,)S
21 x(360.0\);)S 1207 X(--)S 21 x(Z,)S 22 x(in)S 21 x(degrees,)S 20 x
(is)S 22 x(the)S 50 y 1207 X(--)S 21 x(angle)S 21 x(\(in)S 21 x(the)S
21 x(quadrant)S 50 y 1207 X(--)S 21 x(containing)S 20 x(the)S 21 x
(point)S 21 x(\(X,Y\)\))S 50 y 1207 X(--)S 21 x(whose)S 21 x
(cotangent)S 20 x(is)S 21 x(X/Y)S 49 y 466 X(Z)S 22 x(:=)S 21 x
(ARCCOT\(X,)S 20 x(Y,)S 21 x(CYCLE\);)S 1207 X(--)S 21 x(Z,)S 22 x
(in)S 21 x(units)S 21 x(such)S 21 x(that)S 21 x(one)S 50 y 1207 X
(--)S 21 x(complete)S 21 x(cycle)S 20 x(of)S 22 x(rotation)S 50 y
1207 X(--)S 21 x(corresponds)S 20 x(to)S 21 x(Z)S 22 x(=)S 21 x
(CYCLE)S 50 y 1207 X(--)S 21 x(is)S 22 x(the)S 21 x(angle)S 21 x
(\(in)S 21 x(the)S 50 y 1207 X(--)S 21 x(quadrant)S 21 x(containing)S
19 x(the)S 50 y 1207 X(--)S 21 x(point)S 21 x(\(X,Y\)\))S 21 x
(whose)S 49 y 1207 X(--)S 21 x(cotangent)S 20 x(is)S 22 x(X/Y)S
2279 Y 383 X F2(Domain:)S 2415 Y 466 X F6(\(a\))S 37 x F48(Y)S 19 x
F22(6)S F20(=)S 19 x F48(0.0)S 20 x F6(when)S 20 x F48(X)S 19 x F20
(=)S 19 x F48(0.0)S 62 y 466 X F6(\(b\))S 35 x F48(CYCLE)S 19 x F21
(>)S 21 x F48(0.0)S 2650 Y 383 X F2(Range:)S 2785 Y -69 x F6(\(a\))S
37 x F48(0.0)S 16 x F22(\024)S 16 x F48(ARCCOT\(X,)S 19 x(CYCLE)S
20 x(=>)S 20 x(CYCLE\))S 15 x F22(\024)S 16 x F48(CYCLE)S -1 x F21
(=)S F48(2.0)S 63 y 466 X F6(\(b\))S 35 x F48(0.0)S 15 x F22(\024)S
15 x F48(ARCCOT\(X,)S 19 x(Y,)S 20 x(CYCLE\))S 14 x F22(\024)S 16 x
F48(CYCLE)S -1 x F21(=)S F48(2.0)S 16 x F6(when)S 17 x F48(Y)S 15 x
F22(\025)S 16 x F48(0.0)S 62 y 466 X F6(\(c\))S 37 x F22(\000)S F48
(CYCLE)S -1 x F21(=)S F48(2.0)S 15 x F22(\024)S 15 x F48(ARCCOT\(X,)S
19 x(Y,)S 20 x(CYCLE\))S 14 x F22(\024)S 16 x F48(0.0)S 17 x F6
(when)S 18 x F48(Y)S 15 x F22(\024)S 15 x F48(0.0)S 17 x F6(\(see)S
17 x(note)S 17 x(b)S 17 x(regarding)S 18 x(the)S 18 x(overlap)S 50 y
549 X(at)S 22 x F48(Y)S 20 x F20(=)S 20 x F48(0.0)S F6(\))S 3128 Y
1254 X(30)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 92 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Accuracy:)S 455 Y 466 X F6(\(a\))S 37 x(Maximum)S 17 x
(relative)S 17 x(error)S 17 x F20(=)S 15 x F48(4.0)S 10 x F22(\001)S
10 x F48(FLOAT_TYPE\015BASE\015EPSILON)S 62 y 466 X F6(\(b\))S 35 x
F48(ARCCOT\(0.0,)S 19 x(CYCLE)S 19 x(=>)S 21 x(CYCLE\))S 15 x F20(=)S
17 x F48(CYCLE)S -1 x F21(=)S F48(4.0)S 602 Y 466 X F6(\(c\))S 37 x
F48(ARCCOT\(0.0,)S 19 x(Y,)S 20 x(CYCLE\))S 14 x F20(=)S -59 y 16 x
F23(\032)S 34 y 8 x F48(CYCLE)S -2 x F21(=)S F48(4.0)S F21(;)S 73 x
F48(Y)S 11 x F21(>)S 12 x F48(0.0)S 50 y 1107 X F22(\000)S F48
(CYCLE)S -1 x F21(=)S F48(4.0)S -1 x F21(;)S 41 x F48(Y)S 11 x F21
(<)S 12 x F48(0.0)S 715 Y 466 X F6(\(d\))S 35 x F48(ARCCOT\(X,)S
19 x(0.0,)S 20 x(CYCLE\))S 13 x F20(=)S -58 y 15 x F23(\032)S 30 y
7 x F48(0.0)S -1 x F21(;)S 1610 X F48(X)S 12 x F21(>)S 11 x F48(0.0)S
50 y 1104 X F22(\006)S F48(CYCLE)S -1 x F21(=)S F48(2.0)S 20 x F20
(\()S F6(see)S 14 x(note)S 14 x(b)S F20(\))S F21(;)S 41 x F48(X)S
12 x F21(<)S 11 x F48(0.0)S 871 Y 383 X F2(Notes:)S 984 Y -53 x F6
(\(a\))S 37 x F22(\000)S F48(CYCLE)S -1 x F21(=)S F48(2.0)S -1 x F6
(,)S 10 x F22(\000)S F48(CYCLE)S -1 x F21(=)S F48(4.0)S -1 x F6(,)S
10 x F48(CYCLE)S -1 x F21(=)S F48(4.0)S -1 x F6(,)S 9 x(and)S 9 x
F48(CYCLE)S -1 x F21(=)S F48(2.0)S 9 x F6(might)S 9 x(not)S 9 x(be)S
10 x(safe)S 10 x(numbers)S 9 x(of)S 10 x F48(FLOAT_TYPE)S F6(.)S
50 y 549 X(Accordingly,)S 16 x(an)S 16 x(implementation)S 16 x(may)S
16 x(exceed)S 16 x(the)S 16 x(range)S 16 x(limits)S 16 x(that)S 16 x
(involve)S 16 x(these)S 16 x(numbers,)S 16 x(but)S 16 x(only)S 50 y
549 X(slightly;)S 27 x(cf.)S 14 x(Section)S 23 x(9)S 24 x(for)S 24 x
(a)S 24 x(precise)S 24 x(statement)S 24 x(of)S 23 x(the)S 24 x
(requirements.)S 39 x(Similarly,)S 25 x(when)S 24 x(accuracy)S 50 y
549 X(requirement)S 19 x(\(b\),)S 20 x(\(c\),)S 19 x(or)S 19 x
(\(d\))S 19 x(applies,)S 20 x(an)S 19 x(implementation)S 19 x(may)S
19 x(approximate)S 19 x(a)S 20 x(prescribed)S 19 x(result)S 19 x
(that)S 50 y 549 X(involves)S 13 x(one)S 14 x(of)S 13 x(these)S 14 x
(numbers,)S 14 x(but)S 14 x(only)S 13 x(within)S 14 x(narrow)S 14 x
(limits;)S 14 x(cf.)S 13 x(Section)S 13 x(10)S 14 x(for)S 14 x(a)S
14 x(precise)S 14 x(statement)S 49 y 549 X(of)S 21 x(the)S 21 x
(requirements.)S 63 y 466 X(\(b\))S 35 x(T)S -3 x(wo)S 20 x(cases)S
19 x(arise)S 19 x(when)S 18 x F48(X)S 17 x F21(<)S 17 x F48(0.0)S
18 x F6(and)S 18 x F48(Y)S 17 x F20(=)S 17 x F48(0.0)S -1 x F6(:)S
75 y 549 X(\(i\))S 44 x(in)S 12 x(an)S 12 x(implementation)S 11 x
(exploiting)S 12 x(signed)S 12 x(zeros)S 12 x(\(cf.)S 11 x(Section)S
12 x(4\),)S 12 x F48(ARCCOT)S 10 x F6(must)S 12 x(deliver)S 12 x F22
(\000)S F48(CYCLE)S -1 x F21(=)S F48(2.0)S 50 y 632 X F6(when)S 14 x
F48(Y)S 15 x F6(is)S 15 x(a)S 15 x(negatively)S 14 x(signed)S 14 x
(zero)S 14 x(and)S 14 x F48(CYCLE)S -1 x F21(=)S F48(2.0)S 14 x F6
(when)S 14 x F48(Y)S 15 x F6(is)S 15 x(a)S 15 x(positively)S 14 x
(signed)S 15 x(zero;)S 49 y 549 X(\(ii\))S 32 x(in)S 15 x(an)S 15 x
(implementation)S 15 x(not)S 14 x(exploiting)S 15 x(signed)S 15 x
(zeros,)S 15 x F48(ARCCOT)S 13 x F6(must)S 15 x(deliver)S 15 x F48
(CYCLE)S -1 x F21(=)S F48(2.0)S -1 x F6(.)S 1647 Y 300 X F50(13.22.)S
33 x(SINH)S 19 x(\320)S 19 x(Hyperbolic)S 19 x(Sine)S 19 x(Function)S
1790 Y 383 X F2(Declaration:)S 1934 Y 466 X F48(function)S 20 x
(SINH)S 21 x(\(X)S 22 x(:)S 21 x(FLOAT_TYPE\))S 20 x(return)S 20 x
(FLOAT_TYPE;)S 2077 Y 383 X F2(De\014nition:)S 2190 Y 466 X F48
(SINH\(X\))S 19 x F22(\031)S 20 x F20(sin)S
XP /F20 104 23 1 0 21 29 29 24 0
<FC0000 1C0000 1C0000 1C0000 1C0000 1C0000 1C0000 1C0000 1C0000
1C0000 1C0000 1C7C00 1C8700 1D0300 1E0380 1C0380 1C0380 1C0380
1C0380 1C0380 1C0380 1C0380 1C0380 1C0380 1C0380 1C0380 1C0380
1C0380 FF9FF0>
PXLC RP
742 2190 XY F20(h)S 7 x F48(X)S 2334 Y 383 X F2(Usage:)S 2477 Y -61 x
F48(Z)S 22 x(:=)S 21 x(SINH\(X\);)S 2620 Y 383 X F2(Domain:)S 2734 Y
466 X F6(Mathematically)S 20 x(unbounded)S 2877 Y 383 X F2(Range:)S
2991 Y -69 x F6(Mathematically)S 20 x(unbounded)S 3128 Y 1254 X(31)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 540 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Accuracy:)S 453 Y 466 X F6(\(a\))S 37 x(Maximum)S 17 x
(relative)S 17 x(error)S 17 x F20(=)S
XP /F48 56 22 2 0 19 25 25 24 0
<07F000 1FFC00 3FFE00 7C1F00 F00780 E00380 E00380 E00380 700700
7C1F00 1FFC00 07F000 1FFC00 3C1E00 700700 F00780 E00380 E00380
E00380 F00780 700700 7C1F00 3FFE00 1FFC00 07F000>
PXLC RP
1026 453 XY F48(8.0)S 10 x F22(\001)S 10 x F48(FLOAT_TYPE\015BASE)S
(\015EPSILON)S 62 y 466 X F6(\(b\))S 35 x F48(SINH\(0.0\))S 18 x F20
(=)S 20 x F48(0.0)S 655 Y 383 X F2(Notes:)S 767 Y -53 x F6(The)S
18 x(usable)S 18 x(domain)S 18 x(of)S 18 x F48(SINH)S 17 x F6(is)S
18 x(approximately)S 18 x(given)S 18 x(by)S 864 Y 860 X F22(j)S -1 x
F48(X)S F22(j)S 11 x(\024)S 12 x F20(log)S 10 y -1 x F55(e)S -10 y
9 x F48(FLOAT_TYPE\015SAFE_LARGE)S 5 x F20(+)S 10 x(log)S 10 y -1 x
F55(e)S -10 y 9 x F48(2.0)S 1012 Y 300 X F50(13.23.)S 33 x(COSH)S
19 x(\320)S 20 x(Hyperbolic)S 19 x(Cosine)S 19 x(Function)S 1152 Y
383 X F2(Declaration:)S 1293 Y 466 X F48(function)S 20 x(COSH)S 21 x
(\(X)S 22 x(:)S 21 x(FLOAT_TYPE\))S 20 x(return)S 20 x(FLOAT_TYPE;)S
1433 Y 383 X F2(De\014nition:)S 1544 Y 466 X F48(COSH\(X\))S 19 x
F22(\031)S 20 x F20(cosh)S 8 x F48(X)S 1684 Y 383 X F2(Usage:)S
1825 Y -61 x F48(Z)S 22 x(:=)S 21 x(COSH\(X\);)S 1965 Y 383 X F2
(Domain:)S 2076 Y 466 X F6(Mathematically)S 20 x(unbounded)S 2216 Y
383 X F2(Range:)S 2328 Y -69 x F48(COSH\(X\))S 19 x F22(\025)S 21 x
F48(1.0)S 2468 Y 383 X F2(Accuracy:)S 2579 Y 466 X F6(\(a\))S 37 x
(Maximum)S 17 x(relative)S 17 x(error)S 17 x F20(=)S 15 x F48(8.0)S
10 x F22(\001)S 10 x F48(FLOAT_TYPE\015BASE\015EPSILON)S 62 y 466 X
F6(\(b\))S 35 x F48(COSH\(0.0\))S 18 x F20(=)S 20 x F48(1.0)S 2781 Y
383 X F2(Notes:)S 2893 Y -53 x F6(The)S 18 x(usable)S 18 x(domain)S
18 x(of)S 18 x F48(COSH)S 17 x F6(is)S 18 x(approximately)S 18 x
(given)S 18 x(by)S 2990 Y 860 X F22(j)S -1 x F48(X)S F22(j)S 11 x
(\024)S 12 x F20(log)S 10 y -1 x F55(e)S -10 y 9 x F48(FLOAT_TYPE)S
(\015SAFE_LARGE)S 5 x F20(+)S 10 x(log)S 10 y -1 x F55(e)S -10 y
9 x F48(2.0)S 3128 Y 1254 X F6(32)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 406 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 300 0 XY
%%EndPageSetup
300 342 XY F50(13.24.)S 33 x(T)S -4 x(ANH)S 19 x(\320)S 20 x
(Hyperbolic)S 19 x(T)S -4 x(angent)S 20 x(Function)S 486 Y 383 X F2
(Declaration:)S 629 Y 466 X F48(function)S 20 x(TANH)S 21 x(\(X)S
22 x(:)S 21 x(FLOAT_TYPE\))S 20 x(return)S 20 x(FLOAT_TYPE;)S 773 Y
383 X F2(De\014nition:)S 887 Y 466 X F48(TANH\(X\))S 19 x F22(\031)S
20 x F20(tanh)S 7 x F48(X)S 1031 Y 383 X F2(Usage:)S 1175 Y -61 x
F48(Z)S 22 x(:=)S 21 x(TANH\(X\);)S 1318 Y 383 X F2(Domain:)S 1432 Y
466 X F6(Mathematically)S 20 x(unbounded)S 1576 Y 383 X F2(Range:)S
1690 Y -69 x F22(j)S F48(TANH\(X\))S -2 x F22(j)S 20 x(\024)S 20 x
F48(1.0)S 1834 Y 383 X F2(Accuracy:)S 1948 Y 466 X F6(\(a\))S 37 x
(Maximum)S 17 x(relative)S 17 x(error)S 17 x F20(=)S 15 x F48(8.0)S
10 x F22(\001)S 10 x F48(FLOAT_TYPE\015BASE\015EPSILON)S 62 y 466 X
F6(\(b\))S 35 x F48(TANH\(0.0\))S 18 x F20(=)S 20 x F48(0.0)S 2162 Y
300 X F50(13.25.)S 33 x(COTH)S 20 x(\320)S 19 x(Hyperbolic)S 19 x
(Cotangent)S 20 x(Function)S 2305 Y 383 X F2(Declaration:)S 2449 Y
466 X F48(function)S 20 x(COTH)S 21 x(\(X)S 22 x(:)S 21 x
(FLOAT_TYPE\))S 20 x(return)S 20 x(FLOAT_TYPE;)S 2593 Y 383 X F2(De)S
(\014nition:)S 2707 Y 466 X F48(COTH\(X\))S 19 x F22(\031)S 20 x F20
(coth)S 7 x F48(X)S 2850 Y 383 X F2(Usage:)S 2994 Y -61 x F48(Z)S
22 x(:=)S 21 x(COTH\(X\);)S 3128 Y 1254 X F6(33)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 391 717
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Domain:)S 452 Y 466 X F6(Mathematically)S 20 x
(unbounded)S 591 Y 383 X F2(Range:)S 702 Y -69 x F22(j)S F48
(COTH\(X\))S -2 x F22(j)S 20 x(\025)S 20 x F48(1.0)S 841 Y 383 X F2
(Accuracy:)S 952 Y 466 X F6(Maximum)S 18 x(relative)S 18 x(error)S
18 x F20(=)S 16 x F48(8.0)S 10 x F22(\001)S 11 x F48
(FLOAT_TYPE\015BASE)S
(\015EPSILON)S 1091 Y 383 X F2(Notes:)S 1201 Y -53 x F6(When)S 20 x
F48(X)S 19 x F20(=)S 19 x F48(0.0)S -1 x F6(,)S 21 x(see)S 20 x
(Section)S 21 x(11.)S 1350 Y 300 X F50(13.26.)S 33 x(ARCSINH)S 20 x
(\320)S 19 x(Inverse)S 19 x(Hyperbolic)S 19 x(Sine)S 19 x(Function)S
1489 Y 383 X F2(Declaration:)S 1628 Y 466 X F48(function)S 20 x
(ARCSINH)S 21 x(\(X)S 21 x(:)S 21 x(FLOAT_TYPE\))S 20 x(return)S
21 x(FLOAT_TYPE;)S 1767 Y 383 X F2(De\014nition:)S 1878 Y 466 X F48
(ARCSINH\(X\))S 17 x F22(\031)S 20 x F20(arcsinh)S 8 x F48(X)S 2017 Y
383 X F2(Usage:)S 2157 Y -61 x F48(Z)S 22 x(:=)S 21 x(ARCSINH\(X\);)S
2296 Y 383 X F2(Domain:)S 2407 Y 466 X F6(Mathematically)S 20 x
(unbounded)S 2545 Y 383 X F2(Range:)S 2656 Y -69 x F6
(Mathematically)S 20 x(unbounded)S 2795 Y 383 X F2(Accuracy:)S 2906 Y
466 X F6(\(a\))S 37 x(Maximum)S 17 x(relative)S 17 x(error)S 17 x
F20(=)S 15 x F48(8.0)S 10 x F22(\001)S 10 x F48(FLOAT_TYPE\015BASE)S
(\015EPSILON)S 62 y 466 X F6(\(b\))S 35 x F48(ARCSINH\(0.0\))S 17 x
F20(=)S 19 x F48(0.0)S 3128 Y 1254 X F6(34)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 429 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Notes:)S 450 Y -53 x F6(The)S 17 x(reachable)S 18 x
(range)S 18 x(of)S 18 x F48(ARCSINH)S 16 x F6(is)S 17 x
(approximately)S 18 x(given)S 17 x(by)S 533 Y 762 X F22(j)S -1 x F48
(ARCSINH\(X\))S -2 x F22(j)S 11 x(\024)S 12 x F20(log)S 10 y F55(e)S
-10 y 8 x F48(FLOAT_TYPE\015SAFE_LARGE)S 5 x F20(+)S 10 x(log)S 10 y
-1 x F55(e)S -10 y 9 x F48(2.0)S 679 Y 300 X F50(13.27.)S 33 x
(ARCCOSH)S 19 x(\320)S 19 x(Inverse)S 19 x(Hyperbolic)S 19 x(Cosine)S
19 x(Function)S 812 Y 383 X F2(Declaration:)S 950 Y 466 X F48
(function)S 20 x(ARCCOSH)S 21 x(\(X)S 21 x(:)S 21 x(FLOAT_TYPE\))S
20 x(return)S 21 x(FLOAT_TYPE;)S 1084 Y 383 X F2(De\014nition:)S
1192 Y 466 X F48(ARCCOSH\(X\))S 17 x F22(\031)S 20 x F20(arccosh)S
8 x F48(X)S 1326 Y 383 X F2(Usage:)S 1463 Y -61 x F48(Z)S 22 x(:=)S
21 x(ARCCOSH\(X\);)S 1597 Y 383 X F2(Domain:)S 1705 Y 466 X F48(X)S
21 x F22(\025)S 21 x F48(1.0)S 1839 Y 383 X F2(Range:)S 1948 Y -69 x
F48(ARCCOSH\(X\))S 18 x F22(\025)S 20 x F48(0.0)S 2081 Y 383 X F2
(Accuracy:)S 2190 Y 466 X F6(\(a\))S 37 x(Maximum)S 17 x(relative)S
17 x(error)S 17 x F20(=)S 15 x F48(8.0)S 10 x F22(\001)S 10 x F48
(FLOAT_TYPE)S
(\015BASE\015EPSILON)S 62 y 466 X F6(\(b\))S 35 x F48
(ARCCOSH\(1.0\))S 17 x F20(=)S 19 x F48(0.0)S 2386 Y 383 X F2
(Notes:)S 2494 Y -53 x F6(The)S 15 x(upper)S 16 x(bound)S 15 x(of)S
16 x(the)S 15 x(reachable)S 16 x(range)S 16 x(of)S 16 x F48(ARCCOSH)S
14 x F6(is)S 16 x(approximately)S 16 x(given)S 16 x(by)S 2577 Y
773 X F48(ARCCOSH\(X\))S 10 x F22(\024)S 11 x F20(log)S 10 y F55(e)S
-10 y 9 x F48(FLOAT_TYPE\015SAFE_LARGE)S 5 x F20(+)S 9 x(log)S 10 y
F55(e)S -10 y 9 x F48(2.0)S 2723 Y 300 X F50(13.28.)S 33 x(ARCT)S
-4 x(ANH)S 19 x(\320)S 20 x(Inverse)S 19 x(Hyperbolic)S 19 x(T)S
-4 x(angent)S 18 x(Function)S 2857 Y 383 X F2(Declaration:)S 2994 Y
466 X F48(function)S 20 x(ARCTANH)S 21 x(\(X)S 21 x(:)S 21 x
(FLOAT_TYPE\))S 20 x(return)S 21 x(FLOAT_TYPE;)S 3128 Y 1254 X F6
(35)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 457 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(De\014nition:)S 452 Y 466 X F48(ARCTANH\(X\))S 17 x
F22(\031)S 20 x F20(arctanh)S 7 x F48(X)S 590 Y 383 X F2(Usage:)S
730 Y -61 x F48(Z)S 22 x(:=)S 21 x(ARCTANH\(X\);)S 868 Y 383 X F2
(Domain:)S 979 Y 466 X F22(j)S F48(X)S F22(j)S 20 x(\024)S 21 x F48
(1.0)S 1117 Y 383 X F2(Range:)S 1228 Y -69 x F6(Mathematically)S
20 x(unbounded)S 1366 Y 383 X F2(Accuracy:)S 1477 Y 466 X F6(\(a\))S
37 x(Maximum)S 17 x(relative)S 17 x(error)S 17 x F20(=)S 15 x F48
(8.0)S 10 x F22(\001)S 10 x F48(FLOAT_TYPE\015BASE\015EPSILON)S 62 y
466 X F6(\(b\))S 35 x F48(ARCTANH\(0.0\))S 17 x F20(=)S 19 x F48
(0.0)S 1677 Y 383 X F2(Notes:)S 1788 Y -53 x F6(When)S 20 x F48(X)S
19 x F20(=)S 18 x F22(\006)S F48(1.0)S F6(,)S 21 x(see)S 20 x
(Section)S 20 x(11.)S 1936 Y 300 X F50(13.29.)S 33 x(ARCCOTH)S 20 x
(\320)S 19 x(Inverse)S 19 x(Hyperbolic)S 20 x(Cotangent)S 19 x
(Function)S 2074 Y 383 X F2(Declaration:)S 2214 Y 466 X F48
(function)S 20 x(ARCCOTH)S 21 x(\(X)S 21 x(:)S 21 x(FLOAT_TYPE\))S
20 x(return)S 21 x(FLOAT_TYPE;)S 2352 Y 383 X F2(De\014nition:)S
2463 Y 466 X F48(ARCCOTH\(X\))S 17 x F22(\031)S 20 x F20(arccoth)S
8 x F48(X)S 2601 Y 383 X F2(Usage:)S 2741 Y -61 x F48(Z)S 22 x(:=)S
21 x(ARCCOTH\(X\);)S 2879 Y 383 X F2(Domain:)S 2990 Y 466 X F22(j)S
F48(X)S F22(j)S 20 x(\025)S 21 x F48(1.0)S 3128 Y 1254 X F6(36)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 72 39 474 718
%%PageBoundingBox: (atend)
%%BeginPageSetup
1000 BP 3300 2550 PM /paper-automatic false SPS 383 0 XY
%%EndPageSetup
383 342 XY F2(Range:)S 454 Y -69 x F6(Mathematically)S 20 x
(unbounded)S 595 Y 383 X F2(Accuracy:)S 707 Y 466 X F6(Maximum)S
18 x(relative)S 18 x(error)S 18 x F20(=)S 16 x F48(8.0)S 10 x F22
(\001)S 11 x F48(FLOAT_TYPE\015BASE\015EPSILON)S 848 Y 383 X F2
(Notes:)S 960 Y -53 x F6(When)S 20 x F48(X)S 19 x F20(=)S 18 x F22
(\006)S F48(1.0)S F6(,)S 21 x(see)S 20 x(Section)S 20 x(11.)S 3128 Y
1254 X(37)S
%%PageTrailer
/paper-automatic true SPS 1 PP EP
%%PageBoundingBox: 92 39 371 718
%%Trailer
EndDviLaserDoc
%%BoundingBox: 72 39 540 718
%%Pages: 39
%%DocumentFonts: Times-Bold Times-Roman Times-Italic Helvetica-Bold