From craig@crl.dec.com Thu Aug 5 09:15:31 1993 Received: from crl.dec.com by dkuug.dk with SMTP id AA10780 (5.65c8/IDA-1.4.4j for ); Thu, 5 Aug 1993 19:15:54 +0200 Received: by crl.dec.com; id AA02379; Thu, 5 Aug 93 13:16:10 -0400 Received: by easynet.crl.dec.com; id AA26868; Thu, 5 Aug 93 13:15:48 -0400 Date: Thu, 5 Aug 93 13:15:31 -0400 From: craig@crl.dec.com Message-Id: <9308051715.AA11241@east.crl.dec.com> To: sc22wg11@dkuug.dk Subject: N364R (LIA-1 DIS in postscript) Reply-To: schaffert@crl.dec.com X-Charset: ASCII X-Char-Esc: 29 %!PS-Adobe-2.0 %%Creator: dvips 5.47 Copyright 1986-91 Radical Eye Software %%Title: lia-1-cb.tmp %%Pages: 111 1 %%BoundingBox: 0 0 612 792 %%EndComments %%BeginProcSet: tex.pro /TeXDict 200 dict def TeXDict begin /N /def load def /B{bind def}N /S /exch load def /X{S N}B /TR /translate load N /isls false N /vsize 10 N /@rigin{ isls{[0 1 -1 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale Resolution VResolution vsize neg mul TR matrix currentmatrix dup dup 4 get round 4 exch put dup dup 5 get round 5 exch put setmatrix}N /@letter{/vsize 10 N}B /@landscape{/isls true N /vsize -1 N}B /@a4{/vsize 10.6929133858 N}B /@a3{ /vsize 15.5531 N}B /@ledger{/vsize 16 N}B /@legal{/vsize 13 N}B /@manualfeed{ statusdict /manualfeed true put}B /@copies{/#copies X}B /FMat[1 0 0 -1 0 0]N /FBB[0 0 0 0]N /nn 0 N /IE 0 N /ctr 0 N /df-tail{/nn 8 dict N nn begin /FontType 3 N /FontMatrix fntrx N /FontBBox FBB N string /base X array /BitMaps X /BuildChar{CharBuilder}N /Encoding IE N end dup{/foo setfont}2 array copy cvx N load 0 nn put /ctr 0 N[}B /df{/sf 1 N /fntrx FMat N df-tail} B /dfs{div /sf X /fntrx[sf 0 0 sf neg 0 0]N df-tail}B /E{pop nn dup definefont setfont}B /ch-width{ch-data dup length 5 sub get}B /ch-height{ch-data dup length 4 sub get}B /ch-xoff{128 ch-data dup length 3 sub get sub}B /ch-yoff{ ch-data dup length 2 sub get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B /ch-image{ch-data dup type /stringtype ne{ctr get /ctr ctr 1 add N}if}B /id 0 N /rw 0 N /rc 0 N /gp 0 N /cp 0 N /G 0 N /sf 0 N /CharBuilder{save 3 1 roll S dup /base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx 0 ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff setcachedevice ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff .1 add]{ch-image} imagemask restore}B /D{/cc X dup type /stringtype ne{]}if nn /base get cc ctr put nn /BitMaps get S ctr S sf 1 ne{dup dup length 1 sub dup 2 index S get sf div put}if put /ctr ctr 1 add N}B /I{cc 1 add D}B /bop{userdict /bop-hook known{bop-hook}if /SI save N @rigin 0 0 moveto}N /eop{clear SI restore showpage userdict /eop-hook known{eop-hook}if}N /@start{userdict /start-hook known{start-hook}if /VResolution X /Resolution X 1000 div /DVImag X /IE 256 array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for}N /p /show load N /RMat[1 0 0 -1 0 0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley X /rulex X V}B /V statusdict begin /product where{pop product dup length 7 ge{0 7 getinterval(Display)eq}{pop false}ifelse}{false}ifelse end{{gsave TR -.1 -.1 TR 1 1 scale rulex ruley false RMat{BDot}imagemask grestore}}{{gsave TR -.1 -.1 TR rulex ruley scale 1 1 false RMat{BDot}imagemask grestore}}ifelse B /a{ moveto}B /delta 0 N /tail{dup /delta X 0 rmoveto}B /M{S p delta add tail}B /b{ S p tail}B /c{-4 M}B /d{-3 M}B /e{-2 M}B /f{-1 M}B /g{0 M}B /h{1 M}B /i{2 M}B /j{3 M}B /k{4 M}B /w{0 rmoveto}B /l{p -4 w}B /m{p -3 w}B /n{p -2 w}B /o{p -1 w }B /q{p 1 w}B /r{p 2 w}B /s{p 3 w}B /t{p 4 w}B /x{0 S rmoveto}B /y{3 2 roll p a}B /bos{/SS save N}B /eos{clear SS restore}B end %%EndProcSet TeXDict begin 1000 300 300 @start /Fa 1 50 df<06001E00FE00EE000E000E000E000E00 0E000E000E000E000E000E000E000E000E00FFE0FFE00B137D9211>49 D E /Fb 16 123 df<001FFC0000FFFC0003F87C0007E07C000FC07C000F807C000F807C000F807C 000F807C000F807C000F807C00FFFFFC00FFFFFC000F807C000F807C000F807C000F807C000F80 7C000F807C000F807C000F807C000F807C000F807C000F807C000F807C000F807C000F807C007F F3FF807FF3FF80191D809C1B>13 D45 D<0FFC003FFF003E1F803E0FC03E07C01C07C00007C003FFC01FFFC07F87C07F07C0FE07C0FC07 C0FC07C0FE0FC07E3FE03FFBF80FE1F815127F9117>97 D I<000FF0000FF00001F00001F00001F00001F00001F00001F00001F00001F00001F007F9F01FFF F03F0FF07E03F07E01F0FC01F0FC01F0FC01F0FC01F0FC01F0FC01F0FC01F0FC01F07C01F07E03 F03F0FF01FFFFE07F1FE171D7E9C1B>100 D<03FC000FFF003F0F803E07C07E03C07C03E0FC03 E0FFFFE0FFFFE0FC0000FC0000FC00007C00007E00603F00E01FC3C00FFF8003FE0013127F9116 >I<3E007F007F007F007F007F003E0000000000000000000000FF00FF001F001F001F001F001F 001F001F001F001F001F001F001F001F001F00FFE0FFE00B1E7F9D0E>105 D108 D110 D<01FC000FFF801F07C03E03E07C01F07C01F0FC01F8FC01F8FC 01F8FC01F8FC01F8FC01F87C01F07C01F03E03E01F07C00FFF8001FC0015127F9118>I114 D117 DII121 D<3FFF803FFF803C3F80307F00707E0060FC0061FC0063F80003F00007E1800FE1801FC1801F83 803F03007F0700FE0F00FFFF00FFFF0011127F9115>I E /Fc 75 127 df<70F8F8F8F8F8F8F8 F8F8F8F8F8F8F8F8F8F8000000000070F8F8F870051C779B18>33 D<078F00078F00078F00078F 00078F00078F00078F00FFFFE0FFFFE0FFFFE07FFFE00F1E000F1E000F1E000F1E000F1E000F1E 007FFFE0FFFFE0FFFFE0FFFFE01E3C001E3C001E3C001E3C001E3C001E3C001E3C00131C7E9B18 >35 D<01C00001C00001C00001C00007F0001FFC003FFF007DDF00F9C780F1C780E1C780E1C780 E1C780F1C000F9C0007FC0003FE0000FFC0003FE0001FF0001CF0001C780F1C780F1C380F1C380 F1C780F1C780F9CF007DDF003FFE001FFC0007F00001C00001C00001C00001C00011247D9F18> I<3803807C0780FE0780FE0F80EE0F00EE0F00EE1F00EE1E00EE1E00FE3E00FE3C007C3C00387C 0000780000780000F80000F00001F00001E00001E00003E00003C00003C00007C0000783800787 C00F8FE00F0FE00F0EE01F0EE01E0EE01E0EE03E0FE03C0FE03C07C01C038013247E9F18>I<38 7C7E7E3E0E0E1E1E3C7CF8F0E0070E789B18>39 D<007000F003F007E00F800F001E003E003C00 7800780070007000F000F000E000E000E000E000E000E000F000F00070007000780078003C003E 001E000F000F8007E003F000F000700C24799F18>II<01C00001C00001C00001C000C1C180F1 C780F9CF807FFF001FFC0007F00007F0001FFC007FFF00F9CF80F1C780C1C18001C00001C00001 C00001C00011147D9718>I<00F00000F00000F00000F00000F00000F00000F00000F000FFFFE0 FFFFE0FFFFE0FFFFE000F00000F00000F00000F00000F00000F00000F00000F00013147E9718> I<3C7E7F7F7F3F0F0F3EFEF8F0080C788518>II<78 FCFCFCFC780606778518>I<000380000780000780000F80000F00001F00001E00001E00003E00 003C00007C0000780000780000F80000F00001F00001E00003E00003C00003C00007C000078000 0F80000F00000F00001F00001E00003E00003C00003C00007C0000780000F80000F00000F00000 E0000011247D9F18>I<01F00007FC000FFE001F1F001C07003803807803C07001C07001C0E000 E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0E000E0F001E07001C07001C07803C03803 801C07001F1F000FFE0007FC0001F000131C7E9B18>I<0380038007800F800F803F80FF80FB80 63800380038003800380038003800380038003800380038003800380038003800380FFFEFFFEFF FE0F1C7B9B18>I<07F8001FFE003FFF807C0FC0F803C0F001E0F001E0F000E0F000E00000E000 01E00001E00003C00003C0000780000F80001F00003E0000FC0001F80003E00007C0000F80003F 00E07E00E0FFFFE0FFFFE0FFFFE0131C7E9B18>I<07F8001FFE007FFF807C0FC07803C07801C0 7801C00001C00003C00007C0000F8003FF0003FE0003FF80000FC00003C00001E00001E00000E0 0000E0F000E0F001E0F001E0F003C0FC0FC07FFF801FFE0007F800131C7E9B18>I<001F00003F 00007F0000770000F70001E70001C70003C7000787000707000E07001E07003C07003807007807 00F00700FFFFF8FFFFF8FFFFF800070000070000070000070000070000070000FFF800FFF800FF F8151C7F9B18>I<3FFF803FFF803FFF8038000038000038000038000038000038000038000038 00003BFC003FFF003FFF803E07C03803C00001E00001E00000E06000E0F000E0F001E0F003E0F0 07C07C0F807FFF001FFE0007F800131C7E9B18>I<007E0003FF8007FFC00FC3C01F03C03E03C0 3C03C0780000780000F00000F3F800EFFE00FFFF80FE0F80FC03C0F803E0F001E0F000E0F000E0 F000E07000E07801E07803E03C07C03E0F801FFF000FFE0003F800131C7E9B18>I<03F8000FFE 003FFF007E0F80780780F003C0F003C0E001C0E001E0E001E0F001E0F001E07803E07E0FE03FFF E00FFEE003F8E00001E00001E00001C00003C07807C0780780781F00783F007FFC003FF8000FE0 00131C7E9B18>57 D<78FCFCFCFC78000000000000000078FCFCFCFC780614779318>I<3C7E7E 7E7E3C00000000000000003C7E7E7E7E3E1E1E3CFCF8E0071A789318>I<000380000F80001F80 003F8000FE0001FC0003F8000FE0001FC0003F8000FE0000FC0000FC0000FE00003F80001FC000 0FE00003F80001FC0000FE00003F80001F80000F8000038011187D9918>I<7FFFC0FFFFE0FFFF E0FFFFE0000000000000000000000000FFFFE0FFFFE0FFFFE07FFFC0130C7E9318>II<007000 00F80000F80000D80000D80001DC0001DC0001DC00018C00038E00038E00038E00038E00030600 0707000707000707000707000FFF800FFF800FFF800E03800E03801C01C01C01C0FF8FF8FF8FF8 FF8FF8151C7F9B18>65 DI<01FCE007FFE00FFFE01F07E03E03E0 3C01E07801E07800E07000E0F00000F00000E00000E00000E00000E00000E00000E00000F00000 F000007000E07800E07800E03C01E03E03E01F07C00FFF8007FF0001FC00131C7E9B18>IIII<01F9 C007FFC00FFFC01F0FC03E07C03C03C07803C07801C07001C0F00000F00000E00000E00000E000 00E00000E01FF0E01FF0F01FF0F001C07003C07803C07803C03C07C03E0FC01F1FC00FFFC007FD C001F9C0141C7E9B18>III75 DIII<0FF8003FFE007FFF00780F00700700F00780E00380E00380E00380 E00380E00380E00380E00380E00380E00380E00380E00380E00380E00380E00380E00380E00380 F00780700700780F007FFF003FFE000FF800111C7D9B18>II<0F F8003FFE007FFF00780F00700700F00780E00380E00380E00380E00380E00380E00380E00380E0 0380E00380E00380E00380E00380E00380E00380E1E380E1E380F0E78070F700787F007FFF003F FE000FFC00001C00001E00000E00000F0000070000070011227D9B18>II<07F3801FFF803FFF807C1F80F80780F00780E00380E00380F00000F000007800007F00 003FF0000FFE0001FF80001FC00003C00001E00001E00000E0E000E0E000E0E001E0F003E0FC07 C0FFFF80FFFF00E7FC00131C7E9B18>IIIII<7F9FE07F9FE07F9FE0 0E07000F0700070E00078E00039C0003DC0001F80001F80000F00000F00000700000F00000F800 01F80001DC00039E00038E00070F000707000E07800E03801E03C0FF8FF8FF8FF8FF8FF8151C7F 9B18>II<7FFFE07FFFE07FFFE07003E07003C0700780700F8000 0F00001E00003E00003C0000780000F80000F00001E00003E00003C0000780000F80000F00001E 00E03E00E03C00E07800E0F800E0FFFFE0FFFFE0FFFFE0131C7E9B18>I<1FE0007FF8007FFE00 783E00780F00000F0000070001FF000FFF003FFF007F0700F80700F00700E00700E00700F00F00 F83F007FFFF03FFFF00FE1F014147D9318>97 DI<01FE000FFF80 1FFF803F07807C0780780000F00000F00000E00000E00000E00000E00000F00000F000007801C0 7C03C03F07C01FFF800FFF0001FC0012147D9318>I<003F80003F80003F800003800003800003 8000038000038003F3800FFF801FFF803E1F807C0F80780780F00780F00380E00380E00380E003 80E00380F00780F00780780F80781F803E3F803FFFF80FFBF803E3F8151C7E9B18>I<03F0000F FE001FFF003E1F807C0780780380F003C0F003C0E001C0FFFFC0FFFFC0FFFFC0F00000F0000078 01C07C03C03F07C01FFF800FFF0001FC0012147D9318>I<001FC0007FE000FFE001F1E001E0C0 01C00001C00001C000FFFFC0FFFFC0FFFFC001C00001C00001C00001C00001C00001C00001C000 01C00001C00001C00001C00001C00001C00001C0007FFF007FFF007FFF00131C7F9B18>I<03F1 F00FFFF81FFFF81E1F383C0F003C0F003807003807003807003C0F003C0F001E1E001FFE003FFC 003FF0003C00003C00001FFF003FFFC07FFFF07801F0F00078F00078E00038E00038F00078F800 F87E03F03FFFE00FFF8003FE00151F7F9318>II<03800007C000 07C00007C000038000000000000000000000000000FFC000FFC000FFC00001C00001C00001C000 01C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C000FFFF80FFFF80 FFFF80111D7C9C18>I108 DII<01F0000FFE001FFF003E0F8038038070 01C07001C0E000E0E000E0E000E0E000E0E000E0F001E07001C07803C03C07803E0F801FFF000F FE0001F00013147E9318>II114 D<0FF7003FFF007FFF00F81F00F00F00E007 00F00700FC00007FF0001FFC0007FF00001F80E00780E00380F00380F80780FC0F80FFFF00FFFE 00E7F80011147D9318>I<038000038000038000038000038000FFFFC0FFFFC0FFFFC003800003 80000380000380000380000380000380000380000380000380400380E00380E003C1E003E3E001 FFC000FF80007E0013197F9818>IIII<7F9FF07F9FF07F9FF0070700078E00039E00 01DC0001F80000F80000700000F00000F80001DC00039E00038E000707000F0780FF8FF8FF8FF8 FF8FF815147F9318>II<7FFFF07FFFF07FFFF070 03E07007C0700F80001F00003E00007C0000F80001F00003E00007C0000F80701F00703E00707C 0070FFFFF0FFFFF0FFFFF014147F9318>I<0F0E3F9E7FBEFBFCF3F8E1E00F067C9B18>126 D E /Fd 1 13 df12 D E /Fe 1 107 df 106 D E /Ff 12 119 df<001C0038007800F000E001C003C0038007000F000E000E001E001C00 3C003C003800780078007800700070007000F000F000F000F000F000F000F000F000F000F000F0 00F000F000F000F00070007000700078007800780038003C003C001C001E000E000E000F000700 038003C001C000E000F000780038001C0E3D7BAC17>40 DI<07FE00 001FFF80003F07E0003F01F0003F00F0003F00F8001E007800000078000000780000007800001F F80001FFF80007FC78001FC078003F0078007E0078007C007800FC007860F8007860F8007860F8 00F860FC01F8607E03F8603F0FFCC01FFE3F8007F81F001B1A7E991E>97 D<00FF0003FFC007C3E01F01F01E00F83E00787C00787C003C78003CF8003CFFFFFCFFFFFCF800 00F80000F80000F80000F800007C00007C00007C000C3E001C1F00180F803807E0F003FFE0007F 00161A7E991B>101 D<001FC0007FE000F9F001E3F003E3F003C3F00783F00780C00780000780 00078000078000078000078000078000078000FFFE00FFFE000780000780000780000780000780 000780000780000780000780000780000780000780000780000780000780000780000780000780 0007800007800007800007C000FFFE00FFFE00142A7FA912>I<0F801FC01FC01FC01FC01FC00F 800000000000000000000000000000000007807F807F800F800780078007800780078007800780 0780078007800780078007800780078007800780078007800780FFF8FFF80D297FA811>105 D<0783FC01FE00FF8FFF07FF80FFBC1F9E0FC00FF807BC03C007E007F003E007E003F001E007C0 03E001E007C003E001E0078003C001E0078003C001E0078003C001E0078003C001E0078003C001 E0078003C001E0078003C001E0078003C001E0078003C001E0078003C001E0078003C001E00780 03C001E0078003C001E0078003C001E0078003C001E0078003C001E0FFFC7FFE3FFFFFFC7FFE3F FF301A7F9933>109 D<0787F800FF9FFE00FFBC3F000FF00F0007E00F8007C0078007C0078007 C00780078007800780078007800780078007800780078007800780078007800780078007800780 07800780078007800780078007800780078007800780078007800780FFFCFFFCFFFCFFFC1E1A7F 9921>I<007F000001FFC00007C1F0000F0078001E003C003C001E003C001E0078000F0078000F 00F8000F80F8000F80F8000F80F8000F80F8000F80F8000F80F8000F80F8000F8078000F007C00 1F003C001E003C001E001E003C000F00780007C1F00001FFC000007F0000191A7E991E>I<078F C0FF9FE0FFB9F00FF1F007E1F007E1F007C00007C0000780000780000780000780000780000780 0007800007800007800007800007800007800007800007800007800007C000FFFE00FFFE00141A 7F9917>114 D<0180000180000180000180000380000380000380000780000780000F80003F80 00FFFF80FFFF800780000780000780000780000780000780000780000780000780000780000780 000780000780000780C00780C00780C00780C00780C00780C007C1C003C18003E38001FF00007E 0012257FA417>116 D118 D E /Fg 49 123 df<00E001E007C007800F001E003C0038007800700070007000F0 00E000E000E000E000E000E000E000F000700070007000780038003C001E000F00078007C001E0 00E00B217A9C16>40 DI<01C00001C00001C00001C00071C700F9CF807FFF001FFC0007F00007F0001FFC007F FF00F9CF8071C70001C00001C00001C00001C00011127E9516>I<01C00001C00001C00001C000 01C00001C00001C00001C000FFFF80FFFF80FFFF8001C00001C00001C00001C00001C00001C000 01C00001C00011137E9516>I<387C7E7E3E0E1E3CFCF860070B798416>II<70F8F8F8700505788416>I<0380038007800F801F80FF80FF80F3800380038003 80038003800380038003800380038003800380038003807FFC7FFC7FFC0E197C9816>49 D<000380000F80001F80007E0000FC0003F00007E0001F80003F0000FC0000F80000FC00003F00 001F800007E00003F00000FC00007E00001F80000F8000038011157E9616>60 D<7FFF00FFFF80FFFF80000000000000000000000000000000FFFF80FFFF807FFF00110B7E9116 >I<00E00001F00001F00001B00001B00003B80003B80003B800031800071C00071C00071C0007 1C00071C000E0E000E0E000FFE000FFE001FFF001C07001C07001C0700FF1FE0FF1FE0FF1FE013 197F9816>65 D<03F18007FF800FFF801F0F803C0780780780780380700380F00000E00000E000 00E00000E00000E00000E00000E00000F000007003807803807803803C07801F0F000FFE0007FC 0003F00011197E9816>67 DIII<03F3000FFF001FFF003F1F003C0F00 780F00780700700700F00000E00000E00000E00000E00000E07FC0E07FC0E07FC0F00700700700 780F00780F003C0F003F1F001FFF000FFF0003E70012197E9816>I73 D76 D78 D<1FFC003FFE007FFF00780F00F00780E00380E00380 E00380E00380E00380E00380E00380E00380E00380E00380E00380E00380E00380E00380F00780 F00780780F007FFF003FFE001FFC0011197E9816>II<1FFC003FFE007FFF00780F00F0 0780E00380E00380E00380E00380E00380E00380E00380E00380E00380E00380E00380E00380E0 0380E0E380E1E380F0F780787F007FFF003FFE001FFC00001C00001E00000E00000F0000070000 0700111F7E9816>II<0FF3001FFF007FFF00781F00F00F00E00700E00700E00000F000 007800007F80003FF8000FFC0000FE00000F00000780000380000380E00380E00380F00780F81F 00FFFE00FFFC00CFF80011197E9816>III<7F3F807F3F807F3F800E1E000E1C 00073C0007380003B80003F00001F00001E00000E00001E00001F00003F00003B80007B800071C 00071C000E0E000E0E001C0700FF1FE0FF1FE0FF1FE013197F9816>88 D<1FE0007FF8007FFC00 783C00301E00000E00007E000FFE003FFE007FCE00F80E00E00E00E00E00F01E00F83E007FFFE0 3FFFE01FC3E013127E9116>97 D<03FC0FFE1FFE3E1E780C7000F000E000E000E000E000F00070 077C073E1F1FFE0FFC03F010127D9116>99 D<007F00007F00007F000007000007000007000007 0007E7001FFF003FFF003E3F00780F00700F00F00700E00700E00700E00700E00700F00F00F00F 00781F007E3F003FFFF01FF7F007E7F014197F9816>I<07E01FF83FFC7C3E781FF00FF007FFFF FFFFFFFFE000F000F007780F7E1F3FFE0FFC03F010127D9116>I<001F00007F8000FF8001E780 01C30001C00001C000FFFF00FFFF00FFFF0001C00001C00001C00001C00001C00001C00001C000 01C00001C00001C00001C00001C0007FFF007FFF007FFF0011197F9816>I<03E7C00FFFE01FFF E01E3CE03C1E00380E00380E00380E003C1E001E3C001FFC003FF8003BE0003800003C00001FFE 003FFF807FFFC07807C0F001E0E000E0E000E0E000E0F001E07E0FC03FFF801FFF0007FC00131C 7F9116>II<03C003C003C003C000000000000000007FC07FC07FC001C001C001C001C0 01C001C001C001C001C001C001C001C0FFFFFFFFFFFF101A7D9916>I<00780078007800780000 0000000000001FF81FF81FF8003800380038003800380038003800380038003800380038003800 3800380038003800380078F078F0F0FFF0FFE03F800D237E9916>I108 DII<03E0000FF8001FFC003C1E00780F00700700E00380E00380E00380E00380E00380 F00780700700780F003C1E001FFC000FF80003E00011127E9116>II114 D<1FEC3FFC7FFCF03CE01CE01CF8007FC0 3FF007FC003EE00EE00EF00EF83EFFFCFFF8CFF00F127D9116>I<070000070000070000070000 070000FFFF00FFFF00FFFF00070000070000070000070000070000070000070000070100070380 070380070780078F8003FF0003FE0000F80011177F9616>III<7F3FC07F3FC07F3FC0 0F1C00073C0003B80003F00001F00000E00001E00001F00003B800073C00071C000E0E00FF3FE0 FF3FE0FF3FE013127F9116>120 DI<7FFFC07FFFC07FFFC0700F80701F 00703E00007C0000F80001F00003E00007C0000F80001F01C03E01C07C01C0FFFFC0FFFFC0FFFF C012127F9116>I E /Fh 2 21 df0 D<000001800000078000 001F0000007C000001F0000007C000001F0000007C000001F0000007C000001F000000FC000000 F0000000F80000003E0000000F80000003E0000000F80000003E0000000F80000003E0000000F8 0000003E0000000F80000003800000000000000000000000000000000000000000000000000000 0000FFFFFF80FFFFFF8019227D9920>20 D E /Fi 3 99 df<0FFFF00FFFF003C0F003C0700383 3003833007873007FE0007FE00070E000F0E000F0C000E00000E00001E00007FC000FFC0001411 7F9013>70 D<0FF01FF039E070E060E0E0C0C0C0C1CCE3DC7FF83EF00E0B7E8A11>97 D<7800780038003800300030007F807FC078C070E0E0E0E0C0C0C0C1C0E3807F003E000B117E90 0E>I E /Fj 6 84 df<07FFE007FFF001E07801C01C01C00C03C00E03C00E03800E03800E0780 0E07801C07001C07001C0F00380F00300E00700E00E01E03C0FFFF00FFFC0017147F931B>68 D<07FFFC07FFFC01E03C01C01C01C01803C01803C31803831803870007FF0007FE000706000706 000F06000F00000E00000E00001E0000FFC000FFC00016147F9315>70 D<07FC0FFC01E001C001 C003C003C00380038007800780070007000F000F000E000E001E00FFC0FF800E147F930F>73 D<07E03FC007F03FC001F00E0001F00C0001F80C0003B81C0003BC1800031C1800031E1800070E 3800070E3000060F3000060730000E07F0000E03E0000C03E0000C01E0001C01E000FF01C000FF 00C0001A147F931A>78 D<07FFE007FFF001E03801C01801C01C01C01C03C03803803803807003 80E007FFC007FF000700000F00000F00000E00000E00001E0000FF8000FF800016147F9315>80 D<00FD8003FF80070F000E07000C03000C03000C00000E00000FE0000FF80003FC00003E00000E 00000E00600C00600C00701C00F87800FFF000CFC00011147E9314>83 D E /Fk 2 34 df<040006000600C660F7E03F801F003F80F7E0C6600600060004000B0D7E8D11> 3 D<00000E00000006000000070000000380FFFFFFE0FFFFFFE000000380000007000000060000 000E001B0A7E8B21>33 D E /Fl 28 123 df<000300000300000700000700000600000600000E 00000E00000C00000C00001C0001FF8003FFC00F99E01E38703C3870383070703038707078F070 70E06070E06070E0E0F0E0E1E0E0C1C070C38079CF003FFE001FF8000180000380000380000300 0003000007000007000006000015257E9C19>30 D<70F8F8F878181818383070E060050D7D840C >59 D<00000C0000001C0000003C0000003C0000007C0000007E000000DE000000DE0000019E00 00031E0000031E0000061E0000061E00000C1E00001C1E0000181E0000301E0000301F00007FFF 00007FFF0000C00F0001800F0001800F0003000F0007000F000F000F007FC0FFF0FFC0FFF01C1C 7F9B1F>65 D<03FFFFF003FFFFF0003E01F0003C00F0003C0060003C0060007C00600078006000 7818600078386000F8300000F0300000F0F00000FFF00001FFE00001E0E00001E0600001E0E000 03E0C00003C0C00003C0000003C0000007C0000007800000078000000F800000FFFC0000FFFC00 001C1C7E9B1B>70 D<007FFC007FFC0003E00003C00003C00007C00007C0000780000780000F80 000F80000F00000F00001F00001F00001E00001E00003E00003E00003C00003C00787C00F87C00 F87800F8F800F1F0007FE0003F8000161C7E9B17>74 D<001FE3007FF700F07F01E01E03C00E03 800E07800E07000C07800007800007E00007FE0003FFC003FFE000FFF0001FF00001F00000F000 00700000703000703000F07000E07001E07803C07E0F80EFFF00C3FC00181C7E9B19>83 D<01FB8007FF800F1F801E0F803C07807C0700780700780F00F80F00F00E00F00E00F01E70F01E 70F03C60F07C6078FEE03FDFC01F878014127F9116>97 D<00FC03FE0F8F1E0F3C1F3C0E780078 00F800F000F000F000F000F006700E783C3FF80FE010127F9112>99 D<0003F00007F00000F000 00F00000E00000E00001E00001E00001C00001C00003C001FBC007FF800F1F801E0F803C07807C 0700780700780F00F80F00F00E00F00E00F01E70F01E70F03C60F07C6078FEE03FDFC01F878014 1D7F9C16>I<01FC07FE0F8E1E063C067C0E783E7FFCFFE0F000F000F000F000F006780E7C3C3F F80FE00F127F9113>I<0003F00007F0000EF8000EF8001C70001C00001C00001C00003C000038 0000380003FFC003FFC000780000700000700000700000700000700000F00000E00000E00000E0 0000E00001E00001C00001C00001C00001C00003C000038000038000F38000F70000FF0000FE00 007C000015257E9C14>I<00FB8003FF80079F800F0F801E07803E07003C07003C0F007C0F0078 0E00780E00781E00781E00783C00787C003CFC003FFC000FB800003800007800007800F07000F0 F000F3E000FFC0007F0000111A7F9114>I<00E001E001E001C00000000000000000000000001F 003F8073806380E380C780070007000F000E001E001C701C703C6038E03DC01F800F000C1C7F9B 0E>105 D<0007000F000F000F00000000000000000000000000F801FC039C071C0E1C0C1C001C 003C003C00380038007800780070007000F000F000E000E001E001E0F1C0F3C0F780FF007C0010 24809B11>I<1F803F8007800780070007000F000F000E000E001E001E001C001C003C003C0038 0038007800780070007000F700F700E600E600FE00FC003C00091D7E9C0C>108 D<3E0FC1F8003F3FE3FE007778F71E0067E07E0E00E7C07C0E00C780780E000780700E000F00F0 1E000F00F01C000E00E01C000E00E03C001E01E038E01E01E038E01C01C078C01C01C071C03C03 C07B803C03C03F003803801E0023127F9124>I<3E1F803F3FE07771E067E0E0E7C0E0C780E007 00E00F01E00F01C00E01C00E03C01E038E1E038E1C078C1C071C3C07B83C03F03801E017127F91 19>I<00FE0003FF000F87801F03C03C01C03C01C07801E07803E0F803C0F003C0F003C0F007C0 F00780F00F00781E007C7C003FF8000FE00013127F9114>I<0F87C00FDFF01DFC7819F07839E0 3831E03C01C03C03C07C03C0780380780380780780F80780F00781E00783E00FC7C00FFF000E7C 000E00001E00001E00001C00001C00003C0000FF8000FF8000161A819115>I<01F107FF0F3F1E 1F3C0F7C0E780E780EF81EF01CF01CF01CF03CF078F0F879F87FF81F700070007000F000E000E0 01E00FFC0FFC101A7F9113>I<3E3E3F7F77E367C7E78FC78F070F0F000F000E000E001E001E00 1C001C003C003C00380010127F9113>I<01F807FC0F1E0E1E1E3E1E1C1F001FE00FF807F8007C 203CF038F038F078F0F07FE03F800F127E9113>I<01C001C001C003C003C0038003800780FFF0 FFF007000F000F000E000E001E001E001C001C003C383C38383038703CE03FC00F800D1A80990F >I<1F00E03F80E07380E06381E0E381E0C781C00701C00703C00F03C00E03800E03800E079C0E 079C0E0F180E0F180F3FB80FFFF003E1E016127F9118>I<1F07803F8780738780638780E38380 C783800701800703800F03000E03000E03000E07000E06000E0E000E0C000F3C000FF80003E000 11127F9114>I<0F8F803FDFC038F9C070F1C0E0F3C0C0E3C000E3C001E00001E00001C00001C0 0073C0E0F3C0E0F380C0F781C0E7C780FFFF007C7C0013127E9118>120 D<1F00E03F80E07380E06381E0E381C0C781C00701C00703C00F03800E03800E03800E07800E07 000E0F000E0F000F3F000FFE0003EE00000E00001E00381C00783C0078780071F0007FE0001F80 00131A7F9114>I<03E18007F3800FFF000E3F001C0E00001C0000380000700000E00001C00003 80000703800E03001C07003F8F007FFE00F3FC00C0F00011127F9113>I E /Fm 4 49 df0 D<070007000700E738FFF87FF01FC01FC07FF0 FFF8E7380700070007000D0E7E8E12>3 D<0000018000000180000001C0000000E000000070FF FFFFFCFFFFFFFC00000070000000E0000001C000000180000001801E0C7E8D23>33 D<0F0F0F1F1E1E1E3C3C3C78787870F0E06008117F910A>48 D E /Fn 8 55 df<038007000F000E001C00380038003800700070007000E000E000E000E000E000E000E000 E000E000E000E000E0007000700070003800380038001C000E000F000700038009227E980E>40 DI<0030 00003000003000003000003000003000003000003000003000003000003000FFFFFCFFFFFC0030 0000300000300000300000300000300000300000300000300000300000300016187E931B>43 D<07C01FF03838701C600C600CE00EE00EE00EE00EE00EE00EE00EE00EE00E600C701C701C3838 1FF007C00F157F9412>48 D<03000F00FF00F70007000700070007000700070007000700070007 00070007000700070007007FF07FF00C157E9412>I<1F803FE071F0E0F8E078E078E038007800 7800F000F001E003C007800E001C1838187038FFF0FFF0FFF00D157E9412>I<1FE03FF8707870 3C703C003C003C007800F807F007E00078003C001E001EE01EE01EE03E707C7FF81FE00F157F94 12>I<03F00FF81E1C3C1C781C70007000E080EFF0FFF8F81CF01EE00EE00EE00E600E700E701C 3C3C1FF80FE00F157F9412>54 D E /Fo 23 123 df<0001FC000007FF00000F0700001C0F0000 1C0F00003C0F00003800000038000000380000003800000078000007FFFC0007FFFC0000701C00 00703C0000F0380000E0380000E0380000E0780000E0700001E0700001C0700001C0F38001C0E3 8001C0E30003C0E3000380E6000380FE0003807C00038000000700000007000000F7000000F600 0000FE000000FC000000780000001925819C17>12 D45 D<01FE01FF8001FE01FF80003F007C00003F003000003F803000003F80700000778070000067C0 60000067C060000063C0E00000E3E0E00000C3E0C00000C1E0C00000C1F1C00001C1F1C0000180 F180000180F9800001807B800003807B800003007F000003003F000003003F000007003F000006 001E000006001E00001F001E0000FFC00E0000FFC00C0000211C7E9B1F>78 D<03DC000FFC001E7C001C3C00383C00783800703800707800F07800E07000E07000E0F380E0F3 80E1E300E1E300F7E6007FFE003C7C0011127B9115>97 D<3F007F000F000F000E000E000E001E 001C001C001C003FE03FF03E703C307838703870387078F070E070E070E0F0E0E0E1E0E1C0F780 7F003E000D1D7B9C13>I<01F007F80F3C1C3C387C783870007000F000E000E000E000E000E018 E03870F07FE01F800E127B9113>I<001F80003F80000780000780000700000700000F00000F00 000E00000E00001E0003DE000FFC001E7C001C3C00383C00783800703800707800F07800E07000 E07000E0F380E0F380E1E300E1E300F7E6007FFE003C7C00111D7B9C15>I<03F007F81F383C18 3818781870787FF0FF80E000E000E000E000E018E03870F03FE01F800D127B9113>I<0003E000 0FE0000FF0001DF0001CE0001C00003C0000380000380000380000380003FF8007FF8000700000 700000700000F00000E00000E00000E00000E00001E00001C00001C00001C00001C00003C00003 8000038000038000038000070000F70000F70000FE0000FC00007800001425819C0D>I<01C001 E001E001C00000000000000000000000001F003F0077806380E780C7000F000E000E001E001C00 1CE03CE038C039C03B803F801E000B1C7D9B0D>105 D<1F803F8007800780070007000F000F00 0E000E001E001E001C001C003C003C00380038007800780070007000F700F700E600E600EE00FC 007C00091D7C9C0B>108 D<1E1F87E03F7FDFF077F1FC7067C1F070E7C1F070C781E0700701C0 700F03C0F00F03C0E00E0380E00E0381E01E0781C71E0781C71C0703C61C07038E3C0F03DC3C0F 01F8380E01F020127D9122>I<1E3F003F7F8077F38067C380E78380C783800703800F07800F07 000E07000E0F001E0E381E0E381C1E301C1C703C1EE03C0FC0380F8015127D9117>I<01F007F8 0F3C1C1C380C780E700E701EF01CE01CE01CE03CE038E070E0F071E07FC01F000F127B9115>I< 078F800FDFC01DF9C019F0C039E0E031C0E001C0E003C1E003C1C00381C00381C00783C0078380 0787800787000FDE000FFC000EF8000E00001E00001E00001C00001C00003C0000FF8000FF8000 131A7F9115>I<1E3E3F7F77E767C7E78FC78F070F0F000F000E000E001E001E001C001C003C00 3C00380010127D9112>114 D<03F007F80F3C0E3C1E7C1E381F001FE00FF00FF000F82078F070 F070F0F0E1E07FC03F800E127D9111>I<01C001C001C003C003C0038003800780FFE0FFE00700 0F000F000E000E001E001E001C001C003C703C70386038E039C03F801F000C1A7D990E>I<1F03 803F8380738380638780E38780C78700070700070F000F0F000E0E000E0E000E1E701E1E701C1C 601E3C600E7CC00FFFC007CF8014127D9116>I<1F073F8773876383E383C783070307070F060E 060E060E0E1E0C1E1C0E180E380FF007E010127D9113>I<0F1E003FFF0079F30071E700E1EF00 C1CF0001CF0003C00003C000038000038000778380F78380F70300F70700EF9E00FFFC0079F800 11127D9113>120 D<1F03803F8380738380638780E38700C78700070700070F000F0E000E0E00 0E0E000E1E001E1C001C1C001E3C000E7C000FF80007F80000380000780038700078F00079E000 73C0007F80003E0000111A7D9114>I<03E307F70FFE0E3E1C1C0038007000E001C0038007000E 071C06180E3F1E7FFCE3F8C1F010127E9111>I E /Fp 20 122 df<07FFF80007FFFE0000E00F 0000E0078001E0038001E003C001C001C001C001C003C001C003C003C0038003C0038003C00780 03C00780078007000780070007000F000F000F001E000E001C000E0078001E01F000FFFFC000FF FF00001A177F961D>68 D<07FFFF8007FFFF8000E00F0000E0070001E0030001E0030001C0C300 01C0C30003C1C00003C3C00003FF800003FF8000078380000783800007030000070300000F0000 000F0000000E0000000E0000001E000000FFE00000FFC0000019177F9616>70 D<07FE07FE00E000E001E001E001C001C003C003C00380038007800780070007000F000F000E00 0E001E00FFC0FFC00F177E960F>73 D<07F00FF807F00FF800F801C000F8018001FC038001DC03 00019C0300019E0300038E0700038F0600030706000307860007038E0007038C000603CC000601 CC000E01FC000E00F8000C00F8000C0078001C007800FF807000FF8030001D177F961C>78 D<03FE1FE003FE1FE000780F0000380C0000381800003C3000001C6000001EC000000FC000000F 800000070000000F0000000F8000001B80000033C0000061C00000C1C0000181E0000380E00007 00F0001E007000FF83FE00FF83FE001B177F961D>88 D<07DC1FFC3C7C783C703CE038E038E078 E078C073E0F3F3F77FFE3E3C100E7F8D13>97 D<7E007E001C001C003C003C003800380078007F E07FF07C70F838F038E038E038E078E070C070E0E0F3C07F803F000D177F960F>I<001F80001F 80000700000700000F00000F00000E00000E00001E0007DE001FFC003C7C00783C00703C00E038 00E03800E07800E07800C07300E0F300F3F7007FFE003E3C0011177F9612>100 D<07F01FF83C387838F070FFF0FFC0E000E000E000E01870787FF01FC00D0E7F8D10>I<01C001 C001800000000000000000000000001E003F0077006700E7000F000E001E001C001CC03DC039C0 3F801F000A1780960C>105 D<001C001C001C00000000000000000000000003F007F80E780C78 1C780070007000F000F000E000E001E001E001C001C003C0E380E780FF007C000E1D80960E>I< 1F801F80070007000F000F000E000E001E001E1E1C7F1CF73DC73F863F003FC07BE078E070E370 E3F0E7F0FEE07C10177F9612>I<3E3F1F807FFFBFC06FE3F1C0EF83E1C0CF83C1C00F03C1C00E 0381C01E0783C01E0783801C0703981C0707B83C0F07383C0F07F0380E03E01D0E808D1F>109 D<3E3F007FFF806FE380EF8380CF83800F03800E03801E07801E07001C07301C0F703C0E703C0F E03807C0140E808D15>I<03F00FF83E3C780E700EE00EE00EE01EE01CE03CE038F0F07FE01F80 0F0E7F8D11>I<1F3F003FFF8037E38077C1C06781C00701C00701C00F03C00F03800E03800F07 001F9E001FFC001DF8001C00003C00003C0000380000FF0000FF00001214818D12>I<3EF87FFC 6FDCEF1CCF180E000E001E001E001C001C003C003C0038000E0E808D10>114 D<07000F000F000E000E001E00FFC0FFC01C003C003C00380038007800780070C071C073807F00 3E000A147F930D>116 D<1F9F003FFF8071F38061E380E1C30001C00001C00003C00003C000E3 8300E38700E78E00FFFE007CF800110E7F8D14>120 D<1E03803F0380770380670780E707000F 07000E07000E0F001E0E001C0E001C1E001E3E000FFC0007FC00001C00183C0038780038F0003F E0001F80001114808D11>I E /Fq 72 124 df<03FFF00003FFF000001E0000001E0000001E00 00001E000000FF800007FFF0001F1E7C003C1E1E00781E0F00701E0700F01E0780F01E0780F01E 0780F01E0780701E0700781E0F003C1E1E001F1E7C0007FFF00000FF8000001E0000001E000000 1E0000001E000003FFF00003FFF000191C7E9B1E>8 D<003F1F8001FFFFC003C3F3C00783E3C0 0F03E3C00E01C0000E01C0000E01C0000E01C0000E01C0000E01C000FFFFFC00FFFFFC000E01C0 000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01C0000E01 C0000E01C0000E01C0000E01C0007F87FC007F87FC001A1D809C18>11 D<003F0001FF8003C3C0 0783C00F03C00E03C00E00000E00000E00000E00000E0000FFFFC0FFFFC00E01C00E01C00E01C0 0E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C07F87F87F87F8 151D809C17>I<003FC001FFC003C3C00783C00F03C00E01C00E01C00E01C00E01C00E01C00E01 C0FFFFC0FFFFC00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01 C00E01C00E01C00E01C07FCFF87FCFF8151D809C17>I<003F83F00001FFDFF80003E1FC3C0007 81F83C000F01F03C000E01E03C000E00E000000E00E000000E00E000000E00E000000E00E00000 FFFFFFFC00FFFFFFFC000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C 000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E01C000E00E0 1C007FC7FCFF807FC7FCFF80211D809C23>I<7070F8F8FCFCFCFC7C7C0C0C0C0C1C1C18183838 7070F0F060600E0D7F9C15>34 D<01C00380038007000E000C001C001800380038007000700070 007000E000E000E000E000E000E000E000E000E000E000E000E000E000E0007000700070007000 3800380018001C000C000E0007000380038001C00A2A7D9E10>40 DI<00060000000600000006000000060000000600000006000000060000000600000006000000 060000000600000006000000060000FFFFFFE0FFFFFFE000060000000600000006000000060000 0006000000060000000600000006000000060000000600000006000000060000000600001B1C7E 9720>43 D<70F8F8F878181818383070E060050D7D840C>II<70F8 F8F87005057D840C>I<00030003000700060006000E000C001C00180018003800300030007000 60006000E000C000C001C001800380030003000700060006000E000C000C001C00180018003800 3000700060006000E000C000C00010297E9E15>I<07E00FF01C38381C781E700E700EF00FF00F F00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00F700E700E781E381C1C380FF007E0101B7E 9A15>I<030007003F00FF00C70007000700070007000700070007000700070007000700070007 000700070007000700070007000700FFF8FFF80D1B7C9A15>I<0FE03FF878FC603EF01EF81FF8 0FF80F700F000F001F001E003E003C007800F001E001C0038007000E031C0338037006FFFEFFFE FFFE101B7E9A15>I<0FE03FF8387C783E7C1E781E781E001E003C003C00F807F007E00078003C 001E000F000F000F700FF80FF80FF81EF01E787C3FF80FE0101B7E9A15>I<001C00001C00003C 00007C00007C0000DC0001DC00039C00031C00071C000E1C000C1C00181C00381C00301C00601C 00E01C00FFFFC0FFFFC0001C00001C00001C00001C00001C00001C0001FFC001FFC0121B7F9A15 >I<301C3FFC3FF83FE030003000300030003000300037E03FF83C3C381E301E000F000F000F00 0FF00FF00FF00FF01E703E787C3FF80FE0101B7E9A15>I<01F807FC0F8E1E1E3C1E381E781E78 007000F080F7F8FFFCFC1CF81EF80FF00FF00FF00FF00FF00F700F700F781E381E1E3C0FF807E0 101B7E9A15>I<6000007FFF807FFF807FFF80600700C00600C00E00C01C000038000030000070 0000600000E00000C00001C00001C00003C0000380000380000380000780000780000780000780 00078000078000078000078000111C7E9B15>I<07E01FF83C3C381E701E700E700E780E7C1E7F 3C3FF81FF00FF01FFC3DFC787E703FF00FE00FE007E007E007F00E781E3C3C1FF807E0101B7E9A 15>I<07E01FF83C38781C781EF00EF00EF00FF00FF00FF00FF00FF01F781F383F3FFF1FEF010F 000E001E781E781C783C787878F03FE01F80101B7E9A15>I<70F8F8F870000000000000000070 F8F8F87005127D910C>I<70F8F8F870000000000000000070F8F8F878181818383070E060051A 7D910C>I61 D<00060000000F0000000F0000000F000000 1F8000001F8000001F8000003FC0000033C0000033C0000073E0000061E0000061E00000E1F000 00C0F00000C0F00001C0F8000180780001FFF80003FFFC0003003C0003003C0007003E0006001E 0006001E001F001F00FFC0FFF0FFC0FFF01C1C7F9B1F>65 DI<00 3FC18001FFF18003F07B800FC01F801F000F801E0007803C0003807C0003807800038078000180 F0000180F0000000F0000000F0000000F0000000F0000000F0000000F000000078000180780001 807C0001803C0003801E0003001F0007000FC00E0003F03C0001FFF000003FC000191C7E9B1E> I69 DI72 DI76 DII<003F800001FF F00003E0F80007001C000E000E001C0007003C00078038000380780003C0700001C0F00001E0F0 0001E0F00001E0F00001E0F00001E0F00001E0F00001E0F00001E0780003C0780003C038000380 3C0007801E000F000E000E0007803C0003E0F80001FFF000003F80001B1C7E9B20>II82 D<07F1801FFD803C1F80700780700380E00380E00180E00180F00000 F80000FE00007FE0003FFC001FFE000FFF0000FF80000F800007C00003C00001C0C001C0C001C0 E001C0E00380F00780FE0F00DFFE00C7F800121C7E9B17>I<7FFFFFC07FFFFFC0780F03C0700F 01C0600F00C0E00F00E0C00F0060C00F0060C00F0060C00F0060000F0000000F0000000F000000 0F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000 000F0000000F0000000F000003FFFC0003FFFC001B1C7F9B1E>I87 D91 D<18183C3C383870706060 E0E0C0C0C0C0F8F8FCFCFCFC7C7C38380E0D7B9C15>II<1FE0003FF8003C 3C003C1E00180E00000E00001E0007FE003FFE007E0E00F80E00F80E00F00E60F00E60F81E607C 7E607FFFC01FC78013127F9115>97 DI<07F80FFC3E3C3C 3C78187800F000F000F000F000F000F000780078063C0E3F1C0FF807F00F127F9112>I<001F80 001F8000038000038000038000038000038000038000038000038000038007F3801FFF803E1F80 7C0780780380F80380F00380F00380F00380F00380F00380F00380F003807807807C0F803E1F80 1FFBF007E3F0141D7F9C17>I<07E01FF83E7C781C781EF01EFFFEFFFEF000F000F000F0007800 78063C0E3F1C0FF807F00F127F9112>I<00FC03FE079E071E0F1E0E000E000E000E000E000E00 FFE0FFE00E000E000E000E000E000E000E000E000E000E000E000E000E000E007FE07FE00F1D80 9C0D>I<07E7C01FFFC03C3DC0781E00781E00781E00781E00781E00781E003C3C003FF80037E0 007000007000007800003FFC003FFF007FFF807807C0F003C0E001C0E001C0F003C0F807C07C0F 801FFE0007F800121B7F9115>II<38007C007C007C0038 00000000000000000000000000FC00FC001C001C001C001C001C001C001C001C001C001C001C00 1C001C001C00FF80FF80091D7F9C0C>I<01C003E003E003E001C0000000000000000000000000 0FE00FE000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000 E000E0F0E0F1E0F3C0FF807E000B25839C0D>IIIII<03F0000FFC001E1E003807007807 80700380F003C0F003C0F003C0F003C0F003C0F003C07003807807803807001E1E000FFC0003F0 0012127F9115>II<07F1801FF9803F1F803C0F80780780780380F00380F00380 F00380F00380F00380F00380F803807807807C0F803E1F801FFB8007E380000380000380000380 000380000380000380001FF0001FF0141A7F9116>II<1FB07FF0F0F0E070E030F030F8 007FC07FE01FF000F8C078C038E038F078F8F0FFF0CFC00D127F9110>I<0C000C000C000C000C 001C001C003C00FFE0FFE01C001C001C001C001C001C001C001C001C301C301C301C301C301E70 0FE007C00C1A7F9910>IIII<7F8FF07F8FF00F0F80070F00038E0001DC0001D80000 F00000700000780000F80001DC00038E00030E000707001F0780FF8FF8FF8FF81512809116>I< FF0FE0FF0FE01C07801C07000E06000E06000E0600070C00070C00071C0003980003980003F800 01F00001F00000E00000E00000E00000C00000C00000C000F18000F18000C700007E00003C0000 131A7F9116>I<7FFC7FFC783C707860F061E061E063C00780078C0F0C1E0C1E1C3C187818F078 FFF8FFF80E127F9112>II E /Fr 55 124 df<00003FE00000FFF80001E0380003807800038078000700700007000000070000000F000000 0E0000000E0000000E000000FFFFE000FFFFE0001C01C0001C01C0001C01C0001C03C0001C0380 003C0380003803800038078000380700003807000078070000700F1800700E3800700E3000700E 3000F00F7000E007E000E003C000E0000001E0000001C0000001C0000071C000007B800000FF80 00007F0000007E0000001D29829F1A>12 D<00003FCE0000FFFE0001C1FC000381FC000781FC00 07003C0007003800070038000F0038000E0078000E0070000E007000FFFFF001FFFFF0001C00E0 001C00E0001C00E0001C01E0003C01C0003801C0003801C0003803C00038038000780380007003 800070078C0070071C0070071800F0071800E007B800E003F000E001E000E0000001E0000001C0 000001C0000071C000007B800000FF8000007F0000007E0000001F29829F1B>I<1E1F3F3F1F07 06060E1C3878F0C0080E779F0E>39 D<000180000380000F00001E00001C0000380000700000E0 0000E00001C00003C0000380000700000700000F00000E00000E00001C00001C00001C00003800 00380000380000380000700000700000700000700000600000600000E00000E00000E00000E000 00E00000E00000E000006000006000007000007000003000003800003800001C00000C0000112E 7AA113>I<001C00000C00000E0000070000070000030000038000038000038000038000038000 018000018000038000038000038000038000038000038000038000070000070000070000070000 0E00000E00000E00000E00001C00001C0000380000380000380000700000700000E00001E00001 C0000380000780000700000E00001C0000380000700000E00000112E80A113>I<1C3C3C3C3C0C 1C18383070E0C0C0060E7D840E>44 DI<70F8F8F0F005057B840E> I<0000006000000060000000E0000000C0000001C0000003800000030000000700000006000000 0E0000001C0000001800000038000000300000007000000060000000E0000001C0000001800000 038000000300000007000000060000000E0000001C000000180000003800000030000000700000 0060000000E0000001C0000001800000038000000300000007000000060000000E0000001C0000 0018000000380000003000000070000000E0000000C00000001B2D80A117>I<00020006000E00 1E003E01FC07DC073C003C00380038007800780070007000F000F000E000E001E001E001C001C0 03C003C0038003800780FFF8FFF80F1E7B9D17>49 D<001F80007FE000F0F001C0700380780330 780738380638780E30780C30780C70780CE0F80FC0F00781F00003E00007C0000F80001E00007C 0001F00003C0000780000E00301C00703800603800E07FC3E07FFFC0E1FF80C0FF00C03E00151F 7D9D17>I<00E03000FFF000FFE001FF8001800001800001800003800003000003000003000007 7E0007FF0007C7800703800E03800E03C00003C00003C00007C0000780380780780780780F80F8 0F00E01E00E01E00603C0078F8003FE0001F8000141F7C9D17>53 D<003F00007F8001F3C003C1 C00780E00780E00F00E00F01E01F01E01E01E01E01E01E03E03E03C03C03C03C07C01C07C01C0F 801E1F800FFF800FFF80010F00000F00001E00001E00703C00F07800F07000E0E000E3C000FF80 007E0000131F7B9D17>57 D<0F0F1F1F0E0000000000000000000070F8F8F0F008147B930E>I< 000007000000070000000F0000000F0000001F0000003F0000003F0000006F0000006F000000CF 000000CF0000018F0000038F0000030F0000060F0000060F00000C0F80000C0780001807800018 0780003FFF80007FFF800060078000C0078000C00780018007800180078003000780070007801F 8007C07FC07FF8FFC07FF81D207E9F22>65 D<01FFFFC001FFFFF0001E00F8001E0078001E003C 003E003C003C003C003C003C003C003C007C007800780078007800F0007803E000F80F8000FFFF 0000FFFF8000F007C001F001E001E001E001E001E001E001E003E001E003C001E003C001E003C0 03C007C003C00780078007800F000F803E00FFFFF800FFFFE0001E1F7D9E20>I<0001FE060007 FF8E001F83CC007E00FC00F8007C01F0007C03C0003807C000380F8000380F0000381E0000301E 0000303C0000303C0000007C000000780000007800000078000000F8000000F0000000F0000000 F00001C0F0000180F00001807000038078000300780007003C000E003E001C001F0078000FC1F0 0007FFC00000FE00001F217A9F21>I<01FFFF8001FFFFE0001E00F0001E0078001E003C003E00 1C003C001E003C000E003C000E007C000E0078000E0078000E0078000E00F8001E00F0001E00F0 001E00F0001E01F0003C01E0003C01E0003C01E0007803E0007003C000F003C000E003C001C007 C003C00780078007801E000F807C00FFFFF000FFFFC0001F1F7D9E22>I<01FFFFFE01FFFFFE00 1E007C001E001C001E001C003E001C003C000C003C001C003C0018007C0C1800780C1800780C00 00781C0000F8380000FFF80000FFF80000F0780001F0300001E0300001E0303001E0307003E000 6003C000E003C000C003C001C007C001800780038007800F800F803F00FFFFFF00FFFFFE001F1F 7D9E1F>I<01FFFFFC01FFFFFC001E00F8001E0038001E0038003E0018003C0018003C0038003C 0030007C0C3000780C3000780C0000781C0000F8380000FFF80000FFF80000F0780001F0300001 E0300001E0300001E0300003E0000003C0000003C0000003C0000007C000000780000007800000 0F800000FFFC0000FFFC00001E1F7D9E1E>I<01FFF001FFF0001F00001E00001E00003E00003C 00003C00003C00007C0000780000780000780000F80000F00000F00000F00001F00001E00001E0 0001E00003E00003C00003C00003C00007C0000780000780000F8000FFF800FFF800141F7D9E12 >73 D<01FFF80001FFF800001F0000001E0000001E0000003E0000003C0000003C0000003C0000 007C000000780000007800000078000000F8000000F0000000F0000000F0000001F0000001E000 0001E0018001E0038003E0030003C0030003C0070003C0060007C00E0007801E0007803C000F80 FC00FFFFFC00FFFFF800191F7D9E1D>76 D<01FF0000FFC001FF0000FFC0001F0001FC00001F00 01F800001F0003F800003F0003F80000370006F0000037000CF0000037000DF00000770019F000 00638019E00000638031E00000638033E00000E38063E00000C380C3C00000C380C3C00000C381 87C00001C38187C0000183830780000183830780000183860F800003838C0F800003038C0F0000 0303980F00000301D81F00000701F01F00000601F01E00000E01E01E00001F01C03E0000FFE1C3 FFE000FFE183FFE0002A1F7D9E29>I<01FF00FFE001FF00FFE0001F001F00001F800C00001F80 1C00003F801C000037C018000033C018000033C038000073E038000061E030000061E030000061 F0700000E0F0700000C0F0600000C0F8600000C078E00001C078E000018078C00001807CC00001 803DC00003803DC00003003F800003001F800003001F800007001F800006000F00000E000F0000 1F000F0000FFE0070000FFE0060000231F7D9E22>I<0001FC000007FF00001F07C0003801E000 F000E001E0007003C0007007800078070000380F0000381E0000381E0000383C0000383C000038 78000078780000787800007878000078F00000F0F00000F0F00000E0F00001E0F00001C0F00003 C0700007807800070078000F0038001E003C003C001E00F0000F83E00007FF800001FC00001D21 7A9F23>I<01FFFF8001FFFFE0001E00F0001E0078003E0038003E003C003C003C003C003C007C 003C007C0078007800780078007000F800E000F801E000F0078000FFFF0001FFF80001F0000001 E0000001E0000003E0000003E0000003C0000003C0000007C0000007C000000780000007800000 0F800000FFF80000FFF800001E1F7D9E1F>I<01FFFF0001FFFFC0001E01E0001E00F0001E0078 003E0078003C0078003C0078003C0078007C00F0007800F0007801E0007803C000F80F0000FFFE 0000FFFC0000F03E0001F01E0001E01F0001E00F0001E01F0003E01E0003C01E0003C01E0003C0 3E0007C03E0007803C1807803C180F803C38FFF81E70FFF81FE0000007C01D207D9E21>82 D<0007F0C0001FFDC0007C3F8000F00F8000E0078001C0078003C0030003800300038003000380 03000380000003C0000003E0000003FC000003FF800001FFE00000FFF000001FF8000003F80000 00F800000078000000380000003800300038003000380070007800700070007000F0007801E000 FC03C000FF078000CFFF0000C3FC00001A217D9F1A>I<1FFFFFF01FFFFFF01F0781E03C0780E0 38078060300F8060700F0060600F00E0600F00C0E01F00C0C01E00C0001E0000001E0000003E00 00003C0000003C0000003C0000007C000000780000007800000078000000F8000000F0000000F0 000000F0000001F0000001E0000001E0000003E00000FFFF0000FFFF00001C1F789E21>I<00F9 C003FFC0078FC00F0F801E07803C07803C0780780700780700780F00F80F00F00E00F00E00F01E 30F01E70F03C60707C6078FEE03FCFC01F078014147C9317>97 D<07803F803F80070007000F00 0F000E000E001E001E001C001CF83FFC3F1E3E0E3C0F780F780F700F700F701FF01FE01EE01EE0 3CE03CE07870F071E03FC01F0010207B9F15>I<007E0003FF0007C3800F07801E07803C07803C 0200780000780000780000F80000F00000F00000F00000F000007003007807003C3E003FFC000F E00011147C9315>I<0000780003F80003F80000700000700000F00000F00000E00000E00001E0 0001E00001C000F9C003FFC0078FC00F0F801E07803C07803C0780780700780700780F00F80F00 F00E00F00E00F01E30F01E70F03C60707C6078FEE03FCFC01F078015207C9F17>I<00FE0003FF 0007C7800F03801E01803C03807C0700781F007FFC007FF000F80000F00000F00000F000007000 007003007807003C3E001FFC000FE00011147C9315>I<0000F80001FC0003BC00073C00073C00 0700000700000E00000E00000E00000E00000E0001FFE001FFE0001C00001C00001C00003C0000 380000380000380000380000780000700000700000700000700000F00000E00000E00000E00000 E00001E00001C00001C00001C0007380007B8000FF00007F00007C00001629829F0E>I<003E70 00FFF001E3F003C3E00781E00F01E00F01E01E01C01E01C01E03C03E03C03C03803C03803C0780 3C07803C0F001C1F001E3F000FFF0007CE00000E00001E00001E00001C00703C00787800F8F000 7FE0003F8000141D7E9315>I<01E0000FE0000FE00001C00001C00003C00003C0000380000380 00078000078000070000073F000FFF800FE3800F83C00F01C01F03C01E03801E03801C03803C07 803C0700380700380F00780E38780E30701E30701C70F01EE0F00FC0E0078015207D9F17>I<00 F000F000F000E000000000000000000000000000000F001F803BC071C063C06380E38007800700 0F000F000E001E001C701C603C6038E03DC01F800F000C1F7D9E0E>I<01E0000FE0000FE00001 C00001C00003C00003C0000380000380000780000780000700000703C00F0FE00F1C600E39E00E 71E01EE1E01FC1C01F80001F80003FE0003DF00038F0003878007878E07870C07070C07071C0F0 7B80F03F80E01F0013207D9F15>107 D<03C01FC01FC00380038007800780070007000F000F00 0E000E001E001E001C001C003C003C00380038007800780070007000F180F380E300E300F7007E 003C000A207C9F0C>I<1E0FE0FC003F1FF3FE0077F8778E0063F07E0F0063E03C0700E7C07C0F 00C780780E000780780E000700700E000F00F01E000F00F01C000E00E01C000E00E03C001E01E0 38E01E01E038C01C01C078C01C01C071C03C03C07B803C03C03F003803801E0023147D9325>I< 1E0FE03F1FF077F87063F07863E038E7C078C780700780700700700F00F00F00E00E00E00E01E0 1E01C71E01C61C03C61C038E3C03DC3C01F83800F018147D931A>I<007E0003FF8007C7800F03 C01E01C03C01E03C01E07801E07801E07803E0F803E0F003C0F003C0F00780F00780700F00781E 003C7C003FF8000FC00013147C9317>I<03C1F007E7F80EFE3C0C7C1C0C781E1CF01E18F01E00 E01E00E01E01E03E01E03E01C03C01C03C03C07803C07803C0F003E1E007E3C007FF80073E0007 00000F00000F00000E00000E00001E00001E0000FFC000FFC000171D809317>I<00F8C003FDC0 078FC00F0F801E07803C07803C0780780700780700780700F80F00F00E00F00E00F01E00F01E00 F03C00707C0078FC003FFC001F380000380000380000780000700000700000700000F0000FFE00 0FFE00121D7C9315>I<1E1F003F3F8077F1C063E3C063C3C0E783C0C783800700000700000F00 000F00000E00000E00001E00001E00001C00001C00003C00003C000038000012147D9313>I<01 FC03FE07870F0F0E0F0E0F1E000F800FF80FFC03FC007E001E701EF01CF01CF03CF0787FF01FC0 10147D9313>I<01C003C003C003800380078007800700FFF0FFF00F000E000E001E001E001C00 1C003C003C00380038007870786070E070C079C03F801F000C1C7C9B0F>I<0F00701F80F03BC0 F071C0E063C0E06381E0E381E00781C00701C00703C00F03C00E03800E03800E078C0E079C0E0F 180E0F180F3FB807FBF003E1E016147D9318>I<0F01C01F83E03BC3E071C3E063C1E06380E0E3 80C00780C00700C00701C00F01800E01800E01800E03000E03000E07000E0E000F1C0007F80003 F00013147D9315>I<0F0070E01F80F1F03BC0E1F071C0E1F063C0E0F06381E070E381C0600781 C0600701C0600703C0E00F03C0C00E0380C00E0380C00E0381C00E0781800E0783800E0F83000F 1FCF0007FDFE0001F0F8001C147D931E>I<07C7801FFFC03CFCE07079E07071E060F1E0E0E1C0 00E00000E00001E00001E00001C00001C00073C0E0F3C0C0F381C0F7C180EFC780FFFF007C7C00 13147D9315>I<0F00701F80F03BC0E071C0E063C0E06381E0E381C00781C00701C00703C00F03 800E03800E03800E07800E07000E0F000E0F000F3F0007FE0003EE00000E00001E00101C00783C 0078380078700071E0007FC0001F0000141D7D9316>I<01F06003F8E007FFC00E1F800C030000 0700000E00001C0000380000F00001E0000380000700000E01C01C01801C03803F87007FFF00E1 FE00C0F80013147E9313>II E /Fs 2 16 df<000FF80000007FFF000001F80FC00003C001E00007000070000E000038001C00001C003800 000E003000000600700000070060000003006000000300E000000380C000000180C000000180C0 00000180C000000180C000000180C000000180C000000180E00000038060000003006000000300 700000070030000006003800000E001C00001C000E00003800070000700003C001E00001F80FC0 00007FFF0000000FF8000021217E9926>13 D<0FC01FE03FF07FF87FF8FFFCFFFCFFFCFFFCFFFC FFFC7FF87FF83FF01FE00FC00E107E9013>15 D E /Ft 46 123 df<007E0001FE0007CF00070F 000F0F000E0F000E00000E00000E00000E0000FFFF00FFFF000E07000E07000E07000E07000E07 000E07000E07000E07000E07000E07000E07000E07007F0FE07F0FE0131A809915>12 D<007E1F8001FF7FC007C7F1E00707C1E00F07C1E00E0781E00E0380000E0380000E0380000E03 8000FFFFFFE0FFFFFFE00E0380E00E0380E00E0380E00E0380E00E0380E00E0380E00E0380E00E 0380E00E0380E00E0380E00E0380E00E0380E07F8FE3FC7F8FE3FC1E1A809920>14 D18 D44 DII<000C000C001C001800180038003000 3000700060006000E000C000C001C001800180038003000700060006000E000C000C001C001800 1800380030003000700060006000E000C000C0000E257E9B13>I<07801FE03870303070386018 E01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE01C60187038703838701FE007800E187E 9713>I<03000700FF00FF00070007000700070007000700070007000700070007000700070007 000700070007000700FFF0FFF00C187D9713>I<1FC03FF071F8F078F83CF83CF81C701C003C00 3C0038007800F000E001C0038007000E0C1C0C380C7018FFF8FFF8FFF80E187E9713>I<0FC03F E078F078787C7878783878007800F001F00FE00FC000F00078003C003C003CF83CF83CF83CF878 70F87FF01FC00E187E9713>I<70387FF87FF07FE0600060006000600060006FC07FF078F87078 003C003C003C703CF03CF03CF03CE07870F03FE01F800E187E9713>53 D<03F00FF81E783C7838 78707870006000E180EFE0FFF0F838F038F01CE01CE01CE01CE01C701C701C70383C701FE00FC0 0E187E9713>I<0FC01FE038707038F038E018E01CE01CE01CE01CE03C703C707C3FFC1FDC061C 001C00387838787078F079E03FC01F000E187E9713>57 D<000C0000001E0000001E0000001E00 00003F0000003F0000003F000000778000006780000067800000C3C00000C3C00000C3C0000181 E0000181E0000181E0000300F00003FFF00003FFF0000600780006007800060078000E003C001E 003C00FF81FFC0FF81FFC01A1A7F991D>65 D<007F0601FFE607E0FE0F803E1E001E3C001E3C00 0E78000E780006F00006F00000F00000F00000F00000F00000F00000F000067800067800063C00 0E3C000C1E001C0F803807E0F001FFE0007F80171A7E991C>67 D69 D<007F060001FFE60007E0FE000F803E001E001E003C001E003C000E0078000E0078000600F000 0600F0000000F0000000F0000000F0000000F0000000F003FFC0F003FFC078001E0078001E003C 001E003C001E001E001E000F803E0007E07E0001FFFE00007FC6001A1A7E991E>71 DII78 D<007F000001FFC00007C1F0000F0078001E003C003C001E0038000E0078 000F0070000700F0000780F0000780F0000780F0000780F0000780F0000780F0000780F0000780 78000F0078000F0038000E003C001E001E003C000F00780007C1F00001FFC000007F0000191A7E 991E>II<0FC63FF6787E701EE00EE00EE006E006F000FC007F807FF03FFC0FFE 01FE003F000F000FC007C007E007E00FF00EFC3CDFFCC7F0101A7E9915>83 D<7F80FFE0F1F0F0F0607000F01FF03FF07870F070E070E073E0F3F1F37FFE3F3C10107E8F13> 97 DI<07F81FFC3C3C783C7018E000E000E000E000E000F0007000780C3E1C1F F807E00E107F8F11>I<007E00007E00000E00000E00000E00000E00000E00000E00000E00000E 000FEE001FFE003C3E00781E00700E00E00E00E00E00E00E00E00E00E00E00E00E00700E00781E 003C3E001FFFC00FCFC0121A7F9915>I<07E01FF03C78701C701CFFFCFFFCE000E000E000F000 7000780C3E1C1FF807E00E107F8F11>I<00F803FC07BC0F3C0E3C0E000E000E000E000E00FFC0 FFC00E000E000E000E000E000E000E000E000E000E000E000E007FE07FE00E1A80990C>I<0FDF 1FFF38777038703870387038703838703FE07FC0700070007FF83FFC7FFEF01FE00FE007E007F0 0F7C3E3FFC0FF010187F8F13>II<3C003C003C003C0000000000000000000000 0000FC00FC001C001C001C001C001C001C001C001C001C001C001C001C00FF80FF80091A80990A >I108 DII<07E01FF8381C 700E6006E007E007E007E007E007E007700E700E3C3C1FF807E010107F8F13>II114 D<3FE07FE0F0E0E060E060F000FF807FC01FE001F0C0F0E070E070F0F0FFE0DF800C107F8F0F> I<0C000C000C000C001C001C003C00FFC0FFC01C001C001C001C001C001C001C001C601C601C60 1C601EE00FC007800B177F960F>III I121 D<7FF87FF870F860F061E063C063C007800F181E181E183C387830F870FFF0FFF00D107F8F11> I E /Fu 49 123 df<07FFFF0FFFFF1FFFFF3C3180703180607380E0638000630000E30000E300 00C30001C30001C3000383000383800383800703800703C00F03C00E0180181480931A>25 D<0000C00000C00000C00001C00001C0000180000180000380000380000300000300000700007F F001FFF807C63C0F0E1E1E0E0E3C0C0F380C07781C07701C0770180FF0180FE0380EE0381EE030 1CF0303C7070787870F03C63E01FFF800FFE0000E00000C00000C00001C00001C0000180000180 0003800003800018297E9F1B>30 D<70F8F8F87005057C840D>58 D<70F8FCFC7C0C0C0C1C1838 70F060060E7C840D>I<00000040000001C0000007C000001F0000007C000001F0000007C00000 1F0000007C000001F0000007C000001F0000007C000000F0000000F00000007C0000001F000000 07C0000001F00000007C0000001F00000007C0000001F00000007C0000001F00000007C0000001 C0000000401A1C7C9823>I<00030003000700060006000E000C000C001C001800180038003000 3000700060006000E000C000C001C00180018001800380030003000700060006000E000C000C00 1C0018001800380030003000700060006000E000C000C000102D7DA117>I<80000000E0000000 F80000003E0000000F80000003E0000000F80000003E0000000F80000003E0000000F80000003E 0000000F80000003C0000003C000000F8000003E000000F8000003E000000F8000003E000000F8 000003E000000F8000003E000000F8000000E0000000800000001A1C7C9823>I<000007000000 070000000F0000001F0000001F0000003F0000003F0000006F0000006F000000CF0000018F0000 018F0000030F80000307800006078000060780000C0780001807800018078000300780003FFF80 007FFF8000E0078000C0078001800780018007C0030003C0070003C00E0003C01F0007C0FFC07F FCFFC07FFC1E207E9F22>65 D<00FFFFE000FFFFF8000F007C000F003C000F003E001F003E001E 003E001E003E001E003E003E007C003C007C003C00F8003C01F0007C07E0007FFF80007FFFC000 7803E000F801F000F001F000F000F000F000F001F001F001E001F001E001F001E001E003E003E0 03C007C003C00F8007C01F007FFFFE00FFFFF0001F1F7E9E22>I<0000FE060007FF8E001FC3DC 007E00FC00F8007C01F0007C03E0003807C000380F8000380F8000381F0000301F0000303E0000 303E0000007E0000007C0000007C0000007C000000FC000000F8000000F8000000F80001C0F800 0180F800018078000380780003007C0007003C000E003E001C001F0078000FC1F00003FFC00000 FF00001F217E9F21>I<00FFFFE00000FFFFF800000F007C00000F001E00000F000F00001F000F 00001E000780001E000780001E000780003E000780003C000780003C000780003C000780007C00 0F800078000F800078000F800078000F8000F8001F0000F0001F0000F0001E0000F0003E0001F0 003C0001E0003C0001E000780001E000F00003E001E00003C003C00003C007800007C03F00007F FFFC0000FFFFF00000211F7E9E26>I<00FFFFFF00FFFFFF000F003E000F000E000F000E001F00 0E001E0006001E000E001E000C003E060C003C060C003C0600003C0E00007C1C00007FFC00007F FC0000783C0000F8180000F0180000F0180C00F0181C01F0001801E0003801E0003001E0007003 E000E003C000E003C003E007C00FC07FFFFFC0FFFFFF80201F7E9E22>I<00FFFFFF00FFFFFF00 0F003E000F000E000F000E001F000E001E0006001E000E001E000C003E060C003C060C003C0600 003C0E00007C1C00007FFC00007FFC0000783C0000F8180000F0180000F0180000F0180001F000 0001E0000001E0000001E0000003E0000003C0000003C0000007C000007FFE0000FFFE0000201F 7E9E1D>I<00FFFC01FFF8000F80000F00000F00001F00001E00001E00001E00003E00003C0000 3C00003C00007C0000780000780000780000F80000F00000F00000F00001F00001E00001E00001 E00003E00003C00003C00007C000FFFC00FFFC00161F7F9E14>73 D<003FFF003FFF0000F80000 F00001F00001E00001E00001E00003E00003C00003C00003C00007C0000780000780000780000F 80000F00000F00000F00001F00001E00001E00381E00783E00F83C00F83C00F87C00E0F80071F0 007FE0001F800018207D9E19>I<00FF807FF000FF807FF0000F800F80000FC00600000FC00E00 001FC00E00001BE00C000019E00C000019E01C000039F01C000030F018000030F018000030F838 000070783800006078300000607C300000603C700000E03C700000C03C600000C03E600000C01E E00001C01EE00001801FC00001800FC00001800FC00003800FC000030007800007000780000F80 0780007FF0038000FFF0030000241F7E9E25>78 D<00FFFF8000FFFFE0000F01F0000F0078000F 007C001F007C001E007C001E007C001E007C003E00F8003C00F8003C01F0003C03E0007C0F8000 7FFF00007FFC0000783C0000F81E0000F00E0000F00E0000F01E0001F01E0001E01E0001E01E00 01E03E0003E03E0003C03E0603C03F0607C03F0E7FFC1F1CFFFC0FF8000007F01F207E9E23>82 D<0007E180001FFB80007C3F0000F01F0000E00F0001C00F0003C0060003800600038006000380 06000780000007C0000003E0000003F8000003FF800001FFE00000FFE000003FF0000003F00000 00F0000000F000000070000000700030007000300070007000F0007000E0007001E0007801C000 FC038000FF0F0000EFFE0000C3F8000019217D9F1C>I<7FFC3FF87FFC3FF807C007C007800300 0F8007000F8006000F0006000F0006001F000E001F000C001E000C001E000C003E001C003E0018 003C0018003C0018007C0038007C003000780030007800300078007000F8006000F0006000F000 E000F000C000F001C000F003800070070000780F00003C3C00001FF8000007E000001D207C9E1F >85 DII<00FFF87FF800FFF87FF8000FC01F 800007801E000007C01C000003C030000003C070000003E0E0000001E1C0000001F180000000F3 00000000F600000000FC0000000078000000007C000000007C00000000FC00000001FE00000001 9E000000031E000000061F0000000C0F000000180F80000038078000007007800000E007C00001 C003C000038003E0000FC007E000FFF01FFE00FFF01FFE00251F7F9E26>II<00F9C003FFC0078FC00F0F801E07803C07803C0780780700780700780F00F80F00 F00E00F00E00F01E38F01E30F03C30707C7078FE603FCFE01F07C015147E9318>97 D<07803F803F80070007000F000F000E000E001E001E001C001CF83FFC3F1E3E0E3C0F780F780F 700F700F701FF01FE01EE01EE03CE03CE07870F071E03FC01F0010207E9F14>I<00FC03FE07C7 0F0F1E0F3C0F3C04780078007800F800F000F000F000F000F003780F7C3E3FFC0FE010147E9314 >I<0000780003F80003F80000700000700000F00000F00000E00000E00001E00001E00001C000 F9C003FFC0078FC00F0F801E07803C07803C0780780700780700780F00F80F00F00E00F00E00F0 1E38F01E30F03C30707C7078FE603FCFE01F07C015207E9F18>I<00FC03FE07C70F031E033C07 7C0E783E7FF87FE0F800F000F000F000F0007003780F3C3E1FFC0FE010147E9315>I<0000FC00 01FE0003DE00039E00079E000700000700000700000700000F00000E00000E0000FFF001FFF000 1E00001C00001C00001C00001C00003C0000380000380000380000380000380000780000700000 700000700000700000F00000E00000E00000E00001E00001C00071C0007B8000FB80007F00007E 000017297E9F16>I<001F38007FF800F1F801E1F003C0F00780F00780F00F00E00F00E00F01E0 1F01E01E01C01E01C01E03C01E03C01E07800E0F800F1F8007FF8003E700000700000F00000F00 000E00701E00783C00F87800FFF0007FC000151D809316>I<01E0000FE0000FE00001C00001C0 0003C00003C000038000038000078000078000070000073F800F7FC00FE1C00FC1E00F80E01F01 E01E01C01E01C01C01C03C03C03C038038038038078078070E78070C700F0C700E1CF00F38F007 F0E003E017207E9F1A>I<007000F000F000F000000000000000000000000000000F801FC039C0 71C061C061C0E3C003800780070007000F000E001E381C301C301C701CE01FC00F800D1F7F9E10 >I<0001E00001E00001E00001C0000000000000000000000000000000000000000000003E0000 FF0001E78001C380038380030780070780000700000700000F00000F00000E00000E00001E0000 1E00001C00001C00003C00003C0000380000380000780000780000700070F00079E000FBC0007F 80007E00001328819E13>I<01E0000FE0000FE00001C00001C00003C00003C000038000038000 0780000780000700000703E00F07F00F0E700E18F00E30F01E60F01EC0E01F80001F80003FF000 3DF800387800383C00783C707838607038607038E0F03DC0F01F80E00F0014207E9F18>I<03C0 1FC01FC00380038007800780070007000F000F000E000E001E001E001C001C003C003C00380038 007800780070007000F180F380E300E300F7007E003C000A207E9F0E>I<1F07F07F003F8FF8FF 8033FC3BC38071F83F83C061F01F01C063E03E03C0E3C03C038003C03C03800380380380078078 0780078078070007007007000700700F000F00F00E1C0F00F00E180E00E01E180E00E01C381E01 E01E701E01E00FE01C01C007C026147F9328>I<1F07E0003F9FF00033FC700071F0780061E038 0063E07800E3C0700003C07000038070000780F0000780E0000700E0000701E0000F01C3800F01 C3000E03C3000E0387001E03CE001E01FC001C00F80019147F931B>I<007E0003FF8007C7800F 03C01E01C03C01E03C01E07801E07801E07803E0F803E0F003C0F003C0F00780F00780700F0078 1E003C7C003FF8000FC00013147E9316>I<07C1F00FE7F80CFE3C1C7C1C18781E18F01E38F01E 00E01E00E01E01E03E01E03E01C03C01C03C03C07803C07803C0F003E1E007E3C007FF80073E00 0700000F00000F00000E00000E00001E00001E0000FFC000FFC000171D819317>I<00F8C003FD C0078FC00F0F801E07803C07803C0780780700780700780700F80F00F00E00F00E00F01E00F01E 00F03C00707C0078FC003FFC001F380000380000380000780000700000700000700000F0000FFE 000FFE00121D7E9314>I<1F0F003FBF8033F9C071F3C061E3C063C3C0E3C38003800003800007 80000780000700000700000F00000F00000E00000E00001E00001E00001C000012147F9315>I< 00FC01FE03C7078F070F070F0F000F8007F807FE03FE003F000F700FF00EF00EF01EF07C7FF81F E010147E9315>I<00E001E001E001C001C003C003C00380FFF8FFF80780070007000F000F000E 000E001E001E001C001C003C383C30383038703CE01FC00F800D1C7F9B10>I<0F80381FC07839 E07870E07061E07061C0F0E1C0F003C0E00380E00381E00781E00701C00701C00703C70703C607 078607078E079FCC03FDFC01F0F818147F931A>I<0F80E01FC1E039E1F070E1F061E0F061C070 E1C06003C0600380600380E00780C00700C00701C0070180070180070300070700078E0003FC00 01F80014147F9316>I<0F8038381FC0787839E0707C70E0707C61E0703C61C0F01CE1C0E01803 C0E0180380E0180381E0380781E0300701C0300701C0300701C0600703C0600703C0E00707C1C0 078FE38003FEFF0000F87E001E147F9321>I<07C3C01FFFE03C7E70307CF07038F06078F0E070 E000700000700000F00000F00000E00000E00071E070F1E060F1C0E0F3E0C0E7E3C07FFF803C3E 0014147E931A>I<0F80381FC07839E07070E07061E07061C0F0E1C0E003C0E00380E00381E007 81C00701C00701C00703C0070380070780070780079F8003FF0001F700000700000F00080E003C 1E003C3C003C780038F0003FE0001F8000151D7F9316>I<01E06007F0E007FFC00E3F800C0700 000700000E00001C0000380000F00001E0000380000700000E01C01C01801C03803F8F007FFF00 E1FE00C0F80013147E9315>I E /Fv 27 122 df0 D<70F8F8F87005057C8D0D>II<018001C001800180C183E187F99F7DBE1FF807E007E01FF87D BEF99FE187C1830180018001C0018010147D9417>I<0006000000060000000600000006000000 060000000600000006000000060000000600000006000000060000000600000006000000060000 00060000FFFFFFF0FFFFFFF0000600000006000000060000000600000006000000060000000600 00000600000006000000060000000600000006000000060000FFFFFFF0FFFFFFF01C207D9E23> 6 D<0003FF0000000FFFC000003E01F00000F8007C0001E0001E00038000070007000003800E00 0001C00C000000C01C000000E03800000070300000003030000000307000000038600000001860 00000018E00000001CC00000000CC00000000CC00000000CC00000000CC00000000CC00000000C C00000000CC00000000CC00000000CE00000001C60000000186000000018700000003830000000 30300000003038000000701C000000E00C000000C00E000001C00700000380038000070001E000 1E0000F8007C00003E01F000000FFFC0000003FF0000262B7DA02D>13 D<000000C0000003C000 000F8000003E000000F8000003E000000F8000003E000000F8000003E000000F8000003E000000 F8000000E0000000F80000003E0000000F80000003E0000000F80000003E0000000F80000003E0 000000F80000003E0000000F80000003C0000000C0000000000000000000000000000000000000 00000000000000000000FFFFFFC0FFFFFFC01A247C9C23>20 DI<007FFFC001FFFFC007C000000F0000001C00 00003800000030000000700000006000000060000000E0000000C0000000C0000000C0000000C0 000000C0000000C0000000E000000060000000600000007000000030000000380000001C000000 0F00000007C0000001FFFFC0007FFFC01A1C7C9823>26 D<000000060000000007000000000300 000000038000000001C000000000E00000000070FFFFFFFFFCFFFFFFFFFC000000007000000000 E000000001C0000000038000000003000000000700000000060026107D922D>33 D<0001800000000380000000070000000006000000000E000000001C0000000038000000007FFF FFFC00FFFFFFFC03C00000000F800000003E00000000F8000000007C000000000F000000000380 00000001E000000000FFFFFFFC007FFFFFFC0038000000001C000000000E000000000700000000 0700000000038000000001800000261A7D972D>40 D<0000060000000007000000000380000000 018000000001C000000000E0000000007000FFFFFFF800FFFFFFFC000000000F0000000007C000 000001F0000000007C00000000F800000003C000000007000000001E00FFFFFFFC00FFFFFFF800 0000007000000000E000000001C0000000038000000003800000000700000000060000261A7D97 2D>I<07F0003F800FFC00FFC01FFF01F1E03C3F83C070700FC780386007CF0018E003FE001CC0 03FC000CC001FC000CC000F8000CC0007C000CC000FE000CC000FF000CE001FF001C6003CF8018 70078FC038380F07F0F01E3E03FFE00FFC00FFC007F0003F8026147D932D>49 D<007FF801FFF807C0000F00001C0000380000300000700000600000600000E00000C00000C000 00FFFFF8FFFFF8C00000C00000E000006000006000007000003000003800001C00000F000007C0 0001FFF8007FF8151C7C981E>I<00000C00000C00001C00001800003800003000007000006000 00E00000C00001C0000180000380000300000700000600000E00000C00001C0000180000380000 300000300000700000600000E00000C00001C0000180000380000300000700000600000E00000C 00001C0000180000380000300000700000600000E00000C00000C00000162C7AA000>54 D58 D<0000FC0007FE000FFE00383E00E01E01C01E03801C07003C0F00380E0078 1E00701C00403C0000380000780000780000780000700000F00000F00000F00000F00000F00000 F00000F80004F80018F800787C00707E00E07F81803FFF001FFC0007F0001721809F18>67 D<003FFFE00001FFFFFC0007FFFFFE000E1E01FF00381E003F00701E001F00F01E000F00F01E00 0F00C01C000F00003C000E00003C001E00003C001C00003C0038000038007000007800E0000078 03800000787E00000071F8000000F1FC000000F0FC000000F07E000000E03E000001E03F000001 E01F000001C01F000003C00F803003C00F807003800FC0E0078007E1C0070007FF000E0003FC00 0C0001F00024207F9E27>82 D<0000FF830003FFFF000FFFFE00380FFC0078003800F0007000E0 00E001C001E0000003C0000003800000070000000E0000001C00000FFF80001FFF800000E38000 01C0000003800000070000000E0000001C0000003800040070003800E0007801C000F0038000F0 070001E00FFF01C01FFFFF807FFFFE00C01FF800201F7F9E21>90 DI98 D<006000600060006000600060006000 600060006000600060006000600060006000600060006000600060006000600060006000600060 00600060006000600060006000600060006000600060006000600060006000600060FFE0FFE00B 2E80A114>I<001F007F00F801E001E001C001C001C001C001C001C001C001C001C001C001C001 C001C003C003800F80FE00F800FE000F80038003C001C001C001C001C001C001C001C001C001C0 01C001C001C001C001E001E000F8007F001F102D7DA117>102 DI106 D<0000000018000000003800000000300000 000070000000006000000000E000000000C000000001C000000001800000000380000000030000 0000070000000006000000000E000000000C000000001C00000000180000000038000000003000 00000070000000006000000000E000020000C0000E0001C0001E000180007F00038000FF000300 00EF80070000078006000007C00E000003C00C000003E01C000001E018000001F038000000F030 000000F87000000078600000007CE00000007CC00000003DC00000003F800000001F800000001F 000000000F000000000E0000000006000000252E7E8126>112 D<070007000700070007000700 07000700070007000700FFF8FFF8FFF80700070007000700070007000700070007000700070007 0007000700070007000700070007000700070007000700070007000700070007000D2A7D9F14> 121 D E /Fw 86 124 df<07FFF80007FFF800001E0000001E0000001E0000001E0000001E0000 007F800003FFF0000F9E7C003E1E1F003C1E0F00781E0780F81E07C0F81E07C0F81E07C0F81E07 C0F81E07C0781E07803C1E0F003E1E1F000F9E7C0003FFF000007F8000001E0000001E0000001E 0000001E0000001E000007FFF80007FFF8001A1F7D9E21>8 D<001FC3F0007FEFF801F0FE7803 C0FC780780F87807007000070070000700700007007000070070000700700007007000FFFFFF80 FFFFFF800700700007007000070070000700700007007000070070000700700007007000070070 00070070000700700007007000070070000700700007007000070070007FE3FF007FE3FF001D20 809F1B>11 D<001F8000FFC001F1E003C1E00781E00701E0070000070000070000070000070000 070000FFFFE0FFFFE00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E0 0700E00700E00700E00700E00700E00700E07FC3FE7FC3FE1720809F19>I<001FE000FFE001F1 E003C1E00781E00700E00700E00700E00700E00700E00700E00700E0FFFFE0FFFFE00700E00700 E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700 E00700E07FE7FE7FE7FE1720809F19>I<001FC1FC00007FE7FE0001F0FF0F0003C0FC0F000780 F80F000700F00F00070070000007007000000700700000070070000007007000000700700000FF FFFFFF00FFFFFFFF00070070070007007007000700700700070070070007007007000700700700 070070070007007007000700700700070070070007007007000700700700070070070007007007 00070070070007007007007FE3FE3FF07FE3FE3FF02420809F26>I<70F8F8F8F8F8F8F8F8F870 707070707070707070707070000000000070F8F8F87005217CA00D>33 D<7038F87CFC7EFC7E7C 3E0C060C060C061C0E180C381C7038F07860300F0E7E9F17>I<007C000001FE000003CE000003 870000070300000703000007030000070300000707000007070000070E0000070E0000071C0000 03B81FFC03F01FFC03E007E003C0038003C0038007E003000FE007001CF00E0038F00C0078781C 00F03C1800F03C3800F01E3000F00F7000F00FE000F807C0187803C0187C07F0303E1EF8701FFC 3FE007F00F801E227EA023>38 D<70F8FCFC7C0C0C0C1C183870F060060E7C9F0D>I<00E001C0 03C0038007000E000E001C001C003800380030007000700070006000E000E000E000E000E000E0 00E000E000E000E000E000E000E000E00060007000700070003000380038001C001C000E000E00 0700038003C001C000E00B2E7DA112>II<00 060000000600000006000000060000000600000006000000060000000600000006000000060000 0006000000060000000600000006000000060000FFFFFFF0FFFFFFF00006000000060000000600 000006000000060000000600000006000000060000000600000006000000060000000600000006 000000060000000600001C207D9A23>43 D<70F8FCFC7C0C0C0C1C183870F060060E7C840D>I< FFC0FFC0FFC00A037F8A0F>I<70F8F8F87005057C840D>I<00030003000700060006000E000C00 0C001C0018001800380030003000700060006000E000C000C001C0018001800180038003000300 0700060006000E000C000C001C0018001800380030003000700060006000E000C000C000102D7D A117>I<03F0000FFC001E1E001C0E00380700780780700380700380700380F003C0F003C0F003 C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C07003807003807003 807807803807001C0E001E1E000FFC0003F000121F7E9D17>I<018003801F80FF80E380038003 800380038003800380038003800380038003800380038003800380038003800380038003800380 03800380FFFEFFFE0F1E7C9D17>I<07F0001FFC003C3E00701F00600F80E00780F807C0F807C0 F803C0F803C07007C00007C00007C0000F80000F00001F00003E00003C0000780000F00001E000 0380000700000E00C01C00C03800C0700180FFFF80FFFF80FFFF80121E7E9D17>I<07F0001FFC 003C3F00380F00780F80780F807C0780780F80000F80000F80001F00001E00007E0003F80003F0 00003C00001F00000F80000F800007C00007C07007C0F807C0F807C0F807C0F80F80E00F80701F 003C3E001FFC0007F000121F7E9D17>I<000E00000E00001E00003E00003E00006E0000EE0000 CE00018E00038E00030E00060E000E0E000C0E00180E00380E00300E00600E00E00E00FFFFF0FF FFF0000E00000E00000E00000E00000E00000E00000E0000FFE000FFE0141E7F9D17>I<380700 3FFF003FFE003FFC003FF00030000030000030000030000030000030000031F80037FC003F1E00 3C0F003807803807800003C00003C00003C00003C07003C0F003C0F003C0F003C0E00780600780 700F003C3E001FFC0007F000121F7E9D17>I<00FE0003FF0007C7800F07801E07803C07803C07 80780000780000700000F06000F3FC00F7FE00FE0F00FC0780F80780F80380F003C0F003C0F003 C0F003C0F003C07003C07003C07803C07807803807803C0F001E1E000FFC0003F000121F7E9D17 >I<6000007FFFC07FFFC07FFFC0600380C00300C00700C00E00000C00001C0000380000300000 700000E00000E00000C00001C00001C00003C00003800003800003800003800007800007800007 8000078000078000078000078000078000121F7D9D17>I<03F0000FFC001E1E003C0F00380780 7003807003807003807803807C07807E07003F8E001FFC000FF80007F8000FFE001EFF003C3F80 781F807007C0F003C0E003C0E001C0E001C0E001C0F003C07003807807003E1F001FFC0007F000 121F7E9D17>I<03F0000FFC001E1E003C0F00780700780780F00780F00380F00380F003C0F003 C0F003C0F003C0F003C07007C07807C0780FC03C1FC01FFBC00FF3C00183C00003800007800007 80780700780F00781E00783C007878003FF0000FC000121F7E9D17>I<70F8F8F8700000000000 000000000070F8F8F87005147C930D>I<70F8F8F8700000000000000000000070F8F8F8781818 1838303070E040051D7C930D>I61 D<0FC03FF07878E03CE03CF03CF03CF03C007C007800F801E001C003C003800380030003000300 0300030003000000000000000000000007000F800F800F8007000E207D9F15>63 D<0003800000038000000380000007C0000007C0000007C000000DE000000DE000000DE0000018 F0000018F0000018F00000307800003078000030780000603C0000603C0000603C0000E01E0000 C01E0000FFFE0001FFFF0001800F0001800F0003800F800300078003000780070007C0070003C0 0F8003C0FFE03FFEFFE03FFE1F207F9F22>65 DI<001FC0C000 FFF0C001F83DC007E00FC00F8007C00F0007C01F0003C03E0001C03C0001C07C0001C07C0000C0 7C0000C0F80000C0F8000000F8000000F8000000F8000000F8000000F8000000F8000000F80000 007C0000C07C0000C07C0000C03C0001C03E0001801F0001800F0003800F80070007E00E0001F8 3C0000FFF800001FE0001A217D9F21>IIII<001FE060007FF86001F83CE003E00FE007C007 E00F8003E01F0001E03E0000E03E0000E07C0000E07C0000607C000060F8000060F8000000F800 0000F8000000F8000000F8000000F8000000F8007FFCF8007FFC7C0001E07C0001E07C0001E03E 0001E03E0001E01F0001E00F8001E007C003E003E007E001FC1FE0007FFC60001FF0001E217D9F 24>III<0FFFC00FFFC0003C00003C00003C00003C00003C00003C00003C00003C0000 3C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C0070 3C00F83C00F83C00F83C00F87C00E0780078F0003FE0000FC00012207E9E17>IIIII<001F800000FFF00001E0780007C03E000F801F000F000F001E000780 3C0003C03C0003C07C0003E07C0003E0780001E0F80001F0F80001F0F80001F0F80001F0F80001 F0F80001F0F80001F0F80001F0F80001F0780001E07C0003E07C0003E03C0003C03E0007C01E00 07800F000F000F801F0007C03E0001F0F80000FFF000001F80001C217D9F23>II<001F800000FFF00001E0780007C03E000F801F000F000F001E0007803E0007 C03C0003C07C0003E07C0003E0780001E0F80001F0F80001F0F80001F0F80001F0F80001F0F800 01F0F80001F0F80001F0F80001F0780001E07C0003E07C0003E03C0003C03E0F07C01E1F87800F 38CF000FB0FF0007F0FE0001F8F80000FFF010001FF010000070100000783000007C7000003FF0 00003FE000001FE000001FC0000007801C297D9F23>II<07E1801FF9803C3F80780F80700780E00380E00380E00180E00180E00180F00000F800007C 00007F80003FF8003FFE000FFF0003FF00003F80000F800003C00003C00001C0C001C0C001C0C0 01C0E001C0E00380F00380F80780FE0F00CFFE00C3F80012217D9F19>I<7FFFFFE07FFFFFE078 0F01E0700F00E0600F0060600F0060E00F0070C00F0030C00F0030C00F0030C00F0030000F0000 000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F00 00000F0000000F0000000F0000000F0000000F0000000F0000000F000007FFFE0007FFFE001C1F 7E9E21>IIII<7FF83FF87FF83FF807E00F8003C00F0001E00E0001F00C0000F018000078380000 7C3000003C7000003E6000001EC000000FC000000F8000000780000007C0000007E000000DE000 001DF0000018F8000038780000307C0000603C0000E01E0000C01F0001800F0003800780078007 C00FC007E0FFE01FFEFFE01FFE1F1F7F9E22>II<7FFFF87FFF F87E00F87801F07001E06003E0E007C0E007C0C00F80C00F00C01F00003E00003E00007C00007C 0000F80001F00001F00003E00C03E00C07C00C07800C0F801C1F001C1F00183E00183C00387C00 78F801F8FFFFF8FFFFF8161F7D9E1C>II<180C3C1E381C703860 30E070C060C060C060F87CFC7EFC7E7C3E381C0F0E7B9F17>II< 3FE0007FF800787C00781E00781E00000E00000E00000E0007FE001FFE003F0E007C0E00F80E00 F00E30F00E30F01E30F81E307C7F703FFFE01FC78014147E9317>97 D<0E0000FE0000FE00000E 00000E00000E00000E00000E00000E00000E00000E00000E00000E3F000EFFC00FC3E00F81E00F 00F00E00F00E00780E00780E00780E00780E00780E00780E00780E00780E00F00F00F00F81E00F C3C00CFF800C7F0015207F9F19>I<03FC0FFE1E1E3C1E781E7800F000F000F000F000F000F000 F000F80078007C033E071F0E0FFC03F010147E9314>I<000380003F80003F8000038000038000 038000038000038000038000038000038000038007F3800FFF801E1F803C0780780780780380F0 0380F00380F00380F00380F00380F00380F00380F003807803807807803C0F803E1F801FFBF807 E3F815207E9F19>I<03F0000FFC001E1E003C0F00780700780780F00780F00380FFFF80FFFF80 F00000F00000F00000F800007800007C01803E03801F87000FFE0003F80011147F9314>I<007E 00FF01EF038F078F0700070007000700070007000700FFF0FFF007000700070007000700070007 000700070007000700070007000700070007007FF07FF01020809F0E>I<0001E007F7F00FFF70 3E3E703C1E00780F00780F00780F00780F00780F00780F003C1E003E3E003FF80037F000300000 3000003800003FFE001FFFC03FFFE07803E0F000F0E00070E00070E00070F000F07801E03E07C0 1FFF8003FC00141F7F9417>I<0E0000FE0000FE00000E00000E00000E00000E00000E00000E00 000E00000E00000E00000E7F000EFF800FC7C00F83C00F01C00F01C00E01C00E01C00E01C00E01 C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C0FFE7FCFFE7FC16207F9F19>I<1C 003E003E003E001C000000000000000000000000000E007E007E000E000E000E000E000E000E00 0E000E000E000E000E000E000E000E000E00FFC0FFC00A1F809E0C>I<00E001F001F001F000E0 000000000000000000000000007007F007F000F000700070007000700070007000700070007000 700070007000700070007000700070007000700070F0F0F0E0F1E0FFC03F000C28829E0E>I<0E 0000FE0000FE00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E1FF00E 1FF00E0F800E0F000E1E000E3C000E78000EF0000FF0000FF8000FBC000F3C000E1E000E0F000E 0F000E07800E07800E03C0FFCFF8FFCFF815207F9F18>I<0E00FE00FE000E000E000E000E000E 000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E00 0E000E000E00FFE0FFE00B20809F0C>I<0E3F03F000FEFFCFFC00FFC3DC3C000F81F81E000F00 F00E000F00F00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E 00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E00FFE7FE7FE0FFE7FE7FE0 23147F9326>I<0E7F00FEFF80FFC7C00F83C00F01C00F01C00E01C00E01C00E01C00E01C00E01 C00E01C00E01C00E01C00E01C00E01C00E01C00E01C0FFE7FCFFE7FC16147F9319>I<01F80007 FE001E07803C03C03801C07000E07000E0F000F0F000F0F000F0F000F0F000F0F000F07000E078 01E03801C03C03C01E078007FE0001F80014147F9317>I<0E3F00FEFFC0FFC3E00F81E00F01F0 0E00F00E00F80E00780E00780E00780E00780E00780E00780E00F80E00F00F01F00F81E00FC7C0 0EFF800E7F000E00000E00000E00000E00000E00000E00000E0000FFE000FFE000151D7F9319> I<07F1800FF9801F1F803C0F807C0780780380F80380F00380F00380F00380F00380F00380F003 80F803807807807C07803C0F803E1F801FFB8007E3800003800003800003800003800003800003 80000380003FF8003FF8151D7E9318>I<0E7CFFFEFFDE0F9E0F1E0F000E000E000E000E000E00 0E000E000E000E000E000E000E00FFE0FFE00F147F9312>I<1FB07FF078F0E070E030E030F000 FC007FC03FE00FF000F8C078C038E038E038F078F8F0FFE0CFC00D147E9312>I<060006000600 06000E000E001E003E00FFF8FFF80E000E000E000E000E000E000E000E000E000E000E180E180E 180E180E180F3007F003E00D1C7F9B12>I<0E01C0FE1FC0FE1FC00E01C00E01C00E01C00E01C0 0E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E03C00E07C00F0FC007FDFC03F9FC 16147F9319>III<7FC7FC7FC7FC0F03E007038003830001C70000EE0000EC00007800003800003C0000 7C0000EE0001C7000187000303800701C01F01E0FF87FEFF87FE1714809318>II<3FFF3FFF381F301E703C6078607860F001E003C003C007830F031E031E 073C067806F81EFFFEFFFE10147F9314>II E /Fx 64 124 df<000FF000007FF80001FC3C0003F07C0007E07C0007C0FE0007C07C0007C07C 0007C0000007C0000007C0000007C1FE00FFFFFE00FFFFFE0007C03E0007C03E0007C03E0007C0 3E0007C03E0007C03E0007C03E0007C03E0007C03E0007C03E0007C03E0007C03E0007C03E0007 C03E0007C03E0007C03E003FF9FFC03FF9FFC01A20809F1D>12 D<000FFE00007FFE0001FC7E00 03F0FE0007E0FE0007C0FE0007C07E0007C03E0007C03E0007C03E0007C03E0007C03E00FFFFFE 00FFFFFE0007C03E0007C03E0007C03E0007C03E0007C03E0007C03E0007C03E0007C03E0007C0 3E0007C03E0007C03E0007C03E0007C03E0007C03E0007C03E0007C03E003FF9FFC03FF9FFC01A 20809F1D>I<7CFEFEFFFFFF7F030707060E1C3C787008107C860F>44 DI<7CFEFEFEFEFE7C07077C860F>I<0000E00000E00001E00001E00003C00003C00003 80000780000780000700000F00000F00001E00001E00001C00003C00003C000038000078000078 0000F00000F00000E00001E00001E00003C00003C0000380000780000780000700000F00000F00 001E00001E00001C00003C00003C0000380000780000780000F00000F00000E00000E00000132D 7DA11A>I<01FC0007FF001F07C01E03C03E03E07C01F07C01F07C01F0FC01F8FC01F8FC01F8FC 01F8FC01F8FC01F8FC01F8FC01F8FC01F8FC01F8FC01F8FC01F8FC01F87C01F07C01F07C01F03E 03E01E03C01F8FC007FF0001FC00151D7E9C1A>I<00700000F0000FF000FFF000F3F00003F000 03F00003F00003F00003F00003F00003F00003F00003F00003F00003F00003F00003F00003F000 03F00003F00003F00003F00003F00003F00003F00003F000FFFF80FFFF80111D7C9C1A>I<07F8 003FFE00787F807C1FC0FE1FC0FE0FE0FE0FE0FE07E07C07E0380FE0000FE0000FC0001FC0001F 80003F00003E00007C0000F80001F00003C0600380600700600E00E01FFFE03FFFC07FFFC0FFFF C0FFFFC0FFFFC0131D7D9C1A>I<03FC000FFF801F1FC01F0FE03F87E03F87E03F87E03F8FE03F 8FE01F0FC0001F80003F0001FE0001FE00001F800007E00007F00003F03C03F87E03F8FF03F8FF 03F8FF03F8FF03F8FF07F07E07E03E0FE01FFF8003FE00151D7E9C1A>I<0001C00003C00007C0 0007C0000FC0001FC0003FC00077C00067C000C7C00187C00387C00707C00E07C00C07C01807C0 3807C07007C0E007C0FFFFFEFFFFFE000FC0000FC0000FC0000FC0000FC0000FC001FFFE01FFFE 171D7F9C1A>I<3803803FFF803FFF803FFF003FFC003FF8003F80003000003000003000003000 0033F8003FFE003E3F80381FC0300FC0000FE0000FE0000FE07C0FE0FE0FE0FE0FE0FE0FE0FE0F C0FC0FC0701F803C3F001FFE000FF000131D7D9C1A>I<007F8001FFC007E0E00F81F01F03F03E 03F03E03F07E03F07C01E07C0000FC1000FCFF80FFFFC0FF83E0FF03F0FE01F0FE01F8FC01F8FC 01F8FC01F8FC01F87C01F87C01F87C01F83E01F01F03E01F87C007FF8001FE00151D7E9C1A>I< 6000007FFFF87FFFF87FFFF07FFFE07FFFE0FFFFC0E00380C00700C00E00C00C00001C00003800 00780000780000F00000F00000F00001F00001F00001F00003F00003F00003F00003F00003F000 03F00003F00003F00001E000151E7D9D1A>I<01FE0007FF800F0FC01E03C01C03E03C01E03E01 E03F01E03F81E03FE3C03FFFC01FFF801FFF800FFFC00FFFE01FFFF03E7FF07C3FF8F80FF8F003 F8F000F8F000F8F00078F80078F800F07C00E03F03E01FFF8003FE00151D7E9C1A>I<03FC000F FF001F0FC03E03E07C03E07C01F0FC01F0FC01F0FC01F8FC01F8FC01F8FC01F8FC03F87C03F87E 07F83E0FF81FFFF80FF9F80041F80001F03C01F07E03F07E03E07E03E07E07C07C0F803C3F001F FE0007F000151D7E9C1A>I<7CFEFEFEFEFE7C0000000000007CFEFEFEFEFE7C07147C930F>I<00 00E000000000E000000001F000000001F000000001F000000003F800000003F800000007FC0000 0007FC0000000FFE0000000CFE0000000CFE000000187F000000187F000000307F800000303F80 0000703FC00000601FC00000601FC00000C01FE00000C00FE00001FFFFF00001FFFFF000018007 F000030003F800030003F800060003FC00060001FC000E0001FE00FFE01FFFE0FFE01FFFE0231F 7E9E28>65 DI<000FFC06007FFF8E01FE03DE03F800FE0FE000 7E1FC0003E1F80001E3F80000E7F00000E7F00000E7F000006FE000006FE000000FE000000FE00 0000FE000000FE000000FE000000FE000000FE0000007F0000067F0000067F0000063F80000E1F 80000C1FC0001C0FE0003803F800F001FF03E0007FFF80000FFC001F1F7D9E26>I III<000FFC0600007FFF8E00 01FE03DE0003F800FE000FE0007E001FC0003E001F80001E003F80000E007F00000E007F00000E 007F00000600FE00000600FE00000000FE00000000FE00000000FE00000000FE00000000FE007F FFE0FE007FFFE0FE0000FE007F0000FE007F0000FE007F0000FE003F8000FE001F8000FE001FC0 00FE000FE000FE0003F801FE0001FF07FE00007FFF3E00000FFC0600231F7D9E29>III<03FFFE03FFFE000FE0000FE0000FE0 000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0 000FE0000FE0000FE0000FE03C0FE07E0FE0FF0FE0FF0FE0FF0FE0FF1FC07E3F803FFF000FF800 171F809E1B>I76 DII<001FF80000FFFF0001F81F8007 E007E00FC003F01F8001F81F0000F83F0000FC7F0000FE7E00007E7E00007EFE00007FFE00007F FE00007FFE00007FFE00007FFE00007FFE00007FFE00007FFE00007F7E00007E7F0000FE7F0000 FE3F0000FC3F8001FC1F8001F80FC003F007E007E001F81F8000FFFF00001FF800201F7D9E27> II82 D<03FC180FFFB83F07F87C00F87C0078F800 38F80038F80018FC0018FE0000FF0000FFF8007FFF807FFFC03FFFE01FFFF00FFFF803FFF8003F FC0003FC0001FC0000FCC0007CC0007CC0007CE00078F000F8F800F0FF03F0EFFFC0C1FF00161F 7D9E1D>I<7FFFFFFC7FFFFFFC7C0FE07C700FE01C600FE00C600FE00CE00FE00EC00FE006C00F E006C00FE006C00FE006000FE000000FE000000FE000000FE000000FE000000FE000000FE00000 0FE000000FE000000FE000000FE000000FE000000FE000000FE000000FE000000FE000000FE000 07FFFFC007FFFFC01F1E7E9D24>III<07FC001FFF803F0FC03F07C0 3F03E03F03E01E03E00003E001FFE00FFFE03FC3E07E03E0FC03E0F803E0F803E0F803E0FC07E0 7E1FE03FFDFE0FF0FE17147F9319>97 DI<03FE000FFF801F8FC03F0FC07E0FC07C0FC0FC0780FC0000FC0000FC0000FC0000FC0000 FC0000FC00007E00007E00603F00E01FC3C00FFF8003FE0013147E9317>I<0007F80007F80000 F80000F80000F80000F80000F80000F80000F80000F80000F80000F803FCF80FFFF81F87F83F01 F87E00F87C00F8FC00F8FC00F8FC00F8FC00F8FC00F8FC00F8FC00F8FC00F87C00F87E01F83E03 F81F87F80FFEFF03F8FF18207E9F1D>I<01FF0007FFC01F87E03F01F07E00F07E00F8FC00F8FC 00F8FFFFF8FFFFF8FC0000FC0000FC00007C00007E00003E00183F00381FC0F007FFE001FF8015 147F9318>I<003F8000FFC001FFE003E7E007E7E007C7E007C3C007C00007C00007C00007C000 07C000FFFC00FFFC0007C00007C00007C00007C00007C00007C00007C00007C00007C00007C000 07C00007C00007C00007C00007C00007C0003FFC003FFC0013207F9F10>I<03FE7C0FFFFE1F8F DE1F07DE3E03E03E03E03E03E03E03E03E03E01F07C01F8FC01FFF801FFE001800001C00001E00 001FFFC01FFFF00FFFF83FFFFC7C00FEF8003EF0001EF0001EF0001EF8003E7C007C3F01F81FFF F003FF80171E7F931A>II<3E007F 007F007F007F007F003E00000000000000000000000000FF00FF001F001F001F001F001F001F00 1F001F001F001F001F001F001F001F001F001F00FFE0FFE00B217EA00E>I<007C00FE00FE00FE 00FE00FE007C00000000000000000000000001FE01FE003E003E003E003E003E003E003E003E00 3E003E003E003E003E003E003E003E003E003E003E003E783EFC3EFC7EFC7CFCF87FF01FC00F2A 83A010>IIIII<01FF0007FFC01F83F03E00F83E00F87C007C7C007CFC007EFC007EFC007EFC007EFC007EFC 007E7C007C7C007C3E00F83E00F81F83F007FFC001FF0017147F931A>II<03F8180FFE381FC7783F03F87E01F87E00F8FE00F8FC00F8FC00F8FC00F8FC00 F8FC00F8FC00F8FC00F87E00F87E01F83F03F81F87F80FFEF803F8F80000F80000F80000F80000 F80000F80000F80000F80007FF0007FF181D7E931C>II<0FF63FFE781EE00EE006F006F800FFC07FF87FFC1FFE03FF003FC0 0FE007E007F00FFC1EFFFCCFF010147E9315>I<01800180018003800380038007800F803F80FF FCFFFC0F800F800F800F800F800F800F800F800F800F800F860F860F860F860F860FCC07FC01F8 0F1D7F9C14>IIIIII<3FFFE03FFFE03C0FC0381FC0701F80603F00607E0060FE0000FC0001F8 0003F00007E0600FE0600FC0601F80E03F00C07F01C07E03C0FFFFC0FFFFC013147F9317>II E /Fy 24 124 df<00001FFE78000001FFFFF800000FFFFFF8 00003FF80FF800007FC01FF80000FF801FF80001FF001FF80001FE001FF80003FC001FF80003FC 000FF80003FC0007F80003FC0007F80003FC0007F80003FC0007F80003FC0007F80003FC0007F8 0003FC0007F80003FC0007F800FFFFFFFFF800FFFFFFFFF800FFFFFFFFF800FFFFFFFFF80003FC 0007F80003FC0007F80003FC0007F80003FC0007F80003FC0007F80003FC0007F80003FC0007F8 0003FC0007F80003FC0007F80003FC0007F80003FC0007F80003FC0007F80003FC0007F80003FC 0007F80003FC0007F80003FC0007F80003FC0007F80003FC0007F80003FC0007F80003FC0007F8 0003FC0007F80003FC0007F80003FC0007F80003FC0007F8007FFFE0FFFFC07FFFE0FFFFC07FFF E0FFFFC07FFFE0FFFFC02A327FB12E>13 D<0001E0000003E000000FE000007FE0001FFFE000FF FFE000FFFFE000FFBFE000E03FE000003FE000003FE000003FE000003FE000003FE000003FE000 003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE0 00003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE000003F E000003FE000003FE000003FE000003FE000003FE000003FE000003FE0007FFFFFF07FFFFFF07F FFFFF07FFFFFF01C2E7AAD29>49 D<1F003F807FC0FFE0FFE0FFE0FFE0FFE07FC03F801F000000 0000000000000000000000000000000000001F003F807FC0FFE0FFE0FFE0FFE0FFE07FC03F801F 000B207A9F17>58 D73 D76 D80 D<00FFFC000007FFFF80000FFFFFE0001FE03FF0001FF00FF8001FF007FC001FF003FC001FF001 FE000FE001FE000FE001FE00010001FE00000001FE00000001FE000001FFFE00003FFFFE0001FF F9FE0007FE01FE001FF801FE003FE001FE007FC001FE007F8001FE00FF8001FE00FF0001FE00FF 0001FE00FF0001FE00FF8003FE00FF8007FE007FC00FFF003FF03EFFF81FFFFCFFF807FFF07FF8 00FF801FF825207E9F28>97 D<000FFF80007FFFF001FFFFF803FE03FC07F807FC0FF007FC1FE0 07FC3FC007FC3FC003F87FC003F87F800040FF800000FF800000FF800000FF800000FF800000FF 800000FF800000FF800000FF800000FF8000007FC000007FC000003FC0001E3FE0001E1FE0003E 0FF0007C07FC00F803FF03F001FFFFE0007FFF80000FFE001F207D9F25>99 D<00000007E0000003FFE0000003FFE0000003FFE0000003FFE00000003FE00000001FE0000000 1FE00000001FE00000001FE00000001FE00000001FE00000001FE00000001FE00000001FE00000 001FE00000001FE00000001FE0000FFC1FE0007FFF9FE001FFFFFFE003FE07FFE00FF800FFE01F F0007FE01FE0003FE03FC0001FE03FC0001FE07FC0001FE07F80001FE0FF80001FE0FF80001FE0 FF80001FE0FF80001FE0FF80001FE0FF80001FE0FF80001FE0FF80001FE0FF80001FE0FF80001F E07F80001FE07FC0001FE07FC0001FE03FC0003FE01FE0007FE01FE000FFE00FF801FFF007FE0F FFFF01FFFFDFFF00FFFF1FFF001FF81FFF28327DB12E>I<000FFE0000007FFFC00001FFFFF000 03FE0FF8000FF803FC001FF001FE001FE000FE003FE0007F007FC0007F007FC0003F007FC0003F 80FF80003F80FF80003F80FF80003F80FFFFFFFF80FFFFFFFF80FFFFFFFF80FF80000000FF8000 0000FF80000000FF800000007FC00000007FC00000003FC00007803FE00007801FE0000F800FF0 001F8007FC003F0003FF01FE0000FFFFF800003FFFE0000007FF000021207E9F26>I<0000FF80 0007FFE0001FFFF0007FC7F000FF8FF801FF0FF801FE0FF803FE0FF803FC0FF803FC07F003FC01 C003FC000003FC000003FC000003FC000003FC000003FC000003FC0000FFFFF800FFFFF800FFFF F800FFFFF80003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003 FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC0000 03FC000003FC000003FC000003FC000003FC000003FC00007FFFF0007FFFF0007FFFF0007FFFF0 001D327EB119>I<003FF80FE000FFFE3FF003FFFFFFF807F83FF3F80FE00FE3F81FE00FF1F81F C007F0F03FC007F8003FC007F8003FC007F8003FC007F8003FC007F8003FC007F8003FC007F800 1FC007F0001FE00FF0000FE00FE00007F83FC00007FFFF80000EFFFE00000E3FF800000E000000 001E000000001E000000001F000000001F800000001FFFFFC0000FFFFFFC000FFFFFFF0007FFFF FF8007FFFFFFC007FFFFFFE01FFFFFFFE03F80007FE07E00000FF0FE000007F0FC000003F0FC00 0003F0FC000003F0FE000007F07E000007E07F00000FE03FC0003FC01FF801FF8007FFFFFE0001 FFFFF800001FFF8000252F7E9F29>I<01F800000000FFF800000000FFF800000000FFF8000000 00FFF8000000000FF80000000007F80000000007F80000000007F80000000007F80000000007F8 0000000007F80000000007F80000000007F80000000007F80000000007F80000000007F8000000 0007F80000000007F80FFC000007F83FFF000007F8FFFFC00007F9F83FC00007FBC01FE00007FF 801FE00007FF000FF00007FE000FF00007FC000FF00007FC000FF00007F8000FF00007F8000FF0 0007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8 000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF0 0007F8000FF00007F8000FF00007F8000FF000FFFFC1FFFF80FFFFC1FFFF80FFFFC1FFFF80FFFF C1FFFF8029327DB12E>I<03E0000FF8000FF8001FFC001FFC001FFC001FFC001FFC000FF8000F F80003E00000000000000000000000000000000000000000000000000001F800FFF800FFF800FF F800FFF8000FF80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007 F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F800FFFF80FF FF80FFFF80FFFF8011337DB217>I<01F800FFF800FFF800FFF800FFF8000FF80007F80007F800 07F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F800 07F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F800 07F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F800FFFFC0 FFFFC0FFFFC0FFFFC012327DB117>108 D<03F00FFC001FF800FFF03FFF007FFE00FFF0FFFFC1 FFFF80FFF1F83FC3F07F80FFF3C01FE7803FC00FF7801FEF003FC007F7000FFE001FE007FE000F FC001FE007FC000FF8001FE007FC000FF8001FE007F8000FF0001FE007F8000FF0001FE007F800 0FF0001FE007F8000FF0001FE007F8000FF0001FE007F8000FF0001FE007F8000FF0001FE007F8 000FF0001FE007F8000FF0001FE007F8000FF0001FE007F8000FF0001FE007F8000FF0001FE007 F8000FF0001FE007F8000FF0001FE007F8000FF0001FE007F8000FF0001FE007F8000FF0001FE0 07F8000FF0001FE0FFFFC1FFFF83FFFFFFFFC1FFFF83FFFFFFFFC1FFFF83FFFFFFFFC1FFFF83FF FF40207D9F45>I<03F00FFC0000FFF03FFF0000FFF0FFFFC000FFF1F83FC000FFF3C01FE0000F F7801FE00007F7000FF00007FE000FF00007FC000FF00007FC000FF00007F8000FF00007F8000F F00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007 F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000F F00007F8000FF00007F8000FF00007F8000FF000FFFFC1FFFF80FFFFC1FFFF80FFFFC1FFFF80FF FFC1FFFF8029207D9F2E>I<0007FE0000003FFFC00000FFFFF00003FC03FC0007F000FE000FE0 007F001FC0003F803FC0003FC03FC0003FC07F80001FE07F80001FE07F80001FE0FF80001FF0FF 80001FF0FF80001FF0FF80001FF0FF80001FF0FF80001FF0FF80001FF0FF80001FF07F80001FE0 7F80001FE07F80001FE03FC0003FC03FC0003FC01FE0007F800FE0007F0007F801FE0003FE07FC 0001FFFFF800003FFFC0000007FE000024207E9F29>I<01F81FF800FFF8FFFF00FFFBFFFF80FF FFE07FE0FFFF801FF007FE000FF807FC0007F807F80007FC07F80003FE07F80003FE07F80003FE 07F80001FF07F80001FF07F80001FF07F80001FF07F80001FF07F80001FF07F80001FF07F80001 FF07F80001FF07F80003FF07F80003FE07F80003FE07F80003FC07FC0007FC07FC000FF807FE00 0FF007FF803FF007FFE0FFC007FBFFFF8007F8FFFE0007F83FF00007F800000007F800000007F8 00000007F800000007F800000007F800000007F800000007F800000007F800000007F8000000FF FFC00000FFFFC00000FFFFC00000FFFFC00000282E7E9F2E>I<03F03F80FFF0FFE0FFF1FFF0FF F3E7F0FFF78FF80FF70FF807FE0FF807FE0FF807FC07F007FC07F007FC008007FC000007F80000 07F8000007F8000007F8000007F8000007F8000007F8000007F8000007F8000007F8000007F800 0007F8000007F8000007F8000007F8000007F80000FFFFE000FFFFE000FFFFE000FFFFE0001D20 7E9F22>114 D<00780000780000780000780000780000F80000F80000F80000F80001F80001F8 0003F80007F8000FF8001FFFFEFFFFFEFFFFFEFFFFFE07F80007F80007F80007F80007F80007F8 0007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80F07F80F07F80F07F8 0F07F80F07F80F07F80F07F81F03FC1E03FE3E01FFFC007FF8001FE0182E7EAD20>116 D<01F80003F000FFF801FFF000FFF801FFF000FFF801FFF000FFF801FFF0000FF8001FF00007F8 000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF0 0007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8 000FF00007F8000FF00007F8000FF00007F8000FF00007F8001FF00007F8001FF00007F8003FF0 0007F8007FF00003FC00FFF80003FE03EFFF8001FFFFCFFF80007FFF0FFF80001FFC0FFF802920 7D9F2E>I121 D123 D E /Fz 2 49 df<00FF0003FFC00F81F01E007838001C70000E600006E00007C00003C00003C0 0003C00003C00003C00003E0000760000670000E38001C1E00780F81F003FFC000FF0018167D90 1E>13 D<1C1C1C3C383870707060E0E0C0060D7E8D09>48 D E /FA 7 100 df<0180018003800300030007000600060006000E000C000C001C001800180038003000300030 00700060006000E000C000C00009197E920F>47 D<07F30FFF3E1F780F7007F003E003E000E000 E000E003F003700778063E1E0FFC07F010117E9016>67 D69 D73 D<03E0000FF8001C1C00380E00700700600300E00380E00380E00380E00380E0 0380700700700700380E003C1E000FF80003E00011117E9017>79 D<3F607FE0E1E0C0E0C060E0 00F0007F803FC007E000E00060C060C060F0E0FFC0DF800B117E9011>83 D<1FC03FC071C0E000C000C000C000E0C071C03F801F000A0B7F8A0E>99 D E /FB 58 122 df<000FF800007FFC0001FC1E0003F01F0007E03F000FE03F000FC03F000FC0 3F000FC00C000FC000000FC000000FC000000FC00000FFFFFF00FFFFFF000FC03F000FC03F000F C03F000FC03F000FC03F000FC03F000FC03F000FC03F000FC03F000FC03F000FC03F000FC03F00 0FC03F000FC03F000FC03F000FC03F000FC03F000FC03F007FF0FFE07FF0FFE01B237FA21F>12 D45 D<7CFEFEFEFEFE7C07077C8610>I<000038000038 0000780000780000F00000F00000E00001E00001E00003C00003C0000380000780000780000700 000F00000F00001E00001E00001C00003C00003C0000780000780000700000F00000F00001E000 01E00001C00003C00003C0000780000780000700000F00000F00000E00001E00001E00003C0000 3C0000380000780000780000F00000F00000E00000E0000015317DA41C>I<00FE0007FFC00F83 E01F01F03E00F83E00F87C007C7C007C7C007CFC007CFC007EFC007EFC007EFC007EFC007EFC00 7EFC007EFC007EFC007EFC007EFC007EFC007EFC007E7C007C7C007C7C007C3E00F83E00F81F01 F00F83E007FFC000FE0017207E9F1C>I<00180000780001F800FFF800FFF80001F80001F80001 F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001 F80001F80001F80001F80001F80001F80001F80001F80001F80001F8007FFFE07FFFE013207C9F 1C>I<03FC001FFF803C1FC0700FE0FC07F0FE03F0FE03F8FE03F8FE01F87C01F83803F80003F8 0003F00007F00007E0000FC0000F80001F00003E00007C0000F80001F01801C018038018070018 0E00381FFFF03FFFF07FFFF0FFFFF0FFFFF0FFFFF015207D9F1C>I<01FF0007FFC01F07E01E03 F03F03F83F01F83F81F83F01F83F03F80E03F80003F00007F0000FE0001F8001FF0001FF000007 E00003F80001FC0000FC0000FE0000FE7C00FEFE00FEFE00FEFE00FEFE00FCFE01FC7803F83E07 F01FFFE003FF0017207E9F1C>I<0000E00001E00003E00003E00007E0000FE0001FE0001FE000 37E00077E000E7E001C7E00187E00307E00707E00E07E00C07E01807E03807E07007E0E007E0FF FFFEFFFFFE0007E00007E00007E00007E00007E00007E00007E000FFFE00FFFE17207E9F1C>I< 1800601E03E01FFFE01FFFC01FFF801FFF001FFC001BE00018000018000018000018000019FE00 1FFF801F0FC01C07E01803F00003F00003F80003F80003F87803F8FC03F8FC03F8FC03F8FC03F8 FC03F06007F0780FE03C1FC01FFF0007FC0015207D9F1C>I<003FC001FFE003F07007C0F80F81 F81F01F83E01F83E01F87E00F07C00007C0000FC0800FCFFC0FDFFF0FF81F8FF00F8FE007CFE00 7CFE007EFC007EFC007EFC007EFC007E7C007E7C007E7E007E3E007C3E00FC1F01F80FC3F007FF C000FF0017207E9F1C>I<6000007800007FFFFE7FFFFE7FFFFE7FFFFC7FFFF87FFFF0E000E0E0 00C0C001C0C00380C00700000E00000E00001C00003C0000380000780000780000F80000F00001 F00001F00001F00001F00003F00003F00003F00003F00003F00003F00003F00001E00017227DA1 1C>I<00FF0007FFC00F83E01E01F01C00F83C00783C00783E00783F00783FC0F83FF0F03FF9F0 1FFFE01FFF800FFFE003FFF00FFFF81F7FFC3E1FFC7C0FFEF803FEF000FEF0007EF0003EF0001E F0001EF8001C78003C7E00783F81F00FFFE003FF0017207E9F1C>I<01FF0007FFC01F83E03F01 F07E00F87C00F8FC007CFC007CFC007CFC007EFC007EFC007EFC007EFC00FE7C00FE7C00FE3E01 FE3F03FE1FFF7E07FE7E00207E00007C00007C1E00FC3F00F83F00F83F01F03F03F03E07E01E1F C00FFF0003F80017207E9F1C>I<7CFEFEFEFEFE7C00000000000000007CFEFEFEFEFE7C07167C 9510>I<000070000000007000000000F800000000F800000000F800000001FC00000001FC0000 0003FE00000003FE00000003FE00000006FF000000067F0000000E7F8000000C3F8000000C3F80 0000183FC00000181FC00000381FE00000300FE00000300FE00000600FF000006007F00000E007 F80000FFFFF80000FFFFF800018001FC00018001FC00038001FE00030000FE00030000FE000600 007F000600007F00FFE00FFFF8FFE00FFFF825227EA12A>65 DI<0007FE0180003FFFC38000FF01E78003FC007F8007F0001F800FE0000F801F C0000F801F800007803F800003807F000003807F000003807F00000180FE00000180FE00000000 FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE000000 007F000001807F000001807F000001803F800003801F800003001FC00007000FE0000E0007F000 1C0003FC00380000FF01F000003FFFC0000007FF000021227DA128>IIII<0003FF00C0003FFFE1C000FF80F3C0 01FC003FC007F0001FC00FE0000FC01FC00007C01F800003C03F800001C07F000001C07F000001 C07F000000C0FE000000C0FE00000000FE00000000FE00000000FE00000000FE00000000FE0000 0000FE00000000FE000FFFFCFE000FFFFC7F00001FC07F00001FC07F00001FC03F80001FC01F80 001FC01FC0001FC00FE0001FC007F0003FC001FC003FC000FF80FFC0003FFFE3C00003FF00C026 227DA12C>III76 DII<0007FC0000003FFF800000FC07E00003F001F80007E000FC000FC0007E001F80003F 001F80003F003F00001F803F00001F807F00001FC07E00000FC07E00000FC0FE00000FE0FE0000 0FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE07E00 000FC07F00001FC07F00001FC03F00001F803F80003F801F80003F000FC0007E0007E000FC0003 F001F80000FC07E000003FFF80000007FC000023227DA12A>II82 D<03FE0C0FFF9C1F03FC3E00FC7C007C78003CF8001CF8001CF8000CFC000CFE0000FF0000FFF0 007FFF007FFFE03FFFF01FFFF80FFFFC03FFFE007FFE0003FF0000FF00007F00003FC0001FC000 1FC0001FE0001FE0001EF0003EFC007CFF80F8E7FFF0C0FFC018227DA11F>I<7FFFFFFF807FFF FFFF807E03F80F807803F807807003F803806003F80180E003F801C0E003F801C0C003F800C0C0 03F800C0C003F800C0C003F800C00003F800000003F800000003F800000003F800000003F80000 0003F800000003F800000003F800000003F800000003F800000003F800000003F800000003F800 000003F800000003F800000003F800000003F800000003F800000003F800000003F8000003FFFF F80003FFFFF80022227EA127>III<07FE001FFF803F0FC03F07E03F07F03F03F01E03F000 03F00003F001FFF00FFFF03FE3F07F03F07E03F0FE03F0FC03F0FC03F0FC07F0FE0FF07F1FF83F FDFF0FF0FF18167E951B>97 DI<01FF8007FFE01FC3F03F03F03E03F07E03F07C01E0FC0000FC0000FC0000FC0000FC00 00FC0000FC0000FC00007E00007E00003F00303F80701FE1E007FFC001FF0014167E9519>I<00 03FE000003FE0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E00 00007E0000007E0000007E0001FE7E0007FFFE001FC3FE003F00FE003E007E007E007E007C007E 00FC007E00FC007E00FC007E00FC007E00FC007E00FC007E00FC007E00FC007E007C007E007E00 7E003E00FE003F01FE001F83FE000FFF7FC001FC7FC01A237EA21F>I<01FE0007FF801F87E03F 03E03E01F07E00F07C00F8FC00F8FC00F8FFFFF8FFFFF8FC0000FC0000FC0000FC00007E00007E 00003F00181F80380FE0F007FFE000FF8015167E951A>I<003F8001FFC003F7E007E7E007E7E0 0FC7E00FC3C00FC0000FC0000FC0000FC0000FC0000FC000FFFC00FFFC000FC0000FC0000FC000 0FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC000 0FC0000FC0007FFC007FFC0013237FA211>I<01FE1F0007FFFF800F87F7801F03E7803E01F300 3E01F0003E01F0003E01F0003E01F0003E01F0003E01F0001F03E0000F87C0001FFF80001DFE00 00180000001C0000001E0000001FFFE0001FFFFC001FFFFE000FFFFF003FFFFF007E007F80FC00 1F80F8000F80F8000F80F8000F80FC001F807E003F003F80FE000FFFF80001FFC00019217F951C >II<1F003F803F803F 803F803F801F000000000000000000000000000000FF80FF801F801F801F801F801F801F801F80 1F801F801F801F801F801F801F801F801F801F801F80FFF0FFF00C247FA30F>I107 DIII<00FE0007FFC00F83E01E00F03E00 F87C007C7C007C7C007CFC007EFC007EFC007EFC007EFC007EFC007EFC007E7C007C7C007C3E00 F81F01F00F83E007FFC000FE0017167E951C>II<01 FE030007FF87001FE3CF003F80FF003F007F007E003F007E003F00FE003F00FC003F00FC003F00 FC003F00FC003F00FC003F00FC003F00FC003F007E003F007E003F003F007F003F80FF001FC3FF 0007FFBF0001FE3F0000003F0000003F0000003F0000003F0000003F0000003F0000003F000000 3F000001FFE00001FFE01B207E951E>II<0FFB003FFF007C1F00780700F00300F00300F80000FF0000FFF800 7FFC007FFE001FFF000FFF80007F80C00F80C00F80E00780F00780F80F00FC1F00FFFE00C7F800 11167E9516>I<00C00000C00000C00000C00001C00001C00003C00007C0000FC0001FC000FFFF 00FFFF000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC1 800FC1800FC1800FC1800FC1800FE38007E70003FF0000FC0011207F9F16>IIIIII E /FC 52 124 df<0003FF8000001FFF E000007F81F00001FE00F80003FC01FC0003F803FC0007F003FC0007F003FC0007F003FC0007F0 01F80007F000F00007F000000007F000000007F000000007F0000000FFFFFFFC00FFFFFFFC00FF FFFFFC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC00 07F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC 0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC007FFF1FFFC07FFF1F FFC07FFF1FFFC0222A7FA926>12 D<0003FFFC00001FFFFC00007F81FC0001FE03FC0003FC03FC 0003F803FC0007F003FC0007F003FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001 FC0007F001FC0007F001FC00FFFFFFFC00FFFFFFFC00FFFFFFFC0007F001FC0007F001FC0007F0 01FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007 F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC0007F001FC00 07F001FC0007F001FC0007F001FC007FFF1FFFC07FFF1FFFC07FFF1FFFC0222A7FA926>I<0007 00000F00007F0007FF00FFFF00FFFF00F8FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF 0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF 0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF0000FF007FFFFE7FFFFE7FFFFE1727 7BA622>49 D<00FFC00007FFF8001FFFFE003F03FF007E00FF807F007FC0FF807FC0FF803FE0FF 803FE0FF803FE0FF801FE07F001FE03E003FE000003FE000003FC000003FC000007F8000007F80 0000FF000001FE000001FC000003F8000007E000000FC000001F8000003E00E0007C00E0007800 E000F001C001E001C0038001C007FFFFC00FFFFFC01FFFFFC03FFFFFC07FFFFF80FFFFFF80FFFF FF80FFFFFF801B277DA622>I<007FC00003FFF00007FFFC000FC1FE001F80FF003FC0FF003FE0 7F803FE07F803FE07F803FE07F803FE07F801FC0FF800F80FF000000FF000001FE000003FC0000 07F00000FFC00000FFF8000001FE000000FF0000007F8000007FC000003FC000003FE01E003FE0 7F803FE07F803FE0FFC03FE0FFC03FE0FFC03FE0FFC03FC0FFC07FC07F807F807F00FF803F81FF 001FFFFC0007FFF80000FFC0001B277DA622>I<0000070000000F0000001F0000003F0000007F 000000FF000000FF000001FF000003FF0000077F00000F7F00000E7F00001C7F0000387F000070 7F0000F07F0000E07F0001C07F0003807F0007007F000F007F000E007F001C007F0038007F0070 007F00E0007F00FFFFFFF8FFFFFFF8FFFFFFF80000FF000000FF000000FF000000FF000000FF00 0000FF000000FF00007FFFF8007FFFF8007FFFF81D277EA622>I<0C0007000FC03F000FFFFE00 0FFFFE000FFFFC000FFFF8000FFFF0000FFFC0000FFF00000E0000000E0000000E0000000E0000 000E0000000E0000000E7FC0000FFFF8000FC1FE000E007F000C007F8000003F8000003FC00000 3FC000003FE000003FE03E003FE07F003FE0FF803FE0FF803FE0FF803FE0FF803FC0FF003FC07E 007FC078007F803C00FF001F83FE000FFFFC0007FFF00000FF80001B277DA622>I<0007F80000 3FFC0000FFFE0001FE1F0007F81F000FE03F800FC07F801FC07F803F807F803F807F807F803F00 7F001E007F0000007F000000FF000000FF1FE000FF3FF800FF70FE00FFE03F00FFC03F80FF801F C0FF801FC0FF801FC0FF001FE0FF001FE0FF001FE0FF001FE07F001FE07F001FE07F001FE07F00 1FE03F801FC03F801FC01F803F800FC03F8007F0FF0003FFFC0001FFF800007FE0001B277DA622 >I<380000003E0000003FFFFFF03FFFFFF03FFFFFF03FFFFFE07FFFFFC07FFFFF807FFFFF807F FFFF0070001E0070003C0070007800E0007000E000F000E001E0000003C0000007C00000078000 000F8000000F0000001F0000003F0000003F0000003F0000007E0000007E000000FE000000FE00 0000FE000000FE000001FE000001FE000001FE000001FE000001FE000001FE000001FE000001FE 000000FC0000007800001C297CA822>I<007FC00001FFF80007FFFC000FC0FE000F003F001E00 1F001E001F803E000F803E000F803F000F803FC00F803FF01F803FF81F003FFE3F001FFFFE001F FFFC000FFFF00007FFFC0003FFFE0003FFFF000FFFFF801FBFFFC03F0FFFC07E03FFE07C00FFE0 FC007FE0F8001FE0F80007E0F80007E0F80003E0F80003E0FC0003C07C0007C07E0007803F000F 801FC07F000FFFFE0007FFF80000FFC0001B277DA622>I<007FC00003FFF00007FFFC000FE0FE 001FC07E003F803F007F003F807F003F80FF001FC0FF001FC0FF001FC0FF001FC0FF001FE0FF00 1FE0FF001FE0FF001FE07F003FE07F003FE07F003FE03F807FE01F80FFE00FE1DFE003FF9FE000 FF1FE000001FE000001FC000001FC00F001FC01F803FC03FC03F803FC03F803FC07F003FC07F00 3F80FE001F01FC001F07F8000FFFE00007FFC00001FE00001B277DA622>I<3E007F00FF80FF80 FF80FF80FF807F003E000000000000000000000000000000000000003E007F00FF80FF80FF80FF 80FF807F003E00091B7B9A13>I<000003800000000007C00000000007C0000000000FE0000000 000FE0000000000FE0000000001FF0000000001FF0000000003FF8000000003FF8000000003FF8 000000007FFC0000000077FC00000000F7FE00000000E3FE00000000E3FE00000001C1FF000000 01C1FF00000003C1FF8000000380FF8000000780FFC0000007007FC0000007007FC000000E007F E000000E003FE000001E003FF000001C001FF000001FFFFFF000003FFFFFF800003FFFFFF80000 78000FFC0000700007FC0000700007FC0000E00007FE0000E00003FE0001E00003FF0001C00001 FF0001C00001FF00FFFE003FFFFEFFFE003FFFFEFFFE003FFFFE2F297EA834>65 DI<00007FF801800007FFFE0780001FFFFF8F8000 7FF80FFF8000FF8001FF8003FE00007F8007FC00003F8007F800001F800FF000000F801FE00000 0F803FE0000007803FC0000007807FC0000003807FC0000003807FC000000380FF8000000000FF 8000000000FF8000000000FF8000000000FF8000000000FF8000000000FF8000000000FF800000 0000FF8000000000FF8000000000FF80000000007FC0000000007FC0000003807FC0000003803F C0000003803FE0000003801FE0000007800FF00000070007F800000F0007FC00001E0003FE0000 3C0000FF8000F800007FF807F000001FFFFFC0000007FFFF000000007FF8000029297CA832>I< FFFFFFF80000FFFFFFFF8000FFFFFFFFE00003FE001FF80003FE0007FC0003FE0001FE0003FE00 00FF0003FE00007F8003FE00003FC003FE00001FC003FE00001FE003FE00001FE003FE00000FF0 03FE00000FF003FE00000FF003FE00000FF003FE00000FF803FE00000FF803FE00000FF803FE00 000FF803FE00000FF803FE00000FF803FE00000FF803FE00000FF803FE00000FF803FE00000FF8 03FE00000FF003FE00000FF003FE00000FF003FE00001FE003FE00001FE003FE00001FC003FE00 003FC003FE00007F8003FE00007F0003FE0001FE0003FE0003FC0003FE001FF800FFFFFFFFE000 FFFFFFFF8000FFFFFFFC00002D297DA835>III<00007FF003000007FFFE0F00001FFFFF9F00007FF00FFF0000 FF8003FF0003FE0000FF0007FC00007F000FF800003F000FF000001F001FE000001F003FE00000 0F003FC000000F007FC0000007007FC0000007007FC000000700FF8000000000FF8000000000FF 8000000000FF8000000000FF8000000000FF8000000000FF8000000000FF8000000000FF800000 0000FF8003FFFFF8FF8003FFFFF87FC003FFFFF87FC00001FF007FC00001FF003FC00001FF003F E00001FF001FE00001FF000FF00001FF000FF80001FF0007FC0001FF0003FE0003FF0000FF8003 FF00007FF01FFF00001FFFFF3F000007FFFE1F0000007FF007002D297CA836>III<00FFFFFC00FFFFFC00FFFFFC00 00FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF80 0000FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF800000FF 800000FF800000FF800000FF800000FF800000FF800000FF801E00FF807F80FF807F80FF80FFC0 FF80FFC0FF80FFC0FF80FFC1FF00FFC1FF007F83FE003F07FC001FFFF00003FF80001E297FA824 >I76 D78 D80 D82 D<00FF806003FFF0E00FFFFFE01FC0FFE03F001FE03E0007E07E0003E07C0003E0FC0001E0FC00 01E0FC0000E0FE0000E0FF0000E0FF800000FFF80000FFFFC0007FFFF8007FFFFE003FFFFF801F FFFFC00FFFFFC007FFFFE001FFFFF0003FFFF00003FFF800001FF800000FF8000007F8E00003F8 E00001F8E00001F8E00001F8F00001F8F00001F0F80003F0FC0003E0FF0007E0FFE01FC0FFFFFF 80E1FFFE00C03FF8001D297CA826>I<7FFFFFFFFFC07FFFFFFFFFC07FFFFFFFFFC07F807FC03F C07C007FC007C078007FC003C078007FC003C070007FC001C0F0007FC001E0F0007FC001E0E000 7FC000E0E0007FC000E0E0007FC000E0E0007FC000E0E0007FC000E000007FC0000000007FC000 0000007FC0000000007FC0000000007FC0000000007FC0000000007FC0000000007FC000000000 7FC0000000007FC0000000007FC0000000007FC0000000007FC0000000007FC0000000007FC000 0000007FC0000000007FC0000000007FC0000000007FC0000000007FC0000000007FC000000000 7FC0000000FFFFFFE00000FFFFFFE00000FFFFFFE0002B287EA730>I<03FFC0000FFFF0001F81 FC003FC0FE003FC07F003FC07F003FC03F803FC03F801F803F8000003F8000003F80001FFF8001 FFFF8007FE3F801FE03F803FC03F807F803F807F003F80FE003F80FE003F80FE003F80FE007F80 FF007F807F00FFC03FC3DFFC1FFF8FFC03FE07FC1E1B7E9A21>97 DI<003FF80001FFFE0007F83F000FE07F801FC07F803F807F803F807F80 7F807F807F003F00FF000000FF000000FF000000FF000000FF000000FF000000FF000000FF0000 00FF0000007F0000007F8000003F8001C03FC001C01FC003C00FE0078007F83F0001FFFC00003F F0001A1B7E9A1F>I<00003FF80000003FF80000003FF800000003F800000003F800000003F800 000003F800000003F800000003F800000003F800000003F800000003F800000003F800000003F8 00000003F800003FE3F80001FFFBF80003F83FF8000FE00FF8001FC007F8003F8003F8003F8003 F8007F8003F8007F0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF00 03F800FF0003F800FF0003F800FF0003F8007F0003F8007F0003F8003F8003F8003F8007F8001F C00FF8000FE01FF80007F07FFF8001FFFBFF80003FC3FF80212A7EA926>I<003FE00001FFFC00 07F07E000FE03F001FC01F803F800FC03F800FC07F000FC07F0007E0FF0007E0FF0007E0FF0007 E0FFFFFFE0FFFFFFE0FF000000FF000000FF000000FF0000007F0000007F8000003F8000E03F80 01E01FC001C00FE007C003F81F8001FFFE00003FF8001B1B7E9A20>I<000FF800003FFE0000FF 3F0001FC7F8003F87F8003F87F8007F07F8007F07F8007F03F0007F0000007F0000007F0000007 F0000007F0000007F00000FFFFC000FFFFC000FFFFC00007F0000007F0000007F0000007F00000 07F0000007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F000 0007F0000007F0000007F0000007F0000007F0000007F0000007F000007FFF80007FFF80007FFF 8000192A7EA915>I<00FF81F007FFF7FC0FE3FF7C1F80FCFC3F80FE7C3F007E787F007F007F00 7F007F007F007F007F007F007F007F007F003F007E003F80FE001F80FC000FE3F8001FFFF00018 FF8000380000003C0000003C0000003E0000003FFFFC003FFFFF001FFFFFC00FFFFFE007FFFFF0 3FFFFFF07E000FF87C0001F8F80001F8F80000F8F80000F8F80000F8FC0001F87E0003F03F0007 E01FE03FC007FFFF0000FFF8001E287E9A22>II<0F801FC03FE03FE03FE03FE03FE01FC00F800000000000000000000000000000FFE0FFE0 FFE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00F E00FE00FE0FFFEFFFEFFFE0F2B7DAA14>I108 DII<003FE00001FFFC0003F07E00 0FC01F801F800FC03F800FE03F0007E07F0007F07F0007F07F0007F0FF0007F8FF0007F8FF0007 F8FF0007F8FF0007F8FF0007F8FF0007F8FF0007F87F0007F07F0007F03F800FE03F800FE01F80 0FC00FC01F8007F07F0001FFFC00003FE0001D1B7E9A22>II<003FE0380001FF F8780003F87CF8000FF01FF8001FE00FF8003FC007F8003F8007F8007F8003F8007F8003F800FF 0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F800 FF0003F8007F8003F8007F8003F8003F8003F8003FC007F8001FC00FF8000FE01FF80007F87FF8 0001FFF3F800003FC3F800000003F800000003F800000003F800000003F800000003F800000003 F800000003F800000003F800000003F80000003FFF8000003FFF8000003FFF8021277E9A24>I< FFC7F0FFCFFCFFDC7E0FD8FF0FF8FF0FF0FF0FF0FF0FF0FF0FE07E0FE0000FE0000FE0000FE000 0FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE000FFFF00FFFF00 FFFF00181B7E9A1C>I<03FE701FFFF03E03F07801F07000F0F00070F00070F80070FE0000FFF0 00FFFF007FFFC03FFFE01FFFF007FFF800FFFC0007FC0000FCE0007CE0003CF0003CF0003CF800 78FC0078FF01F0FFFFC0E1FF00161B7E9A1B>I<00700000700000700000700000F00000F00000 F00001F00003F00003F00007F0001FFFF0FFFFF0FFFFF007F00007F00007F00007F00007F00007 F00007F00007F00007F00007F00007F00007F00007F00007F03807F03807F03807F03807F03807 F03807F03803F87001FCF000FFE0003FC015267FA51B>IIIIII123 D E /FD 55 118 df<001FC3F0007FEFF800F0FE 7801C0FC780380F8780780F8000700700007007000070070000700700007007000070070000700 700007007000FFFFFFC0FFFFFFC007007000070070000700700007007000070070000700700007 007000070070000700700007007000070070000700700007007000070070000700700007007000 070070007FE3FF807FE3FF801D2380A21C>11 D<007000E001C001C0038007000E000E001C001C 0038003800380070007000700070006000E000E000E000E000E000E000E000E000E000E000E000 E000E000E000600070007000700070003800380038001C001C000E000E000700038001C001C000 E000700C327DA413>40 D I<70F8FCFC7C0C0C0C1C18183870E0E0060F7C840E>44 D<70F8F8F87005057C840E>46 D<000180000180000380000300000300000700000600000600000E00000C00000C00001C000018 0000180000180000380000300000300000700000600000600000E00000C00000C00001C0000180 000180000380000300000300000700000600000600000E00000C00000C00000C00001C00001800 00180000380000300000300000700000600000600000E00000C00000C0000011317DA418>I<01 F00007FC000E0E001C07003803803803807803C07001C07001C07001C0F001E0F001E0F001E0F0 01E0F001E0F001E0F001E0F001E0F001E0F001E0F001E0F001E0F001E0F001E07001C07001C070 01C07803C03803803803801C07000E0E0007FC0001F00013227EA018>I<018003800F80FF80F3 800380038003800380038003800380038003800380038003800380038003800380038003800380 0380038003800380038003800380FFFEFFFE0F217CA018>I<03F8000FFE003C3F00380F807007 C06007C0E003E0F803E0F803E0F801E0F801E07003E00003E00003C00007C00007C0000F80000F 00001E00003C0000780000F00000E00001C0000380000700600E00601C00603800E07000C0FFFF C0FFFFC0FFFFC013217EA018>I<03F8000FFE001E1F00380F807007C07807C07C07C07807C078 07C00007C00007C0000780000F80001F00003E0003FC0003F800001E00000F000007800007C000 03E00003E07003E0F803E0F803E0F803E0F803E0E007C07007C0780F803E1F000FFE0003F80013 227EA018>I<000E00000E00001E00001E00003E00003E00006E0000EE0000CE0001CE00018E00 030E00070E00060E000E0E000C0E00180E00180E00300E00700E00600E00E00E00FFFFF8FFFFF8 000E00000E00000E00000E00000E00000E00000E0001FFF001FFF015217FA018>I<6000007000 007FFFE07FFFE07FFFE06001C0E00180C00380C00700C00600000E00000C00001C000038000030 0000700000700000E00000E00000E00001E00001E00001C00001C00001C00003C00003C00003C0 0003C00003C00003C00003C00003C00003C00003C00013237DA118>55 D<03F8000FFE001F1F00 3C07803803807003C07001C07001C07001C07801C07C03C03E07803F87001FDE000FFC0007F800 07FE000FFF001E3F803C1FC07807C07003E0F001E0E001E0E000E0E000E0E000E0F000E07001C0 7803C03C07801E0F000FFE0003F80013227EA018>I<03F8000FFC001F1E003C07003807807803 807003C0F003C0F001C0F001C0F001E0F001E0F001E0F001E0F001E0F003E07803E07803E03C07 E03E0FE01FFDE007F9E00081E00001C00003C00003C0000380780780780700780F00781E00787C 003FF8000FE00013227EA018>I<70F8F8F870000000000000000000000070F8F8F87005157C94 0E>I<001FF000007FFC0001F83F0003C00780070001C00E0000E01C000070180FE030383FF038 307C7C1870F01C1C61E00F8C61C0078CE1C0038EC3C00386C3800386C3800386C3800386C38003 86C3800386C3C00386E1C0038661C0078661E00F8E70F01F8C307C7FDC383FF1F8180FE0F01C00 00000E0000000700000003C0003E01F803FC007FFFE0001FFC001F237DA226>64 D<000180000003C0000003C0000003C0000007E0000007E0000007E000000FF000000CF000000C F000001CF800001878000018780000383C0000303C0000303C0000601E0000601E0000601E0000 C00F0000C00F0000C00F0001FFFF8001FFFF8001800780030003C0030003C0030003C0060001E0 060001E0060001E00E0000F01F0001F0FFC00FFFFFC00FFF20237EA225>II<000FF030007FFC3000FC1E7003F0077007C003F00F 8001F01F0001F01F0000F03E0000F03C0000707C0000707C0000707C000030F8000030F8000030 F8000000F8000000F8000000F8000000F8000000F8000000F8000000F80000307C0000307C0000 307C0000303E0000703E0000601F0000E01F0000C00F8001C007C0038003F0070000FC1E00007F FC00000FF0001C247DA223>II< FFFFFFC0FFFFFFC007800FC0078003C0078001C0078000C0078000E0078000E007800060078060 600780606007806060078060000780E0000781E00007FFE00007FFE0000781E0000780E0000780 600007806000078060180780601807800018078000300780003007800030078000300780007007 8000F0078001F0078007E0FFFFFFE0FFFFFFE01D227EA121>I<000FF018003FFC1800FC0F3803 F003B807C001F80F8000F80F0000F81F0000783E0000783E0000387C0000387C0000387C000018 F8000018F8000018F8000000F8000000F8000000F8000000F8000000F8000000F8001FFFF8001F FF7C0000787C0000787C0000783E0000783E0000781F0000780F8000780FC0007807E000F803F0 01F800FE0798003FFF18000FF80020247DA226>71 D73 D<03FFF003FFF0000F00000F00000F00000F0000 0F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F0000 0F00000F00000F00000F00000F00000F00000F00F80F00F80F00F80F00F81F00F01E00703E0078 7C003FF8000FE00014237EA119>IIIII<000FE000007FFC00 00F83E0003E00F80078003C00F0001E00F0001E01E0000F03E0000F83C0000787C00007C7C0000 7C7800003C7800003CF800003EF800003EF800003EF800003EF800003EF800003EF800003EF800 003EF800003E7C00007C7C00007C7C00007C3C0000783E0000F81E0000F00F0001E00F8003E007 C007C003E00F8000F83E00007FFC00000FE0001F247DA226>II82 D<07F0600FFE601E1FE03807E07003E07001E0E000E0E000E0E00060E00060F00060F00000F800 007C00007F00003FF0001FFE000FFF8003FFC0007FC00007E00001E00001F00000F00000F0C000 70C00070C00070E00070E000F0F000E0F801E0FC01C0FF0780C7FF00C1FC0014247DA21B>I<7F FFFFF87FFFFFF87C0780F8700780386007801860078018E007801CC007800CC007800CC007800C C007800CC007800C00078000000780000007800000078000000780000007800000078000000780 000007800000078000000780000007800000078000000780000007800000078000000780000007 8000000780000007800003FFFF0003FFFF001E227EA123>IIII<1FF0003FFC003C3E003C0F003C0F 00000700000700000F0003FF001FFF003F07007C0700F80700F80700F00718F00718F00F18F81F 187C3FB83FF3F01FC3C015157E9418>97 D<0E0000FE0000FE00001E00000E00000E00000E0000 0E00000E00000E00000E00000E00000E00000E00000E3FC00EFFE00FE1F00F80780F003C0E003C 0E001E0E001E0E001E0E001E0E001E0E001E0E001E0E001E0E003C0E003C0F007C0F80F80FE1F0 0CFFE00C3F8017237FA21B>I<03FE000FFF801F07803E07803C0780780000780000F00000F000 00F00000F00000F00000F00000F000007800007800C03C01C03E01801F87800FFF0003FC001215 7E9416>I<0000E0000FE0000FE00001E00000E00000E00000E00000E00000E00000E00000E000 00E00000E00000E003F8E00FFEE01F0FE03E03E07C01E07800E07800E0F000E0F000E0F000E0F0 00E0F000E0F000E0F000E07000E07801E07801E03C03E01F0FF00FFEFE03F0FE17237EA21B>I< 01FC0007FF001F0F803E03C03C01C07801E07801E0FFFFE0FFFFE0F00000F00000F00000F00000 F000007800007800603C00E03E01C00F83C007FF0001FC0013157F9416>I<003E00FF01EF03CF 038F070007000700070007000700070007000700FFF8FFF8070007000700070007000700070007 000700070007000700070007000700070007007FF87FF8102380A20F>I<0000F003FBF807FFB8 0F1F381E0F003C07803C07803C07803C07803C07803C07803C07801E0F001F1E001FFC001BF800 1800001800001C00001FFF000FFFC03FFFF07C01F0700078F00078E00038E00038E00038F00078 7800F03F07E01FFFC003FE0015217F9518>I<0E0000FE0000FE00001E00000E00000E00000E00 000E00000E00000E00000E00000E00000E00000E00000E3F800EFFE00FE1E00F80F00F00700F00 700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00 70FFE7FFFFE7FF18237FA21B>I<1C003E003E003E001C00000000000000000000000000000000 000E00FE00FE001E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E00 FFC0FFC00A227FA10E>I<0E00FE00FE001E000E000E000E000E000E000E000E000E000E000E00 0E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E00FF E0FFE00B237FA20E>108 D<0E3FC0FF00FEFFF3FFC0FFE0F783C01F807E01E00F003C00E00F00 3C00E00E003800E00E003800E00E003800E00E003800E00E003800E00E003800E00E003800E00E 003800E00E003800E00E003800E00E003800E00E003800E00E003800E0FFE3FF8FFEFFE3FF8FFE 27157F942A>I<0E3F80FEFFE0FFE1E01F80F00F00700F00700E00700E00700E00700E00700E00 700E00700E00700E00700E00700E00700E00700E00700E0070FFE7FFFFE7FF18157F941B>I<01 FC0007FF000F07801C01C03800E07800F0700070F00078F00078F00078F00078F00078F00078F0 00787000707800F03800E01C01C00F078007FF0001FC0015157F9418>I<0E3FC0FEFFE0FFE1F0 0F80F80F007C0E003C0E003E0E001E0E001E0E001E0E001E0E001E0E001E0E003E0E003C0E003C 0F007C0F80F80FE1F00EFFE00E3F800E00000E00000E00000E00000E00000E00000E00000E0000 FFE000FFE000171F7F941B>I<03F8600FFE601F0F603E03E07C01E07801E07800E0F800E0F000 E0F000E0F000E0F000E0F000E0F000E07800E07801E07C03E03E07E01F0FE00FFCE003F0E00000 E00000E00000E00000E00000E00000E00000E00000E0000FFE000FFE171F7E941A>I<0E7EFEFF FFEF1F8F0F0F0F000F000E000E000E000E000E000E000E000E000E000E000E000E00FFF0FFF010 157F9413>I<1FD83FF87878F038E018E018F018F8007F807FE01FF003F8007CC03CC01CE01CE0 1CF03CF878FFF0CFE00E157E9413>I<060006000600060006000E000E000E001E003E00FFF8FF F80E000E000E000E000E000E000E000E000E000E000E0C0E0C0E0C0E0C0E0C0F1C073807F803E0 0E1F7F9E13>I<0E0070FE07F0FE07F01E00F00E00700E00700E00700E00700E00700E00700E00 700E00700E00700E00700E00700E00F00E00F00E01F00787F807FF7F01FC7F18157F941B>I E end %%EndProlog %%BeginSetup %%Feature: *Resolution 300 TeXDict begin %%EndSetup %%Page: 0 1 bop 1310 45 a FD(JTC1/SC22/W)o(G11)20 b FC(N364R)p 0 265 1950 4 v 0 347 a FB(DRAFT)f(INTERNA)-5 b(TIONAL)18 b(ST)-5 b(AND)n(ARD)1053 324 y FA(c)1043 325 y Fz(\015)r FA(ISO/IEC)1283 347 y FB(ISO/IEC)19 b(DIS)g(10967-1:1993)p 0 397 V 0 633 a Fy(Information)28 b(tec)n(hnology)f({) 0 701 y(Language)g(indep)r(enden)n(t)f(arithmetic)h({)0 769 y(P)n(art)h(1:)37 b(In)n(teger)27 b(and)g(\015oating)h(p)r(oin)n(t)f (arithmetic)341 1356 y FD(PR)o(OJECT:)111 b(JTC1.22.28)341 1472 y(ST)l(A)l(TUS:)155 b(Draft)17 b(In)o(ternational)e(Standard)j(\(V)l (ersion)d(4.1\))341 1588 y(D)o(A)l(TE:)208 b(August)17 b(4,)f(1993)341 1704 y(SOUR)o(CE:)140 b(ISO/IEC)16 b(JTC1/SC22/W)o(G11)341 1821 y(CONT)l(A)o(CT:)98 b(Craig)17 b(Sc)o(ha\013ert)700 1879 y(Digital)f(Equipmen)o(t)e(Corp)q(oration)700 1937 y(Cam)o(bridge)h(Researc)o (h)g(Lab)700 1995 y(One)h(Kendall)g(Square,)f(Bldg)h(700)700 2053 y(Cam)o(bridge,)f(MA)g(02139,)j(USA)700 2111 y(in)o(ternet:)i(sc)o (ha\013ert@crl.dec.com)p eop %%Page: 2 2 bop 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y FC(Con)n(ten)n(ts)0 147 y Fx(1)42 b(Scop)q(e)1724 b(1)68 203 y Fw(1.1)46 b(Sp)q(eci\014cations)17 b(included)h(in)e(this)g(standard)45 b Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)64 b Fw(1)68 260 y(1.2)46 b(Sp)q(eci\014cations)17 b(not)e(within)h(the)g(scop)q (e)f(of)g(this)h(standard)h Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)64 b Fw(2)0 362 y Fx(2)42 b(Conformit)o(y)1594 b(3)0 464 y(3)42 b(Normativ)o(e)17 b(references)1367 b(3)0 566 y(4)42 b(Sym)o(b)q(ols)17 b(and)h(de\014nitions)1312 b(4)68 622 y Fw(4.1)46 b(Sym)o(b)q(ols)27 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:) f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)64 b Fw(4)68 679 y(4.2)46 b(De\014nitions)14 b Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)64 b Fw(4)0 780 y Fx(5)42 b(The)18 b(arithmetic)h(t)o(yp)q(es)1373 b(6)68 837 y Fw(5.1)46 b(In)o(teger)15 b(t)o(yp)q(es)39 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)64 b Fw(7)173 893 y(5.1.1)50 b(Op)q(erations)41 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)64 b Fw(8)173 950 y(5.1.2)50 b(Mo)q(dulo)16 b(in)o(tegers)f(v)o(ersus)g(o)o(v)o (er\015o)o(w)e Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)64 b Fw(8)173 1006 y(5.1.3)50 b(Axioms)39 b Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h (:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)64 b Fw(9)68 1063 y(5.2)46 b(Floating)15 b(p)q(oin)o(t)h(t)o(yp)q(es)34 b Fu(:)23 b(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(10)173 1119 y(5.2.1)50 b(Range)16 b(and)f(gran)o(ularit)o(y)g(constan)o(ts)34 b Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(11)173 1176 y(5.2.2)50 b(Op)q(erations)41 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:) h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)42 b Fw(12)173 1232 y(5.2.3)50 b(Appro)o(ximate)15 b(op)q(erations)26 b Fu(:)d(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(12)173 1289 y(5.2.4)50 b(Appro)o(ximate)15 b(addition)34 b Fu(:)22 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(13)173 1345 y(5.2.5)50 b(Rounding)33 b Fu(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(14)173 1401 y(5.2.6)50 b(Result)16 b(function)26 b Fu(:)c(:)g(:)h(:)f(:)g(:)h(:)f(:) h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(14)173 1458 y(5.2.7)50 b(Axioms)39 b Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)42 b Fw(15)173 1514 y(5.2.8)50 b(Rounding)17 b(constan)o(ts)41 b Fu(:)22 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(17)173 1571 y(5.2.9)50 b(Conformit)o(y)14 b(to)h(IEC)g(559)45 b Fu(:)23 b(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(18)68 1627 y(5.3)k(Con)o(v)o(ersion)15 b(op)q(erations)35 b Fu(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(18)0 1729 y Fx(6)g(Noti\014cation)1563 b(20)68 1786 y Fw(6.1)46 b(Noti\014cation)15 b(alternativ)o(es)32 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(20)173 1842 y(6.1.1)50 b(Alteration)16 b(of)f(con)o(trol)f(\015o)o(w)39 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(20)173 1899 y(6.1.2)50 b(Recording)17 b(of)d(indicators)45 b Fu(:)23 b(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h (:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(20)173 1955 y(6.1.3)50 b(T)l(ermination)16 b(with)g(message)j Fu(:)j(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)42 b Fw(22)68 2011 y(6.2)k(Dela)o(ys)15 b(in)h(noti\014cation) g Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(22)68 2068 y(6.3)k(User)15 b(selection)i(of)d(alternativ)o(e)i(for)e (noti\014cation)37 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:) h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(23)0 2170 y Fx(7)g(Relationship)20 b(with)e(language)h(standards)969 b(23)11 2405 y Ft(c)0 2406 y Fs(\015)26 b Ft(ISO/IEC)g(1993)0 2475 y(All)12 b(righ)o(ts)g(reserv)o(ed.)17 b(No)11 b(part)g(of)g(this)h (publicatio)q(n)i(ma)o(y)d(b)q(e)g(repro)q(duced)i(or)e(utilized)j(in)e(an)o (y)f(form)g(or)g(b)o(y)h(an)o(y)f(means,)h(electronic)0 2520 y(or)h(mec)o(hanical,)i(including)h(photo)q(cop)o(ying)g(and)e(micro\014lm,)g (without)g(p)q(ermission)i(in)d(writing)i(from)e(the)g(publisher.)90 2586 y(ISO/IEC)f(Cop)o(yrigh)o(t)j(O\016ce)e Fs(\017)g Ft(Case)f(P)o(ostale)j (56)e Fs(\017)g Ft(CH-1211)g(Gen)o(\022)-18 b(ev)o(e)13 b(20)h Fs(\017)f Ft(Switzerland)0 2655 y(Prin)o(ted)h(in)g(Switzerland)0 2828 y Fw(ii)p eop %%Page: 3 3 bop 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y(8)42 b(Do)q(cumen)o(tation)19 b(requiremen)o(ts)1162 b(24)0 165 y(Annexes)0 267 y(A)46 b(Rationale)1596 b(26)68 324 y Fw(A.1)35 b(Scop)q(e)43 b Fu(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(28)173 380 y(A.1.1)d(Sp)q(eci\014cations)18 b(included)f(in)f(this)g (standard)42 b Fu(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(28)173 436 y(A.1.2)d(Sp)q(eci\014cations) 18 b(not)c(within)j(the)e(scop)q(e)h(of)f(this)g(standard)f Fu(:)22 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(28)173 493 y(A.1.3)d(Prop)q(osed)15 b(follo)o(w-ons)h(to)e(this)i (standard)23 b Fu(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(29)68 549 y(A.2)35 b(Conformit)o(y)h Fu(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)42 b Fw(29)173 606 y(A.2.1)d(V)l(alidation)21 b Fu(:)h(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)42 b Fw(30)68 662 y(A.3)35 b(Normativ)o(e)14 b(references)23 b Fu(:)g(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(30)68 719 y(A.4)35 b(Sym)o(b)q(ols)16 b(and)f(de\014nitions)38 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(30)173 775 y(A.4.1)d(Sym)o(b)q(ols)23 b Fu(:)g(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(31)173 832 y(A.4.2)d(De\014nitions)46 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:) h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(31)68 888 y(A.5)35 b(The)15 b(arithmetic)h(t)o(yp)q(es)21 b Fu(:)i(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:) g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)42 b Fw(32)173 945 y(A.5.1)d(In)o(teger)15 b(t)o(yp)q(es)35 b Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)42 b Fw(33)318 1001 y(A.5.1.1)j(Op)q(erations)31 b Fu(:)22 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(34)318 1057 y(A.5.1.2)j(Mo)q(dulo)15 b(in)o(tegers)h(v)o(ersus)f(o)o(v)o (er\015o)o(w)38 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(34)318 1114 y(A.5.1.3)j(Axioms)29 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(35)173 1170 y(A.5.2)d(Floating)15 b(p)q(oin)o(t)h(t)o(yp)q(es)31 b Fu(:)22 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(36)318 1227 y(A.5.2.1)j(Range)15 b(and)g(gran)o(ularit)o(y)g(constan)o (ts)25 b Fu(:)d(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)42 b Fw(40)318 1283 y(A.5.2.2)j(Op)q(erations)31 b Fu(:)22 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(40)318 1340 y(A.5.2.3)j(Appro)o(ximate)15 b(op)q(erations)h Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(42)318 1396 y(A.5.2.4)j(Appro)o(ximate)15 b(addition)24 b Fu(:)e(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:) f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(42)318 1453 y(A.5.2.5)j(Rounding)22 b Fu(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)42 b Fw(44)318 1509 y(A.5.2.6)j(Result)16 b(function)f Fu(:)23 b(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(44)318 1566 y(A.5.2.7)j(Axioms)29 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:) f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)42 b Fw(45)318 1622 y(A.5.2.8)j(Rounding)16 b(constan)o(ts)32 b Fu(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(45)318 1678 y(A.5.2.9)j(Conformit)o(y)14 b(to)g(IEC)i(559)35 b Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(46)318 1735 y(A.5.2.10)22 b(Relations)16 b(among)e(\015oating)i(p)q(oin)o(t)f(t)o(yp)q(es)45 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(46)318 1791 y(A.5.2.11)22 b(Lev)o(els)16 b(of)f(predictabilit)o(y)44 b Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(47)318 1848 y(A.5.2.12)22 b(Iden)o(tities)30 b Fu(:)23 b(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:) f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)42 b Fw(47)318 1904 y(A.5.2.13)22 b(Precision,)16 b(accuracy)l(,)f(and)g (error)d Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:) f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(50)318 1961 y(A.5.2.14)22 b(Extra)14 b(precision)k Fu(:)23 b(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(53)173 2017 y(A.5.3)d(Con)o(v)o(ersion)15 b(op)q(erations)31 b Fu(:)22 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(54)68 2074 y(A.6)35 b(Noti\014cation)30 b Fu(:)22 b(:)g(:)h(:)f(:)g(:)h(:) f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(54)173 2130 y(A.6.1)d(Noti\014cation)16 b(alternativ)o(es)27 b Fu(:)c(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(55)318 2187 y(A.6.1.1)j(Alteration)15 b(of)g(con)o(trol)g(\015o)o(w)29 b Fu(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(55)318 2243 y(A.6.1.2)j(Recording)16 b(of)f(indicators)35 b Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(55)318 2299 y(A.6.1.3)j(T)l(ermination)16 b(with)f(message)45 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)42 b Fw(57)173 2356 y(A.6.2)d(Dela)o(ys)15 b(in)h(noti\014cation)d Fu(:)22 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(57)173 2412 y(A.6.3)d(User)15 b(selection)i(of)e(alternativ)o(e)g(for)g (noti\014cation)32 b Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:) f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(57)68 2469 y(A.7)35 b(Relationship)17 b(with)f(language)f(standards)44 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(58)68 2525 y(A.8)35 b(Do)q(cumen)o(tation)15 b(requiremen)o(ts)41 b Fu(:)22 b(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(59)0 2627 y Fx(B)49 b(P)o(artial)18 b(conformit)o(y)1392 b(61)1912 2828 y Fw(iii)p eop %%Page: 4 4 bop 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y Fx(C)48 b(IEC)17 b(559)h(bindings)1416 b(63)68 102 y Fw(C.1)36 b(Summary)g Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)42 b Fw(63)68 158 y(C.2)36 b(Noti\014cation)30 b Fu(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)42 b Fw(64)68 214 y(C.3)36 b(Rounding)g Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)42 b Fw(64)0 316 y Fx(D)k(Requiremen)o(ts)16 b(b)q(ey)o(ond)h(IEC) g(559)1110 b(65)0 418 y(E)52 b(Bindings)18 b(for)f(sp)q(eci\014c)i(languages) 1112 b(66)68 475 y Fw(E.1)38 b(General)15 b(commen)o(ts)36 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)42 b Fw(67)68 531 y(E.2)c(Ada)h Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(68)68 588 y(E.3)c(BASIC)17 b Fu(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(70)68 644 y(E.4)c(C)17 b Fu(:)23 b(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(73)68 701 y(E.5)c(Common)14 b(Lisp)21 b Fu(:)h(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(76)68 757 y(E.6)c(F)l(ortran)j Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(80)68 813 y(E.7)c(Mo)q(dula-2)g Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:) g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(83)68 870 y(E.8)c(P)o(ascal)15 b(and)g(Extended)h(P)o(ascal)22 b Fu(:)g(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(84)68 926 y(E.9)c(PL/I)23 b Fu(:)g(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(84)0 1028 y Fx(F)53 b(Example)17 b(of)h(a)g(conformit)o(y)f(statemen)o (t)1004 b(88)68 1085 y Fw(F.1)39 b(T)o(yp)q(es)e Fu(:)22 b(:)g(:)h(:)f(:)g(:) h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(88)68 1141 y(F.2)d(In)o(teger)15 b(parameters)29 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(88)68 1198 y(F.3)d(Floating)15 b(p)q(oin)o(t)h(parameters)24 b Fu(:)f(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(89)68 1254 y(F.4)d(De\014nitions)14 b Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(89)68 1311 y(F.5)d(Expressions)31 b Fu(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:) g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(90)68 1367 y(F.6)d(Noti\014cation)30 b Fu(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(90)0 1469 y Fx(G)j(Example)17 b(programs)1382 b(91)68 1525 y Fw(G.1)33 b(V)l(erifying)16 b(platform)f(acceptabilit)o(y)20 b Fu(:)j(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(91)68 1582 y(G.2)33 b(Selecting)17 b(alternate)e(co)q(de)37 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(91)68 1638 y(G.3)33 b(T)l(erminating)16 b(a)f(lo)q(op)23 b Fu(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(92)68 1695 y(G.4)33 b(F)l(ast)14 b(v)o(ersus)h(accurate)36 b Fu(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g (:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(92)68 1751 y(G.5)33 b(High-precision)17 b(m)o(ultiply)46 b Fu(:)22 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f (:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(93)68 1808 y(G.6)33 b(Estimating)15 b(error)39 b Fu(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(93)68 1864 y(G.7)33 b(Sa)o(ving)15 b(exception)h(state)29 b Fu(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h (:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fw(94)0 1966 y Fx(H)j(Bibliograph)o(y)1520 b(95)0 2068 y(I)66 b(Glossary)1614 b(98)0 2170 y(J)59 b(T)o(ypical)18 b(\015oating)h(p)q(oin)o (t)g(formats)1101 b(102)0 2828 y Fw(iv)p eop %%Page: 5 5 bop 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)835 45 y FC(F)-6 b(orew)n(ord)0 180 y Fw(This)18 b(part)e(of)g(this)i(In)o(ternational)f(Standard)g(w)o(as)f (prepared)i(for)e(ISO/IEC)i(JTC1/SC22/W)o(G11,)c(with)j(as-)0 236 y(sistance)f(from)e(national)i(b)q(o)q(dies)h(detailed)f(in)g(annex)g(A.) 0 321 y(This)i(part)f(of)g(this)h(In)o(ternational)g(Standard)f(do)q(es)h (not)f(replace)h(an)o(y)f(existing)h(standard)f(but)h(supplemen)o(ts)0 377 y(the)d(existing)h(programming)f(language)g(standards.)20 b(\(See)15 b(the)h(In)o(tro)q(duction.\))0 462 y(All)22 b(the)g(annexes)f(to) g(this)g(part)g(of)g(this)g(In)o(ternational)h(Standard)f(are)g(informativ)o (e.)38 b(References)22 b(to)f(the)0 518 y(annexes)12 b(are)f(included)k(for)c (the)g(con)o(v)o(enience)j(of)d(the)g(reader,)h(and)g(are)f(not)h(normativ)o (e.)18 b(NOTES)12 b(are)f(included)0 575 y(for)k(the)g(con)o(v)o(enience)i (of)d(the)i(reader,)e(and)i(are)f(not)f(normativ)o(e.)267 709 y Fx(Annex)i(A)h(is)h(in)o(tended)g(to)g(b)q(e)g(read)f(in)h(parallel)h(with) f(the)g(standard.)p 225 1377 1500 2 v 225 1941 2 565 v 375 1505 a Fw(Change)i(bars)h(ha)o(v)o(e)f(b)q(een)h(included)i(in)f(the)e(left)h (margin)f(of)h(this)375 1562 y(do)q(cumen)o(t)i(to)e(mark)h(di\013erences)h (b)q(et)o(w)o(een)g(this)f(do)q(cumen)o(t)h(and)375 1618 y(the)e(second)g (committee)g(draft.)36 b(All)23 b(substan)o(tiv)o(e)d(c)o(hanges)h(ha)o(v)o (e)375 1675 y(b)q(een)f(mark)o(ed.)31 b(A)19 b(v)o(ertical)h(c)o(hange)f(bar) p 1135 1692 14 57 v 52 w(denotes)g(an)g(insertion)375 1731 y(or)f(c)o(hange.)31 b(A)19 b(horizon)o(tal)g(c)o(hange)g(bar)p 1121 1731 57 14 v 93 w(denotes)g(a)g(deletion.)375 1788 y(These)12 b(c)o(hange)g(bars)f(are)h(not)f(part)g(of)g(this)i(In)o(ternational)f (Standard)375 1844 y(and)j(will)i(b)q(e)f(remo)o(v)o(ed)f(from)f(the)i (\014nal)g(draft.)p 1723 1941 2 565 v 225 1943 1500 2 v 1926 2828 a(v)p eop %%Page: 6 6 bop -72 2828 13 2773 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)786 45 y FC(In)n(tro)r(duction) 870 229 y Fx(The)h(aims)0 339 y Fw(Programmers)11 b(writing)j(programs)e (that)g(p)q(erform)h(a)f(signi\014can)o(t)i(amoun)o(t)e(of)h(n)o(umeric)h (pro)q(cessing)g(ha)o(v)o(e)e(often)0 395 y(not)g(b)q(een)h(certain)g(ho)o(w) e(a)h(program)f(will)j(p)q(erform)e(when)h(run)f(under)h(a)f(giv)o(en)g (language)h(pro)q(cessor.)18 b(Program-)0 452 y(ming)13 b(language)g (standards)f(ha)o(v)o(e)h(traditionally)h(b)q(een)g(somewhat)e(w)o(eak)g(in)h (the)g(area)f(of)h(n)o(umeric)g(pro)q(cessing,)0 508 y(seldom)k(pro)o(viding) g(an)f(adequate)h(sp)q(eci\014cation)h(of)e(the)g(prop)q(erties)h(of)f (arithmetic)h(datat)o(yp)q(es,)f(particularly)0 565 y(\015oating)g(p)q(oin)o (t)g(n)o(um)o(b)q(ers.)23 b(Often)16 b(they)g(do)g(not)g(ev)o(en)g(require)h (m)o(uc)o(h)f(in)g(the)g(w)o(a)o(y)f(of)h(do)q(cumen)o(tation)g(of)g(the)0 621 y(actual)f(arithmetic)h(datat)o(yp)q(es)f(b)o(y)g(a)g(conforming)g (language)g(pro)q(cessor.)0 706 y(It)g(is)g(the)f(in)o(ten)o(t)h(of)f(this)h (In)o(ternational)g(Standard)g(to)f(help)i(to)e(redress)g(these)h (shortcomings,)f(b)o(y)h(setting)f(out)0 762 y(precise)21 b(de\014nitions)g (of)e(in)o(teger)h(and)g(\015oating)f(p)q(oin)o(t)h(datat)o(yp)q(es,)g(and)g (requiremen)o(ts)g(for)f(do)q(cumen)o(tation.)0 819 y(This)f(is)f(done)h(in)g (a)f(w)o(a)o(y)f(that)g(mak)o(es)h(as)f(few)h(presumptions)h(as)f(p)q (ossible)i(ab)q(out)e(the)g(underlying)i(mac)o(hine)0 875 y(arc)o(hitecture.) 0 960 y(It)j(is)g(not)f(claimed)i(that)e(this)h(In)o(ternational)g(Standard)g (will)h(ensure)g(complete)f(certain)o(t)o(y)f(of)g(arithmetic)0 1016 y(b)q(eha)o(vior)16 b(in)h(all)g(circumstances;)g(the)f(complexit)o(y)h (of)e(n)o(umeric)i(soft)o(w)o(are)d(and)i(the)g(di\016culties)j(of)c (analysing)0 1073 y(and)e(pro)o(ving)g(algorithms)g(are)f(to)q(o)h(great)e (for)i(that)f(to)g(b)q(e)i(attempted.)k(Rather,)13 b(this)h(In)o(ternational) f(Standard)0 1129 y(will)k(pro)o(vide)f(a)e(\014rmer)i(basis)f(than)g (hitherto)h(for)e(attempting)h(suc)o(h)h(analysis.)0 1214 y(Hence)f(the)f (\014rst)f(aim)h(of)g(this)g(In)o(ternational)h(Standard)e(is)i(to)e(enhance) i(the)f(predictabilit)o(y)i(and)e(reliabilit)o(y)i(of)0 1271 y(the)f(b)q(eha)o(vior)h(of)f(programs)f(p)q(erforming)h(n)o(umeric)h(pro)q (cessing.)0 1355 y(The)i(second)g(aim,)g(whic)o(h)g(helps)h(to)e(supp)q(ort)g (the)h(\014rst,)f(is)h(to)f(help)i(programming)e(language)h(standards)f(to)0 1412 y(express)k(the)g(seman)o(tics)h(of)e(arithmetic)i(datat)o(yp)q(es.)37 b(These)21 b(seman)o(tics)g(need)h(to)e(b)q(e)i(precise)g(enough)g(for)0 1468 y(n)o(umerical)16 b(analysis,)f(but)g(not)f(so)g(restrictiv)o(e)h(as)f (to)g(prev)o(en)o(t)g(e\016cien)o(t)i(implemen)o(tation)f(of)g(the)f (language)h(on)0 1525 y(a)g(wide)h(range)f(of)g(platforms.)0 1609 y(The)i(third)h(aim)g(of)e(this)i(In)o(ternational)g(Standard)f(is)h(to) f(help)h(enhance)g(the)g(p)q(ortabilit)o(y)g(of)f(programs)f(that)0 1666 y(p)q(erform)i(n)o(umeric)h(pro)q(cessing)g(across)e(a)h(range)g(of)g (di\013eren)o(t)g(platforms.)28 b(Impro)o(v)o(ed)18 b(predictabilit)o(y)i(of) e(b)q(e-)0 1722 y(ha)o(vior)13 b(will)j(aid)e(programmers)e(designing)j(co)q (de)f(in)o(tended)h(to)e(run)h(on)g(m)o(ultiple)h(platforms,)e(and)h(will)h (help)g(in)0 1779 y(predicting)e(what)e(will)i(happ)q(en)f(when)g(suc)o(h)g (a)f(program)f(is)i(mo)o(v)o(ed)e(from)h(one)g(conforming)h(language)f(pro)q (cessor)0 1835 y(to)k(another.)0 1920 y(Note)f(that)f(this)i(In)o (ternational)g(Standard)f(do)q(es)g(not)g(attempt)f(to)g(ensure)i (bit-for-bit)g(iden)o(tical)h(results)e(when)0 1976 y(programs)j(are)i (transferred)f(b)q(et)o(w)o(een)h(language)g(pro)q(cessors,)f(or)g (translated)h(from)f(one)g(language)h(in)o(to)g(an-)0 2033 y(other.)f(Programming)10 b(languages)i(and)f(platforms)f(are)h(to)q(o)g(div) o(erse)h(to)e(mak)o(e)h(that)f(a)h(sensible)i(goal.)18 b(Ho)o(w)o(ev)o(er,)0 2089 y(exp)q(erience)g(sho)o(ws)d(that)g(div)o(erse)i(n)o(umeric)g(en)o (vironmen)o(ts)f(can)g(yield)h(comparable)f(results)h(under)f(most)f(cir-)0 2146 y(cumstances,)g(and)g(that)g(with)g(careful)h(program)e(design)j (signi\014can)o(t)f(p)q(ortabilit)o(y)g(is)g(actually)f(ac)o(hiev)m(able.)837 2280 y Fx(The)j(con)o(ten)o(t)0 2390 y Fw(This)e(In)o(ternational)f(Standard) g(de\014nes)h(the)f(fundamen)o(tal)g(prop)q(erties)h(of)e(in)o(teger)h(and)g (\015oating)g(p)q(oin)o(t)h(n)o(um-)0 2446 y(b)q(ers.)31 b(These)19 b(prop)q(erties)h(are)e(presen)o(ted)h(in)h(terms)e(of)h(a)f(parameterized)h (mo)q(del.)32 b(The)19 b(parameters)f(allo)o(w)0 2503 y(enough)h(v)m (ariation)g(in)h(the)f(mo)q(del)h(so)e(that)g(most)g(platforms)g(are)h(co)o (v)o(ered,)g(but)g(when)g(a)f(particular)i(set)e(of)0 2559 y(parameter)12 b(v)m(alues)j(is)f(selected,)g(the)f(resulting)i(description)g (is)e(precise)i(enough)e(to)g(p)q(ermit)h(careful)g(n)o(umerical)0 2615 y(analysis.)0 2828 y(vi)p eop %%Page: 7 7 bop -72 2385 13 2385 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y Fw(The)c(requiremen)o(ts)h(of)f(this)h(In)o(ternational)g(Standard)f(co)o(v)o (er)f(three)i(areas.)k(First,)13 b(the)i(programmer)e(m)o(ust)g(b)q(e)0 102 y(giv)o(en)18 b(run)o(time)g(access)f(to)g(the)g(parameters)g(and)g (functions)h(that)f(c)o(haracterize)h(the)f(arithmetic)h(prop)q(erties)0 158 y(of)f(the)h(platform.)28 b(Second,)19 b(the)f(executing)h(program)d(m)o (ust)i(b)q(e)g(noti\014ed)h(when)f(prop)q(er)g(results)h(cannot)e(b)q(e)0 214 y(returned)c(\(e.g.,)f(when)h(a)g(computed)g(result)g(is)h(out)e(of)h (range)f(or)g(unde\014ned\).)21 b(Third,)14 b(the)f(n)o(umeric)g(prop)q (erties)0 271 y(of)i(conforming)g(platforms)g(m)o(ust)f(b)q(e)i(publicly)i (do)q(cumen)o(ted.)0 356 y(This)11 b(P)o(art)e(of)i(this)f(In)o(ternational)i (Standard)e(fo)q(cuses)h(on)f(the)h(classical)h(in)o(teger)f(and)f (\015oating)h(p)q(oin)o(t)g(datat)o(yp)q(es.)0 412 y(Later)18 b(parts)g(will)h(consider)h(common)d(mathematical)i(pro)q(cedures)g(\(part)e (2\),)h(complex)h(n)o(um)o(b)q(ers)g(\(part)e(3\),)0 469 y(and)e(p)q(ossibly) i(additional)g(arithmetic)f(t)o(yp)q(es)f(suc)o(h)g(as)g(\014xed)h(p)q(oin)o (t.)685 603 y Fx(Relationship)k(to)e(hardw)o(are)0 713 y Fw(This)h(In)o (ternational)h(Standard)e(is)h(not)g(a)f(hardw)o(are)g(arc)o(hitecture)h (standard.)30 b(It)19 b(mak)o(es)f(no)h(sense)g(to)f(talk)0 769 y(ab)q(out)c(an)g(\\LIA)h(mac)o(hine.")20 b(F)l(uture)14 b(platforms)g(are)g(exp)q(ected)h(either)g(to)f(duplicate)i(existing)f(arc)o (hitectures,)0 826 y(or)h(to)f(satisfy)h(high)h(qualit)o(y)g(arc)o(hitecture) f(standards)g(suc)o(h)g(as)g(IEC)g(559)f(\(also)h(kno)o(wn)g(as)g(IEEE)g (754\).)22 b(The)0 882 y(\015oating)15 b(p)q(oin)o(t)g(requiremen)o(ts)h(of)e (this)h(In)o(ternational)h(Standard)f(are)f(compatible)i(with)f(\(and)g (enhance\))h(IEC)0 938 y(559.)0 1023 y(This)h(In)o(ternational)g(Standard)f (pro)o(vides)h(a)f(bridge)h(b)q(et)o(w)o(een)f(the)h(abstract)e(view)i(pro)o (vided)g(b)o(y)f(a)g(program-)0 1080 y(ming)g(language)f(standard)g(and)g (the)g(precise)i(details)f(of)f(the)g(actual)g(arithmetic)h(implemen)o (tation.)833 1214 y Fx(The)i(b)q(ene\014ts)0 1324 y Fw(Adoption)e(and)f(prop) q(er)h(use)f(of)g(this)h(In)o(ternational)f(Standard)g(can)h(lead)g(to)e(the) i(follo)o(wing)g(b)q(ene\014ts.)0 1408 y(Language)h(standards)g(will)h(b)q(e) g(able)g(to)e(de\014ne)j(their)e(arithmetic)h(seman)o(tics)f(more)g (precisely)i(without)e(pre-)0 1465 y(v)o(en)o(ting)e(the)h(e\016cien)o(t)g (implemen)o(tation)g(of)f(their)h(language)f(on)g(a)g(wide)h(range)f(of)g (mac)o(hine)h(arc)o(hitectures.)0 1549 y(Programmers)10 b(of)h(n)o(umeric)i (soft)o(w)o(are)d(will)j(b)q(e)g(able)f(to)f(assess)h(the)f(p)q(ortabilit)o (y)i(of)e(their)h(programs)f(in)i(adv)m(ance.)0 1606 y(Programmers)g(will)k (b)q(e)e(able)h(to)e(trade)g(o\013)g(program)g(design)i(requiremen)o(ts)f (for)g(p)q(ortabilit)o(y)g(in)h(the)f(resulting)0 1662 y(program.)0 1747 y(Programs)c(will)k(b)q(e)f(able)g(to)e(determine)i(\(at)e(run)h(time\)) g(the)g(crucial)i(n)o(umeric)e(prop)q(erties)h(of)f(the)g(implemen)o(ta-)0 1804 y(tion.)19 b(They)10 b(will)i(b)q(e)g(able)f(to)f(reject)g(unsuitable)j (implemen)o(tations,)f(and)f(\(p)q(ossibly\))g(to)f(correctly)h(c)o (haracterize)0 1860 y(the)k(accuracy)g(of)f(their)h(o)o(wn)f(results.)20 b(Programs)13 b(will)k(b)q(e)e(able)h(to)e(extract)g(apparen)o(tly)g (implemen)o(tation)i(de-)0 1916 y(p)q(enden)o(t)f(data)e(\(suc)o(h)h(as)g (the)g(exp)q(onen)o(t)h(of)e(a)h(\015oating)g(p)q(oin)o(t)g(n)o(um)o(b)q (er\))g(in)h(an)f(implemen)o(tation)i(indep)q(enden)o(t)0 1973 y(w)o(a)o(y)l(.)i(Programs)12 b(will)j(b)q(e)f(able)f(to)g(detect)g(\(and)g (p)q(ossibly)i(correct)d(for\))h(exceptions)h(in)g(arithmetic)f(pro)q (cessing.)0 2058 y(End)i(users)f(will)j(\014nd)e(it)g(easier)g(to)e (determine)j(whether)f(a)f(\(prop)q(erly)h(do)q(cumen)o(ted\))g(application)h (program)d(is)0 2114 y(lik)o(ely)k(to)e(execute)i(satisfactorily)e(on)h (their)g(platform.)21 b(This)16 b(can)g(b)q(e)g(done)g(b)o(y)g(comparing)f (the)h(do)q(cumen)o(ted)0 2170 y(requiremen)o(ts)g(of)e(the)i(program)e (against)h(the)g(do)q(cumen)o(ted)h(prop)q(erties)g(of)f(the)g(platform.)0 2255 y(Finally)l(,)j(end)f(users)f(of)g(n)o(umeric)h(application)h(pac)o(k)m (ages)e(will)i(b)q(e)f(able)g(to)f(rely)h(on)f(the)g(correct)g(execution)h (of)0 2312 y(those)e(pac)o(k)m(ages.)k(That)c(is,)g(for)f(correctly)h (programmed)f(algorithms)h(the)g(results)h(are)e(reliable)j(if)f(there)f(is)g (no)0 2368 y(noti\014cation,)h(and)f(if)h(the)f(results)g(are)g(unreliable)j (there)d(will)i(b)q(e)f(a)f(noti\014cation.)1901 2828 y(vii)p eop %%Page: 8 8 bop eop %%Page: 1 9 bop -72 1124 13 113 v -72 1632 13 367 v -72 2828 13 594 v 0 7 1950 4 v 0 89 a FB(DRAFT)19 b(INTERNA)-5 b(TIONAL)18 b(ST)-5 b(AND)n(ARD)1053 66 y FA(c)1043 67 y Fz(\015)r FA(ISO/IEC)1283 89 y FB(ISO/IEC)19 b(DIS)g(10967-1:1993)p 0 139 V 0 373 a FC(Information)k (tec)n(hnology)g({)0 430 y(Language)i(indep)r(enden)n(t)c(arithmetic)f({)0 486 y(P)n(art)j(1:)31 b(In)n(teger)23 b(and)h(\015oating)f(p)r(oin)n(t)g (arithmetic)0 808 y(1)69 b(Scop)r(e)0 937 y Fw(This)18 b(part)f(of)g(this)i (In)o(ternational)f(Standard)f(de\014nes)i(the)f(prop)q(erties)g(of)f(in)o (teger)h(and)g(\015oating)f(p)q(oin)o(t)i(data)0 994 y(t)o(yp)q(es)g(on)h (computer)f(systems)g(to)g(ensure)h(that)f(the)h(pro)q(cessing)g(of)f (arithmetic)h(data)f(can)g(b)q(e)i(undertak)o(en)0 1050 y(in)c(a)g(reliable)h (and)f(predictable)i(manner.)49 b(Emphasis)17 b(is)g(placed)h(on)e(do)q (cumen)o(ting)i(the)f(existing)g(v)m(ariation)0 1107 y(b)q(et)o(w)o(een)d (systems,)g(not)g(on)g(the)g(elimination)i(of)e(suc)o(h)g(v)m(ariation.)20 b(The)14 b(requiremen)o(ts)h(of)f(this)g(standard)g(shall)0 1163 y(b)q(e)k(in)g(addition)h(to)d(those)h(that)g(ma)o(y)g(b)q(e)h(sp)q (eci\014ed)h(in)f(other)f(standards,)g(suc)o(h)h(as)f(those)g(for)g (programming)0 1220 y(languages)e(\(See)h(clause)g(7\).)0 1304 y(It)f(is)g(not)f(the)h(purp)q(ose)g(of)f(this)h(In)o(ternational)g(Standard) g(to)f(ensure)h(that)f(an)g(arbitrary)g(n)o(umerical)i(function)0 1361 y(can)j(b)q(e)h(so)e(enco)q(ded)i(as)f(to)f(pro)q(duce)i(acceptable)f (results)h(on)e(all)i(conforming)f(systems.)30 b(Rather,)20 b(this)f(In-)0 1417 y(ternational)f(Standard)f(ensures)h(that)f(the)g(prop)q (erties)h(of)f(arithmetic)h(on)f(a)g(conforming)h(system)f(are)g(made)0 1474 y(a)o(v)m(ailable)g(to)d(determine)j(whether)e(a)g(giv)o(en)h(enco)q (ding)g(will)h(pro)q(duce)f(acceptable)g(results)g(on)f(that)g(system.)0 1558 y(Therefore,)g(it)g(is)h(not)f(reasonable)g(to)g(demand)g(that)g(a)g (substan)o(tiv)o(e)g(piece)h(of)f(soft)o(w)o(are)f(run)h(on)g(ev)o(ery)g (imple-)0 1615 y(men)o(tation)g(that)f(can)i(claim)g(conformance)f(to)g(this) g(standard.)0 1700 y(An)g(implemen)o(tor)h(ma)o(y)e(c)o(ho)q(ose)g(an)o(y)h (com)o(bination)g(of)g(hardw)o(are)f(and)h(soft)o(w)o(are)e(supp)q(ort)h(to)g (meet)h(the)g(sp)q(ec-)0 1756 y(i\014cations)h(of)e(this)h(standard.)20 b(It)15 b(is)g(the)g(arithmetic)g(en)o(vironmen)o(t,)g(as)f(seen)i(b)o(y)f (the)f(user,)h(that)f(do)q(es)h(or)g(do)q(es)0 1812 y(not)g(conform)f(to)h (the)g(sp)q(eci\014cations.)0 1897 y(The)j(term)g Fr(implementation)g Fw(\(of)f(this)i(standard\))e(denotes)i(the)f(total)g(arithmetic)g(en)o (vironmen)o(t,)h(including)0 1954 y(hardw)o(are,)f(language)h(pro)q(cessors,) f(exception)i(handling)g(facilities,)h(subroutine)e(libraries,)h(other)e (soft)o(w)o(are,)0 2010 y(and)d(all)i(p)q(ertinen)o(t)f(do)q(cumen)o(tation.) 0 2160 y FB(1.1)56 b(Sp)r(eci\014cations)19 b(included)h(in)f(this)h (standard)0 2274 y Fw(This)15 b(standard)e(de\014nes)i(in)o(teger)f(and)g (\015oating)g(p)q(oin)o(t)h(data)e(t)o(yp)q(es.)39 b(De\014nitions)15 b(are)f(included)j(for)c(b)q(ounded,)0 2330 y(un)o(b)q(ounded,)j(and)f(mo)q (dulo)g(in)o(teger)f(t)o(yp)q(es,)g(as)h(w)o(ell)g(as)f(b)q(oth)h(normalized) g(and)g(denormalized)h(\015oating)e(p)q(oin)o(t)0 2387 y(t)o(yp)q(es.)0 2472 y(The)h(sp)q(eci\014cation)j(for)c(an)h(arithmetic)h(t)o(yp)q(e)f (includes)51 2594 y(a\))22 b(The)15 b(set)g(of)g(computable)h(v)m(alues.)48 2687 y(b\))23 b(The)15 b(set)g(of)g(computational)g(op)q(erations)h(pro)o (vided,)f(including)1927 2828 y(1)p eop %%Page: 2 10 bop -72 444 13 444 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)151 45 y(1\))22 b(primitiv)o(e)16 b(op)q(erations)g(\(addition,)f(subtraction,)g(etc.\))20 b(with)15 b(op)q(erands)h(of)e(the)i(same)f(t)o(yp)q(e,)151 113 y(2\))22 b(comparison)15 b(op)q(erations)g(on)g(t)o(w)o(o)f(op)q(erands)i (of)f(the)g(same)g(t)o(yp)q(e,)151 181 y(3\))22 b(con)o(v)o(ersion)15 b(op)q(erations)g(from)g(an)o(y)g(arithmetic)g(t)o(yp)q(e)h(to)e(an)o(y)h (other)g(arithmetic)h(t)o(yp)q(e,)f(and)151 249 y(4\))22 b(op)q(erations)15 b(that)f(access)i(prop)q(erties)g(of)e(individual)19 b(v)m(alues.)53 338 y(c\))k(Program-visible)16 b(parameters)e(that)h(c)o(haracterize)g(the)g (v)m(alues)i(and)e(op)q(erations.)48 427 y(d\))23 b(Pro)q(cedures)15 b(for)g(rep)q(orting)g(arithmetic)h(exceptions.)114 537 y Fq(NOTE)e({)28 b(A.1.3)12 b(describ)q(es)k(planned)e(future)g(w)o(ork)g(in)f(this)h(area.)0 684 y FB(1.2)56 b(Sp)r(eci\014cations)19 b(not)g(within)h(the)e(scop)r(e)g (of)h(this)g(standard)0 799 y Fw(This)d(standard)f(pro)o(vides)g(no)g(sp)q (eci\014cations)i(for)51 908 y(a\))22 b(Arithmetic)15 b(and)f(comparison)g (op)q(erations)g(whose)g(op)q(erands)g(are)g(of)f(more)h(than)f(one)i(data)e (t)o(yp)q(e.)19 b(This)114 964 y(standard)14 b(neither)j(requires)f(nor)e (excludes)j(the)f(presence)g(of)f(suc)o(h)g(\\mixed)h(op)q(erand")f(op)q (erations.)48 1053 y(b\))23 b(A)f(general)i(unnormalized)g(\015oating)f(p)q (oin)o(t)g(data)f(t)o(yp)q(e,)j(or)d(the)h(op)q(erations)g(on)f(suc)o(h)h (data.)42 b(This)114 1110 y(standard)14 b(neither)j(requires)f(nor)e (excludes)j(suc)o(h)f(data)e(or)h(op)q(erations.)53 1198 y(c\))23 b(An)18 b(in)o(terv)m(al)i(data)e(t)o(yp)q(e,)h(or)e(the)i(op)q(erations)g (on)f(suc)o(h)h(data.)29 b(This)19 b(standard)f(neither)h(requires)g(nor)114 1255 y(excludes)d(suc)o(h)g(data)f(or)f(op)q(erations.)48 1344 y(d\))23 b(A)16 b(\014xed)g(p)q(oin)o(t)h(data)e(t)o(yp)q(e,)h(or)f(the)h(op) q(erations)h(on)f(suc)o(h)g(data.)21 b(This)c(standard)f(neither)g(requires)h (nor)114 1400 y(excludes)f(suc)o(h)g(data)f(or)f(op)q(erations.)53 1489 y(e\))23 b(A)c(rational)h(data)f(t)o(yp)q(e,)i(or)e(the)h(op)q(erations) f(on)h(suc)o(h)g(data.)33 b(This)20 b(standard)f(neither)i(requires)f(nor)114 1545 y(excludes)c(suc)o(h)g(data)f(or)f(op)q(erations.)56 1634 y(f)t(\))22 b(The)17 b(prop)q(erties)h(of)e(arithmetic)i(data)e(t)o(yp)q(es)h (that)g(are)f(not)h(related)g(to)g(the)g(n)o(umerical)h(pro)q(cess,)g(suc)o (h)114 1691 y(as)c(the)i(represen)o(tation)f(of)g(v)m(alues)h(on)f(ph)o (ysical)i(media.)51 1779 y(g\))22 b(Floating)15 b(p)q(oin)o(t)h(v)m(alues)g (that)e(represen)o(t)i(in\014nit)o(y)g(or)f(non-n)o(umeric)h(results.)48 1868 y(h\))23 b(The)e(prop)q(erties)h(of)f(in)o(teger)g(and)h(\015oating)f(p) q(oin)o(t)h(data)e(t)o(yp)q(es)i(that)e(prop)q(erly)i(b)q(elong)h(in)f (language)114 1925 y(standards.)d(Examples)d(include)151 2013 y(1\))22 b(The)15 b(syn)o(tax)g(of)f(literals)j(and)e(expressions.)151 2081 y(2\))22 b(The)15 b(precedence)i(of)e(op)q(erators.)151 2149 y(3\))22 b(The)15 b(rules)h(of)f(assignmen)o(t)g(and)g(parameter)g (passing.)151 2217 y(4\))22 b(The)15 b(presence)h(or)f(absence)h(of)f (automatic)f(t)o(yp)q(e)i(co)q(ercions.)151 2285 y(5\))22 b(The)12 b(consequences)h(of)e(applying)i(an)e(op)q(eration)h(to)f(v)m(alues)i(of)e (improp)q(er)i(t)o(yp)q(e,)f(or)f(to)g(uninitializ)q(ed)214 2342 y(data.)214 2431 y Fq(NOTE)16 b({)32 b(See)17 b(clause)g(7)f(and)g (annex)g(E)g(for)g(a)g(discussion)g(of)g(language)f(standards)i(and)f (language)214 2481 y(bindings.)0 2591 y Fw(The)e(in)o(ternal)g(represen)o (tation)g(of)f(v)m(alues)i(is)f(b)q(ey)o(ond)g(the)g(scop)q(e)g(of)f(this)h (standard.)19 b(In)o(ternal)14 b(represen)o(tations)0 2647 y(need)g(not)e(b)q(e)i(unique,)h(nor)d(is)i(there)f(a)f(requiremen)o(t)i(for) e(iden)o(ti\014able)k(\014elds)e(\(for)e(sign,)h(exp)q(onen)o(t,)h(and)f(so)g (on\).)0 2704 y(The)i(v)m(alue)i(of)e(the)g(exp)q(onen)o(t)h(bias,)f(if)h(an) o(y)l(,)e(is)i(not)f(sp)q(eci\014ed.)0 2828 y(2)p eop %%Page: 3 11 bop -72 1430 13 618 v -72 2602 13 675 v -110 1809 51 13 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y FC(2)69 b(Conformit)n(y)0 175 y Fw(It)13 b(is)g(exp)q(ected)i(that)d(the)h(pro)o(visions)h(of)e(this)h(part)g (of)f(this)i(In)o(ternational)f(Standard)g(will)i(b)q(e)f(incorp)q(orated)f (b)o(y)0 231 y(reference)18 b(and)f(further)h(de\014ned)g(in)g(other)f(In)o (ternational)h(Standards;)g(sp)q(eci\014cally)i(in)e(language)f(standards)0 288 y(and)j(in)i(language)e(binding)i(standards.)35 b(Binding)22 b(standards)e(sp)q(ecify)h(the)g(corresp)q(ondence)g(b)q(et)o(w)o(een)g(the)0 344 y(abstract)11 b(data)h(t)o(yp)q(es)g(and)h(op)q(erations)f(of)g(this)h (In)o(ternational)g(Standard)g(and)f(the)h(concrete)f(language)h(syn)o(tax)0 401 y(of)j(the)h(language)g(standard.)24 b(A)17 b(language)g(standard)f(that) g(explicitly)k(pro)o(vides)d(suc)o(h)g(binding)i(information)0 457 y(can)c(serv)o(e)g(as)g(a)g(binding)i(standard.)0 542 y(When)d(a)g (binding)i(standard)e(for)f(a)h(language)g(exists,)g(an)g(implemen)o(tation)h (shall)g(b)q(e)g(said)f(to)g(conform)f(to)h(this)0 598 y(part)e(of)g(this)h (In)o(ternational)h(Standard)e(if)h(and)g(only)g(if)h(it)e(conforms)g(to)g (the)h(binding)i(standard.)j(In)c(particular,)0 655 y(in)h(the)f(case)g(of)g (con\015ict)h(b)q(et)o(w)o(een)f(a)g(binding)i(standard)e(and)g(this)h(part)e (of)h(this)g(In)o(ternational)h(Standard,)f(the)0 711 y(sp)q(eci\014cations)j (of)e(the)g(binding)i(standard)e(shall)h(tak)o(e)f(precedence.)0 796 y(When)i(no)f(binding)i(standard)e(for)f(a)h(language)h(exists,)f(an)h (implemen)o(tation)g(conforms)f(to)f(this)i(part)f(of)g(this)0 852 y(In)o(ternational)e(Standard)e(if)i(and)f(only)g(if)h(it)f(pro)o(vides)g (one)g(or)g(more)f(data)g(t)o(yp)q(es)h(that)f(together)g(satisfy)h(all)h (the)0 909 y(requiremen)o(ts)i(of)e(clauses)i(5)f(through)g(8.)20 b(Conformit)o(y)14 b(is)i(relativ)o(e)g(to)e(that)h(designated)h(set)f(of)f (data)h(t)o(yp)q(es.)114 1037 y Fq(NOTE)i({)34 b(Language)17 b(bindings)f(are)i(essen)o(tial.)28 b(Clause)17 b(8)g(requires)h(an)f (implemen)o(tation)d(to)j(supply)g(a)114 1086 y(binding)e(if)g(no)h(binding)f (standard)i(exists.)25 b(See)17 b(A.7)e(for)h(recommendations)e(on)i(the)h (prop)q(er)g(con)o(ten)o(t)g(of)114 1136 y(a)e(binding)h(standard.)25 b(See)17 b(annex)f(F)g(for)g(an)g(example)f(of)g(a)h(conformit)o(y)e (statemen)o(t,)i(and)g(annex)g(E)h(for)114 1186 y(suggested)e(language)e (bindings.)114 1314 y(NOTE)g({)24 b(A)13 b(complete)e(binding)h(for)g(this)g (In)o(ternational)g(Standard)h(will)d(include)j(a)f(binding)f(for)i(IEC)f (559)114 1364 y(as)i(w)o(ell.)j(See)e(5.2.9)d(and)i(annex)g(C.)0 1498 y Fw(An)g(implemen)o(tation)g(is)g(free)f(to)g(pro)o(vide)h(arithmetic)g (t)o(yp)q(es)f(that)g(do)g(not)g(conform)g(to)f(this)i(standard)f(or)g(that)0 1555 y(are)18 b(b)q(ey)o(ond)i(the)e(scop)q(e)i(of)e(this)h(standard.)30 b(The)19 b(implemen)o(tation)h(shall)f(not)g(claim)g(conformit)o(y)g(for)f (suc)o(h)0 1611 y(t)o(yp)q(es.)0 1696 y(An)d(implemen)o(tation)h(is)e(p)q (ermitted)i(to)e(ha)o(v)o(e)g(mo)q(des)g(of)g(op)q(eration)h(that)f(do)g(not) g(conform)g(to)g(this)h(standard.)0 1752 y(Ho)o(w)o(ev)o(er,)20 b(a)g(conforming)g(implemen)o(tation)i(shall)f(sp)q(ecify)h(ho)o(w)e(to)f (select)i(the)g(mo)q(des)f(of)g(op)q(eration)h(that)0 1809 y(ensure)16 b(conformit)o(y)l(.)0 1980 y FC(3)69 b(Normativ)n(e)22 b(references)0 2110 y Fw(The)c(follo)o(wing)h(standards)f(con)o(tain)g(pro)o (visions)h(whic)o(h,)g(through)f(reference)g(in)h(this)g(text,)f(constitute)g (pro-)0 2166 y(visions)k(of)f(this)g(In)o(ternational)h(Standard.)38 b(A)o(t)20 b(the)h(time)h(of)e(publication,)25 b(the)c(editions)h(indicated)h (w)o(ere)0 2223 y(v)m(alid.)40 b(All)23 b(standards)e(are)g(sub)s(ject)h(to)f (revision,)j(and)d(parties)h(to)f(agreemen)o(ts)g(based)g(on)h(this)g(In)o (terna-)0 2279 y(tional)17 b(Standard)g(are)f(encouraged)h(to)f(in)o(v)o (estigate)g(the)h(p)q(ossibilit)o(y)i(of)d(applying)i(the)e(most)g(recen)o(t) h(editions)0 2336 y(of)g(the)g(standards)g(indicated)i(b)q(elo)o(w.)27 b(Mem)o(b)q(ers)17 b(of)g(IEC)g(and)h(ISO)g(main)o(tain)g(registers)f(of)g (curren)o(tly)g(v)m(alid)0 2392 y(In)o(ternational)f(Standards.)114 2527 y(IEC)f(559:1989)73 b(Binary)16 b(\015oating-p)q(oin)o(t)g(arithmetic)g (for)e(micropro)q(cessor)i(systems)1927 2828 y(3)p eop %%Page: 4 12 bop -72 735 13 57 v -72 1572 13 231 v -72 2828 13 277 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y FC(4)69 b(Sym)n(b)r(ols)23 b(and)g(de\014nitions)0 176 y FB(4.1)56 b(Sym)n(b)r(ols)0 290 y Fw(In)18 b(this)f(standard,)g Fv(Z)j Fw(denotes)e(the)f(set)f(of)h (mathematical)g(in)o(tegers,)g Fv(R)g Fw(denotes)g(the)g(set)g(of)g(real)g(n) o(um)o(b)q(ers,)0 347 y(and)e Fv(C)j Fw(denotes)e(the)f(set)g(of)g(complex)h (n)o(um)o(b)q(ers.)k(Note)15 b(that)f Fv(Z)i(\032)d(R)f(\032)h(C)s Fw(.)0 432 y(All)21 b(pre\014x)f(and)g(in\014x)h(op)q(erators)e(ha)o(v)o(e)g (their)h(con)o(v)o(en)o(tional)g(\(exact\))f(mathematical)h(meaning.)34 b(The)20 b(con-)0 488 y(v)o(en)o(tional)h(notation)f(for)f(set)h (de\014nition)i(and)f(manipulation)g(is)g(also)f(used.)36 b(In)21 b(particular)g(this)f(standard)0 545 y(uses)114 662 y Fv(\))15 b Fw(and)28 b Fv(\()-8 b(\))29 b Fw(for)15 b(logical)h(implication)114 718 y(+,)f Fv(\000)p Fw(,)g Fv(\003)p Fw(,)f Fu(=)p Fw(,)h Fu(x)367 702 y Fp(y)388 718 y Fw(,)f Fu(l)q(og)474 725 y Fp(x)495 718 y Fu(y)r Fw(,)547 686 y Fv(p)p 585 686 26 2 v 32 x Fu(x)p Fw(,)h Fv(j)p Fu(x)p Fv(j)p Fw(,)f Fv(b)p Fu(x)p Fv(c)p Fw(,)h(and)g Fu(tr)q Fw(\()p Fu(x)p Fw(\))g(on)g Fv(R)114 775 y Fu(<)p Fw(,)g Fv(\024)p Fw(,)g(=,)g Fv(6)p Fw(=,)g Fv(\025)p Fw(,)g(and)h Fu(>)f Fw(on)g Fv(R)114 831 y(\002)p Fw(,)g Fv([)p Fw(,)g Fv(2)p Fw(,)g Fv(\032)p Fw(,)g(and)g(=)h(on)f(sets)g(of)g(in)o(tegers)g(and)g(reals) 114 888 y Fu(max)g Fw(and)g Fu(min)g Fw(on)g(sets)g(of)g(in)o(tegers)g(and)h (reals)114 944 y Fv(!)f Fw(for)g(a)g(mapping)h(b)q(et)o(w)o(een)f(sets)0 1062 y(This)h(standard)f(uses)g Fv(\003)g Fw(for)f(m)o(ultiplication,)k(and)d Fv(\002)h Fw(for)e(the)i(Cartesian)e(pro)q(duct)i(of)f(sets.)0 1146 y(F)l(or)g Fu(x)d Fv(2)h(R)p Fw(,)h(the)i(notation)f Fv(b)p Fu(x)p Fv(c)g Fw(designates)h(the)f(largest)g(in)o(teger)g(not)g(greater)f (than)h Fu(x)p Fw(:)114 1264 y Fv(b)p Fu(x)p Fv(c)e(2)g(Z)64 b Fw(and)d Fu(x)10 b Fv(\000)g Fw(1)i Fu(<)h Fv(b)p Fu(x)p Fv(c)g(\024)g Fu(x)0 1381 y Fw(and)i Fu(tr)q Fw(\()p Fu(x)p Fw(\))g(designates)h(the)f(in)o(teger)g(part)g(of)g Fu(x)g Fw(\(truncated)g(to)o(w)o(ard)e(0\):)114 1498 y Fu(tr)q Fw(\()p Fu(x)p Fw(\))29 b(=)44 b Fv(b)p Fu(x)p Fv(c)106 b Fw(if)16 b Fu(x)c Fv(\025)h Fw(0)243 1555 y(=)g Fv(\000b\000)p Fu(x)p Fv(c)67 b Fw(if)16 b Fu(x)c(<)h Fw(0)0 1729 y(The)18 b(t)o(yp)q(e)g Fr(Bo)n(ole)n(an)f Fw(consists)h(of)f(the)h(t)o(w)o(o)f(v)m(alues)i Fx(true)e Fw(and)h Fx(false)p Fw(.)28 b(Predicates)19 b(\(lik)o(e)f Fu(<)g Fw(and)g(=\))g(pro)q(duce)0 1785 y(v)m(alues)e(of)f(t)o(yp)q(e)g(Bo)q (olean.)0 1934 y FB(4.2)56 b(De\014nitions)0 2048 y Fw(F)l(or)15 b(the)g(purp)q(oses)h(of)e(this)i(In)o(ternational)g(Standard,)f(the)g(follo) o(wing)h(de\014nitions)h(apply:)0 2165 y Fx(arithmetic)i(data)f(t)o(yp)q(e:) 23 b Fw(A)15 b(data)f(t)o(yp)q(e)i(whose)f(v)m(alues)h(are)f(mem)o(b)q(ers)g (of)g Fv(Z)t Fw(,)f Fv(R)p Fw(,)h(or)f Fv(C)s Fw(.)214 2251 y Fq(NOTE)j({)33 b(This)16 b(standard)h(sp)q(eci\014es)h(requiremen)o(ts)f (for)f(in)o(teger)h(and)g(\015oating)e(p)q(oin)o(t)h(data)h(t)o(yp)q(es.)214 2301 y(Complex)c(n)o(um)o(b)q(ers)i(are)h(not)f(co)o(v)o(ered)h(b)o(y)g(this) f(standard,)h(but)f(will)f(b)q(e)i(included)f(in)g(a)g(subsequen)o(t)214 2350 y(part)f(of)f(this)h(standard)g([16)o(].)0 2442 y Fx(axiom:)22 b Fw(A)g(general)g(rule)h(satis\014ed)f(b)o(y)f(an)h(op)q(eration)g(and)g (all)g(v)m(alues)h(of)e(the)h(data)f(t)o(yp)q(e)g(to)g(whic)o(h)i(the)114 2499 y(op)q(eration)15 b(b)q(elongs.)21 b(As)15 b(used)h(in)g(the)f(sp)q (eci\014cations)i(of)e(op)q(erations,)g(axioms)g(are)g(requiremen)o(ts.)0 2591 y Fx(con)o(tin)o(uation)k(v)m(alue:)k Fw(A)17 b(computational)h(v)m (alue)g(used)g(as)e(the)h(result)h(of)f(an)g(arithmetic)g(op)q(eration)g (when)114 2647 y(an)g(exception)h(o)q(ccurs.)26 b(Con)o(tin)o(uation)17 b(v)m(alues)i(are)e(in)o(tended)h(to)f(b)q(e)h(used)f(in)i(subsequen)o(t)e (arithmetic)114 2704 y(pro)q(cessing.)j(\(Con)o(trast)14 b(with)h Fr(exc)n(eptional)h(value)p Fw(.)k(See)15 b(6.1.2.\))0 2828 y(4)p eop %%Page: 5 13 bop -72 129 13 130 v -72 1035 13 483 v -72 1637 13 179 v -72 2129 13 57 v -72 2277 V 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)214 45 y Fq(NOTE)13 b({)26 b(The)13 b(in\014nities)g(and)g(NaNs)g(pro)q(duced)i (b)o(y)d(an)h(IEC)g(559)g(system)f(are)i(examples)e(of)g(con)o(tin-)214 95 y(uation)h(v)n(alues.)0 204 y Fx(data)19 b(t)o(yp)q(e:)j Fw(A)15 b(set)g(of)g(v)m(alues)h(and)f(a)g(set)g(of)g(op)q(erations)g(that)g (manipulate)h(those)f(v)m(alues.)0 296 y Fx(denormalization)20 b(loss:)i Fw(A)12 b(larger)g(than)g(normal)g(rounding)h(error)e(caused)i(b)o (y)f(the)g(fact)g(that)f(denormalized)114 352 y(v)m(alues)16 b(ha)o(v)o(e)f(less)h(than)f(full)h(precision.)22 b(\(See)15 b(5.2.5)f(for)g(a)h(full)i(de\014nition.\))0 443 y Fx(denormalized:)23 b Fw(Those)18 b(v)m(alues)g(of)f(a)g(\015oating)h(p)q(oin)o(t)g(t)o(yp)q(e)f Fu(F)24 b Fw(that)17 b(pro)o(vide)h(less)g(than)f(the)h(full)g(precision)114 500 y(allo)o(w)o(ed)d(b)o(y)g(that)g(t)o(yp)q(e.)20 b(\(See)15 b Fu(F)684 507 y Fp(D)732 500 y Fw(in)h(5.2)e(for)h(a)f(full)j (de\014nition.\))0 591 y Fx(error:)k Fw(\(1\))15 b(The)i(di\013erence)h(b)q (et)o(w)o(een)f(a)f(computed)h(v)m(alue)g(and)g(the)f(correct)h(v)m(alue.)24 b(\(Used)17 b(in)g(phrases)g(lik)o(e)114 648 y(\\rounding)e(error")g(or)f (\\error)h(b)q(ound."\))114 722 y(\(2\))f(A)h(synon)o(ym)g(for)g Fr(exc)n(eption)f Fw(in)i(phrases)g(lik)o(e)g(\\error)e(message")h(or)f (\\error)g(output.")0 813 y Fx(exception:)23 b Fw(A)d(fault)f(in)i (arithmetic)f(pro)q(cessing.)34 b(The)20 b(inabilit)o(y)h(of)f(an)f(op)q (eration)h(to)f(return)g(a)h(desired)114 870 y(result.)0 961 y Fx(exceptional)f(v)m(alue:)k Fw(A)13 b(non-n)o(umeric)i(v)m(alue)f(pro)q (duced)h(b)o(y)e(an)g(arithmetic)h(op)q(eration)g(to)e(indicate)j(the)f(o)q (c-)114 1018 y(currence)d(of)g(an)g(exception.)19 b(Exceptional)12 b(v)m(alues)g(are)f(not)f(used)i(in)f(subsequen)o(t)h(arithmetic)f(pro)q (cessing.)114 1074 y(\(See)k(clause)h(5.\))214 1159 y Fq(NOTE)10 b({)19 b(Exceptional)10 b(v)n(alues)f(are)i(used)f(as)g(part)g(of)f(the)i (de\014ning)f(formalism)5 b(only)m(.)16 b(With)9 b(resp)q(ect)j(to)214 1209 y(this)e(In)o(ternational)h(Standard,)g(they)g(do)f(not)h(represen)o(t)i (v)n(alues)e(of)f(an)o(y)g(of)g(the)i(data)e(t)o(yp)q(es)i(describ)q(ed.)214 1259 y(There)j(is)e(no)h(requiremen)o(t)g(that)g(they)g(b)q(e)h(represen)o (ted)h(or)e(stored)h(in)f(the)g(computing)e(system.)0 1350 y Fx(exp)q(onen)o(t)18 b(bias:)k Fw(A)13 b(n)o(um)o(b)q(er)f(added)h(to)f (the)g(exp)q(onen)o(t)h(of)f(a)g(\015oating)g(p)q(oin)o(t)h(n)o(um)o(b)q(er,) g(usually)h(to)d(transform)114 1407 y(the)k(exp)q(onen)o(t)h(to)e(an)h (unsigned)i(in)o(teger.)0 1498 y Fx(help)q(er)h(function:)23 b Fw(A)11 b(function)g(used)g(solely)g(to)f(aid)g(in)i(the)e(expression)h(of) f(a)g(requiremen)o(t.)19 b(Help)q(er)11 b(functions)114 1555 y(are)18 b(not)h(visible)i(to)e(the)g(programmer,)f(and)h(are)g(not)g (required)h(to)e(b)q(e)i(part)e(of)h(an)g(implemen)o(tation.)114 1611 y(Ho)o(w)o(ev)o(er,)13 b(some)i(implemen)o(tation)i(de\014ned)f(help)q (er)h(functions)f(are)f(required)h(to)f(b)q(e)h(do)q(cumen)o(ted.)0 1703 y Fx(implemen)o(tation)j Fw(\(of)14 b(this)i(standard\))p Fx(:)22 b Fw(The)d(total)f(arithmetic)h(en)o(vironmen)o(t)h(presen)o(ted)f (to)f(a)h(program-)114 1759 y(mer,)j(including)i(hardw)o(are,)d(language)g (pro)q(cessors,)h(exception)g(handling)h(facilities,)i(subroutine)d(li-)114 1816 y(braries,)15 b(other)g(soft)o(w)o(are,)e(and)i(all)h(p)q(ertinen)o(t)g (do)q(cumen)o(tation.)0 1907 y Fx(normalized:)23 b Fw(Those)c(v)m(alues)h(of) e(a)g(\015oating)h(p)q(oin)o(t)g(t)o(yp)q(e)g Fu(F)25 b Fw(that)18 b(pro)o(vide)i(the)e(full)j(precision)f(allo)o(w)o(ed)f(b)o(y)114 1964 y(that)14 b(t)o(yp)q(e.)20 b(\(See)c Fu(F)460 1971 y Fp(N)509 1964 y Fw(in)g(5.2)e(for)g(a)h(full)i(de\014nition.\))0 2055 y Fx(noti\014cation:)25 b Fw(The)14 b(pro)q(cess)g(b)o(y)g(whic)o(h)h(a)f (program)e(\(or)h(that)h(program's)e(user\))i(is)g(informed)h(that)e(an)h (arith-)114 2112 y(metic)19 b(exception)g(has)g(o)q(ccurred.)31 b(F)l(or)18 b(example,)h(dividing)i(2)e(b)o(y)f(0)g(results)h(in)h(a)e (noti\014cation.)31 b(\(See)114 2168 y(clause)16 b(6)f(for)f(details.\))0 2260 y Fx(op)q(eration:)24 b Fw(A)14 b(function)h(directly)g(a)o(v)m(ailable) h(to)e(the)g(user,)g(as)g(opp)q(osed)h(to)e(help)q(er)j(functions)f(or)e (theoretical)114 2316 y(mathematical)i(functions.)0 2408 y Fx(precision:)23 b Fw(The)15 b(n)o(um)o(b)q(er)h(of)f(digits)h(in)g(the)f (fraction)g(of)g(a)g(\015oating)g(p)q(oin)o(t)g(n)o(um)o(b)q(er.)21 b(\(See)15 b(5.2.\))0 2499 y Fx(rounding:)23 b Fw(The)14 b(act)f(of)g (computing)h(a)g(represen)o(table)g(\014nal)h(result)f(\(for)e(an)i(op)q (eration\))f(that)g(is)i(close)f(to)f(the)114 2556 y(exact)i(\(but)g (unrepresen)o(table\))h(result)f(for)g(that)f(op)q(eration.)21 b(\(See)15 b(A.5.2.5)e(for)i(some)g(examples.\))0 2647 y Fx(rounding)j (function:)23 b Fw(An)o(y)17 b(function)h Fu(r)q(nd)d Fw(:)g Fv(R)g(!)h Fu(X)k Fw(\(where)d Fu(X)j Fw(is)d(a)g(discrete)h(subset)f(of)f Fv(R)p Fw(\))g(that)g(maps)114 2704 y(eac)o(h)f(elemen)o(t)h(of)f Fu(X)j Fw(to)d(itself,)g(and)h(is)f(monotonic)h(non-decreasing.)21 b(F)l(ormally)l(,)15 b(if)h Fu(x)f Fw(and)g Fu(y)i Fw(are)e(in)h Fv(R)p Fw(,)1927 2828 y(5)p eop %%Page: 6 14 bop -72 475 13 113 v -72 626 13 57 v -72 1227 V -72 2698 13 150 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)214 45 y Fu(x)c Fv(2)h Fu(X)j Fv(\))d Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))f(=)h Fu(x)214 102 y(x)f(<)h(y)i Fv(\))e Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))f Fv(\024)g Fu(r)q(nd)p Fw(\()p Fu(y)r Fw(\))114 195 y(Note)i(that)g(if)h Fu(u)e Fv(2)g(R)h Fw(is)h(b)q(et)o(w)o(een)g(t)o(w)o(o)f(adjacen)o(t)g(v)m (alues)i(in)g Fu(X)t Fw(,)d Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))h(selects)i(one) f(of)f(those)g(adjacen)o(t)114 252 y(v)m(alues.)0 346 y Fx(round)j(to)h (nearest:)k Fw(The)e(prop)q(ert)o(y)e(of)h(a)g(rounding)h(function)g Fu(r)q(nd)f Fw(that)f(when)i Fu(u)f Fv(2)h(R)e Fw(is)i(b)q(et)o(w)o(een)f(t)o (w)o(o)114 402 y(adjacen)o(t)12 b(v)m(alues)j(in)f Fu(X)t Fw(,)e Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))h(selects)h(the)f(one)g(nearest)g Fu(u)p Fw(.)39 b(If)14 b(the)f(adjacen)o(t)g(v)m(alues)h(are)f(equidistan)o (t)114 459 y(from)h Fu(u)p Fw(,)h(either)h(ma)o(y)e(b)q(e)i(c)o(hosen.)0 552 y Fx(round)h(to)o(w)o(ard)g(min)o(us)g(in\014nit)o(y:)23 b Fw(The)d(prop)q(ert)o(y)f(of)g(a)h(rounding)g(function)h Fu(r)q(nd)e Fw(that)g(when)i Fu(u)f Fv(2)g(R)f Fw(is)114 609 y(b)q(et)o(w)o(een)c(t)o(w)o(o)f(adjacen)o(t)h(v)m(alues)h(in)g Fu(X)t Fw(,)e Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))g(selects)i(the)g(one)f(less)h (than)f Fu(u)p Fw(.)0 703 y Fx(round)i(to)o(w)o(ard)g(zero:)22 b Fw(The)17 b(prop)q(ert)o(y)f(of)g(a)g(rounding)h(function)h Fu(r)q(nd)e Fw(that)g(when)h Fu(u)d Fv(2)i(R)g Fw(is)g(b)q(et)o(w)o(een)h(t)o (w)o(o)114 759 y(adjacen)o(t)d(v)m(alues)j(in)f Fu(X)t Fw(,)e Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))g(selects)i(the)f(one)h(nearest)f(0.)0 853 y Fx(shall:)23 b Fw(A)17 b(v)o(erbal)g(form)f(used)h(to)f(indicate)i (requiremen)o(ts)f(strictly)g(to)f(b)q(e)i(follo)o(w)o(ed)f(in)g(order)g(to)f (conform)g(to)114 909 y(the)f(standard)g(and)g(from)g(whic)o(h)h(no)f (deviation)h(is)g(p)q(ermitted.)k(\(Quoted)c(from)e([2)o(].\))0 1003 y Fx(should:)23 b Fw(A)18 b(v)o(erbal)h(form)f(used)h(to)f(indicate)i (that)e(among)g(sev)o(eral)g(p)q(ossibiliti)q(es)j(one)e(is)g(recommended)g (as)114 1060 y(particularly)d(suitable,)g(without)g(men)o(tioning)g(or)f (excluding)i(others;)e(or)g(that)f(\(in)i(the)g(negativ)o(e)f(form\))114 1116 y(a)g(certain)g(p)q(ossibilit)o(y)j(is)d(deprecated)h(but)g(not)e (prohibited.)22 b(\(Quoted)15 b(from)g([2)o(].\))0 1210 y Fx(signature)j Fw(\(of)c(a)h(function)h(or)f(op)q(eration\))p Fx(:)22 b Fw(The)12 b(name)f(of)f(a)h(function)23 b(or)10 b(op)q(eration,)i(a)f(list)h(of)e(its)i (argumen)o(t)114 1266 y(t)o(yp)q(es,)i(and)i(the)f(result)h(t)o(yp)q(e)f (\(including)j(exceptional)e(v)m(alues)h(if)e(an)o(y\).)20 b(F)l(or)14 b(example,)i(the)f(signature)214 1360 y Fu(add)286 1367 y Fp(I)318 1360 y Fw(:)d Fu(I)h Fv(\002)e Fu(I)16 b Fv(!)d Fu(I)h Fv([)c(f)p Fx(in)o(teger)p 774 1360 16 2 v 19 w(o)o(v)o(er\015o)o(w)n Fv(g)114 1454 y Fw(states)18 b(that)h(the)h(op)q(eration)f Fu(add)712 1461 y Fp(I)751 1454 y Fw(tak)o(es)g(t)o(w)o(o)f(in)o(teger)i (argumen)o(ts)f(\()p Fu(I)d Fv(\002)d Fu(I)t Fw(\))19 b(and)h(pro)q(duces)g (either)g(a)114 1510 y(single)c(in)o(teger)g(result)f(\()p Fu(I)t Fw(\))f(or)h(the)g(exceptional)i(v)m(alue)f Fx(in)o(teger)p 1242 1510 V 19 w(o)o(v)o(er\015o)o(w)p Fw(.)0 1682 y FC(5)69 b(The)23 b(arithmetic)c(t)n(yp)r(es)0 1812 y Fw(A)f(t)o(yp)q(e)g(consists)g (of)g(a)f(set)h(of)g(v)m(alues)h(and)f(a)g(set)f(of)h(op)q(erations)g(that)f (manipulate)i(these)g(v)m(alues.)29 b(F)l(or)17 b(an)o(y)0 1868 y(particular)k(t)o(yp)q(e,)h(the)f(set)g(of)f(v)m(alues)i(is)g(c)o (haracterized)f(b)o(y)g(a)f(small)i(n)o(um)o(b)q(er)f(of)f(parameters.)36 b(An)21 b(exact)0 1924 y(de\014nition)c(of)e(the)g(v)m(alue)h(set)f(will)i(b) q(e)f(giv)o(en)g(in)g(terms)f(of)f(these)i(parameters.)0 2009 y(Giv)o(en)k(the)g(t)o(yp)q(e's)f(v)m(alue)i(set)f(\(V\),)e(the)i(t)o(yp)q (e's)f(op)q(erations)h(will)i(b)q(e)e(sp)q(eci\014ed)i(as)d(a)g(collection)j (of)d(mathe-)0 2066 y(matical)d(functions)g(on)f(V.)g(These)g(functions)h(t)o (ypically)h(return)e(v)m(alues)h(in)g(V,)f(but)g(they)h(ma)o(y)e(instead)i (return)0 2122 y(certain)f(\\exceptional")h(v)m(alues)h(that)d(are)h(not)f (in)i(an)o(y)f(arithmetic)h(t)o(yp)q(e.)j(The)d(exceptional)g(v)m(alues)g (are)f Fx(in)o(te-)0 2179 y(ger)p 75 2179 V 18 w(o)o(v)o(er\015o)o(w)p Fw(,)e Fx(\015oating)p 478 2179 V 20 w(o)o(v)o(er\015o)o(w)p Fw(,)g Fx(under\015o)o(w)p Fw(,)h(and)h Fx(unde\014ned)p Fw(.)114 2306 y Fq(NOTE)g({)31 b(Exceptional)15 b(v)n(alues)g(are)g(used)h(as)g(part)f (of)f(the)i(de\014ning)f(formalism)d(only)m(.)20 b(With)15 b(resp)q(ect)i(to)114 2356 y(this)g(In)o(ternational)f(Standard,)h(they)h(do) e(not)h(represen)o(t)i(v)n(alues)e(of)f(an)o(y)h(of)f(the)i(data)e(t)o(yp)q (es)i(describ)q(ed.)114 2406 y(There)c(is)g(no)f(requiremen)o(t)g(that)h (they)g(b)q(e)g(represen)o(ted)i(or)e(stored)g(in)f(the)h(computing)e (system.)18 b(They)c(are)114 2456 y(not)f(used)i(in)f(subsequen)o(t)h (arithmetic)e(op)q(erations.)114 2584 y(NOTE)j({)32 b(The)17 b(v)n(alues)f Fo(Not-a-Numb)n(er)f Fq(and)h Fo(in\014nity)h Fq(in)o(tro)q(duced)g(in)e(IEC)i(559)e(\(also)h(kno)o(wn)f(as)i(IEEE)114 2633 y(754\))10 b(are)i(not)f(considered)i(exceptional)e(v)n(alues)g(for)g (the)h(purp)q(oses)h(of)e(this)g(In)o(ternational)g(Standard.)17 b(They)114 2683 y(are)d(\\con)o(tin)o(uation)f(v)n(alues")g(as)h(de\014ned)h (in)e(6.1.2.)0 2828 y Fw(6)p eop %%Page: 7 15 bop -72 891 13 603 v -72 1446 13 348 v -72 1568 13 125 v -72 1897 13 142 v -110 2526 51 13 v -110 2650 V 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y Fw(Whenev)o(er)e(an)g(arithmetic)h(op)q(eration)f(returns)g(an)g (exceptional)i(v)m(alue,)f(noti\014cation)g(of)e(this)i(shall)g(o)q(ccur)f (as)0 102 y(describ)q(ed)h(in)f(clause)g(6.)0 186 y(Eac)o(h)g(op)q(eration)g (has)g(a)g(signature)g(whic)o(h)h(describ)q(es)g(its)f(inputs)h(and)f (outputs)g(\(including)j(exceptional)e(v)m(al-)0 243 y(ues\).)j(Eac)o(h)15 b(op)q(eration)g(is)h(further)f(de\014ned)i(b)o(y)e(one)g(or)g(more)g (axioms.)0 327 y(The)e(t)o(yp)q(e)g(Bo)q(olean)g(is)h(used)f(in)g(this)h(In)o (ternational)f(Standard)g(to)f(sp)q(ecify)i(parameter)e(v)m(alues)i(and)f (the)g(results)0 384 y(of)18 b(comparison)h(op)q(erations.)31 b(An)19 b(implemen)o(tation)h(is)g(not)e(required)i(to)e(pro)o(vide)i(a)e(Bo) q(olean)h(t)o(yp)q(e,)h(nor)e(is)0 440 y(it)f(required)h(to)f(pro)o(vide)g (op)q(erations)h(on)f(b)q(o)q(olean)h(v)m(alues.)26 b(Ho)o(w)o(ev)o(er,)16 b(an)h(implemen)o(tation)i(shall)f(pro)o(vide)f(a)0 497 y(means)e(of)g (distinguishing)j Fx(true)d Fw(from)f Fx(false)i Fw(as)f(parameter)f(v)m (alues)i(and)g(as)f(results)g(of)g(op)q(erations.)114 625 y Fq(NOTE)c({)21 b(This)11 b(In)o(ternational)f(Standard)h(requires)h(an)f (implem)o(en)o(tation)d(to)j(pro)o(vide)f(\\means")g(or)h(\\meth-)114 674 y(o)q(ds")k(to)h(access)h(v)n(alues,)f(op)q(erations,)g(or)f(other)i (facilities.)22 b(Ideally)m(,)14 b(these)j(metho)q(ds)f(are)g(pro)o(vided)f (b)o(y)h(a)114 724 y(language)d(or)i(binding)f(standard,)h(and)f(the)h (implemen)o(tation)d(merely)h(cites)j(these)g(standards.)21 b(Only)15 b(if)f(a)114 774 y(binding)e(standard)h(do)q(es)g(not)g(exist,)g(m) o(ust)f(an)h(individual)e(implem)o(en)o(tation)f(supply)j(this)g(information) d(on)114 824 y(its)k(o)o(wn.)j(See)e(A.7.)0 1024 y FB(5.1)56 b(In)n(teger)18 b(t)n(yp)r(es)0 1138 y Fw(An)d(in)o(teger)h(t)o(yp)q(e)f Fu(I)k Fw(shall)d(b)q(e)g(a)f(subset)g(of)g Fv(Z)t Fw(,)f(c)o(haracterized)i (b)o(y)f(four)g(parameters:)114 1260 y Fu(bounded)f Fv(2)f Fu(B)r(ool)q(ean)122 b Fw(\(whether)15 b(the)g(set)g Fu(I)k Fw(is)d(\014nite\))114 1316 y Fu(modul)q(o)29 b Fv(2)13 b Fu(B)r(ool)q(ean) 122 b Fw(\(whether)15 b(out-of-b)q(ounds)h(results)f(\\wrap"\))114 1373 y Fu(minint)36 b Fv(2)13 b Fu(I)269 b Fw(\(the)15 b(smallest)h(in)o (teger)f(in)h(I\))114 1429 y Fu(maxint)29 b Fv(2)13 b Fu(I)269 b Fw(\(the)15 b(largest)g(in)o(teger)g(in)h(I\))0 1551 y(If)f Fr(b)n(ounde)n(d)20 b Fw(is)c Fx(false)p Fw(,)f(the)g(set)g Fu(I)k Fw(satis\014es)114 1673 y Fu(I)d Fw(=)d Fv(Z)0 1795 y Fw(In)j(this)f(case,)g Fu(modul)q(o)g Fw(shall)h(b)q(e)g Fx(false)p Fw(,)f(and)g(the)h(v)m(alues)g(of)f Fu(minint)g Fw(and)h Fu(maxint)f Fw(are)g(not)g(meaningful.)0 1880 y(If)g Fr(b)n(ounde)n(d)20 b Fw(is)c Fx(true)p Fw(,)e(the)i(set)f(I)g(satis\014es) 114 2002 y Fu(I)h Fw(=)d Fv(f)p Fu(x)f Fv(2)h(Z)h(j)e Fu(minint)h Fv(\024)g Fu(x)f Fv(\024)h Fu(maxint)p Fv(g)0 2124 y Fw(and)i Fu(minint)h Fw(and)f Fu(maxint)h Fw(shall)g(satisfy)114 2246 y Fu(maxint)d(>)g Fw(0)114 2359 y(and)i(one)g(of:)65 b Fu(minint)13 b Fw(=)g(0)400 2415 y Fu(minint)g Fw(=)g Fv(\000)p Fw(\()p Fu(maxint)p Fw(\))400 2472 y Fu(minint)g Fw(=)g Fv(\000)p Fw(\()p Fu(maxint)d Fw(+)h(1\))0 2594 y(An)21 b(in)o(teger)f(t)o(yp)q(e)h(with)g Fu(minint)g(<)h Fw(0)e(is)h(called)h Fr(signe)n(d)p Fw(.)35 b(An)21 b(in)o(teger)f(t)o(yp)q(e)h(with)g Fu(minint)g Fw(=)h(0)e(is)h (called)0 2650 y Fr(unsigne)n(d)p Fw(.)e(An)c(in)o(teger)g(t)o(yp)q(e)h(in)g (whic)o(h)g Fr(b)n(ounde)n(d)j Fw(is)d Fx(false)g Fw(is)g Fr(signe)n(d)p Fw(.)1927 2828 y(7)p eop %%Page: 8 16 bop -72 822 13 349 v -72 2136 13 57 v -72 2828 13 601 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)114 45 y Fq(NOTE)e({)28 b(Most)14 b(traditional)f(programmi)o(ng)e(languages)j(call)f(for)h(b)q(ounded)g(in)o (tegers.)20 b(Others)15 b(allo)o(w)e(the)114 95 y(in)o(teger)f(t)o(yp)q(e)g (to)f(ha)o(v)o(e)g(an)h(un)o(b)q(ounded)g(range.)17 b(A)12 b(few)f(languages)g(p)q(ermit)g(the)h(implemen)o(tatio)o(n)d(to)i(decide)114 145 y(whether)k(the)f(in)o(teger)h(t)o(yp)q(e)f(will)e(b)q(e)j(b)q(ounded)f (or)g(un)o(b)q(ounded.)19 b(\(See)c(A.5.1.0.3)c(for)i(further)i (discussion.\))114 273 y(NOTE)g({)29 b(Op)q(erations)16 b(on)e(un)o(b)q (ounded)i(in)o(tegers)f(will)e(not)i(o)o(v)o(er\015o)o(w,)f(but)h(ma)o(y)e (fail)g(due)j(to)e(exhaustion)114 322 y(of)f(resources.)0 457 y Fw(An)19 b(implemen)o(tation)g(ma)o(y)f(pro)o(vide)h(more)f(than)h(one)f (in)o(teger)h(t)o(yp)q(e.)29 b(A)19 b(metho)q(d)g(shall)g(b)q(e)g(pro)o (vided)g(for)f(a)0 513 y(program)e(to)h(obtain)h(the)g(v)m(alues)g(of)f(the)h (parameters)f Fr(b)n(ounde)n(d)5 b Fw(,)17 b Fu(modul)q(o)p Fw(,)f Fu(minint)p Fw(,)i(and)g Fu(maxint)p Fw(,)g(for)f(eac)o(h)0 570 y(in)o(teger)e(t)o(yp)q(e)h(pro)o(vided.)114 698 y Fq(NOTE)e({)28 b(If)14 b(the)g(v)n(alue)g(of)f(a)h(parameter)f(\(lik)o(e)h Fo(b)n(ounde)n(d)t Fq(\))h(is)f(dictated)h(b)o(y)f(a)f(language)g(standard,)h (imple-)114 747 y(men)o(tations)e(of)h(that)h(language)f(need)i(not)f(pro)o (vide)g(program)e(access)k(to)d(that)h(parameter)g(explicitly)m(.)0 946 y Fx(5.1.1)52 b(Op)q(erations)0 1060 y Fw(F)l(or)15 b(eac)o(h)g(in)o (teger)g(t)o(yp)q(e,)g(the)g(follo)o(wing)h(op)q(erations)g(shall)g(b)q(e)g (pro)o(vided:)114 1194 y Fu(add)186 1201 y Fp(I)205 1194 y Fw(:)35 b Fu(I)14 b Fv(\002)c Fu(I)19 b Fv(!)13 b Fu(I)g Fv([)e(f)p Fx(in)o(teger)p 687 1194 16 2 v 18 w(o)o(v)o(er\015o)o(w)o Fv(g)114 1251 y Fu(sub)181 1258 y Fp(I)200 1251 y Fw(:)40 b Fu(I)14 b Fv(\002)c Fu(I)19 b Fv(!)13 b Fu(I)g Fv([)e(f)p Fx(in)o(teger)p 687 1251 V 18 w(o)o(v)o(er\015o)o(w)o Fv(g)114 1307 y Fu(mul)194 1314 y Fp(I)213 1307 y Fw(:)27 b Fu(I)14 b Fv(\002)c Fu(I)19 b Fv(!)13 b Fu(I)g Fv([)e(f)p Fx(in)o(teger)p 687 1307 V 18 w(o)o(v)o(er\015o)o(w)o Fv(g)114 1363 y Fu(div)176 1370 y Fp(I)195 1363 y Fw(:)45 b Fu(I)14 b Fv(\002)c Fu(I)19 b Fv(!)13 b Fu(I)g Fv([)e(f)p Fx(in)o(teger)p 687 1363 V 18 w(o)o(v)o(er\015o)o(w)o Fu(;)d Fx(unde\014ned)o Fv(g)114 1420 y Fu(r)q(em)197 1427 y Fp(I)216 1420 y Fw(:)24 b Fu(I)14 b Fv(\002)c Fu(I)19 b Fv(!)13 b Fu(I)g Fv([)e(f)p Fx(unde\014ned)p Fv(g)114 1476 y Fu(mod)200 1483 y Fp(I)219 1476 y Fw(:)21 b Fu(I)14 b Fv(\002)c Fu(I)19 b Fv(!)13 b Fu(I)g Fv([)e(f)p Fx(unde\014ned)p Fv(g)114 1533 y Fu(neg)184 1540 y Fp(I)204 1533 y Fw(:)36 b Fu(I)98 b Fv(!)13 b Fu(I)g Fv([)e(f)p Fx(in)o(teger)p 687 1533 V 18 w(o)o(v)o(er\015o)o(w)o Fv(g)114 1589 y Fu(abs)179 1596 y Fp(I)198 1589 y Fw(:)42 b Fu(I)98 b Fv(!)13 b Fu(I)g Fv([)e(f)p Fx(in)o(teger)p 687 1589 V 18 w(o)o(v)o(er\015o)o(w)o Fv(g)114 1646 y Fu(sig)r(n)202 1653 y Fp(I)221 1646 y Fw(:)19 b Fu(I)98 b Fv(!)13 b Fu(I)114 1702 y(eq)155 1709 y Fp(I)175 1702 y Fw(:)65 b Fu(I)14 b Fv(\002)c Fu(I)19 b Fv(!)13 b Fu(B)r(ool)q(ean)114 1759 y(neq)182 1766 y Fp(I)202 1759 y Fw(:)38 b Fu(I)14 b Fv(\002)c Fu(I)19 b Fv(!)13 b Fu(B)r(ool)q(ean)114 1815 y(l)q(ss)171 1822 y Fp(I)191 1815 y Fw(:)49 b Fu(I)14 b Fv(\002)c Fu(I)19 b Fv(!)13 b Fu(B)r(ool)q(ean)114 1872 y(l)q(eq)170 1879 y Fp(I)190 1872 y Fw(:)50 b Fu(I)14 b Fv(\002)c Fu(I)19 b Fv(!)13 b Fu(B)r(ool)q(ean)114 1928 y(g)r(tr)175 1935 y Fp(I)194 1928 y Fw(:)46 b Fu(I)14 b Fv(\002)c Fu(I)19 b Fv(!)13 b Fu(B)r(ool)q(ean)114 1984 y(g)r(eq)179 1991 y Fp(I)198 1984 y Fw(:)42 b Fu(I)14 b Fv(\002)c Fu(I)19 b Fv(!)13 b Fu(B)r(ool)q(ean)0 2119 y Fw(If)i Fu(I)k Fw(is)d(unsigned,)g(it)g(is)f(p)q(ermissible)j(to)d (omit)g(the)g(op)q(erations)g Fu(neg)1191 2126 y Fp(I)1211 2119 y Fw(,)g Fu(abs)1304 2126 y Fp(I)1324 2119 y Fw(,)g(and)g Fu(sig)r(n)1528 2126 y Fp(I)1548 2119 y Fw(.)0 2267 y Fx(5.1.2)52 b(Mo)q(dulo)18 b(in)o(tegers)f(v)o(ersus)e(o)o(v)o(er\015o)o(w)0 2381 y Fw(If)f Fr(b)n(ounde)n(d)j Fw(is)d Fx(true)p Fw(,)f(the)h (mathematical)f(op)q(erations)h(+,)f Fv(\000)p Fw(,)h Fv(\003)p Fw(,)f(and)h Fu(=)f Fw(can)g(pro)q(duce)h(results)g(that)f(lie)h(outside)0 2438 y(the)f(set)g Fu(I)t Fw(.)19 b(In)14 b(suc)o(h)f(cases,)g(the)h (computational)f(op)q(erations)h Fu(add)1148 2445 y Fp(I)1167 2438 y Fw(,)f Fu(sub)1260 2445 y Fp(I)1280 2438 y Fw(,)g Fu(mul)1386 2445 y Fp(I)1405 2438 y Fw(,)h(and)f Fu(div)1580 2445 y Fp(I)1612 2438 y Fw(shall)i(either)f(cause)0 2494 y(a)h(noti\014cation)h(\(if)f Fu(modul)q(o)f Fw(=)i Fx(false)p Fw(\),)f(or)g(return)g(a)g(\\wrapp)q(ed")g (result)g(\(if)h Fu(modul)q(o)e Fw(=)h Fx(true)p Fw(\).)0 2579 y(The)g(help)q(er)i(function)114 2701 y Fu(w)q(r)q(ap)217 2708 y Fp(I)236 2701 y Fw(:)j Fv(Z)c(!)d Fu(I)0 2828 y Fw(8)p eop %%Page: 9 17 bop -72 308 13 309 v -72 801 13 113 v -72 1027 V -72 1252 V -72 2325 13 1017 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y Fw(\(whic)o(h)e(pro)q(duces)g (the)f(wrapp)q(ed)h(result\))f(is)h(de\014ned)g(as)f(follo)o(ws:)114 163 y Fu(w)q(r)q(ap)217 170 y Fp(I)236 163 y Fw(\()p Fu(x)p Fw(\))d(=)h Fu(x)d Fw(+)h Fu(j)h Fv(\003)e Fw(\()p Fu(maxint)g Fv(\000)g Fu(minint)h Fw(+)f(1\))105 b(for)15 b(some)g Fu(j)i Fw(in)f Fv(Z)114 247 y Fu(w)q(r)q(ap)217 254 y Fp(I)236 247 y Fw(\()p Fu(x)p Fw(\))c Fv(2)h Fu(I)0 428 y Fx(5.1.3)52 b(Axioms)0 542 y Fw(F)l(or)15 b(all)h(v)m(alues)g Fu(x)f Fw(and)h Fu(y)h Fw(in)f Fu(I)t Fw(,)e(the)h(follo)o(wing)h(shall)h(apply:)114 671 y Fu(add)186 678 y Fp(I)205 671 y Fw(\()p Fu(x;)8 b(y)r Fw(\))102 b(=)13 b Fu(x)d Fw(+)g Fu(y)374 b Fw(if)15 b Fu(x)10 b Fw(+)h Fu(y)j Fv(2)f Fu(I)414 727 y Fw(=)g Fu(w)q(r)q(ap)565 734 y Fp(I)584 727 y Fw(\()p Fu(x)d Fw(+)g Fu(y)r Fw(\))214 b(if)15 b Fu(x)10 b Fw(+)h Fu(y)j Fv(62)f Fu(I)19 b Fw(and)c Fu(modul)q(o)d Fw(=)h Fx(true)414 784 y Fw(=)g Fx(in)o(teger)p 623 784 16 2 v 18 w(o)o(v)o(er\015o)o(w)111 b Fw(if)15 b Fu(x)10 b Fw(+)h Fu(y)j Fv(62)f Fu(I)19 b Fw(and)c Fu(modul)q(o)d Fw(=)h Fx(false)114 897 y Fu(sub)181 904 y Fp(I)200 897 y Fw(\()p Fu(x;)8 b(y)r Fw(\))107 b(=)13 b Fu(x)d Fv(\000)g Fu(y)374 b Fw(if)15 b Fu(x)10 b Fv(\000)h Fu(y)j Fv(2)f Fu(I)414 953 y Fw(=)g Fu(w)q(r)q(ap)565 960 y Fp(I)584 953 y Fw(\()p Fu(x)d Fv(\000)g Fu(y)r Fw(\))214 b(if)15 b Fu(x)10 b Fv(\000)h Fu(y)j Fv(62)f Fu(I)19 b Fw(and)c Fu(modul)q(o)d Fw(=)h Fx(true)414 1010 y Fw(=)g Fx(in)o(teger)p 623 1010 V 18 w(o)o(v)o(er\015o)o(w)111 b Fw(if)15 b Fu(x)10 b Fv(\000)h Fu(y)j Fv(62)f Fu(I)19 b Fw(and)c Fu(modul)q(o)d Fw(=)h Fx(false)114 1123 y Fu(mul)194 1130 y Fp(I)213 1123 y Fw(\()p Fu(x;)8 b(y)r Fw(\))94 b(=)13 b Fu(x)d Fv(\003)g Fu(y)386 b Fw(if)15 b Fu(x)10 b Fv(\003)g Fu(y)15 b Fv(2)e Fu(I)414 1179 y Fw(=)g Fu(w)q(r)q(ap)565 1186 y Fp(I)584 1179 y Fw(\()p Fu(x)d Fv(\003)g Fu(y)r Fw(\))226 b(if)15 b Fu(x)10 b Fv(\003)g Fu(y)15 b Fv(62)e Fu(I)18 b Fw(and)e Fu(modul)q(o)c Fw(=)g Fx(true)414 1235 y Fw(=)h Fx(in)o(teger)p 623 1235 V 18 w(o)o(v)o(er\015o)o(w)111 b Fw(if)15 b Fu(x)10 b Fv(\003)g Fu(y)15 b Fv(62)e Fu(I)18 b Fw(and)e Fu(modul)q(o)c Fw(=)g Fx(false)114 1348 y Fw(An)j(implemen)o(tation)i(shall)f(pro)o(vide)g(one)f (or)g(b)q(oth)g(of)g(the)g(op)q(eration)g(pairs)h Fu(div)1536 1332 y Fn(1)1534 1361 y Fp(I)1555 1348 y Fu(=r)q(em)1661 1332 y Fn(1)1661 1361 y Fp(I)1695 1348 y Fw(and)g Fu(div)1848 1332 y Fn(2)1846 1361 y Fp(I)1866 1348 y Fu(=r)q(em)1972 1332 y Fn(2)1972 1361 y Fp(I)1992 1348 y Fw(.)114 1405 y(\(The)f(functions)h Fv(bc)f Fw(and)h Fu(tr)q Fw(\(\))e(are)h(de\014ned)i(in)f(4.1.\))114 1518 y Fu(div)178 1501 y Fn(1)176 1531 y Fp(I)196 1518 y Fw(\()p Fu(x;)8 b(y)r Fw(\))111 b(=)13 b Fv(b)p Fu(x=y)r Fv(c)364 b Fw(if)15 b Fu(y)g Fv(6)p Fw(=)e(0)i(and)g Fv(b)p Fu(x=y)r Fv(c)e(2)g Fu(I)414 1574 y Fw(=)g Fu(w)q(r)q(ap)565 1581 y Fp(I)584 1574 y Fw(\()p Fv(b)p Fu(x=y)r Fv(c)p Fw(\))206 b(if)15 b Fu(y)g Fv(6)p Fw(=)e(0)i(and)g Fv(b)p Fu(x=y)r Fv(c)e(62)g Fu(I)18 b Fw(and)e Fu(modul)q(o)11 b Fw(=)i Fx(true)414 1631 y Fw(=)g Fx(in)o(teger)p 623 1631 V 18 w(o)o(v)o(er\015o)o(w)111 b Fw(if)15 b Fu(y)g Fv(6)p Fw(=)e(0)i(and)g Fv(b)p Fu(x=y)r Fv(c)e(62)g Fu(I)18 b Fw(and)e Fu(modul)q(o)11 b Fw(=)i Fx(false)414 1687 y Fw(=)g Fx(unde\014ned)255 b Fw(if)15 b Fu(y)g Fw(=)e(0)114 1800 y Fu(r)q(em)197 1783 y Fn(1)197 1813 y Fp(I)216 1800 y Fw(\()p Fu(x;)8 b(y)r Fw(\))91 b(=)13 b Fu(x)d Fv(\000)g Fw(\()p Fv(b)p Fu(x=y)r Fv(c)g(\003)g Fu(y)r Fw(\))180 b(if)15 b Fu(y)g Fv(6)p Fw(=)e(0)414 1856 y(=)g Fx(unde\014ned)255 b Fw(if)15 b Fu(y)g Fw(=)e(0)114 1969 y Fu(div)178 1953 y Fn(2)176 1982 y Fp(I)196 1969 y Fw(\()p Fu(x;)8 b(y)r Fw(\))111 b(=)13 b Fu(tr)q Fw(\()p Fu(x=y)r Fw(\))330 b(if)15 b Fu(y)g Fv(6)p Fw(=)e(0)i(and)g Fu(tr)q Fw(\()p Fu(x=y)r Fw(\))d Fv(2)h Fu(I)414 2026 y Fw(=)g Fu(w)q(r)q(ap)565 2033 y Fp(I)584 2026 y Fw(\()p Fu(tr)q Fw(\()p Fu(x=y)r Fw(\)\))172 b(if)15 b Fu(y)g Fv(6)p Fw(=)e(0)i(and)g Fu(tr)q Fw(\()p Fu(x=y)r Fw(\))d Fv(62)h Fu(I)19 b Fw(and)c Fu(modul)q(o)d Fw(=)h Fx(true)414 2082 y Fw(=)g Fx(in)o(teger)p 623 2082 V 18 w(o)o(v)o(er\015o)o(w)111 b Fw(if)15 b Fu(y)g Fv(6)p Fw(=)e(0)i(and)g Fu(tr)q Fw(\()p Fu(x=y)r Fw(\))d Fv(62)h Fu(I)19 b Fw(and)c Fu(modul)q(o)d Fw(=)h Fx(false)414 2139 y Fw(=)g Fx(unde\014ned)255 b Fw(if)15 b Fu(y)g Fw(=)e(0)114 2252 y Fu(r)q(em)197 2235 y Fn(2)197 2264 y Fp(I)216 2252 y Fw(\()p Fu(x;)8 b(y)r Fw(\))91 b(=)13 b Fu(x)d Fv(\000)g Fw(\()p Fu(tr)q Fw(\()p Fu(x=y)r Fw(\))f Fv(\003)h Fu(y)r Fw(\))147 b(if)15 b Fu(y)g Fv(6)p Fw(=)e(0)414 2308 y(=)g Fx(unde\014ned)255 b Fw(if)15 b Fu(y)g Fw(=)e(0)114 2421 y(An)i(implemen)o(tation)i(shall)f(pro) o(vide)g(one)f(or)g(b)q(oth)g(of)g Fu(mod)1165 2404 y Fn(1)1165 2434 y Fp(I)1200 2421 y Fw(and)g Fu(mod)1374 2404 y Fn(2)1374 2434 y Fp(I)1393 2421 y Fw(.)114 2534 y Fu(mod)200 2517 y Fn(1)200 2547 y Fp(I)219 2534 y Fw(\()p Fu(x;)8 b(y)r Fw(\))88 b(=)13 b Fu(x)d Fv(\000)g Fw(\()p Fv(b)p Fu(x=y)r Fv(c)g(\003)g Fu(y)r Fw(\))180 b(if)15 b Fu(y)g Fv(6)p Fw(=)e(0)414 2590 y(=)g Fx(unde\014ned)255 b Fw(if)15 b Fu(y)g Fw(=)e(0)114 2703 y Fu(mod)200 2687 y Fn(2)200 2716 y Fp(I)219 2703 y Fw(\()p Fu(x;)8 b(y)r Fw(\))88 b(=)13 b Fu(x)d Fv(\000)g Fw(\()p Fv(b)p Fu(x=y)r Fv(c)g(\003)g Fu(y)r Fw(\))180 b(if)15 b Fu(y)g(>)e Fw(0)1927 2828 y(9)p eop %%Page: 10 18 bop -72 2334 13 57 v -72 2721 13 138 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)414 45 y(=)d Fx(unde\014ned)255 b Fw(if)15 b Fu(y)g Fv(\024)e Fw(0)114 158 y Fu(neg)184 165 y Fp(I)204 158 y Fw(\()p Fu(x)p Fw(\))148 b(=)13 b Fv(\000)p Fu(x)416 b Fw(if)15 b Fv(\000)p Fu(x)e Fv(2)g Fu(I)414 214 y Fw(=)g Fx(in)o(teger)p 623 214 16 2 v 18 w(o)o(v)o(er\015o)o(w)111 b Fw(if)15 b Fv(\000)p Fu(x)e Fv(62)g Fu(I)114 327 y(abs)179 334 y Fp(I)198 327 y Fw(\()p Fu(x)p Fw(\))154 b(=)13 b Fv(j)p Fu(x)p Fv(j)425 b Fw(if)15 b Fv(j)p Fu(x)p Fv(j)d(2)h Fu(I)414 384 y Fw(=)g Fx(in)o(teger)p 623 384 V 18 w(o)o(v)o(er\015o)o(w)111 b Fw(if)15 b Fv(j)p Fu(x)p Fv(j)d(62)h Fu(I)114 497 y(sig)r(n)202 504 y Fp(I)221 497 y Fw(\()p Fu(x)p Fw(\))131 b(=)43 b(1)424 b(if)15 b Fu(x)e(>)g Fw(0)414 553 y(=)43 b(0)424 b(if)15 b Fu(x)e Fw(=)g(0)414 610 y(=)g Fv(\000)p Fw(1)419 b(if)15 b Fu(x)e(<)g Fw(0)114 723 y Fu(eq)155 730 y Fp(I)175 723 y Fw(\()p Fu(x;)8 b(y)r Fw(\))26 b(=)i Fx(true)74 b Fv(\()-8 b(\))26 b Fu(x)13 b Fw(=)g Fu(y)114 835 y(neq)182 842 y Fp(I)202 835 y Fw(\()p Fu(x;)8 b(y)r Fw(\))27 b(=)h Fx(true)46 b Fv(\()-8 b(\))26 b Fu(x)13 b Fv(6)p Fw(=)g Fu(y)114 948 y(l)q(ss)171 955 y Fp(I)191 948 y Fw(\()p Fu(x;)8 b(y)r Fw(\))26 b(=)i Fx(true)58 b Fv(\()-8 b(\))26 b Fu(x)13 b(<)g(y)114 1061 y(l)q(eq)170 1068 y Fp(I)190 1061 y Fw(\()p Fu(x;)8 b(y)r Fw(\))26 b(=)i Fx(true)59 b Fv(\()-8 b(\))26 b Fu(x)13 b Fv(\024)g Fu(y)114 1174 y(g)r(tr)175 1181 y Fp(I)194 1174 y Fw(\()p Fu(x;)8 b(y)r Fw(\))26 b(=)i Fx(true)55 b Fv(\()-8 b(\))26 b Fu(x)13 b(>)g(y)114 1287 y(g)r(eq)179 1294 y Fp(I)198 1287 y Fw(\()p Fu(x;)8 b(y)r Fw(\))27 b(=)h Fx(true)50 b Fv(\()-8 b(\))26 b Fu(x)13 b Fv(\025)g Fu(y)0 1435 y FB(5.2)56 b(Floating)20 b(p)r(oin)n(t)f(t)n(yp)r(es)114 1542 y Fq(NOTE)10 b({)20 b(This)9 b(standard)i(do)q(es)g(not)e(adv)o(o)q(cate)i(an)o(y)e(particular)h(represen) o(tation)h(for)f(\015oating)f(p)q(oin)o(t)g(v)n(alues.)114 1592 y(Ho)o(w)o(ev)o(er,)k(concepts)i(suc)o(h)e(as)g Fo(r)n(adix)p Fq(,)g Fo(pr)n(e)n(cision)p Fq(,)f(and)h Fo(exp)n(onent)h Fq(are)g(deriv)o (ed)f(from)f(an)g(abstract)i(mo)q(del)e(of)114 1642 y(suc)o(h)i(v)n(alues)g (as)g(discussed)h(in)f(A.5.2.)0 1760 y Fw(A)h(\015oating)g(p)q(oin)o(t)h(t)o (yp)q(e)f Fu(F)22 b Fw(shall)16 b(b)q(e)g(a)f(\014nite)h(subset)g(of)e Fv(R)p Fw(,)h(c)o(haracterized)g(b)o(y)h(\014v)o(e)f(parameters:)114 1871 y Fu(r)e Fv(2)g(Z)367 b Fw(\(the)15 b(radix)h(of)e Fu(F)6 b Fw(\))114 1927 y Fu(p)12 b Fv(2)h(Z)366 b Fw(\(the)15 b(precision)i(of)e Fu(F)6 b Fw(\))114 1983 y Fu(emin)12 b Fv(2)h(Z)285 b Fw(\(the)15 b(smallest)h(exp)q(onen)o(t)g(of)e Fu(F)6 b Fw(\))114 2040 y Fu(emax)12 b Fv(2)h(Z)278 b Fw(\(the)15 b(largest)g(exp)q(onen)o(t)h(of)e Fu(F)6 b Fw(\))114 2096 y Fu(denor)q(m)12 b Fv(2)h Fu(B)r(ool)q(ean)99 b Fw(\(whether)15 b Fu(F)22 b Fw(con)o(tains)15 b(denormalized)i(v)m(alues\)) 0 2207 y(The)e(parameters)g Fu(r)h Fw(and)f Fu(p)g Fw(shall)h(satisfy)114 2317 y Fu(r)d Fv(\025)g Fw(2)45 b(and)h Fu(p)12 b Fv(\025)h Fw(2)0 2428 y(and)i Fu(r)h Fw(should)g(b)q(e)g(ev)o(en.)0 2512 y(The)f(parameters)g Fu(emin)p Fw(,)g Fu(emax)p Fw(,)f(and)i Fu(p)f Fw(shall)h(satisfy)114 2623 y Fu(p)10 b Fv(\000)g Fw(2)i Fv(\024)h(\000)p Fu(emin)g Fv(\024)g Fu(r)497 2606 y Fp(p)527 2623 y Fv(\000)e Fw(1)114 2704 y Fu(p)h Fv(\024)h Fu(emax)g Fv(\024)g Fu(r)391 2687 y Fp(p)421 2704 y Fv(\000)d Fw(1)0 2828 y(10)p eop %%Page: 11 19 bop -72 1307 13 100 v -72 1841 13 324 v -72 2103 13 171 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y Fw(Giv)o(en)e(sp)q(eci\014c)h(v)m(alues)f(for)f Fu(r)q Fw(,)f Fu(p)p Fw(,)h Fu(emin)p Fw(,)g Fu(emax)p Fw(,)f(and)i Fu(denor)q(m)p Fw(,)e(the)i(follo)o(wing)g(sets)f(are)f(de\014ned:)114 154 y Fu(F)143 161 y Fp(N)176 154 y Fw(=)f Fv(f)p Fw(0)p Fu(;)22 b Fv(\006)p Fu(i)10 b Fv(\003)g Fu(r)421 138 y Fp(e)p Fm(\000)p Fp(p)500 154 y Fv(j)15 b Fu(i;)8 b(e)j Fv(2)i(Z)t Fu(;)22 b(r)734 138 y Fp(p)p Fm(\000)p Fn(1)811 154 y Fv(\024)13 b Fu(i)g Fv(\024)g Fu(r)958 138 y Fp(p)987 154 y Fv(\000)e Fw(1)p Fu(;)22 b(emin)13 b Fv(\024)f Fu(e)h Fv(\024)g Fu(emax)p Fv(g)114 267 y Fu(F)143 274 y Fp(D)176 267 y Fw(=)g Fv(f\006)p Fu(i)d Fv(\003)g Fu(r)363 251 y Fp(e)p Fm(\000)p Fp(p)442 267 y Fv(j)k Fu(i;)8 b(e)k Fv(2)h(Z)t Fu(;)22 b Fw(1)12 b Fv(\024)h Fu(i)g Fv(\024)g Fu(r)836 251 y Fp(p)p Fm(\000)p Fn(1)910 267 y Fv(\000)e Fw(1)p Fu(;)22 b(e)13 b Fw(=)g Fu(emin)p Fv(g)114 380 y Fu(F)33 b Fw(=)13 b Fu(F)253 387 y Fp(N)297 380 y Fv([)e Fu(F)367 387 y Fp(D)460 380 y Fw(if)k Fu(denor)q(m)e Fw(=)g Fx(true)176 436 y Fw(=)g Fu(F)253 443 y Fp(N)460 436 y Fw(if)i Fu(denor)q(m)e Fw(=)g Fx(false)0 546 y Fw(The)30 b(elemen)o(ts)g(of)f Fu(F)403 553 y Fp(N)467 546 y Fw(are)g(called)i Fr(normalize)n(d)j Fw(\015oating)29 b(p)q(oin)o(t)h(v)m(alues)h(b)q(ecause)g(of)e(the)g(constrain)o(t)0 602 y Fu(r)22 586 y Fp(p)p Fm(\000)p Fn(1)99 602 y Fv(\024)13 b Fu(i)g Fv(\024)g Fu(r)246 586 y Fp(p)275 602 y Fv(\000)e Fw(1.)19 b(The)d(elemen)o(ts)g(of)e Fu(F)736 609 y Fp(D)784 602 y Fw(are)h(called)h Fr(denormalize)n(d)k Fw(\015oating)15 b(p)q(oin)o(t)h(v)m(alues.)114 712 y Fq(NOTE)g({)32 b(The)16 b(terms)g Fo(normalize)n(d)k Fq(and)15 b Fo(denormalize)n(d)21 b Fq(refer)c(to)e(the)i(mathematical)12 b(v)n(alues)k(in)o(v)o(olv)o(ed,)114 762 y(not)d(to)h(an)o(y)g(metho)q(d)f(of)g(represen)o(tation.)0 878 y Fw(The)h(t)o(yp)q(e)g Fu(F)21 b Fw(is)15 b(called)g Fr(normalize)n(d)j Fw(if)d(it)f(con)o(tains)g(only)h(normalized)g(v)m(alues,)g(and)f(called)i Fr(denormalize)n(d)i Fw(if)d(it)0 934 y(con)o(tains)g(denormalized)i(v)m (alues)g(as)d(w)o(ell.)0 1019 y(An)23 b(implemen)o(tation)g(ma)o(y)f(pro)o (vide)h(more)e(than)i(one)f(\015oating)g(p)q(oin)o(t)h(data)f(t)o(yp)q(e.)41 b(A)22 b(metho)q(d)h(shall)g(b)q(e)0 1076 y(pro)o(vided)16 b(for)f(a)f(program)h(to)f(obtain)i(the)f(v)m(alues)h(of)f(the)g(parameters)g Fu(r)q Fw(,)f Fu(p)p Fw(,)h Fu(emin)p Fw(,)g Fu(emax)p Fw(,)g(and)g Fu(denor)q(m)p Fw(,)g(for)0 1132 y(eac)o(h)g(\015oating)g(p)q(oin)o(t)h(t)o (yp)q(e)f(pro)o(vided.)114 1242 y Fq(NOTE)i({)33 b(The)17 b(conditions)f (placed)h(up)q(on)g(the)g(parameters)g Fl(r)q Fq(,)f Fl(p)p Fq(,)h Fl(emin)p Fq(,)h(and)e Fl(emax)h Fq(are)g(su\016cien)o(t)g(to)114 1292 y(guaran)o(tee)e(that)f(the)h(abstract)h(mo)q(del)d(of)h Fl(F)20 b Fq(is)14 b(w)o(ell-de\014ned)h(and)g(con)o(tains)f(its)h(o)o(wn)f (parameters.)20 b(More)114 1341 y(stringen)o(t)14 b(conditions)f(are)h (needed)h(to)f(pro)q(duce)h(a)e(computationally)e(useful)j(\015oating)e(p)q (oin)o(t)i(t)o(yp)q(e.)k(These)114 1391 y(are)12 b(design)g(decisions)g(whic) o(h)g(are)g(b)q(ey)o(ond)g(the)g(scop)q(e)h(of)e(this)h(part)g(of)f(this)h (In)o(ternational)f(Standard.)17 b(\(See)114 1441 y(A.5.2.\))0 1557 y Fw(The)e(follo)o(wing)h(set)f(is)h(an)f(extension)h(of)f Fu(F)22 b Fw(that)14 b(spans)h(all)h(of)f Fv(R)p Fw(:)114 1667 y Fu(F)149 1650 y Fm(\003)197 1667 y Fw(=)e Fu(F)274 1674 y Fp(N)318 1667 y Fv([)d Fu(F)387 1674 y Fp(D)429 1667 y Fv([)h(f)k(\006)p Fu(i)10 b Fv(\003)g Fu(r)624 1650 y Fp(e)p Fm(\000)p Fp(p)702 1667 y Fv(j)15 b Fu(i;)8 b(e)k Fv(2)g(Z)t Fu(;)22 b(r)936 1650 y Fp(p)p Fm(\000)p Fn(1)1014 1667 y Fv(\024)13 b Fu(i)f Fv(\024)h Fu(r)1160 1650 y Fp(p)1190 1667 y Fv(\000)d Fw(1)p Fu(;)22 b(e)13 b(>)g(emax)p Fv(g)114 1776 y Fq(NOTE)i({)29 b(The)15 b(set)h Fl(F)485 1761 y Fk(\003)518 1776 y Fq(con)o(tains)f(v)n(alues)g(of)f (magnitude)f(larger)i(than)f(those)i(that)f(are)g(represen)o(table)i(in)114 1826 y(the)d(t)o(yp)q(e)h Fl(F)6 b Fq(.)17 b Fl(F)374 1811 y Fk(\003)406 1826 y Fq(will)c(b)q(e)h(used)h(in)e(de\014ning)h(rounding.)0 1972 y Fx(5.2.1)52 b(Range)18 b(and)g(gran)o(ularit)o(y)f(constan)o(ts)0 2086 y Fw(The)e(range)g(and)h(gran)o(ularit)o(y)f(of)f Fu(F)22 b Fw(is)16 b(c)o(haracterized)f(b)o(y)h(the)f(follo)o(wing)h(deriv)o(ed)g (constan)o(ts:)114 2195 y Fr(fmax)51 b Fw(=)13 b Fu(max)i Fv(f)p Fu(z)g Fv(2)d Fu(F)22 b Fv(j)15 b Fu(z)g(>)e Fw(0)p Fv(g)45 b Fw(=)13 b(\(1)c Fv(\000)i Fu(r)934 2179 y Fm(\000)p Fp(p)981 2195 y Fw(\))e Fv(\003)h Fu(r)1063 2179 y Fp(emax)114 2308 y Fr(fmin)203 2315 y Fp(N)260 2308 y Fw(=)j Fu(min)i Fv(f)p Fu(z)f Fv(2)f Fu(F)536 2315 y Fp(N)585 2308 y Fv(j)i Fu(z)g(>)e Fw(0)p Fv(g)25 b Fw(=)13 b Fu(r)838 2292 y Fp(emin)p Fm(\000)p Fn(1)114 2421 y Fr(fmin)203 2428 y Fp(D)260 2421 y Fw(=)g Fu(min)i Fv(f)p Fu(z)f Fv(2)f Fu(F)536 2428 y Fp(D)584 2421 y Fv(j)i Fu(z)f(>)f Fw(0)p Fv(g)27 b Fw(=)13 b Fu(r)838 2404 y Fp(emin)p Fm(\000)p Fp(p)114 2534 y Fr(fmin)55 b Fw(=)13 b Fu(min)i Fv(f)p Fu(z)f Fv(2)f Fu(F)22 b Fv(j)15 b Fu(z)g(>)e Fw(0)p Fv(g)52 b Fw(=)13 b Fr(fmin)905 2541 y Fp(D)1028 2534 y Fw(if)j Fu(denor)q(m)c Fw(=)h Fx(true)768 2590 y Fw(=)g Fr(fmin)905 2597 y Fp(N)1028 2590 y Fw(if)j Fu(denor)q(m)c Fw(=)h Fx(false)114 2703 y Fu(epsil)q(on)27 b Fw(=)13 b Fu(r)356 2687 y Fn(1)p Fm(\000)p Fp(p)527 2703 y Fw(\(the)i(maxim)o(um)g(relativ)o(e)h(spacing)g(in)g Fu(F)1241 2710 y Fp(N)1274 2703 y Fw(\))1905 2828 y(11)p eop %%Page: 12 20 bop -72 910 13 57 v -72 1023 V -72 1306 13 113 v -72 2111 13 277 v -72 2828 13 623 v -110 4 51 13 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y(A)d(metho)q(d)f(shall)i(b)q(e)f(pro)o(vided)g(for)f(a)g (program)f(to)h(obtain)h(the)g(v)m(alues)g(of)f(the)h(deriv)o(ed)g(constan)o (ts)f Fr(fmax)6 b Fw(,)12 b Fr(fmin)s Fw(,)0 102 y Fr(fmin)90 109 y Fp(N)123 102 y Fw(,)j(and)g Fu(epsil)q(on)p Fw(,)g(for)f(eac)o(h)i (\015oating)f(p)q(oin)o(t)h(data)e(t)o(yp)q(e)h(pro)o(vided.)0 250 y Fx(5.2.2)52 b(Op)q(erations)0 364 y Fw(F)l(or)15 b(eac)o(h)g (\015oating)g(p)q(oin)o(t)h(t)o(yp)q(e,)f(the)g(follo)o(wing)h(op)q(erations) f(shall)h(b)q(e)g(pro)o(vided:)114 498 y Fu(add)186 505 y Fp(F)214 498 y Fw(:)126 b Fu(F)17 b Fv(\002)10 b Fu(F)22 b Fv(!)13 b Fu(F)k Fv([)10 b(f)p Fx(\015oating)p 835 498 16 2 v 21 w(o)o(v)o(er\015o)o(w) n Fu(;)e Fx(under\015o)o(w)o Fv(g)114 555 y Fu(sub)181 562 y Fp(F)210 555 y Fw(:)130 b Fu(F)17 b Fv(\002)10 b Fu(F)22 b Fv(!)13 b Fu(F)k Fv([)10 b(f)p Fx(\015oating)p 835 555 V 21 w(o)o(v)o(er\015o)o(w)n Fu(;)e Fx(under\015o)o(w)o Fv(g)114 611 y Fu(mul)194 618 y Fp(F)222 611 y Fw(:)118 b Fu(F)17 b Fv(\002)10 b Fu(F)22 b Fv(!)13 b Fu(F)k Fv([)10 b(f)p Fx(\015oating)p 835 611 V 21 w(o)o(v)o(er\015o)o(w)n Fu(;)e Fx(under\015o)o(w)o Fv(g)114 668 y Fu(div)176 675 y Fp(F)204 668 y Fw(:)136 b Fu(F)17 b Fv(\002)10 b Fu(F)22 b Fv(!)13 b Fu(F)k Fv([)10 b(f)p Fx(\015oating)p 835 668 V 21 w(o)o(v)o(er\015o)o(w)n Fu(;)e Fx(under\015o)o(w)o Fu(;)g Fx(unde\014ned)p Fv(g)114 724 y Fu(neg)184 731 y Fp(F)213 724 y Fw(:)127 b Fu(F)113 b Fv(!)13 b Fu(F)114 781 y(abs)179 788 y Fp(F)208 781 y Fw(:)132 b Fu(F)113 b Fv(!)13 b Fu(F)114 837 y(sig)r(n)202 844 y Fp(F)231 837 y Fw(:)109 b Fu(F)k Fv(!)13 b Fu(F)114 894 y(exponent)297 901 y Fp(F)327 894 y Fw(:)g Fu(F)113 b Fv(!)13 b Fu(J)i Fv([)10 b(f)p Fx(unde\014ned)p Fv(g)114 950 y Fr(fr)n(action)270 961 y Fp(F)299 950 y Fw(:)41 b Fu(F)113 b Fv(!)13 b Fu(F)114 1006 y(scal)q(e)215 1013 y Fp(F)244 1006 y Fw(:)96 b Fu(F)17 b Fv(\002)10 b Fu(J)26 b Fv(!)13 b Fu(F)k Fv([)10 b(f)p Fx(\015oating)p 835 1006 V 21 w(o)o(v)o(er\015o)o(w)n Fu(;)e Fx(under\015o)o(w)o Fv(g)114 1063 y Fu(succ)201 1070 y Fp(F)230 1063 y Fw(:)110 b Fu(F)j Fv(!)13 b Fu(F)k Fv([)10 b(f)p Fx(\015oating)p 835 1063 V 21 w(o)o(v)o(er\015o)o(w)n Fv(g)114 1119 y Fu(pr)q(ed)204 1126 y Fp(F)232 1119 y Fw(:)108 b Fu(F)113 b Fv(!)13 b Fu(F)k Fv([)10 b(f)p Fx(\015oating)p 835 1119 V 21 w(o)o(v)o(er\015o)o(w)n Fv(g)114 1176 y Fu(ul)q(p)178 1183 y Fp(F)206 1176 y Fw(:)134 b Fu(F)113 b Fv(!)13 b Fu(F)k Fv([)10 b(f)p Fx(under\015o)o(w)p Fu(;)e Fx(unde\014ned)o Fv(g)114 1232 y Fu(tr)q(unc)225 1239 y Fp(F)254 1232 y Fw(:)86 b Fu(F)17 b Fv(\002)10 b Fu(J)26 b Fv(!)13 b Fu(F)114 1289 y(r)q(ound)235 1296 y Fp(F)264 1289 y Fw(:)76 b Fu(F)17 b Fv(\002)10 b Fu(J)26 b Fv(!)13 b Fu(F)k Fv([)10 b(f)p Fx(\015oating)p 835 1289 V 21 w(o)o(v)o(er\015o)o(w)n Fv(g)114 1345 y Fu(intpar)q(t)258 1352 y Fp(F)287 1345 y Fw(:)53 b Fu(F)113 b Fv(!)13 b Fu(F)114 1402 y Fr(fr)n(actp)n(art)286 1413 y Fp(F)316 1402 y Fw(:)24 b Fu(F)113 b Fv(!)13 b Fu(F)114 1458 y(eq)155 1465 y Fp(F)184 1458 y Fw(:)156 b Fu(F)17 b Fv(\002)10 b Fu(F)22 b Fv(!)13 b Fu(B)r(ool)q(ean)114 1515 y(neq)182 1522 y Fp(F)212 1515 y Fw(:)128 b Fu(F)17 b Fv(\002)10 b Fu(F)22 b Fv(!)13 b Fu(B)r(ool)q(ean)114 1571 y(l)q(ss)171 1578 y Fp(F)200 1571 y Fw(:)140 b Fu(F)17 b Fv(\002)10 b Fu(F)22 b Fv(!)13 b Fu(B)r(ool)q(ean)114 1627 y(l)q(eq)170 1634 y Fp(F)199 1627 y Fw(:)141 b Fu(F)17 b Fv(\002)10 b Fu(F)22 b Fv(!)13 b Fu(B)r(ool)q(ean)114 1684 y(g)r(tr)175 1691 y Fp(F)203 1684 y Fw(:)137 b Fu(F)17 b Fv(\002)10 b Fu(F)22 b Fv(!)13 b Fu(B)r(ool)q(ean)114 1740 y(g)r(eq)179 1747 y Fp(F)208 1740 y Fw(:)132 b Fu(F)17 b Fv(\002)10 b Fu(F)22 b Fv(!)13 b Fu(B)r(ool)q(ean)0 1875 y(J)24 b Fw(shall)c(b)q(e)g(a)f(data)g(t)o(yp)q(e)g (con)o(taining)i(all)f(in)o(teger)f(v)m(alues)i(from)d Fv(\000)p Fw(\()p Fu(emax)13 b Fv(\000)h Fu(emin)e Fw(+)i Fu(p)e Fv(\000)i Fw(1\))k(to)h(\()p Fu(emax)13 b Fv(\000)0 1931 y Fu(emin)d Fw(+)h Fu(p)f Fv(\000)g Fw(1\))15 b(inclusiv)o(e.)114 2047 y Fq(NOTE)g({)30 b Fl(J)19 b Fq(should)c(b)q(e)g(a)g(conforming)e(in)o(teger) i(t)o(yp)q(e)h(\(if)e(practical\).)21 b(Ho)o(w)o(ev)o(er,)16 b(a)e(\015oating)g(p)q(oin)o(t)h(t)o(yp)q(e)114 2097 y(will)d(su\016ce.)0 2245 y Fx(5.2.3)52 b(Appro)o(ximate)16 b(op)q(erations)0 2359 y Fw(The)k(op)q(erations)f Fu(add)395 2366 y Fp(F)424 2359 y Fw(,)h Fu(sub)524 2366 y Fp(F)553 2359 y Fw(,)g Fu(mul)666 2366 y Fp(F)695 2359 y Fw(,)g Fu(div)790 2366 y Fp(F)819 2359 y Fw(,)g(and)g Fu(scal)q(e)1046 2366 y Fp(F)1094 2359 y Fw(are)f(appro)o (ximations)h(of)f(exact)g(mathematical)0 2415 y(op)q(erations.)h(They)15 b(di\013er)h(from)e(their)i(exact)f(coun)o(terparts)f(in)j(that)51 2537 y(a\))22 b(they)15 b(pro)q(duce)h(\\rounded")f(results,)h(and)48 2631 y(b\))23 b(they)15 b(pro)q(duce)h(noti\014cations.)0 2828 y(12)p eop %%Page: 13 21 bop -72 908 13 909 v -72 1367 13 255 v -72 1950 13 57 v -72 2820 13 483 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y Fw(The)i(axioms)g(for)f (\015oating)g(p)q(oin)o(t)i(de\014ne)g(these)f(appro)o(ximate)f(op)q (erations)h Fr(as)g(if)g Fw(they)f(w)o(ere)h(computed)g(in)0 102 y(three)15 b(stages:)51 220 y(a\))22 b(Compute)15 b(the)h(exact)f (mathematical)h(answ)o(er.)21 b(\(F)l(or)15 b(addition,)i(a)e(close)i(appro)o (ximation)e(to)g(the)h(exact)114 277 y(answ)o(er)e(is)i(used.\))48 369 y(b\))23 b(Round)16 b(this)g(answ)o(er)f(to)g Fu(p)p Fw(-digits)i(of)e (precision.)23 b(\(The)15 b(precision)i(will)h(b)q(e)e(less)g(if)g(the)g (answ)o(er)f(is)h(in)h(the)114 426 y(denormalized)g(range.\))53 518 y(c\))23 b(Determine)15 b(if)h(noti\014cation)g(is)g(required.)0 637 y(These)h(stages)g(will)h(b)q(e)g(mo)q(delled)h(b)o(y)e(three)g(help)q (er)i(functions:)24 b Fu(add)1228 621 y Fm(\003)1228 650 y Fp(F)1274 637 y Fw(\(stage)16 b(a,)h(for)f(addition)j(only\),)e Fu(r)q(nd)1921 644 y Fp(F)0 694 y Fw(\(stage)g(b\),)h(and)g Fu(r)q(esul)q(t)423 701 y Fp(F)470 694 y Fw(\(stage)f(c\).)27 b(These)19 b(help)q(er)g(functions)g(are)e(not)h(visible)i(to)d(the)h (programmer,)f(and)0 750 y(are)h(not)g(required)h(to)e(b)q(e)i(part)f(of)g (the)g(implemen)o(tation.)30 b(An)19 b(actual)f(implemen)o(tation)h(need)g (not)f(p)q(erform)0 807 y(the)d(ab)q(o)o(v)o(e)g(stages)f(at)h(all,)h(merely) g(return)f(a)g(result)g(\(or)g(pro)q(duce)h(a)f(noti\014cation\))g(as)g(if)h (it)f(had.)0 891 y(Di\013eren)o(t)g(\015oating)g(p)q(oin)o(t)h(t)o(yp)q(es)f (ma)o(y)f(ha)o(v)o(e)h(di\013eren)o(t)h(v)o(ersions)f(of)g Fu(add)1271 875 y Fm(\003)1271 904 y Fp(F)1299 891 y Fw(,)g Fu(r)q(nd)1400 898 y Fp(F)1429 891 y Fw(,)g(and)g Fu(r)q(esul)q(t)1666 898 y Fp(F)1696 891 y Fw(.)0 1039 y Fx(5.2.4)52 b(Appro)o(ximate)16 b(addition)0 1153 y Fw(Some)23 b(hardw)o(are)f(implemen)o(tations)h(of)g (addition)g(compute)g(an)f(appro)o(ximation)h(to)f(addition)i(that)e(loses)0 1209 y(information)e(prior)h(to)e(rounding.)36 b(As)20 b(a)g(consequence,)j Fu(x)13 b Fw(+)h Fu(y)23 b Fw(=)e Fu(u)14 b Fw(+)g Fu(v)22 b Fw(ma)o(y)d(not)h(imply)i Fu(add)1760 1216 y Fp(F)1788 1209 y Fw(\()p Fu(x;)8 b(y)r Fw(\))20 b(=)0 1266 y Fu(add)72 1273 y Fp(F)101 1266 y Fw(\()p Fu(u;)8 b(v)r Fw(\).)0 1351 y(The)15 b Fu(add)165 1334 y Fm(\003)165 1363 y Fp(F)209 1351 y Fw(help)q(er)i (function)f(is)g(in)o(tro)q(duced)g(to)f(mo)q(del)h(this)f(pre-rounding)i (appro)o(ximation:)114 1469 y Fu(add)186 1453 y Fm(\003)186 1482 y Fp(F)227 1469 y Fw(:)12 b Fu(F)17 b Fv(\002)10 b Fu(F)19 b Fv(!)14 b(R)0 1588 y Fw(F)l(or)h(all)h(v)m(alues)g Fu(u)p Fw(,)f Fu(v)r Fw(,)f Fu(x)p Fw(,)h(and)g Fu(y)i Fw(in)g Fu(F)6 b Fw(,)15 b(and)g Fu(i)g Fw(in)h Fv(Z)t Fw(,)e(the)i(follo)o(wing)g(axioms)f (shall)h(b)q(e)g(satis\014ed)g(b)o(y)f Fu(add)1821 1572 y Fm(\003)1821 1601 y Fp(F)1849 1588 y Fw(:)114 1707 y Fu(add)186 1690 y Fm(\003)186 1720 y Fp(F)214 1707 y Fw(\()p Fu(u;)8 b(v)r Fw(\))j(=)i Fu(add)452 1690 y Fm(\003)452 1720 y Fp(F)481 1707 y Fw(\()p Fu(v)r(;)8 b(u)p Fw(\))114 1820 y Fu(add)186 1803 y Fm(\003)186 1833 y Fp(F)214 1820 y Fw(\()p Fv(\000)p Fu(u;)g Fv(\000)p Fu(v)r Fw(\))k(=)h Fv(\000)p Fu(add)558 1803 y Fm(\003)558 1833 y Fp(F)587 1820 y Fw(\()p Fu(u;)8 b(v)r Fw(\))114 1933 y Fu(x)k Fv(\024)h Fu(u)d Fw(+)h Fu(v)j Fv(\024)f Fu(y)30 b Fv(\))e Fu(x)13 b Fv(\024)g Fu(add)650 1916 y Fm(\003)650 1946 y Fp(F)678 1933 y Fw(\()p Fu(u;)8 b(v)r Fw(\))j Fv(\024)i Fu(y)114 2046 y(u)f Fv(\024)h Fu(v)30 b Fv(\))e Fu(add)397 2029 y Fm(\003)397 2059 y Fp(F)426 2046 y Fw(\()p Fu(u;)8 b(x)p Fw(\))j Fv(\024)i Fu(add)666 2029 y Fm(\003)666 2059 y Fp(F)694 2046 y Fw(\()p Fu(v)r(;)8 b(x)p Fw(\))114 2159 y(If)15 b Fu(u)p Fw(,)g Fu(v)r Fw(,)f Fu(u)c Fv(\003)g Fu(r)355 2142 y Fp(i)369 2159 y Fw(,)15 b(and)g Fu(v)d Fv(\003)e Fu(r)574 2142 y Fp(i)603 2159 y Fw(are)15 b(all)h(in)g Fu(F)824 2166 y Fp(N)858 2159 y Fw(,)220 2215 y Fu(add)292 2199 y Fm(\003)292 2228 y Fp(F)320 2215 y Fw(\()p Fu(u)10 b Fv(\003)g Fu(r)429 2199 y Fp(i)443 2215 y Fu(;)e(v)j Fv(\003)f Fu(r)552 2199 y Fp(i)565 2215 y Fw(\))j(=)g Fu(add)716 2199 y Fm(\003)716 2228 y Fp(F)744 2215 y Fw(\()p Fu(u;)8 b(v)r Fw(\))h Fv(\003)h Fu(r)915 2199 y Fp(i)114 2373 y Fq(NOTE)k({)28 b(The)14 b(ab)q(o)o(v)o(e)f(\014v)o(e)i(axioms)c(capture)k(these)h(\014v)o(e) e(requiremen)o(ts:)154 2458 y(a\))23 b Fl(Add)289 2443 y Fk(\003)289 2470 y Fj(F)329 2458 y Fq(is)14 b(comm)o(utativ)o(e.)152 2524 y(b\))23 b Fl(Add)289 2508 y Fk(\003)289 2535 y Fj(F)329 2524 y Fq(is)14 b(sign)g(symmetric.)156 2589 y(c\))24 b Fl(Add)289 2574 y Fk(\003)289 2600 y Fj(F)328 2589 y Fq(is)12 b(in)f(the)i(same)e (\\basic)h(in)o(terv)n(al")f(as)h Fl(u)6 b Fq(+)g Fl(v)q Fq(,)12 b(and)g(is)g(exact)h(if)e Fl(u)6 b Fq(+)g Fl(v)13 b Fq(is)f(exactly)h (represen)o(table.)214 2638 y(\(A)h(basic)g(in)o(terv)n(al)f(is)h(the)g (range)g(b)q(et)o(w)o(een)h(t)o(w)o(o)f(adjacen)o(t)g Fl(F)19 b Fq(v)n(alues.\))152 2704 y(d\))k Fl(Add)289 2689 y Fk(\003)289 2715 y Fj(F)329 2704 y Fq(is)14 b(monotonic.)1905 2828 y Fw(13)p eop %%Page: 14 22 bop -72 197 13 197 v -72 759 13 198 v -72 1003 13 57 v -72 1982 V -72 2386 13 198 v -72 2683 13 100 v -110 352 51 13 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)156 45 y Fq(e\))24 b Fl(Add)289 30 y Fk(\003)289 57 y Fj(F)329 45 y Fq(do)q(es)15 b(not)f(dep)q(end)h(on)f (the)g(exp)q(onen)o(ts)h(of)f(its)f(argumen)o(ts)h(\(only)f(their)h (di\013erence\).)0 180 y Fw(Ideally)l(,)j(no)e(information)g(should)h(b)q(e)g (lost)f(b)q(efore)h(rounding.)21 b(Th)o(us,)14 b Fu(add)1305 163 y Fm(\003)1305 192 y Fp(F)1349 180 y Fw(should)i(satisfy)114 302 y Fu(add)186 285 y Fm(\003)186 314 y Fp(F)214 302 y Fw(\()p Fu(x;)8 b(y)r Fw(\))j(=)i Fu(x)d Fw(+)h Fu(y)0 487 y Fx(5.2.5)52 b(Rounding)0 601 y Fw(F)l(or)13 b(\015oating)h(p)q(oin)o(t)h(op)q(erations,)f (rounding)h(is)g(the)f(pro)q(cess)g(of)g(taking)g(an)g(exact)f(result)i(in)g Fv(R)e Fw(and)i(pro)q(ducing)0 658 y(a)g Fu(p)p Fw(-digit)h(appro)o (ximation.)0 742 y(The)f Fu(r)q(nd)166 749 y Fp(F)211 742 y Fw(help)q(er)h(function)g(is)g(in)o(tro)q(duced)g(to)f(mo)q(del)h(this)g(pro) q(cess:)114 865 y Fu(r)q(nd)187 872 y Fp(F)216 865 y Fw(:)j Fv(R)13 b(!)g Fu(F)393 848 y Fm(\003)0 987 y Fu(Rnd)86 994 y Fp(F)132 987 y Fw(shall)k(b)q(e)h(a)e(rounding)h(function)h(as)e(de\014ned) i(in)f(4.2.)24 b Fu(Rnd)1166 994 y Fp(F)1211 987 y Fw(shall)18 b(b)q(e)f(sign)g(symmetric.)24 b(That)16 b(is,)i(for)0 1043 y Fu(x)13 b Fv(2)g(R)p Fw(,)114 1165 y Fu(r)q(nd)187 1172 y Fp(F)216 1165 y Fw(\()p Fv(\000)p Fu(x)p Fw(\))f(=)h Fv(\000)p Fu(r)q(nd)481 1172 y Fp(F)510 1165 y Fw(\()p Fu(x)p Fw(\))0 1287 y(F)l(or)i Fu(x)d Fv(2)h(R)i Fw(and)g Fu(i)d Fv(2)h(Z)t Fw(,)i(suc)o(h)g(that)g Fv(j)p Fu(x)p Fv(j)d(\025)h Fr(fmin)843 1294 y Fp(N)892 1287 y Fw(and)i Fv(j)p Fu(x)10 b Fv(\003)g Fu(r)1084 1271 y Fp(i)1098 1287 y Fv(j)i(\025)h Fr(fmin)1260 1294 y Fp(N)1294 1287 y Fw(,)114 1409 y Fu(r)q(nd)187 1416 y Fp(F)216 1409 y Fw(\()p Fu(x)c Fv(\003)h Fu(r)324 1393 y Fp(i)338 1409 y Fw(\))i(=)h Fu(r)q(nd)489 1416 y Fp(F)518 1409 y Fw(\()p Fu(x)p Fw(\))d Fv(\003)g Fu(r)645 1393 y Fp(i)114 1537 y Fq(NOTE)k({)27 b(This)14 b(rule)g(means)f(that)g(the)i(rounding)e (function)g(do)q(es)i(not)e(dep)q(end)i(on)f(the)g(\\exp)q(onen)o(t")g(part) 114 1587 y(of)f(the)h(real)g(n)o(um)o(b)q(er)f Fo(exc)n(ept)i Fq(when)f(denormalization)e(o)q(ccurs.)0 1721 y Fw(If)j(for)g Fu(x)e Fv(2)g(R)h Fw(and)i(some)f Fu(i)d Fv(2)h(Z)t Fw(,)h(suc)o(h)i(that)e Fv(j)p Fu(x)p Fv(j)e Fu(<)h Fr(fmin)990 1728 y Fp(N)1039 1721 y Fw(and)j Fv(j)p Fu(x)9 b Fv(\003)h Fu(r)1231 1705 y Fp(i)1245 1721 y Fv(j)i(\025)h Fr(fmin)1408 1728 y Fp(N)1441 1721 y Fw(,)i(and)114 1843 y Fu(r)q(nd)187 1850 y Fp(F)216 1843 y Fw(\()p Fu(x)9 b Fv(\003)h Fu(r)324 1827 y Fp(i)338 1843 y Fw(\))i Fv(6)p Fw(=)h Fu(r)q(nd)489 1850 y Fp(F)518 1843 y Fw(\()p Fu(x)p Fw(\))d Fv(\003)g Fu(r)645 1827 y Fp(i)0 1965 y Fw(then)16 b Fu(r)q(nd)177 1972 y Fp(F)221 1965 y Fw(is)f(said)h(to)f(ha)o(v)o(e)f(a)h Fr(denormalization)h(loss)e Fw(at)h Fu(x)p Fw(.)0 2114 y Fx(5.2.6)52 b(Result)18 b(function)0 2228 y Fw(A)g(\015oating)g(p)q(oin)o(t)g(op)q (eration)g(pro)q(duces)h(a)e(rounded)i(result)f(or)g(a)f(noti\014cation.)29 b(The)18 b(decision)h(is)g(based)f(on)0 2284 y(the)d(computed)h(result)g (\(either)f(b)q(efore)h(or)e(after)h(rounding\).)0 2369 y(The)g Fu(r)q(esul)q(t)214 2376 y Fp(F)259 2369 y Fw(help)q(er)i(function)f(is)g(in) o(tro)q(duced)g(to)e(mo)q(del)j(this)e(decision:)114 2491 y Fu(r)q(esul)q(t)235 2498 y Fp(F)277 2491 y Fw(:)d Fv(R)e(\002)g Fw(\()p Fv(R)i(!)h Fu(F)558 2474 y Fm(\003)578 2491 y Fw(\))g Fv(!)g Fu(F)j Fv([)11 b(f)p Fx(\015oating)p 949 2491 16 2 v 21 w(o)o(v)o(er\015o)o(w)n Fu(;)d Fx(under\015o)o(w)o Fv(g)114 2619 y Fq(NOTE)17 b({)34 b(The)17 b(\014rst)h(input)f(to)g Fl(r)q(esul)q(t)762 2625 y Fj(F)807 2619 y Fq(is)g(the)g(computed)g(result)g (b)q(efore)h(rounding,)f(and)g(the)g(second)114 2669 y(input)c(is)h(the)h (rounding)e(function)h(to)f(b)q(e)i(used.)0 2828 y Fw(14)p eop %%Page: 15 23 bop -72 926 13 170 v -72 1218 13 113 v -72 1536 13 57 v -72 2410 13 100 v -72 2546 13 57 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y Fw(F)l(or)d(all)h(v)m(alues)g Fu(x)f Fw(in)h Fv(R)p Fw(,)f(and)g(an)o(y)g (rounding)h(function)g Fu(r)q(nd)f Fw(in)h(\()p Fv(R)c(!)h Fu(F)1288 29 y Fm(\003)1308 45 y Fw(\),)h(the)i(follo)o(wing)g(shall)g (apply:)0 130 y(F)l(or)f Fu(x)d Fw(=)h(0)i(or)g Fu(f)5 b(min)372 137 y Fp(N)418 130 y Fv(\024)13 b(j)p Fu(x)p Fv(j)f(\024)h Fu(f)5 b(max)p Fw(:)114 252 y Fu(r)q(esul)q(t)235 259 y Fp(F)264 252 y Fw(\()p Fu(x;)j(r)q(nd)p Fw(\))24 b(=)13 b Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))0 374 y(F)l(or)i Fv(j)p Fu(x)p Fv(j)c Fu(>)i(f)5 b(max)p Fw(:)114 496 y Fu(r)q(esul)q(t)235 503 y Fp(F)264 496 y Fw(\()p Fu(x;)j(r)q(nd)p Fw(\))24 b(=)13 b Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))372 b(if)15 b Fv(j)p Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))p Fv(j)c Fw(=)i Fu(f)5 b(max)444 552 y Fw(=)13 b Fx(\015oating)p 665 552 16 2 v 21 w(o)o(v)o(er\015o)o(w)127 b Fw(otherwise)0 674 y(F)l(or)15 b(0)d Fu(<)h Fv(j)p Fu(x)p Fv(j)f Fu(<)h Fr(fmin)366 681 y Fp(N)400 674 y Fw(:)114 796 y Fu(r)q(esul)q(t)235 803 y Fp(F)264 796 y Fw(\()p Fu(x;)8 b(r)q(nd)p Fw(\))24 b(=)13 b Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))h(or)g Fx(under\015o)o(w)78 b Fw(if)15 b Fv(j)p Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))p Fv(j)c Fw(=)i Fr(fmin)1350 803 y Fp(N)444 853 y Fw(=)g Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))h(or)g Fx(under\015o)o(w)78 b Fw(if)15 b Fv(j)p Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))p Fv(j)c(2)i Fu(F)1284 860 y Fp(D)1316 853 y Fw(,)i Fu(denor)q(m)e Fw(=)g Fx(true)o Fw(,)i(and)1029 909 y Fu(r)q(nd)g Fw(has)g(no)g(denormalization)h (loss)g(at)e Fu(x)444 966 y Fw(=)f Fx(under\015o)o(w)282 b Fw(otherwise)0 1088 y(An)17 b(implemen)o(tation)i(is)e(allo)o(w)o(ed)g(to)g (c)o(ho)q(ose)g(b)q(et)o(w)o(een)g Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))f(and)h Fx(under\015o)o(w)g Fw(in)h(the)f(region)g(b)q(et)o(w)o(een)g (0)0 1144 y(and)f Fr(fmin)178 1151 y Fp(N)212 1144 y Fw(.)41 b(Ho)o(w)o(ev)o(er,)15 b(a)g(denormalized)i(v)m(alue)g(for)d Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))h(can)g(b)q(e)i(c)o(hosen)e(only)h(if)g Fu(denor)q(m)g Fw(is)f Fx(true)h Fw(and)0 1201 y(no)g(denormalization)h(loss) e(o)q(ccurs)h(at)f Fu(x)p Fw(.)43 b(An)16 b(implemen)o(tation)h(shall)g(do)q (cumen)o(t)f(ho)o(w)f(the)h(c)o(hoice)h(b)q(et)o(w)o(een)0 1257 y Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))d(and)i Fx(under\015o)o(w)f Fw(is)g(made.)0 1406 y Fx(5.2.7)52 b(Axioms)0 1520 y Fw(F)l(or)15 b(con)o(v)o(enience,)h(de\014ne)g(t)o(w)o(o)e(help)q(er)j(functions:)j Fu(e)932 1527 y Fp(F)977 1520 y Fw(and)15 b Fu(r)q(n)1114 1527 y Fp(F)1144 1520 y Fw(.)0 1604 y(De\014ne)h Fu(e)162 1611 y Fp(F)191 1604 y Fw(:)k Fv(R)12 b(!)h(Z)19 b Fw(suc)o(h)d(that)114 1726 y Fu(e)135 1733 y Fp(F)164 1726 y Fw(\()p Fu(x)p Fw(\))30 b(=)13 b Fv(b)p Fu(l)q(og)383 1733 y Fp(r)401 1726 y Fv(j)p Fu(x)p Fv(jc)d Fw(+)g(1)136 b(if)16 b Fv(j)p Fu(x)p Fv(j)c(\025)h Fr(fmin)930 1733 y Fp(N)256 1783 y Fw(=)g Fu(emin)279 b Fw(if)16 b Fv(j)p Fu(x)p Fv(j)c Fu(<)h Fr(fmin)930 1790 y Fp(N)114 1911 y Fq(NOTE)i({)29 b(The)15 b(v)n(alue)f Fl(e)513 1917 y Fj(F)541 1911 y Fq(\()p Fl(x)p Fq(\))g(is)h(that)f(of)g(the)h Fl(e)g Fq(in)f(the)i(de\014nitions)e(of)g Fl(F)1296 1917 y Fj(N)1327 1911 y Fq(,)h Fl(F)1381 1917 y Fj(D)1410 1911 y Fq(,)g(and)f Fl(F)1551 1896 y Fk(\003)1570 1911 y Fq(;)g(and)g(has)h(b)q(een)114 1960 y(de\014ned)g(to)e(ha)o(v)o(e)h(the)h(v)n(alue)e Fl(emin)i Fq(at)e(0.)18 b(When)c Fl(x)g Fq(is)f(in)h Fl(F)1068 1966 y Fj(D)1098 1960 y Fq(,)f Fl(e)1142 1966 y Fj(F)1170 1960 y Fq(\()p Fl(x)p Fq(\))h(is)g Fl(emin)g Fq(regardless)i(of)d Fl(x)p Fq(.)0 2095 y Fw(De\014ne)j Fu(r)q(n)190 2102 y Fp(F)232 2095 y Fw(:)c Fu(F)17 b Fv(\002)10 b(Z)16 b(!)d Fu(F)490 2078 y Fm(\003)526 2095 y Fw(suc)o(h)i(that)114 2217 y Fu(r)q(n)163 2224 y Fp(F)192 2217 y Fw(\()p Fu(x;)8 b(n)p Fw(\))29 b(=)13 b Fu(sig)r(n)467 2224 y Fp(F)496 2217 y Fw(\()p Fu(x)p Fw(\))c Fv(\003)h(bj)p Fu(x)p Fv(j)p Fu(=r)717 2200 y Fp(e)733 2206 y Fi(F)758 2200 y Fn(\()p Fp(x)p Fn(\))p Fm(\000)p Fp(n)866 2217 y Fw(+)h(1)p Fu(=)p Fw(2)p Fv(c)e(\003)h Fu(r)1065 2200 y Fp(e)1081 2206 y Fi(F)1107 2200 y Fn(\()p Fp(x)p Fn(\))p Fm(\000)p Fp(n)114 2345 y Fq(NOTE)17 b({)34 b(The)17 b(v)n(alue)g Fl(r)q(n)551 2351 y Fj(F)578 2345 y Fq(\()p Fl(x)p Fq(\))g(is)g Fl(x)g Fq(rounded)g(to)g Fl(n)g Fq(digits)f(of)h(precision)g(\(using)g(traditional)e(round)i(to)114 2395 y(nearest)e(in)e(whic)o(h)h(ties)g(round)h(a)o(w)o(a)o(y)d(from)g (zero\).)0 2529 y Fw(F)l(or)j(all)h(v)m(alues)g Fu(x)f Fw(and)h Fu(y)h Fw(in)f Fu(F)6 b Fw(,)15 b(and)g Fu(n)h Fw(an)f(in)o(teger)g(in)h Fu(J)k Fw(the)15 b(follo)o(wing)h(shall)h(apply:)1905 2828 y(15)p eop %%Page: 16 24 bop -110 2141 51 13 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)114 45 y Fu(add)186 52 y Fp(F)214 45 y Fw(\()p Fu(x;)8 b(y)r Fw(\))93 b(=)13 b Fu(r)q(esul)q(t)583 52 y Fp(F)612 45 y Fw(\()p Fu(add)702 29 y Fm(\003)702 58 y Fp(F)730 45 y Fw(\()p Fu(x;)8 b(y)r Fw(\))p Fu(;)g(r)q(nd)931 52 y Fp(F)958 45 y Fw(\))114 158 y Fu(sub)181 165 y Fp(F)210 158 y Fw(\()p Fu(x;)g(y)r Fw(\))97 b(=)13 b Fu(add)534 165 y Fp(F)562 158 y Fw(\()p Fu(x;)8 b Fv(\000)p Fu(y)r Fw(\))114 271 y Fu(mul)194 278 y Fp(F)222 271 y Fw(\()p Fu(x;)g(y)r Fw(\))85 b(=)13 b Fu(r)q(esul)q(t)583 278 y Fp(F)612 271 y Fw(\()p Fu(x)d Fv(\003)g Fu(y)r(;)e(r)q(nd)817 278 y Fp(F)845 271 y Fw(\))114 384 y Fu(div)176 391 y Fp(F)204 384 y Fw(\()p Fu(x;)g(y)r Fw(\))103 b(=)13 b Fu(r)q(esul)q(t)583 391 y Fp(F)612 384 y Fw(\()p Fu(x=y)r(;)8 b(r)q(nd)797 391 y Fp(F)825 384 y Fw(\))96 b(if)15 b Fu(y)g Fv(6)p Fw(=)e(0)414 440 y(=)g Fx(unde\014ned)255 b Fw(if)15 b Fu(y)g Fw(=)e(0)114 553 y Fu(neg)184 560 y Fp(F)213 553 y Fw(\()p Fu(x)p Fw(\))139 b(=)13 b Fv(\000)p Fu(x)114 666 y(abs)179 673 y Fp(F)208 666 y Fw(\()p Fu(x)p Fw(\))144 b(=)13 b Fv(j)p Fu(x)p Fv(j)114 779 y Fu(sig)r(n)202 786 y Fp(F)231 779 y Fw(\()p Fu(x)p Fw(\))121 b(=)43 b(1)424 b(if)15 b Fu(x)e(>)g Fw(0)414 835 y(=)43 b(0)424 b(if)15 b Fu(x)e Fw(=)g(0)414 892 y(=)g Fv(\000)p Fw(1)419 b(if)15 b Fu(x)e(<)g Fw(0)114 1005 y Fu(exponent)297 1012 y Fp(F)327 1005 y Fw(\()p Fu(x)p Fw(\))25 b(=)13 b Fv(b)p Fu(l)q(og)541 1012 y Fp(r)559 1005 y Fv(j)p Fu(x)p Fv(jc)d Fw(+)g(1)230 b(if)15 b Fu(x)e Fv(6)p Fw(=)g(0)414 1061 y(=)g Fx(unde\014ned)255 b Fw(if)15 b Fu(x)e Fw(=)g(0)114 1176 y Fr(fr)n(action)270 1187 y Fp(F)299 1176 y Fw(\()p Fu(x)p Fw(\))53 b(=)13 b Fu(x=r)533 1160 y Fp(exponent)675 1166 y Fi(F)700 1160 y Fn(\()p Fp(x)p Fn(\))939 1176 y Fw(if)i Fu(x)e Fv(6)p Fw(=)g(0)414 1233 y(=)g(0)454 b(if)15 b Fu(x)e Fw(=)g(0)114 1345 y Fu(scal)q(e)215 1352 y Fp(F)244 1345 y Fw(\()p Fu(x;)8 b(n)p Fw(\))60 b(=)13 b Fu(r)q(esul)q(t)583 1352 y Fp(F)612 1345 y Fw(\()p Fu(x)d Fv(\003)g Fu(r)721 1329 y Fp(n)744 1345 y Fu(;)e(r)q(nd)838 1352 y Fp(F)866 1345 y Fw(\))114 1458 y Fu(succ)201 1465 y Fp(F)230 1458 y Fw(\()p Fu(x)p Fw(\))122 b(=)13 b Fu(min)i Fv(f)p Fu(z)f Fv(2)f Fu(F)22 b Fv(j)15 b Fu(z)f(>)f(x)p Fv(g)67 b Fw(if)15 b Fu(x)e Fv(6)p Fw(=)g Fr(fmax)414 1515 y Fw(=)g Fx(\015oating)p 635 1515 16 2 v 21 w(o)o(v)o(er\015o)o(w)97 b Fw(if)15 b Fu(x)e Fw(=)g Fr(fmax)114 1628 y Fu(pr)q(ed)204 1635 y Fp(F)232 1628 y Fw(\()p Fu(x)p Fw(\))120 b(=)13 b Fu(max)i Fv(f)p Fu(z)f Fv(2)f Fu(F)22 b Fv(j)15 b Fu(z)f(<)f(x)p Fv(g)60 b Fw(if)15 b Fu(x)e Fv(6)p Fw(=)g Fv(\000)p Fr(fmax)414 1684 y Fw(=)g Fx(\015oating)p 635 1684 V 21 w(o)o(v)o(er\015o)o(w)97 b Fw(if)15 b Fu(x)e Fw(=)g Fv(\000)p Fr(fmax)114 1799 y Fu(ul)q(p)178 1806 y Fp(F)206 1799 y Fw(\()p Fu(x)p Fw(\))146 b(=)13 b Fu(r)484 1782 y Fp(e)500 1788 y Fi(F)525 1782 y Fn(\()p Fp(x)p Fn(\))p Fm(\000)p Fp(p)939 1799 y Fw(if)i Fu(x)e Fv(6)p Fw(=)g(0)i(and)g Fu(r)1215 1782 y Fp(e)1231 1788 y Fi(F)1257 1782 y Fn(\()p Fp(x)p Fn(\))p Fm(\000)p Fp(p)1364 1799 y Fv(2)e Fu(F)414 1857 y Fw(=)g Fx(under\015o)o(w) 252 b Fw(if)15 b Fu(x)e Fv(6)p Fw(=)g(0)i(and)g Fu(r)1215 1841 y Fp(e)1231 1847 y Fi(F)1257 1841 y Fn(\()p Fp(x)p Fn(\))p Fm(\000)p Fp(p)1364 1857 y Fv(62)e Fu(F)414 1914 y Fw(=)g Fx(unde\014ned)255 b Fw(if)15 b Fu(x)e Fw(=)g(0)114 2029 y Fu(tr)q(unc)225 2036 y Fp(F)254 2029 y Fw(\()p Fu(x;)8 b(n)p Fw(\))50 b(=)13 b Fv(b)p Fu(x=r)553 2012 y Fp(e)569 2018 y Fi(F)594 2012 y Fn(\()p Fp(x)p Fn(\))p Fm(\000)p Fp(n)692 2029 y Fv(c)e(\003)e Fu(r)777 2012 y Fp(e)793 2018 y Fi(F)819 2012 y Fn(\()p Fp(x)p Fn(\))p Fm(\000)p Fp(n)939 2029 y Fw(if)15 b Fu(x)e Fv(\025)g Fw(0)414 2085 y(=)g Fv(\000)p Fu(tr)q(unc)608 2092 y Fp(F)637 2085 y Fw(\()p Fv(\000)p Fu(x;)8 b(n)p Fw(\))157 b(if)15 b Fu(x)e(<)g Fw(0)114 2198 y Fu(r)q(ound)235 2205 y Fp(F)264 2198 y Fw(\()p Fu(x;)8 b(n)p Fw(\))40 b(=)13 b Fu(r)q(n)511 2205 y Fp(F)540 2198 y Fw(\()p Fu(x;)8 b(n)p Fw(\))289 b(if)15 b Fv(j)p Fu(r)q(n)1042 2205 y Fp(F)1071 2198 y Fw(\()p Fu(x;)8 b(n)p Fw(\))p Fv(j)j(\024)i Fr(fmax)414 2254 y Fw(=)g Fx(\015oating)p 635 2254 V 21 w(o)o(v)o(er\015o)o (w)97 b Fw(if)15 b Fv(j)p Fu(r)q(n)1042 2261 y Fp(F)1071 2254 y Fw(\()p Fu(x;)8 b(n)p Fw(\))p Fv(j)j Fu(>)i Fr(fmax)114 2367 y Fu(intpar)q(t)258 2374 y Fp(F)287 2367 y Fw(\()p Fu(x)p Fw(\))65 b(=)13 b Fu(sig)r(n)550 2374 y Fp(F)578 2367 y Fw(\()p Fu(x)p Fw(\))d Fv(\003)g(bj)p Fu(x)p Fv(jc)114 2480 y Fr(fr)n(actp)n(art)286 2491 y Fp(F)316 2480 y Fw(\()p Fu(x)p Fw(\))36 b(=)13 b Fu(x)d Fv(\000)g Fu(intpar)q(t)687 2487 y Fp(F)717 2480 y Fw(\()p Fu(x)p Fw(\))114 2593 y Fu(eq)155 2600 y Fp(F)184 2593 y Fw(\()p Fu(x;)e(y)r Fw(\))27 b(=)h Fx(true)73 b Fv(\()-8 b(\))26 b Fu(x)13 b Fw(=)g Fu(y)0 2828 y Fw(16)p eop %%Page: 17 25 bop -72 889 13 227 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)114 45 y Fu(neq)182 52 y Fp(F)212 45 y Fw(\()p Fu(x;)8 b(y)r Fw(\))26 b(=)i Fx(true)46 b Fv(\()-8 b(\))26 b Fu(x)13 b Fv(6)p Fw(=)g Fu(y)114 158 y(l)q(ss)171 165 y Fp(F)200 158 y Fw(\()p Fu(x;)8 b(y)r Fw(\))26 b(=)i Fx(true)58 b Fv(\()-8 b(\))26 b Fu(x)13 b(<)g(y)114 271 y(l)q(eq)170 278 y Fp(F)199 271 y Fw(\()p Fu(x;)8 b(y)r Fw(\))26 b(=)i Fx(true)59 b Fv(\()-8 b(\))26 b Fu(x)13 b Fv(\024)g Fu(y)114 384 y(g)r(tr)175 391 y Fp(F)203 384 y Fw(\()p Fu(x;)8 b(y)r Fw(\))26 b(=)j Fx(true)54 b Fv(\()-8 b(\))26 b Fu(x)13 b(>)g(y)114 497 y(g)r(eq)179 504 y Fp(F)208 497 y Fw(\()p Fu(x;)8 b(y)r Fw(\))26 b(=)i Fx(true)50 b Fv(\()-8 b(\))26 b Fu(x)13 b Fv(\025)g Fu(y)0 701 y Fx(5.2.8)52 b(Rounding)18 b(constan)o(ts)0 816 y Fw(Tw)o(o)i(deriv)o(ed)i(constan)o(ts)e (shall)i(b)q(e)f(pro)o(vided)h(to)e(c)o(haracterize)h(the)g(rounding)g (function:)32 b Fu(r)q(nd)p 1734 816 14 2 v 16 w(er)q(r)q(or)22 b Fw(and)0 872 y Fu(r)q(nd)p 76 872 V 16 w(sty)r(l)q(e)p Fw(.)0 957 y(De\014ne)16 b(the)f(deriv)o(ed)h(constan)o(t)f Fu(r)q(nd)p 638 957 V 16 w(er)q(r)q(or)g Fw(to)g(b)q(e)h(the)f(smallest)h(elemen)o(t)g (of)f Fu(F)21 b Fw(suc)o(h)16 b(that)114 1079 y Fv(j)p Fu(x)9 b Fv(\000)i Fu(r)q(nd)281 1086 y Fp(F)310 1079 y Fw(\()p Fu(x)p Fw(\))p Fv(j)27 b(\024)h Fu(r)q(nd)p 551 1079 V 16 w(er)q(r)q(or)e Fv(\003)e Fu(r)767 1062 y Fp(e)783 1068 y Fi(F)809 1062 y Fn(\()p Fp(r)q(nd)879 1068 y Fi(F)905 1062 y Fn(\()p Fp(x)p Fn(\)\))p Fm(\000)p Fp(p)0 1201 y Fw(for)16 b(all)h Fu(x)d Fv(2)h(R)p Fw(.)22 b(If)16 b Fu(add)412 1184 y Fm(\003)412 1214 y Fp(F)441 1201 y Fw(\()p Fu(x;)8 b(y)r Fw(\))15 b(is)h(not)g(iden)o(tically)j(equal)e (to)e Fu(x)c Fw(+)g Fu(y)18 b Fw(for)e(all)h Fu(x;)8 b(y)15 b Fv(2)g Fu(F)6 b Fw(,)17 b(then)f Fu(r)q(nd)p 1721 1201 V 16 w(er)q(r)q(or)h Fw(shall)0 1257 y(b)q(e)f(de\014ned)g(as)f(1.)20 b(\(See)15 b Fu(add)500 1241 y Fm(\003)500 1270 y Fp(F)544 1257 y Fw(in)h(5.2.4.\))0 1342 y(A)h(metho)q(d)g(shall)h(b)q(e)g(pro)o(vided) g(for)e(a)g(program)g(to)h(obtain)g(the)g(v)m(alue)h(of)e(the)h(deriv)o(ed)h (constan)o(t)e Fu(r)q(nd)p 1828 1342 V 16 w(er)q(r)q(or)0 1398 y Fw(for)f(eac)o(h)g(\015oating)g(p)q(oin)o(t)h(data)e(t)o(yp)q(e)h(pro)o (vided.)114 1526 y Fq(NOTE)20 b({)39 b(The)21 b(requiremen)o(t)e(that)h Fl(r)q(nd)806 1532 y Fj(F)853 1526 y Fq(b)q(e)g(a)g(rounding)f(function)h (implies)e(that)i Fl(r)q(nd)p 1618 1526 13 2 v 14 w(er)q(r)q(or)i Fh(\024)g Fq(1.)114 1576 y(Ho)o(w)o(ev)o(er,)13 b(some)g(de\014nitions)h(for) g Fl(r)q(nd)728 1582 y Fj(F)769 1576 y Fq(ma)o(y)e(yield)h(lo)o(w)o(er)g(b)q (ounds.)19 b(\(See)c(A.5.2.5.\))0 1710 y Fu(Rnd)86 1717 y Fp(F)130 1710 y Fw(has)g(the)h Fr(r)n(ound)g(towar)n(d)h(zer)n(o)e Fw(prop)q(ert)o(y)g (if)g(for)g Fu(x)e Fv(2)g(R)114 1833 y(j)p Fu(r)q(nd)200 1840 y Fp(F)228 1833 y Fw(\()p Fu(x)p Fw(\))p Fv(j)f(\024)h(j)p Fu(x)p Fv(j)0 1955 y Fu(Rnd)86 1962 y Fp(F)130 1955 y Fw(has)i(the)h Fr(r)n(ound)g(to)h(ne)n(ar)n(est)d Fw(prop)q(ert)o(y)h(if)g(for)g Fu(x)d Fv(2)h(R)114 2077 y(j)p Fu(r)q(nd)200 2084 y Fp(F)228 2077 y Fw(\()p Fu(x)p Fw(\))d Fv(\000)g Fu(x)p Fv(j)i(\024)449 2059 y Fn(1)p 449 2066 18 2 v 449 2092 a(2)497 2077 y Fv(\003)25 b Fu(r)567 2060 y Fp(e)583 2066 y Fi(F)609 2060 y Fn(\()p Fp(x)p Fn(\))p Fm(\000)p Fp(p)0 2199 y Fw(Note)15 b(that)f(the)i(b)q(eha)o(vior)f (when)h Fu(x)f Fw(is)h(exactly)f(halfw)o(a)o(y)g(b)q(et)o(w)o(een)h(v)m (alues)g(in)g Fu(F)22 b Fw(is)15 b(not)g(sp)q(eci\014ed.)0 2283 y(The)g(deriv)o(ed)i(constan)o(t)d Fu(r)q(nd)p 512 2283 14 2 v 16 w(sty)r(l)q(e)p Fw(,)h(ha)o(ving)h(one)f(of)g(three)g(allo)o(w)o (ed)h(constan)o(t)e(v)m(alues,)i(is)g(de\014ned)g(b)o(y)114 2405 y Fu(r)q(nd)p 190 2405 V 16 w(sty)r(l)q(e)114 b Fw(=)15 b Fx(nearest)310 b Fw(if)15 b Fu(r)q(nd)1053 2412 y Fp(F)1097 2405 y Fw(has)h(the)f(round)g(to)g(nearest)g(prop)q(ert)o(y)414 2462 y(=)g Fx(truncate)283 b Fw(if)15 b Fu(r)q(nd)1053 2469 y Fp(F)1097 2462 y Fw(has)h(the)f(round)g(to)o(w)o(ard)f(zero)h(prop)q(ert)o (y)414 2518 y(=)g Fx(other)354 b Fw(otherwise)1905 2828 y(17)p eop %%Page: 18 26 bop -72 2153 13 1689 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y(If)i Fu(add)120 29 y Fm(\003)120 58 y Fp(F)148 45 y Fw(\()p Fu(x;)8 b(y)r Fw(\))16 b(is)i(not)g(iden)o(tically)i(equal)e(to)f Fu(x)11 b Fw(+)h Fu(y)20 b Fw(for)d(all)h Fu(x;)8 b(y)18 b Fv(2)f Fu(F)6 b Fw(,)18 b(then)g Fu(r)q(nd)p 1450 45 14 2 v 16 w(sty)r(l)q(e)g Fw(shall)g(b)q(e)g (de\014ned)h(as)0 102 y Fx(other)p Fw(.)0 186 y(A)f(metho)q(d)g(shall)g(b)q (e)h(pro)o(vided)f(for)f(a)g(program)g(to)g(obtain)h(the)f(v)m(alue)i(of)f (the)f(deriv)o(ed)i(constan)o(t)e Fu(r)q(nd)p 1840 186 V 16 w(sty)r(l)q(e)0 243 y Fw(for)e(eac)o(h)g(\015oating)g(p)q(oin)o(t)h(data)f(t) o(yp)q(e)g(pro)o(vided.)21 b(In)16 b(addition,)g(a)f(notation)g(for)f(eac)o (h)i(of)f(the)g(v)m(alues)i Fx(nearest)p Fw(,)0 299 y Fx(truncate)p Fw(,)h(and)f Fx(other)g Fw(shall)h(b)q(e)g(pro)o(vided)f(suc)o(h)h(that)e (the)h(v)m(alue)h(of)f Fu(r)q(nd)p 1345 299 V 16 w(sty)r(l)q(e)g Fw(can)g(b)q(e)h(compared)f(to)f(the)0 356 y(constan)o(ts.)0 504 y Fx(5.2.9)52 b(Conformit)o(y)16 b(to)i(IEC)f(559)0 618 y Fw(One)f(further)f(b)q(eha)o(vioral)h(parameter)f(shall)h(b)q(e)g(pro)o (vided)g(for)e(the)i(\015oating)f(p)q(oin)o(t)g(t)o(yp)q(e)h Fu(F)6 b Fw(:)114 740 y Fr(ie)n(c)p 173 740 V 18 w(559)35 b Fv(2)13 b Fu(B)r(ool)q(ean)76 b Fw(\(whether)15 b Fu(F)22 b Fw(conforms)15 b(to)f(IEC)i(559\))0 862 y(The)d(parameter)e Fr(ie)n(c)p 362 862 V 17 w(559)i Fw(shall)g(b)q(e)g(true)g(only)g(when)g(the) f(t)o(yp)q(e)h Fu(F)19 b Fw(completely)13 b(conforms)f(to)g(the)g(requiremen) o(ts)0 918 y(of)h(IEC)h(559)e(\(also)i(kno)o(wn)f(as)g(IEEE)h(754\).)k Fu(F)i Fw(ma)o(y)13 b(corresp)q(ond)h(to)f(an)o(y)g(of)g(the)h(\015oating)f (p)q(oin)o(t)h(t)o(yp)q(es)g(de\014ned)0 975 y(in)i(IEC)f(559.)0 1060 y(When)j Fr(ie)n(c)p 192 1060 V 16 w(559)g Fw(is)g Fx(true)p Fw(,)g(all)g(the)f(facilities)j(required)f(b)o(y)e(IEC)h(559)e(shall)j(b)q(e) f(pro)o(vided.)27 b(Metho)q(ds)18 b(shall)g(b)q(e)0 1116 y(pro)o(vided)f(for) e(a)h(program)f(to)h(access)g(eac)o(h)g(suc)o(h)h(facilit)o(y)l(.)24 b(In)16 b(addition,)i(do)q(cumen)o(tation)e(shall)h(b)q(e)g(pro)o(vided)0 1173 y(to)e(describ)q(e)h(these)g(metho)q(ds,)f(and)g(all)h(implemen)o (tation)h(c)o(hoices.)114 1288 y Fq(NOTE)e({)29 b(The)16 b(IEC)f(559)f (facilities)f(include)i(v)n(alues)g(for)f(in\014nities)h(and)g(NaNs,)g (extended)h(comparisons,)114 1338 y(program)i(con)o(trol)i(of)f(rounding,)i (an)f(inexact)g(exception)h(\015ag,)f(and)g(so)g(on.)37 b(See)20 b(annex)h(C)f(for)f(more)114 1388 y(information.)0 1510 y Fw(When)e Fr(ie)n(c)p 191 1510 V 16 w(559)h Fw(is)f Fx(true)p Fw(,)f(all)i(op)q (erations)f(and)g(v)m(alues)g(common)g(to)f(this)h(In)o(ternational)g (Standard)g(and)g(IEC)0 1566 y(559)g(shall)j(satisfy)e(the)g(requiremen)o(ts) h(of)f(b)q(oth)h(standards.)28 b(V)l(alues)20 b(presen)o(t)e(only)h(in)g(IEC) g(559)e(\()p Fv(\000)p Fw(0,)i(+)p Fv(1)p Fw(,)0 1622 y Fv(\0001)p Fw(,)c(and)f(the)g(NaNs\))g(need)h(only)f(satisfy)g(the)g(requiremen)o(ts)h (of)f(IEC)g(559.)k(The)d(v)m(alue)g(set)f Fu(F)21 b Fw(as)13 b(used)i(in)g(the)0 1679 y(de\014nitions)20 b(and)e(axioms)g(of)f(5.2)g(do)q (es)i(not)e(con)o(tain)h(these)g(extra)g(v)m(alues)h({)e(it)i(only)f(con)o (tains)g(the)g(common)0 1735 y(v)m(alues.)25 b(Th)o(us,)16 b(the)h(axioms)f(in)h(5.2.7)e(apply)j(only)f(to)e(the)i(common)f(v)m(alues.) 25 b(Nev)o(ertheless,)17 b(the)g(op)q(erations)0 1792 y(in)f(5.2.2)e(shall)i (not)f(distinguish)i Fv(\000)p Fw(0)e(from)g(+0.)114 1907 y Fq(NOTE)10 b({)18 b(An)9 b(implemen)o(tation)d(of)j(IEC)g(559)g(can)h (distinguish)e Fh(\000)p Fq(0)i(from)d(+0)j(only)e(b)o(y)h(the)h(use)g(of)f (op)q(erations)114 1957 y(not)k(in)h(5.2.2,)e(or)h(b)o(y)h(the)h(generation)f (or)f(use)i(of)e(v)n(alues)h(not)g(in)f Fl(F)20 b Fq(\(in\014nities\).)0 2079 y Fw(A)d(metho)q(d)g(shall)h(b)q(e)g(pro)o(vided)g(for)e(a)h(program)e (to)i(obtain)g(the)g(v)m(alue)h(of)f(the)g(parameter)f Fr(ie)n(c)p 1685 2079 V 19 w(559)24 b Fw(for)16 b(eac)o(h)0 2136 y(\015oating)f(p)q(oin)o (t)h(data)e(t)o(yp)q(e)i(pro)o(vided.)0 2286 y FB(5.3)56 b(Con)n(v)n(ersion) 20 b(op)r(erations)0 2400 y Fw(A)14 b(con)o(v)o(ersion)g(op)q(eration)g(is)h (a)f(function)g(from)g(one)g(arithmetic)g(t)o(yp)q(e)g(to)g(another)f (arithmetic)i(t)o(yp)q(e.)20 b(Con)o(v)o(er-)0 2456 y(sion)c(op)q(erations)f (shall)h(b)q(e)g(pro)o(vided)51 2578 y(a\))22 b(b)q(et)o(w)o(een)15 b(an)o(y)g(t)o(w)o(o)f(distinct)i(in)o(teger)g(t)o(yp)q(es,)48 2672 y(b\))23 b(b)q(et)o(w)o(een)15 b(an)o(y)g(t)o(w)o(o)f(distinct)i (\015oating)f(p)q(oin)o(t)h(t)o(yp)q(es)f(of)g(the)g(same)g(radix,)0 2828 y(18)p eop %%Page: 19 27 bop -72 914 13 57 v -72 2354 V 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)53 45 y Fw(c\))23 b(from)14 b(an)o(y)h(in)o(teger)g(t)o(yp)q(e)h(to)e(an)o(y)h (\015oating)g(p)q(oin)o(t)h(t)o(yp)q(e,)f(and)48 133 y(d\))23 b(from)14 b(an)o(y)h(\015oating)g(p)q(oin)o(t)h(t)o(yp)q(e)f(to)g(an)o(y)f (in)o(teger)i(t)o(yp)q(e.)114 242 y Fq(NOTE)11 b({)22 b(This)10 b(part)i(of)e(this)h(In)o(ternational)f(Standard)h(do)q(es)h(not)f(de\014ne)h (con)o(v)o(ersion)f(op)q(erations)g(b)q(et)o(w)o(een)114 292 y(\015oating)i(p)q(oin)o(t)g(t)o(yp)q(es)i(of)e(di\013ering)h(radix.)0 407 y Fw(Let)h Fu(I)101 414 y Fp(a)137 407 y Fw(and)h Fu(I)246 414 y Fp(b)278 407 y Fw(b)q(e)g(t)o(w)o(o)e(in)o(teger)h(t)o(yp)q(es.)20 b(The)15 b(con)o(v)o(ersion)h(op)q(eration)114 515 y Fu(cv)r(t)174 522 y Fp(I)189 526 y Fi(a)208 522 y Fm(!)p Fp(I)258 528 y Fi(b)289 515 y Fw(:)c Fu(I)334 522 y Fp(a)367 515 y Fv(!)h Fu(I)445 522 y Fp(b)473 515 y Fv([)d(f)p Fx(in)o(teger)p 697 515 16 2 v 19 w(o)o(v)o(er\015o)o(w)n Fv(g)0 624 y Fw(shall)16 b(b)q(e)g(de\014ned)h (b)o(y)114 732 y Fu(cv)r(t)174 739 y Fp(I)189 743 y Fi(a)208 739 y Fm(!)p Fp(I)258 745 y Fi(b)276 732 y Fw(\()p Fu(x)p Fw(\))76 b(=)13 b Fu(x)451 b Fw(if)15 b Fu(x)e Fv(2)g Fu(I)1082 739 y Fp(b)414 788 y Fw(=)g Fx(in)o(teger)p 623 788 V 18 w(o)o(v)o(er\015o)o(w) 111 b Fw(if)15 b Fu(x)e Fv(62)g Fu(I)1082 795 y Fp(b)0 897 y Fw(Let)h Fu(near)q(est)232 904 y Fp(X)281 897 y Fw(b)q(e)h(a)f(help)q(er)h (rounding)g(function)g(from)e Fv(R)h Fw(to)f Fu(X)k Fw(satisfying)e(the)f (round)g(to)g(nearest)f(prop)q(ert)o(y)l(.)0 981 y(Let)i Fu(F)110 988 y Fp(a)147 981 y Fw(and)g Fu(F)264 988 y Fp(b)297 981 y Fw(b)q(e)g(t)o(w)o(o)f(\015oating)h(p)q(oin)o(t)h(t)o(yp)q(es.)k(The)15 b(con)o(v)o(ersion)h(op)q(eration)114 1090 y Fu(cv)r(t)174 1097 y Fp(F)196 1101 y Fi(a)215 1097 y Fm(!)p Fp(F)272 1103 y Fi(b)303 1090 y Fw(:)c Fu(F)357 1097 y Fp(a)391 1090 y Fv(!)h Fu(F)478 1097 y Fp(b)505 1090 y Fv([)e(f)p Fx(\015oating)p 742 1090 V 20 w(o)o(v)o(er\015o)o(w)o Fu(;)d Fx(under\015o)o(w)o Fv(g)0 1198 y Fw(shall)16 b(b)q(e)g(de\014ned)h(b)o(y)114 1306 y Fu(cv)r(t)174 1313 y Fp(F)196 1317 y Fi(a)215 1313 y Fm(!)p Fp(F)272 1319 y Fi(b)290 1306 y Fw(\()p Fu(x)p Fw(\))12 b(=)h Fu(r)q(esul)q(t)533 1313 y Fp(F)555 1319 y Fi(b)573 1306 y Fw(\()p Fu(x;)8 b(near)q(est)790 1313 y Fp(F)812 1319 y Fi(b)830 1306 y Fw(\))0 1415 y(Let)15 b Fu(I)k Fw(b)q(e)d(an)f(in)o(teger)h(t)o(yp)q (e,)e(and)i Fu(F)21 b Fw(b)q(e)16 b(a)f(\015oating)g(p)q(oin)o(t)h(t)o(yp)q (e.)k(The)15 b(con)o(v)o(ersion)h(op)q(eration)114 1523 y Fu(cv)r(t)174 1530 y Fp(I)s Fm(!)p Fp(F)268 1523 y Fw(:)d Fu(I)j Fv(!)d Fu(F)k Fv([)10 b(f)p Fx(\015oating)p 670 1523 V 21 w(o)o(v)o(er\015o)o(w)n Fv(g)0 1631 y Fw(shall)16 b(b)q(e)g(de\014ned)h(b)o(y)114 1740 y Fu(cv)r(t)174 1747 y Fp(I)s Fm(!)p Fp(F)256 1740 y Fw(\()p Fu(x)p Fw(\))12 b(=)h Fu(r)q(esul)q(t)499 1747 y Fp(F)528 1740 y Fw(\()p Fu(x;)8 b(near)q(est)745 1747 y Fp(F)775 1740 y Fw(\))0 1848 y(Let)15 b Fu(F)22 b Fw(b)q(e)16 b(a)f(\015oating)g(p)q(oin)o(t)h(t)o (yp)q(e,)f(and)g Fu(I)k Fw(b)q(e)d(an)f(in)o(teger)g(t)o(yp)q(e.)20 b(The)15 b(con)o(v)o(ersion)h(op)q(eration)114 1956 y Fu(cv)r(t)174 1963 y Fp(F)5 b Fm(!)p Fp(I)268 1956 y Fw(:)13 b Fu(F)19 b Fv(!)13 b Fu(I)h Fv([)c(f)p Fx(in)o(teger)p 658 1956 V 19 w(o)o(v)o(er\015o)o (w)n Fv(g)0 2064 y Fw(shall)16 b(b)q(e)g(de\014ned)h(b)o(y)114 2173 y Fu(cv)r(t)174 2180 y Fp(F)5 b Fm(!)p Fp(I)256 2173 y Fw(\()p Fu(x)p Fw(\))96 b(=)13 b Fu(r)q(nd)535 2180 y Fp(F)5 b Fm(!)p Fp(I)617 2173 y Fw(\()p Fu(x)p Fw(\))260 b(if)15 b Fu(r)q(nd)1053 2180 y Fp(F)5 b Fm(!)p Fp(I)1135 2173 y Fw(\()p Fu(x)p Fw(\))12 b Fv(2)h Fu(I)414 2229 y Fw(=)g Fx(in)o(teger)p 623 2229 V 18 w(o)o(v)o(er\015o)o(w)111 b Fw(if)15 b Fu(r)q(nd)1053 2236 y Fp(F)5 b Fm(!)p Fp(I)1135 2229 y Fw(\()p Fu(x)p Fw(\))12 b Fv(62)h Fu(I)0 2338 y Fw(where)i Fu(r)q(nd)204 2345 y Fp(F)5 b Fm(!)p Fp(I)302 2338 y Fw(is)15 b(a)g(help)q(er)i(rounding)f(function)g (from)f Fv(R)f Fw(to)h Fv(Z)t Fw(.)114 2439 y Fq(NOTE)20 b({)40 b(With)19 b(prop)q(er)i(c)o(hoice)f(of)f Fl(r)q(nd)817 2445 y Fj(F)t Fk(!)p Fj(I)895 2439 y Fq(,)h(the)h(function)f Fl(cv)q(t)1228 2445 y Fj(F)t Fk(!)p Fj(I)1326 2439 y Fq(could)f(b)q(e)i(iden)o(tical)e(with) h(the)114 2489 y(function)13 b Fl(f)t(l)q(oor)q Fq(,)h Fl(tr)q(uncate)p Fq(,)e Fl(r)q(ound)p Fq(,)g(or)i Fl(ceil)q(ing)q Fq(.)19 b(These)14 b(functions)f(will)f(b)q(e)i(describ)q(ed)h(in)e(more)f(detail)h(in)114 2539 y(P)o(art)h(2)f(of)h(this)g(In)o(ternational)f(Standard.)0 2647 y Fw(An)j(implemen)o(tation)h(ma)o(y)f(pro)o(vide)g(more)f(than)h(one)g (con)o(v)o(ersion)g(op)q(eration)g(for)g(a)f(giv)o(en)i(pair)f(of)f(t)o(yp)q (es.)22 b(In)0 2704 y(particular,)15 b(eac)o(h)h(c)o(hoice)g(of)f Fu(r)q(nd)585 2711 y Fp(F)5 b Fm(!)p Fp(I)682 2704 y Fw(or)15 b(of)f Fu(near)q(est)941 2711 y Fp(F)987 2704 y Fw(shall)i(pro)q(duce)g(a)f (distinct)i(con)o(v)o(ersion)e(op)q(eration.)1905 2828 y(19)p eop %%Page: 20 28 bop 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y FC(6)69 b(Noti\014cation)0 175 y Fw(Noti\014cation)19 b(is)g(the)f(pro)q(cess)h(b)o(y)f(whic)o(h)h(a)f (user)h(or)f(program)f(is)i(informed)g(that)e(an)i(arithmetic)g(op)q(eration) 0 231 y(cannot)13 b(b)q(e)i(p)q(erformed.)k(Sp)q(eci\014cally)m(,)d(a)d (noti\014cation)h(shall)h(o)q(ccur)f(when)g(an)o(y)f(arithmetic)h(op)q (eration)g(returns)0 288 y(an)h(exceptional)i(v)m(alue)f(as)f(de\014ned)i(in) f(clause)g(5.)0 438 y FB(6.1)56 b(Noti\014cation)19 b(alternativ)n(es)0 552 y Fw(Three)e(alternativ)o(es)g(for)g(noti\014cation)g(are)g(pro)o(vided)h (in)f(this)h(In)o(ternational)f(Standard.)25 b(The)17 b(requiremen)o(ts)0 608 y(are:)51 730 y(a\))22 b(The)f(alternativ)o(e)h(in)g(clause)g(6.1.1)e (shall)i(b)q(e)g(supplied)i(in)e(conjunction)g(with)g(an)o(y)f(language)g (whic)o(h)114 787 y(pro)o(vides)15 b(supp)q(ort)h(for)e(exception)i (handling.)48 880 y(b\))23 b(The)17 b(alternativ)o(e)h(in)h(clause)f(6.1.2)e (shall)j(b)q(e)f(supplied)i(in)e(the)g(absence)g(of)f(language)h(supp)q(ort)g (for)f(ex-)114 937 y(ception)f(handling.)53 1031 y(c\))23 b(The)15 b(alternativ)o(e)g(in)i(clause)f(6.1.3)d(shall)j(b)q(e)g(supplied)i(b)o(y)d (all)h(implemen)o(tations.)0 1179 y Fx(6.1.1)52 b(Alteration)18 b(of)g(con)o(trol)g(\015o)o(w)0 1293 y Fw(An)f(implemen)o(tation)h(shall)f (pro)o(vide)h(this)f(alternativ)o(e)f(for)g(an)o(y)g(language)h(that)f(pro)o (vides)h(a)f(mec)o(hanism)i(for)0 1350 y(the)j(handling)h(of)f(exceptions.)37 b(It)21 b(is)h(allo)o(w)o(ed)f(\(with)g(system)f(supp)q(ort\))h(ev)o(en)g(in) g(the)g(absence)h(of)e(suc)o(h)h(a)0 1406 y(mec)o(hanism.)0 1491 y(Noti\014cation)12 b(consists)f(of)f(prompt)h(alteration)g(of)f(the)h (con)o(trol)g(\015o)o(w)g(of)f(the)h(program)f(to)g(execute)i(user)f(pro)o (vided)0 1547 y(exception)19 b(handling)h(co)q(de.)28 b(The)18 b(manner)g(in)h(whic)o(h)f(the)g(exception)h(handling)h(co)q(de)e(is)h(sp)q (eci\014ed)h(and)e(the)0 1604 y(capabilities)13 b(of)d(suc)o(h)h(exception)h (handling)g(co)q(de)f(\(including)i(whether)e(it)g(is)g(p)q(ossible)h(to)e (resume)h(the)g(op)q(eration)0 1660 y(whic)o(h)g(caused)g(the)g (noti\014cation\))f(is)h(the)g(pro)o(vince)g(of)f(the)g(language)h(standard,) f(not)g(this)h(arithmetic)g(standard.)0 1745 y(If)19 b(no)g(exception)h (handling)h(co)q(de)f(is)f(pro)o(vided)h(for)e(a)h(particular)h(o)q (ccurrence)g(of)e(the)i(return)e(of)h(an)g(excep-)0 1801 y(tional)f(v)m(alue) h(as)f(de\014ned)h(in)g(clause)f(5,)g(that)f(fact)h(shall)h(b)q(e)f(rep)q (orted)g(to)f(the)h(user)g(of)g(that)f(program)f(in)j(an)0 1858 y(unam)o(biguous)d(and)f(\\hard)g(to)g(ignore")g(manner.)20 b(\(See)15 b(clause)h(6.1.3.\))0 2006 y Fx(6.1.2)52 b(Recording)18 b(of)f(indicators)0 2120 y Fw(An)g(implemen)o(tation)h(shall)g(pro)o(vide)g (this)f(alternativ)o(e)g(for)f(an)o(y)h(language)g(that)f(do)q(es)h(not)g (pro)o(vide)g(a)g(mec)o(h-)0 2176 y(anism)g(for)f(the)h(handling)h(of)e (exceptions.)25 b(It)17 b(is)g(allo)o(w)o(ed)g(\(with)f(system)g(supp)q (ort\))h(ev)o(en)g(in)g(the)g(presence)g(of)0 2233 y(suc)o(h)f(a)e(mec)o (hanism.)0 2318 y(Noti\014cation)i(consists)g(of)f(t)o(w)o(o)f(elemen)o(ts:) 21 b(a)15 b(prompt)g(recording)h(of)f(the)h(fact)f(that)f(an)i(arithmetic)g (op)q(eration)0 2374 y(returned)g(an)g(exceptional)i(v)m(alue,)f(and)f(means) g(for)f(the)h(program)f(or)g(system)h(to)f(in)o(terrogate)g(or)g(mo)q(dify)i (the)0 2430 y(recording)f(at)e(a)h(subsequen)o(t)h(time.)0 2515 y(The)h(recording)h(shall)g(consist)f(of)g(four)f(indicators,)i(one)f (for)g(eac)o(h)g(of)f(the)h(exceptional)i(v)m(alues)f(that)e(ma)o(y)g(b)q(e)0 2572 y(returned)11 b(b)o(y)g(an)g(arithmetic)h(op)q(eration)f(as)g(de\014ned) h(in)g(clause)g(5:)39 b Fx(in)o(teger)p 1332 2572 16 2 v 19 w(o)o(v)o(er\015o)o(w)p Fw(,)9 b Fx(\015oating)p 1732 2572 V 21 w(o)o(v)o(er\015o)o(w)p Fw(,)0 2628 y Fx(under\015o)o(w)p Fw(,)14 b(and)h Fx(unde\014ned)p Fw(.)0 2828 y(20)p eop %%Page: 21 29 bop -72 458 13 50 v -72 2664 13 57 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y Fw(These)i(indicators)h(shall)g(b)q(e)g(clear)f(at)f(the)i(start)d(of)i (the)g(program.)33 b(They)20 b(are)g(set)f(when)i(an)o(y)e(arithmetic)0 102 y(op)q(eration)j(returns)f(an)g(exceptional)i(v)m(alue)g(as)e(de\014ned)i (in)f(clause)g(5.)38 b(Once)23 b(set,)f(an)f(indicator)i(shall)f(b)q(e)0 158 y(cleared)c(only)f(b)o(y)f(explicit)j(action)e(of)f(the)h(program.)22 b(The)17 b(implemen)o(tation)h(shall)g(not)e(allo)o(w)h(a)f(program)g(to)0 214 y(complete)g(successfully)h(with)f(an)f(indicator)h(that)e(is)i(set.)k (Unsuccessful)d(completion)f(of)f(a)g(program)f(shall)i(b)q(e)0 271 y(rep)q(orted)e(to)f(the)h(user)g(of)g(that)f(program)g(in)h(an)g(unam)o (biguous)h(and)f(\\hard)f(to)g(ignore")h(manner.)20 b(\(See)14 b(clause)0 327 y(6.1.3.\))114 443 y Fq(NOTE)k({)36 b(The)19 b(status)g(\015ags)f(required)h(b)o(y)f(IEC)g(559)g(are)g(an)g(example)f(of)g (this)i(form)d(of)i(noti\014cation,)114 493 y Fo(pr)n(ovide)n(d)12 b Fq(that)g(the)h(program)d(is)i(not)g(allo)o(w)o(ed)f(to)h(terminate)f (successfully)i(with)f(an)o(y)g(status)h(\015ags)f(still)f(set.)0 616 y Fw(Consider)21 b(a)e(set)h Fu(E)i Fw(includin)q(g)g(at)e(least)g(four)g (elemen)o(ts)g(corresp)q(onding)h(to)f(the)g(four)g(exceptional)h(v)m(alues:) 0 672 y Fx(in)o(teger)p 161 672 16 2 v 19 w(o)o(v)o(er\015o)o(w)p Fw(,)13 b Fx(\015oating)p 565 672 V 20 w(o)o(v)o(er\015o)o(w)p Fw(,)g Fx(under\015o)o(w)p Fw(,)h(and)i Fx(unde\014ned)p Fw(.)21 b(Let)15 b Fu(I)t(nd)g Fw(b)q(e)h(b)q(e)g(a)g(t)o(yp)q(e)f(whose)0 729 y(v)m(alues)h(represen)o(t)g(the)f(subsets)g(of)g Fu(E)s Fw(.)0 813 y(An)d(implemen)o(tation)h(shall)g(pro)o(vide)f(an)g(em)o(b)q (edding)h(of)f Fu(I)t(nd)f Fw(in)o(to)h(an)f(existing)i(programming)e (language)h(t)o(yp)q(e.)0 870 y(In)j(addition,)h(a)e(metho)q(d)g(shall)i(b)q (e)f(pro)o(vided)h(for)e(denoting)h(eac)o(h)f(of)g(the)h(v)m(alues)h(of)e Fu(I)t(nd)g Fw(\(either)h(as)f(constan)o(ts)0 926 y(or)h(via)g (computation\).)0 1011 y(The)g(follo)o(wing)h(four)f(op)q(erations)h(shall)g (b)q(e)g(pro)o(vided:)114 1134 y Fu(cl)q(ear)p 219 1134 14 2 v 16 w(indicator)q(s)p Fw(:)60 b Fu(I)t(nd)14 b Fv(!)114 1190 y Fu(set)p 175 1190 V 17 w(indicator)q(s)p Fw(:)102 b Fu(I)t(nd)14 b Fv(!)114 1247 y Fu(test)p 191 1247 V 17 w(indicator)q(s)p Fw(:)86 b Fu(I)t(nd)14 b Fv(!)g Fu(B)r(ool)q(ean)114 1303 y(sav)r(e)p 207 1303 V 16 w(indicator)q(s)p Fw(:)160 b Fv(!)14 b Fu(I)t(nd)0 1426 y Fw(F)l(or)h(ev)o(ery)g(v)m(alue)h Fu(S)i Fw(in)e Fu(I)t(nd)p Fw(,)e(the)h(ab)q(o)o(v)o(e)g(four)g(op)q(erations)g(shall)i(b)q(eha)o(v)o(e) e(as)g(follo)o(ws:)114 1539 y Fu(cl)q(ear)p 219 1539 V 16 w(indicator)q(s)p Fw(\()p Fu(S)s Fw(\))44 b(clear)16 b(eac)o(h)f(of)g(the)g(indicators)h(named) f(in)h Fu(S)114 1652 y(set)p 175 1652 V 17 w(indicator)q(s)p Fw(\()p Fu(S)s Fw(\))86 b(set)15 b(eac)o(h)g(of)g(the)g(indicators)h(named)g (in)g Fu(S)114 1765 y(test)p 191 1765 V 17 w(indicator)q(s)p Fw(\()p Fu(S)s Fw(\))70 b(return)15 b Fx(true)g Fw(if)h(an)o(y)f(of)f(the)i (indicators)g(named)f(in)h(S)f(is)h(set)114 1878 y Fu(sav)r(e)p 207 1878 V 16 w(indicator)q(s)p Fw(\(\))86 b(return)15 b(the)g(names)g(of)g (all)h(indicators)g(that)f(are)g(curren)o(tly)g(set)0 1992 y(Indicators)h(whose)f(names)g(are)g(not)g(in)h Fu(S)h Fw(shall)g(not)d(b)q (e)i(altered.)0 2076 y(An)h(implemen)o(tation)h(is)f(p)q(ermitted)g(to)f (expand)i(the)f(set)f Fu(E)j Fw(to)d(include)j(additional)f(noti\014cation)f (indicators)0 2133 y(b)q(ey)o(ond)f(the)f(four)g(listed)h(in)g(this)g(part)f (of)f(this)i(In)o(ternational)g(Standard.)0 2217 y(When)k(an)o(y)g (arithmetic)g(op)q(eration)g(returns)g(an)f(exceptional)i(v)m(alue)g(as)f (de\014ned)h(in)f(clause)h(5,)f(in)h(addition)0 2274 y(to)16 b(recording)h(the)g(ev)o(en)o(t,)f(an)h(implemen)o(tation)g(shall)h(pro)o (vide)f(a)g Fr(c)n(ontinuation)f(value)h Fw(for)f(the)h(result)g(of)f(the)0 2330 y(failed)g(arithmetic)g(op)q(eration,)f(and)h(con)o(tin)o(ue)g (execution)g(from)e(that)h(p)q(oin)o(t:)51 2444 y(a\))22 b(In)e(the)f(case)h (of)f Fx(under\015o)o(w)f Fw(\(that)h(is,)i(when)f Fu(r)q(esul)q(t)1086 2451 y Fp(F)1115 2444 y Fw(\()p Fu(x;)8 b(r)q(nd)p Fw(\))18 b(=)i Fx(under\015o)o(w)p Fw(\),)g(the)g(con)o(tin)o(uation)114 2500 y(v)m(alue)c(shall)g(b)q(e)g Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))e(when)i Fu(denor)q(m)d Fw(=)g Fx(true)o Fw(,)i(or)g(0)g(when)g Fu(denor)q(m)e Fw(=)g Fx(false)p Fw(.)48 2591 y(b\))23 b(In)13 b(the)f(case)h(of)f Fx(in)o(teger)p 547 2591 16 2 v 19 w(o)o(v)o(er\015o)o(w) p Fw(,)e Fx(\015oating)p 948 2591 V 20 w(o)o(v)o(er\015o)o(w)p Fw(,)h(and)i Fx(unde\014ned)p Fw(,)f(the)h(con)o(tin)o(uation)g(v)m(alue)114 2647 y(shall)18 b(b)q(e)g(implemen)o(tation)g(de\014ned.)28 b(There)17 b(are)g(no)g(restrictions)h(on)f(this)g(con)o(tin)o(uation)h(v)m (alue.)27 b(It)17 b(is)114 2704 y(not)d(required)j(to)d(b)q(e)i(a)f(v)m(alid) i(v)m(alue)f(of)f(the)g(t)o(yp)q(e)h Fu(I)i Fw(or)d Fu(F)6 b Fw(.)1905 2828 y(21)p eop %%Page: 22 30 bop -72 60 13 50 v -72 2103 13 170 v -72 2493 13 150 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)114 45 y Fq(NOTE)f({)29 b(The)15 b(in\014nities)g(and)f(NaNs)h(pro)q(duced)h(b)o(y)f(an)f(IEC)h(559)f(system)h (are)g(examples)f(of)g(v)n(alues)g(not)114 95 y(in)f Fl(F)19 b Fq(whic)o(h)14 b(migh)o(t)e(b)q(e)i(used)h(as)f(con)o(tin)o(uation)f(v)n (alues.)114 223 y(NOTE)h({)27 b(It)14 b(is)f(not)h(sp)q(eci\014ed)h(b)o(y)f (this)f(In)o(ternational)g(Standard)h(what)g(happ)q(ens)g(when)g(an)g(op)q (eration)f(is)114 273 y(applied)e(to)i(a)f(v)n(alue)f(that)i(is)f(not)g(in)g (its)g(input)g(domain)e(\(as)j(de\014ned)g(b)o(y)f(the)h(op)q(eration)g (signature\).)18 b(Th)o(us,)114 322 y(for)13 b(example,)f(the)j(b)q(eha)o (vior)e(of)g Fl(add)705 328 y Fj(F)746 322 y Fq(on)g(a)h(NaN)g(is)f(not)h(in) f(the)i(scop)q(e)g(of)e(this)h(In)o(ternational)f(Standard.)114 450 y(NOTE)k({)33 b(No)17 b(c)o(hanges)g(to)g(the)g(sp)q(eci\014cations)h(of) e(a)h(language)e(standard)j(are)f(required)h(to)e(implemen)o(t)114 500 y(this)g(alternativ)o(e)g(for)g(noti\014cation.)24 b(The)16 b(recordings)h(can)g(b)q(e)f(implemen)o(ted)e(in)i(system)g(soft)o(w)o(are.) 25 b(The)114 550 y(op)q(erations)10 b(for)g(in)o(terrogating)f(and)h (manipulating)d(the)j(recording)h(can)f(b)q(e)h(con)o(tained)f(in)f(a)h (system)g(library)m(,)114 600 y(and)j(in)o(v)o(ok)o(ed)g(as)h(library)g (routine)g(calls.)0 748 y Fx(6.1.3)52 b(T)l(ermination)18 b(with)g(message)0 862 y Fw(An)c(implemen)o(tation)i(shall)f(pro)o(vide)f(this)h(alternativ)o (e,)f(whic)o(h)g(serv)o(es)g(as)g(a)f(bac)o(k-up)i(if)f(the)g(programmer)f (has)0 918 y(not)i(pro)o(vided)h(the)f(necessary)g(co)q(de)h(for)f(either)h (of)f(the)g(other)g(alternativ)o(es.)0 1003 y(Noti\014cation)21 b(consists)f(of)g(prompt)g(deliv)o(ery)i(of)e(a)g(\\hard-to-ignore")g (message,)h(follo)o(w)o(ed)f(b)o(y)h(termination)0 1060 y(of)e(execution.)34 b(An)o(y)19 b(suc)o(h)h(message)f(should)i(iden)o(tify)f(the)g(cause)g(of)f (the)g(noti\014cation)i(and)e(the)h(op)q(eration)0 1116 y(resp)q(onsible.)0 1266 y FB(6.2)56 b(Dela)n(ys)19 b(in)g(noti\014cation)0 1380 y Fw(Noti\014cation)e(ma)o(y)f(b)q(e)h(momen)o(tarily)g(dela)o(y)o(ed)g(for)f (p)q(erformance)h(reasons,)f(but)h(should)h(tak)o(e)e(place)h(as)f(close)0 1437 y(as)g(practical)h(to)e(the)h(attempt)f(to)h(p)q(erform)f(the)i(resp)q (onsible)h(op)q(eration.)k(When)17 b(noti\014cation)g(is)f(dela)o(y)o(ed,)h (it)0 1493 y(is)h(p)q(ermitted)h(to)e(merge)g(noti\014cations)h(of)f (di\013eren)o(t)h(o)q(ccurrences)h(of)e(the)h(return)f(of)g(the)h(same)g (exceptional)0 1549 y(v)m(alue)i(in)o(to)f(a)f(single)j(noti\014cation.)31 b(Ho)o(w)o(ev)o(er,)18 b(it)h(is)h(not)e(p)q(ermissible)k(to)c(generate)g (duplicate)j(or)d(spurious)0 1606 y(noti\014cations.)0 1691 y(In)i(connection)g(with)g(noti\014cation,)g(\\prompt")f(means)g(b)q(efore)g (the)h(o)q(ccurrence)g(of)f(a)g(signi\014can)o(t)h(program)0 1747 y(ev)o(en)o(t.)28 b(F)l(or)17 b(the)i(recording)f(of)g(indicators)g(in)h (6.1.2,)e(a)h(signi\014can)o(t)h(program)e(ev)o(en)o(t)g(is)i(an)f(attempt)f (b)o(y)h(the)0 1803 y(program)c(\(or)g(system\))h(to)f(access)h(the)g (indicators,)h(or)f(the)g(termination)g(of)g(the)g(program.)k(F)l(or)14 b(alteration)h(of)0 1860 y(con)o(trol)g(\015o)o(w)g(describ)q(ed)i(in)g (6.1.1,)c(the)i(de\014nition)j(of)d(a)g(signi\014can)o(t)h(ev)o(en)o(t)f(is)h (language)g(dep)q(enden)o(t,)g(is)g(lik)o(ely)0 1916 y(to)f(dep)q(end)i(up)q (on)f(the)f(scop)q(e)h(or)f(exten)o(t)g(of)g(the)h(exception)g(handling)h (mec)o(hanisms,)f(and)f(m)o(ust)g(therefore)g(b)q(e)0 1973 y(pro)o(vided)i(b)o(y)f(language)g(standards)g(or)f(b)o(y)i(language)f (binding)i(standards.)k(F)l(or)15 b(termination)i(with)f(message)0 2029 y(describ)q(ed)23 b(in)e(6.1.3,)f(the)h(de\014nition)h(of)f(a)f (signi\014can)o(t)i(ev)o(en)o(t)e(is)h(again)g(language)g(dep)q(enden)o(t,)i (but)e(w)o(ould)0 2086 y(include)d(pro)q(ducing)e(output)f(visible)i(to)e(h)o (umans)g(or)g(other)g(programs.)114 2201 y Fq(NOTE)g({)29 b(Roughly)13 b(sp)q(eaking,)h(\\prompt")f(should)i(at)f(least)h(imply)d(\\in)i(time)f(to)i (prev)o(en)o(t)h(an)e(erroneous)114 2251 y(resp)q(onse)h(to)f(the)h (exception.")114 2379 y(NOTE)i({)32 b(The)17 b(phrase)h(\\hard-to-ignore")d (is)i(in)o(tended)g(to)f(discourage)h(writing)f(messages)g(to)g(log)g (\014les)114 2429 y(\(whic)o(h)d(are)h(rarely)g(read\),)g(or)g(setting)g (program)e(v)n(ariables)h(\(whic)o(h)g(disapp)q(ear)h(when)g(the)h(program)d (com-)114 2478 y(pletes\).)0 2828 y Fw(22)p eop %%Page: 23 31 bop -72 1404 13 419 v -72 2820 13 999 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y FB(6.3)56 b(User)18 b(selection)h(of)g(alternativ)n(e)g(for)f (noti\014cation)0 159 y Fw(A)i(conforming)f(implemen)o(tation)i(shall)f(pro)o (vide)g(a)g(means)f(for)g(a)g(user)h(or)f(program)f(to)h(select)h(among)f (the)0 216 y(alternate)14 b(noti\014cation)i(mec)o(hanisms)f(pro)o(vided.)20 b(The)15 b(c)o(hoice)h(of)e(an)h(appropriate)f(means,)h(suc)o(h)f(as)h (compiler)0 272 y(options,)g(is)h(left)f(to)g(the)g(implemen)o(tation.)0 357 y(The)21 b(language)g(or)g(binding)h(standard)f(should)h(sp)q(ecify)g (the)f(noti\014cation)h(alternativ)o(e)f(to)f(b)q(e)i(used)f(in)h(the)0 413 y(absence)16 b(of)f(a)h(user)f(c)o(hoice.)22 b(The)16 b(noti\014cation)h (alternativ)o(e)e(used)i(in)f(the)g(absence)g(of)f(a)g(user)h(c)o(hoice)h (shall)f(b)q(e)0 470 y(do)q(cumen)o(ted.)0 641 y FC(7)69 b(Relationship)21 b(with)g(language)j(standards)0 771 y Fw(A)18 b(computing)h(system)f(often)h (pro)o(vides)g(arithmetic)g(data)e(t)o(yp)q(es)i(within)h(the)e(con)o(text)g (of)g(a)g(standard)g(pro-)0 827 y(gramming)11 b(language.)19 b(The)11 b(requiremen)o(ts)h(of)f(the)g(presen)o(t)g(standard)g(shall)i(b)q (e)f(in)g(addition)g(to)f(those)g(imp)q(osed)0 884 y(b)o(y)k(the)g(relev)m (an)o(t)h(programming)f(language)g(standards.)0 968 y(This)j(standard)f(do)q (es)g(not)g(de\014ne)h(the)g(syn)o(tax)e(of)h(arithmetic)h(expressions.)27 b(Ho)o(w)o(ev)o(er,)16 b(programmers)g(need)0 1025 y(to)f(kno)o(w)f(ho)o(w)h (to)f(reliably)k(access)d(the)g(op)q(erations)g(de\014ned)i(in)f(this)g (standard.)114 1153 y Fq(NOTE)j({)37 b(Pro)o(viding)18 b(the)i(information)c (required)j(in)g(this)g(clause)g(is)g(prop)q(erly)g(the)h(resp)q(onsibilit)o (y)e(of)114 1202 y(programmi)o(ng)c(language)i(standards.)27 b(An)17 b(individual)e(implemen)o(tatio)o(n)f(w)o(ould)i(only)g(need)i(to)e (pro)o(vide)114 1252 y(details)d(if)g(it)h(could)g(not)f(cite)i(an)e (appropriate)h(clause)h(of)e(the)i(language)e(or)g(binding)g(standard.)0 1387 y Fw(An)g(implemen)o(tation)h(shall)g(do)q(cumen)o(t)f(the)f(notation)h (used)g(to)f(in)o(v)o(ok)o(e)g(eac)o(h)h(op)q(eration)g(sp)q(eci\014ed)i(in)e (clause)h(5.)114 1502 y Fq(NOTE)g({)28 b(F)m(or)13 b(example,)f(in)o(teger)i (equalit)o(y)f(\()p Fl(eq)895 1508 y Fj(I)915 1502 y Fq(\()p Fl(i;)7 b(j)r Fq(\)\))14 b(migh)o(t)e(b)q(e)i(in)o(v)o(ok)o(ed)f(as)214 1589 y Fg(i)21 b(=)h(j)101 b Fq(in)13 b(P)o(ascal)h([5)o(])f(and)h(Ada)g([6)o (])214 1639 y Fg(i)21 b(==)h(j)79 b Fq(in)13 b(C)h([9)o(])214 1689 y Fg(i)21 b(.EQ.)g(j)36 b Fq(in)13 b(F)m(ortran)h([3)o(])214 1739 y Fg(\(=)21 b(i)h(j\))57 b Fq(in)13 b(Common)e(Lisp)i([36)o(])0 1861 y Fw(An)f(implemen)o(tation)g(shall)h(do)q(cumen)o(t)e(the)h(seman)o (tics)f(of)g(arithmetic)h(expressions)g(in)g(terms)f(of)g(comp)q(ositions)0 1917 y(of)k(the)g(op)q(erations)g(sp)q(eci\014ed)j(in)e(clause)g(5.)114 2033 y Fq(NOTE)10 b({)20 b(F)m(or)9 b(example,)g(if)g Fl(x)p Fq(,)h Fl(y)q Fq(,)h(and)f Fl(z)i Fq(are)e(declared)h(to)f(b)q(e)h(single)e (precision)i(\(SP\))f(reals,)h(and)e(calculation)114 2083 y(is)k(done)i(in)e (single)h(precision,)f(then)i(the)f(expression)214 2170 y Fg(x)21 b(+)h(y)f(<)h(z)114 2257 y Fq(migh)o(t)11 b(translate)k(to)214 2344 y Fl(l)q(ss)265 2350 y Fj(S)r(P)315 2344 y Fq(\()f Fl(add)411 2350 y Fj(S)r(P)460 2344 y Fq(\()p Fl(x;)7 b(y)q Fq(\))p Fl(;)21 b(z)16 b Fq(\))114 2431 y(If)11 b(the)i(language)e(in)h(question)g(did)g(all) e(computations)h(in)h(double)f(precision,)i(the)f(ab)q(o)o(v)o(e)g (expression)h(migh)o(t)114 2481 y(translate)h(to)214 2568 y Fl(l)q(ss)265 2574 y Fj(D)q(P)321 2568 y Fq(\()g Fl(add)417 2574 y Fj(D)q(P)472 2568 y Fq(\()g Fl(cv)q(t)556 2574 y Fj(S)r(P)t Fk(!)p Fj(D)q(P)693 2568 y Fq(\()p Fl(x)p Fq(\))p Fl(;)21 b(cv)q(t)836 2574 y Fj(S)r(P)t Fk(!)p Fj(D)q(P)972 2568 y Fq(\()p Fl(y)q Fq(\))15 b(\))p Fl(;)21 b(cv)q(t)1143 2574 y Fj(S)r(P)t Fk(!)p Fj(D)q(P)1280 2568 y Fq(\()p Fl(z)r Fq(\))14 b(\))114 2655 y(Alternativ)o(ely)m(,)e(if)h Fl(x)h Fq(w)o(as)g(declared)g(to)g(b)q(e)h(an)e (in)o(teger,)h(the)h(ab)q(o)o(v)o(e)e(expression)i(migh)o(t)d(translate)i(to) 1905 2828 y Fw(23)p eop %%Page: 24 32 bop -72 1600 13 1601 v -72 2244 13 218 v -72 2474 13 57 v -72 2681 13 113 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)214 45 y Fl(l)q(ss)265 51 y Fj(S)r(P)315 45 y Fq(\()e Fl(add)411 51 y Fj(S)r(P)460 45 y Fq(\()g Fl(cv)q(t)544 51 y Fj(I)r Fk(!)p Fj(S)r(P)644 45 y Fq(\()p Fl(x)p Fq(\))p Fl(;)21 b(y)15 b Fq(\))p Fl(;)21 b(z)16 b Fq(\))0 167 y Fw(Compilers)21 b(often)f(\\optimize")g(co)q(de)h(as)f (part)f(of)h(compilation.)36 b(Th)o(us,)20 b(an)g(arithmetic)h(expression)g (migh)o(t)0 224 y(not)e(b)q(e)h(executed)g(as)f(written.)32 b(An)20 b(implemen)o(tation)h(shall)f(do)q(cumen)o(t)g(the)f(p)q(ossible)i (transformations)d(of)0 280 y(arithmetic)e(expressions)g(\(or)e(groups)h(of)g (expressions\))g(that)g(it)g(p)q(ermits.)21 b(T)o(ypical)16 b(transformations)e(include)51 402 y(a\))22 b(Insertion)16 b(of)e(op)q(erations,)h(suc)o(h)h(as)f(data)f(t)o(yp)q(e)i(con)o(v)o(ersions) f(or)f(c)o(hanges)i(in)g(precision.)48 496 y(b\))23 b(Reordering)16 b(of)f(op)q(erations,)g(suc)o(h)g(as)g(the)g(application)i(of)e(asso)q (ciativ)o(e)g(or)g(distributiv)o(e)i(la)o(ws.)53 590 y(c\))23 b(Replacing)d(op)q(erations)e(\(or)g(en)o(tire)h(sub)q(expressions\))g(with)g (others,)f(suc)o(h)h(as)f(\\2)11 b Fv(\003)h Fu(x)p Fw(")18 b Fv(!)h Fw(\\)p Fu(x)12 b Fw(+)g Fu(x)p Fw(")18 b(or)114 646 y(\\)p Fu(x=c)p Fw(")c Fv(!)h Fw(\\)p Fu(x)10 b Fv(\003)g Fw(\(1)p Fu(=c)p Fw(\)".)48 740 y(d\))23 b(Ev)m(aluating)16 b(constan)o(t)e(sub)q (expressions.)53 834 y(e\))23 b(Eliminating)17 b(unneeded)g(sub)q (expressions.)0 956 y(Only)22 b(transformation)e(whic)o(h)i(alter)f(the)h (seman)o(tics)f(of)g(an)g(expression)h(\(the)f(v)m(alues)h(pro)q(duced,)i (and)d(the)0 1012 y(noti\014cations)d(generated\))f(need)i(b)q(e)f(do)q (cumen)o(ted.)28 b(Only)19 b(the)e(range)g(of)h(p)q(ermitted)g (transformations)e(need)0 1069 y(b)q(e)h(do)q(cumen)o(ted.)25 b(It)17 b(is)g(not)g(necessary)f(to)g(describ)q(e)j(the)d(sp)q(eci\014c)j(c)o (hoice)f(of)e(transformations)f(that)h(will)i(b)q(e)0 1125 y(applied)j(to)e(a)g(particular)h(expression.)33 b(\(See)20 b(the)f(F)l(ortran)f(standard)h([3],)g(particularly)i(clauses)f(7.1.2)e(and)0 1182 y(7.1.7,)13 b(for)i(an)g(example)h(of)f(do)q(cumen)o(tation)g(in)h(this) g(area.\))0 1266 y(The)f(textual)f(scop)q(e)h(of)f(suc)o(h)h(transformations) e(shall)i(b)q(e)g(do)q(cumen)o(ted,)g(and)g(an)o(y)f(mec)o(hanisms)h(that)e (pro)o(vide)0 1323 y(programmer)h(con)o(trol)h(o)o(v)o(er)f(this)i(pro)q (cess)f(should)h(b)q(e)g(do)q(cumen)o(ted)g(as)f(w)o(ell.)114 1438 y Fq(NOTE)e({)26 b(It)13 b(is)g(highly)f(desirable)i(that)f(programmi)o (ng)d(languages)j(in)o(tended)g(for)g(n)o(umerical)f(use)h(pro)o(vide)114 1488 y(means)k(for)g(limiting)e(the)j(transformations)f(applied)g(to)h (particular)g(arithmetic)e(expressions.)32 b(Con)o(trol)114 1538 y(o)o(v)o(er)14 b(c)o(hanges)g(of)f(precision)i(is)e(particularly)h (useful.)0 1747 y FC(8)69 b(Do)r(cumen)n(tation)21 b(requiremen)n(ts)0 1876 y Fw(In)13 b(order)g(to)f(conform)h(to)f(this)h(standard,)g(an)f (implemen)o(tation)j(shall)f(include)h(do)q(cumen)o(tation)e(pro)o(viding)h (the)0 1933 y(follo)o(wing)i(information)f(to)g(programmers.)114 2061 y Fq(NOTE)i({)32 b(Muc)o(h)17 b(of)f(the)h(do)q(cumen)o(tation)e (required)i(in)f(this)h(clause)g(is)f(prop)q(erly)h(the)g(resp)q(onsibilit)o (y)f(of)114 2110 y(programmi)o(ng)9 b(language)i(or)h(binding)g(standards.)18 b(An)12 b(individual)e(implemen)o(tation)f(w)o(ould)i(only)g(need)i(to)114 2160 y(pro)o(vide)g(details)h(if)f(it)h(could)f(not)h(cite)g(an)g (appropriate)g(clause)h(of)e(the)h(language)f(or)h(binding)f(standard.)114 2229 y(Some)f(of)i(the)g(follo)o(wing)d(items)i(should)h Fo(not)g Fq(b)q(e)h(standardized.)k(See)14 b(A.7)g(for)f(a)h(discussion)g(of)f(this)h (topic.)51 2363 y Fw(a\))22 b(A)15 b(list)h(of)f(the)g(pro)o(vided)h(in)o (teger)f(and)h(\015oating)f(p)q(oin)o(t)h(t)o(yp)q(es)f(that)f(conform)h(to)f (this)i(standard.)48 2457 y(b\))23 b(F)l(or)15 b(eac)o(h)g(in)o(teger)h(t)o (yp)q(e,)f(the)h(v)m(alues)h(of)e(the)g(parameters:)20 b Fr(b)n(ounde)n(d)5 b Fw(,)15 b Fu(modul)q(o)p Fw(,)f Fu(minint)p Fw(,)h(and)h Fu(maxint)p Fw(.)114 2514 y(\(See)f(5.1.\))53 2607 y(c\))23 b(F)l(or)16 b(eac)o(h)h(\015oating)g(p)q(oin)o(t)g(t)o(yp)q(e,)g(the)g(v)m (alues)h(of)f(the)g(parameters:)22 b Fu(r)q Fw(,)17 b Fu(p)p Fw(,)g Fu(emin)p Fw(,)g Fu(emax)p Fw(,)g Fu(denor)q(m)p Fw(,)g(and)114 2664 y Fr(ie)n(c)p 171 2664 14 2 v 16 w(559)p Fw(.)j(\(See)c(5.2.\))0 2828 y(24)p eop %%Page: 25 33 bop -72 475 13 57 v -72 569 V -72 1170 V -72 1321 V -72 2459 13 331 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)48 45 y Fw(d\))23 b(F)l(or)10 b(eac)o(h)h(in)o(teger)h(t)o(yp)q(e)f Fu(I)t Fw(,)g(whic)o(h)h(\(or)e(b)q (oth\))h(of)g(the)g(t)o(w)o(o)f(p)q(ermitted)h Fu(div)1370 52 y Fp(I)1401 45 y Fw(and)g Fu(r)q(em)1568 52 y Fp(I)1599 45 y Fw(pairs)g(are)g(pro)o(vided)114 102 y(for)h(that)h(t)o(yp)q(e,)g(and)h (whic)o(h)g(\(or)f(b)q(oth\))g(of)g(the)g(t)o(w)o(o)f Fu(mod)1097 109 y Fp(I)1130 102 y Fw(functions)i(are)f(pro)o(vided)h(for)f(that)f(t)o(yp) q(e.)20 b(\(See)114 158 y(5.1.3.\))53 252 y(e\))j(F)l(or)15 b(eac)o(h)h(unsigned)h(in)o(teger)f(t)o(yp)q(e)g Fu(I)t Fw(,)g(whic)o(h)g (\(if)h(an)o(y\))e(of)g(the)h(op)q(erations)g Fu(neg)1514 259 y Fp(I)1535 252 y Fw(,)f Fu(abs)1628 259 y Fp(I)1648 252 y Fw(,)h(and)g Fu(sig)r(n)1854 259 y Fp(I)1889 252 y Fw(are)114 308 y(omitted)f(for)f(that)h(t)o(yp)q(e.)20 b(\(See)15 b(5.1.3.\))56 402 y(f)t(\))22 b(F)l(or)16 b(eac)o(h)i(\015oating)f(p)q(oin)o(t)h(t)o(yp)q (e)g Fu(F)6 b Fw(,)18 b(the)g(full)g(de\014nitions)i(of)d Fu(r)q(nd)1272 409 y Fp(F)1301 402 y Fw(,)g Fu(r)q(esul)q(t)1452 409 y Fp(F)1482 402 y Fw(,)g(and)h Fu(add)1675 386 y Fm(\003)1675 415 y Fp(F)1704 402 y Fw(.)26 b(\(See)18 b(5.2.5,)114 459 y(5.2.6,)13 b(and)i(5.2.4.\))38 b(\(This)16 b(should)g(include)i(v)m(alues)e(for)f Fu(r)q(nd)p 1191 459 14 2 v 16 w(er)q(r)q(or)g Fw(and)h Fu(r)q(nd)p 1492 459 V 16 w(sty)r(l)q(e)p Fw(.\))51 552 y(g\))22 b(F)l(or)14 b(eac)o(h)h(\015oating)f(p)q(oin)o(t)h(t)o(yp)q(e)g Fu(F)6 b Fw(,)15 b(the)g(t)o(yp)q(e)g Fu(J)k Fw(used)c(with)g(the)g(four)g(op)q (erations)g Fu(exponent)1750 559 y Fp(F)1780 552 y Fw(,)f Fu(scal)q(e)1908 559 y Fp(F)1937 552 y Fw(,)114 609 y Fu(tr)q(unc)225 616 y Fp(F)254 609 y Fw(,)h(and)g Fu(r)q(ound)491 616 y Fp(F)520 609 y Fw(.)20 b(\(See)c(5.2.2.\))48 703 y(h\))23 b(F)l(or)11 b(eac)o(h)i(pair)g(of)f(t)o(yp)q(es,)g(a)g(list)h(of)f(con)o(v)o(ersion)h(op) q(erations)g(pro)o(vided)g(including)i(the)d(seman)o(tics)h(of)f(eac)o(h)114 759 y Fu(r)q(nd)187 766 y Fp(F)5 b Fm(!)p Fp(I)284 759 y Fw(and)15 b Fu(near)q(est)524 766 y Fp(F)570 759 y Fw(function.)21 b(\(See)15 b(5.3.\))61 853 y(i\))23 b(The)15 b(notation)g(for)f(in)o(v)o(oking)i(eac)o (h)g(op)q(eration)f(pro)o(vided)h(b)o(y)f(this)h(standard.)j(\(See)d(5.1.1)d (and)j(5.2.2.\))59 947 y(j\))23 b(The)c(translation)f(of)h(arithmetic)g (expressions)g(in)o(to)g(com)o(binations)g(of)g(op)q(erations)f(pro)o(vided)i (b)o(y)f(this)114 1003 y(standard,)14 b(including)k(an)o(y)d(use)g(made)h(of) e(higher)i(precision.)22 b(\(See)15 b(clause)h(7.\))49 1097 y(k\))23 b(F)l(or)c(eac)o(h)i(in)o(teger)g(t)o(yp)q(e,)g(the)g(metho)q(d)f (for)g(a)g(program)g(to)g(obtain)g(the)h(v)m(alues)h(of)e(the)g(parameters:) 114 1153 y Fr(b)n(ounde)n(d)5 b Fw(,)14 b Fu(modul)q(o)p Fw(,)g Fu(minint)p Fw(,)h(and)g Fu(maxint)p Fw(.)20 b(\(See)c(5.1.\))61 1247 y(l\))23 b(F)l(or)11 b(eac)o(h)h(\015oating)g(p)q(oin)o(t)g(t)o(yp)q(e,) g(the)g(metho)q(d)h(for)e(a)g(program)g(to)g(obtain)i(the)f(v)m(alues)h(of)e (the)h(parameters:)114 1304 y Fu(r)q Fw(,)i Fu(p)p Fw(,)h Fu(emin)p Fw(,)g Fu(emax)p Fw(,)f Fu(denor)q(m)p Fw(,)h(and)g Fr(ie)n(c)p 813 1304 V 17 w(559)p Fw(.)20 b(\(See)c(5.2.\))35 1398 y(m\))23 b(F)l(or)16 b(eac)o(h)i(\015oating)f(p)q(oin)o(t)h(t)o(yp)q(e,)g(the)g(metho) q(d)f(for)g(a)g(program)g(to)f(obtain)i(the)g(v)m(alues)g(of)f(the)h(deriv)o (ed)114 1454 y(constan)o(ts)g Fr(fmax)6 b Fw(,)19 b Fr(fmin)s Fw(,)h Fr(fmin)668 1461 y Fp(N)702 1454 y Fw(,)g Fu(epsil)q(on)p Fw(,)f Fu(r)q(nd)p 988 1454 V 16 w(er)q(r)q(or)q Fw(,)g(and)g Fu(r)q(nd)p 1310 1454 V 17 w(sty)r(l)q(e)p Fw(,)g(and)h(the)f(notation)f(for) h(the)114 1510 y(three)c(v)m(alues)h(of)f Fu(r)q(nd)p 493 1510 V 16 w(sty)r(l)q(e)p Fw(.)20 b(\(See)c(5.2.1)d(and)j(5.2.8.\))48 1604 y(n\))23 b(The)17 b(metho)q(ds)f(used)i(for)e(noti\014cation,)h(and)g (the)g(information)g(made)g(a)o(v)m(ailable)h(ab)q(out)f(the)f(violation.)114 1661 y(\(See)f(clause)h(6.\))51 1755 y(o\))22 b(The)17 b(means)h(for)f (selecting)i(among)d(the)i(noti\014cation)g(metho)q(ds,)g(and)g(the)f (noti\014cation)i(metho)q(d)e(used)114 1811 y(in)f(the)f(absence)h(of)f(a)g (user)g(selection.)21 b(\(See)16 b(6.3.\))48 1905 y(p\))23 b(When)14 b(\\recording)g(of)f(indicators")h(is)h(the)e(metho)q(d)h(of)g (noti\014cation,)g(the)g(t)o(yp)q(e)g(used)g(to)f(represen)o(t)h Fu(I)t(nd)p Fw(,)114 1961 y(the)f(metho)q(d)h(for)f(denoting)h(the)g(v)m (alues)h(of)e Fu(I)t(nd)g Fw(\(the)g(asso)q(ciation)h(of)f(these)h(v)m(alues) h(with)f(the)g(subsets)f(of)114 2018 y Fu(E)j Fw(m)o(ust)d(b)q(e)i(clear\),)f (and)h(the)f(notation)g(for)f(in)o(v)o(oking)i(eac)o(h)f(of)g(the)g(four)g (\\indicator")g(op)q(erations.)20 b(\(See)114 2074 y(6.1.2.\))49 2168 y(q\))j(F)l(or)16 b(eac)o(h)h(\015oating)h(p)q(oin)o(t)f(t)o(yp)q(e)g (where)h Fr(ie)n(c)p 883 2168 V 16 w(559)g Fw(is)g Fx(true)p Fw(,)f(and)g(for)g(eac)o(h)g(\\implemen)o(tor)h(c)o(hoice")f(p)q(er-)114 2224 y(mitted)e(b)o(y)g(IEC)h(559,)e(the)h(exact)g(c)o(hoice)h(made.)k(\(See) 15 b(5.2.9.\))55 2318 y(r\))23 b(F)l(or)15 b(eac)o(h)i(\015oating)f(p)q(oin)o (t)h(t)o(yp)q(e)f(where)h Fr(ie)n(c)p 878 2318 V 16 w(559)g Fw(is)g Fx(true)p Fw(,)f(and)g(for)g(eac)o(h)g(of)g(the)g(facilities)j (required)e(b)o(y)114 2375 y(IEC)h(559,)h(the)f(metho)q(d)h(a)o(v)m(ailable)i (to)d(the)g(programmer)g(to)g(exercise)h(that)f(facilit)o(y)l(.)32 b(\(See)19 b(5.2.9)e(and)114 2431 y(annex)e(C.\))1905 2828 y(25)p eop %%Page: 26 34 bop -72 2494 13 1186 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)839 45 y FC(Annex)24 b(A)803 120 y Ff(\(informativ)n(e\))821 269 y FC(Rationale)0 455 y Fw(This)e(annex)g(explains)h(and)f(clari\014es)g(some)f(of)g(the)h (ideas)g(b)q(ehind)i Fr(Information)d(te)n(chnolo)n(gy)g({)i(L)n(anguage)0 512 y(indep)n(endent)18 b(arithmetic)i({)g(Part)g(1:)27 b(Inte)n(ger)18 b(and)i(\015o)n(ating)e(p)n(oint)h(arithmetic)h Fw(\(LIA-1\).)30 b(This)19 b(allo)o(ws)g(the)0 568 y(standard)f(itself)h(to)f(b)q(e)h (concise.)31 b(Man)o(y)18 b(of)g(the)g(ma)s(jor)f(requiremen)o(ts)i(are)f (discussed)i(in)f(detail,)h(including)0 625 y(the)c(merits)g(of)g(p)q (ossible)h(alternativ)o(es.)23 b(The)16 b(clause)h(n)o(um)o(b)q(ering)g(matc) o(hes)e(that)h(of)f(the)h(standard,)g(although)0 681 y(additional)h(clauses)f (ha)o(v)o(e)e(b)q(een)j(added.)0 829 y Fx(Ac)o(kno)o(wledgemen)o(ts)e Fw(\(to)g(b)q(e)h(deleted)g(in)g(\014nal)g(v)o(ersion\))0 943 y(This)f(part)f(of)f(this)i(In)o(ternational)g(Standard)f(has)g(b)q(een)i (dev)o(elop)q(ed)g(b)o(y)e(ISO/IEC)h(JTC1/SC22/W)o(G11)d(with)0 1000 y(help)k(from)f(ANSI)h(X3T2.)0 1085 y(The)h(editors)h(of)e(this)i(do)q (cumen)o(t)f(are)g(Brian)h(Wic)o(hmann)f(\(NPL\),)g(Craig)g(Sc)o(ha\013ert,)f (Mary)g(P)o(a)o(yne,)h(Martha)0 1141 y(Ja\013e,)e(and)g(Je\013rey)g(Da)o (wson)f(\(Digital\).)0 1226 y(The)h(editors)h(wish)g(to)e(ac)o(kno)o(wledge)i (the)f(advice)h(and)f(assistance)h(of)e(the)i(follo)o(wing)g(individuals:)114 1348 y(Ned)f(Anderson)114 1404 y(Stuart)f(L.)h(Anderson)114 1461 y(Ed)g(Barkmey)o(er)114 1517 y(Da)o(v)o(e)f(Berry)114 1574 y(Keith)i(H.)f(Bierman)114 1630 y(Hans)g(J.)g(Bo)q(ehm)114 1686 y(Jean)g(Bourgain)114 1743 y(Jim)h(Co)q(dy)114 1799 y(P)o(aul)f(Cohen) 114 1856 y(Jerome)g(T.)g(Co)q(onen)114 1912 y(John)g(R.)h(Co)o(wles)114 1969 y(Maurice)f(Co)o(x)114 2025 y(James)g(W.)f(Demmel)114 2082 y(Rob)q(ert)h(Dew)o(ar)114 2138 y(Ken)h(Dritz)114 2195 y(Iain)g(Du\013)114 2251 y(Ken)g(Edw)o(ards)114 2307 y(P)o(aul)f(Eggert)114 2364 y(P)o(eter)f(F)l(ark)m(as)114 2420 y(Brian)h(F)l(ord)114 2477 y(Ric)o(hard)h(F)l(ateman)654 1348 y(Sam)o(uel)f(A.)g(Figueroa)654 1404 y(Rob)q(ert)g(H.)g(F)l(ollett)654 1461 y(Brian)g(F)l(ord)654 1517 y(Bob)g(F)l(raley)654 1574 y(Da)o(vid)g(M.)f(Ga)o(y)654 1630 y(Da)o(vid)h(Goldb)q(erg)654 1686 y(Mary)f(Anne)i(D.)e(Gra)o(y)654 1743 y(Rob)q(ert)h(Gries)654 1799 y(Kevin)h(Harris)654 1856 y(Darrell)f(High)654 1912 y(Derek)g(Jones)654 1969 y(Da)o(vid)g(Joslin)654 2025 y(William)i(Kahan)654 2082 y(Ken)o(t)e(Karlsson)654 2138 y(Thomas)f(Kurtz)654 2195 y(John)h(Larmouth)654 2251 y(Dan)f(Lozier)654 2307 y(Stuart)g(McDonald)654 2364 y(Brian)h(Meek)654 2420 y(Randy)g(Mey)o (ers)1194 1348 y(P)o(eter)f(L.)i(Mon)o(tgomery)1194 1404 y(John)f(Morgan)1194 1461 y(C.)f(H.)h(Morris)1194 1517 y(Chip)h(Nylander)1194 1574 y(John)f(Reagan)1194 1630 y(Ric)o(h)h(Regan)1194 1686 y(John)f(Reid)1194 1743 y(F)l(red)g(Ris)1194 1799 y(Stephen)h(C.)e(Ro)q(ot)1194 1856 y(Don)g(Sc)o(hric)o(k)o(er)1194 1912 y(Roger)h(Sco)o(w)o(en)1194 1969 y(Stev)o(en)g(Sommars)1194 2025 y(Guy)g(L.)g(Steele,)h(Jr.)1194 2082 y(W)l(alter)f(v)m(an)g(Roggen)1194 2138 y(Jerrold)h(L.)f(W)l(agener)1194 2195 y(Willem)h(W)l(akk)o(er)1194 2251 y(Dic)o(k)f(W)l(ea)o(v)o(er)1194 2307 y(Stan)g(Whitlo)q(c)o(k)1194 2364 y(P)o(eter)f(Zorzella)1194 2420 y(Dan)g(Zuras)0 2578 y(The)h(follo)o(wing)h(standards)f(committees)g(ha) o(v)o(e)g(also)g(pro)o(vided)h(their)g(advice)g(and)f(assistance:)0 2828 y(26)p eop %%Page: 27 35 bop -72 2664 13 226 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)114 45 y Fw(ISO/IEC)e(JTC1/SC22/)264 102 y(W)o(G2)e(\(P)o(ascal)g(and)i(Extended)g (P)o(ascal\))186 b(W)o(G13)13 b(\(Mo)q(dula-2\))264 158 y(W)o(G9)h(\(Ada\)) 663 b(W)o(G17)13 b(\(Prolog\))324 214 y(Ada)i(Numerics)i(W)l(orking)e(Group) 114 327 y(ANSI/)264 384 y(X3J1)g(\(PL/I\))648 b(X3J9)15 b(\(P)o(ascal\))264 440 y(X3J2)g(\(Basic\))641 b(X3J11)14 b(\(C\))264 497 y(X3J3)h(\(F)l (ortran\))670 b(Numerical)16 b(C)f(Extensions)h(Group)264 553 y(X3J4)f(\(Cob)q(ol\))629 b(X3J13)14 b(\(Common)h(Lisp\))114 666 y(IFIP/W)o(G2.5)e(\(Numerical)j(Soft)o(w)o(are\))0 814 y Fx(Pro)s(ject)h(milestones)65 919 y({)23 b Fw(Octob)q(er)17 b(1987:)23 b(Brian)18 b(Wic)o(hmann)g(prop)q(oses)f(standard)g(in)h(UK.)f (Mary)g(P)o(a)o(yne)f(and)i(Ned)f(Anderson)114 975 y(pro)q(duce)f(draft)e (for)h(ANSI)h(X3T2.)65 1069 y Fx({)23 b Fw(April)16 b(1988:)j(SC22/W)o(G11)13 b(asks)i(SC22)f(for)h(a)g(new)g(w)o(ork)f(item.)65 1163 y Fx({)23 b Fw(F)l(ebruary)15 b(1989:)k(Second)d(draft)e(with)i(rationale)g(to)e(matc)o (h.)20 b(ANSI)c(announces)g(appro)o(v)m(al)f(of)g(w)o(ork)g(for)114 1219 y(a)g(U.S.)f(standard.)65 1313 y Fx({)23 b Fw(Ma)o(y)13 b(1990:)19 b(JTC1)14 b(appro)o(v)o(es)f(new)i(w)o(ork)f(item.)20 b(V)l(ersion)15 b(2.2a)e(circulated)j(in)f(SC22)f(with)h(a)f(request)h(to)114 1370 y(appro)o(v)o(e)f(registration)h(as)g(a)g(CD.)65 1464 y Fx({)23 b Fw(Decem)o(b)q(er)15 b(1990:)j(V)l(ersion)e(3.0)d({)i(All)h (optional)f(op)q(erations)g(are)f(no)o(w)g(required,)i(in)o(teger)f(t)o(yp)q (es)f(can)h(b)q(e)114 1520 y(un)o(b)q(ounded,)h(and)f(detailed)i(language)f (annexes)f(ha)o(v)o(e)g(b)q(een)h(added.)65 1614 y Fx({)23 b Fw(Marc)o(h)18 b(1991:)25 b(V)l(ersion)19 b(3.1)f({)g(F)l(ormatting)g (impro)o(v)o(ed,)h(cross-references)g(added,)g(citations)g(of)f(other)114 1670 y(standards)f(and)g(publications)j(impro)o(v)o(ed,)e Fu(r)q(nd)p 962 1670 14 2 v 16 w(and)p 1053 1670 V 16 w(chk)g Fw(added)h(as)e(an)g (abbreviation.)28 b(No)17 b(seman)o(tic)114 1727 y(c)o(hanges)e(ha)o(v)o(e)g (b)q(een)h(made.)65 1821 y Fx({)23 b Fw(April)16 b(1991:)j(V)l(ersion)d(3.1)e (registered)i(as)f(\014rst)f(committee)i(draft)e(of)h(ISO/IEC)h(10967:1991.) 65 1914 y Fx({)23 b Fw(August)15 b(1991:)j(SC22)d(returns)g(do)q(cumen)o(t)h (to)e(W)o(G11)g(for)h(resolution)h(of)e(commen)o(ts.)65 2008 y Fx({)23 b Fw(Septem)o(b)q(er)14 b(1991:)k(SC22)c(mak)o(es)f(LCAS)i(part)e (1)h(of)g(a)f(three)i(part)e(standard:)19 b(Information)14 b(tec)o(hnology)114 2065 y(-)h(Language)g(indep)q(enden)o(t)j(arithmetic.)65 2158 y Fx({)23 b Fw(August)10 b(1992:)17 b(V)l(ersion)12 b(4.0)e(\(second)h (committee)g(draft\))f({)h(The)g(in)o(tro)q(duction)h(w)o(as)e(rewritten)h (to)f(clarify)114 2215 y(our)i(goals,)h(the)g(conformit)o(y)f(clause)h(w)o (as)f(extended)i(to)e(discuss)i(language)f(bindings,)i(the)e(\015oating)f(p)q (oin)o(t)114 2271 y(sections)20 b(w)o(ere)f(revised)h(\(particularly)h(the)e (discussion)i(of)e(rounding\),)i(and)f(a)f(p)q(ortable)h(metho)q(d)g(for)114 2328 y(exception)15 b(handling)g(w)o(as)f(added)g(\(replacing)h(the)f(former) g(minimal)h(requiremen)o(ts\).)20 b(The)14 b(square)g(ro)q(ot)114 2384 y(function)i(w)o(as)e(mo)o(v)o(ed)h(to)f(LIA)i(part)f(2)g (\(mathematical)g(pro)q(cedures\).)65 2478 y Fx({)23 b Fw(July)14 b(1993:)k(V)l(ersion)c(4.1)e(\(draft)h(in)o(ternational)h(standard\))e({)h(A) g(mo)q(dulo)h(form)f(of)g(in)o(tegers)g(w)o(as)g(added.)114 2534 y(A)d(parameter)f(indicating)j(IEEE)f(754)e(conformit)o(y)h(w)o(as)f (added.)19 b(In)o(teger)10 b(and)h(\015oating)f(p)q(oin)o(t)g(conformit)o(y) 114 2591 y(w)o(ere)20 b(decoupled.)38 b(Informativ)o(e)20 b(annexes)h(on)f (IEEE)h(bindings,)i(requiremen)o(ts)e(b)q(ey)o(ond)g(IEEE,)g(and)114 2647 y(sup)q(ercomputer)15 b(conformit)o(y)g(w)o(ere)g(added.)21 b(The)15 b(annex)h(on)f(F)l(ortran)f(77)g(w)o(as)h(remo)o(v)o(ed.)1905 2828 y(27)p eop %%Page: 28 36 bop -72 778 13 292 v -72 1576 13 57 v -72 2628 13 113 v -110 1878 51 13 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y FB(A.1)56 b(Scop)r(e)0 159 y Fw(The)14 b(scop)q(e)g(of)f(the)g(LIA-1)i(includes)h(the)d (traditional)h(primitiv)o(e)h(arithmetic)f(op)q(erations)g(usually)h(pro)o (vided)f(in)0 216 y(hardw)o(are.)21 b(The)16 b(standard)g(also)f(includes)k (sev)o(eral)d(other)f(useful)i(primitiv)o(e)g(op)q(erations)f(whic)o(h)h (could)g(easily)0 272 y(b)q(e)h(pro)o(vided)g(in)h(hardw)o(are)d(or)h(soft)o (w)o(are.)25 b(An)18 b(imp)q(ortan)o(t)f(asp)q(ect)h(of)f(all)h(of)f(these)h (primitiv)o(e)h(op)q(erations)e(is)0 329 y(that)12 b(they)g(are)g(to)f(b)q(e) i(regarded)f(as)g Fr(atomic)h Fw(rather)f(than)g(implemen)o(ted)i(as)e(a)g (sequence)h(of)f(y)o(et)g(more)g(primitiv)o(e)0 385 y(op)q(erations.)27 b(Hence,)19 b(eac)o(h)e(primitiv)o(e)i(op)q(eration)f(has)f(a)h(one)f Fu(ul)q(p)g Fw(error)g(b)q(ound,)i(and)f(is)g(nev)o(er)f(in)o(terrupted)0 441 y(b)o(y)e(an)g(in)o(termediate)h(noti\014cation.)0 526 y(The)c(LIA-1)g(pro)o(vides)g(a)f(parameterized)h(mo)q(del)g(for)f (arithmetic.)19 b(Suc)o(h)12 b(a)f(mo)q(del)h(is)g(needed)h(to)e(mak)o(e)g (concepts)0 583 y(suc)o(h)j(as)g(\\precision")h(or)f(\\exp)q(onen)o(t)g (range")f(meaningful.)21 b(Ho)o(w)o(ev)o(er,)13 b(there)h(is)h(no)f(suc)o(h)g (thing)h(as)e(an)h(\\LIA-1)0 639 y(mac)o(hine.")27 b(It)18 b(mak)o(es)f(no)g(sense)h(to)f(write)g(co)q(de)h(in)o(tended)h(to)e(run)h(on) f(all)h(mac)o(hines)h(describable)g(with)f(the)0 695 y(LIA-1)f(mo)q(del)g({)e (the)h(mo)q(del)h(co)o(v)o(ers)e(to)q(o)h(wide)h(a)e(range)h(for)f(that.)22 b(It)16 b(do)q(es)g(mak)o(e)f(sense)i(to)e(write)h(co)q(de)h(that)0 752 y(uses)d(the)g(LIA-1)h(facilities)h(to)e(determine)h(whether)f(the)g (platform)f(it's)h(running)h(on)f(is)h(suitable)g(for)e(its)i(needs.)0 900 y Fx(A.1.1)51 b(Sp)q(eci\014cations)20 b(included)f(in)f(this)g(standard) 0 1014 y Fw(This)e(standard)g(is)g(in)o(tended)i(to)d(de\014ne)i(the)f (meaning)g(of)g(an)g(\\in)o(teger)f(t)o(yp)q(e")h(and)g(a)g(\\\015oating)f(p) q(oin)o(t)i(t)o(yp)q(e",)0 1071 y(but)e(not)g(to)g(preclude)i(other)d (arithmetic)i(or)f(related)h(t)o(yp)q(es.)0 1155 y(The)f(sp)q(eci\014cations) i(for)e(in)o(teger)g(and)h(\015oating)f(p)q(oin)o(t)h(t)o(yp)q(es)f(are)g (giv)o(en)g(in)h(su\016cien)o(t)g(detail)h(to)51 1277 y(a\))22 b(supp)q(ort)15 b(detailed)i(and)e(accurate)g(n)o(umerical)h(analysis)g(of)f (arithmetic)h(algorithms.)48 1371 y(b\))23 b(serv)o(e)15 b(as)f(the)i (\014rst)f(of)f(a)h(family)h(of)f(standards,)f(as)h(outlined)i(in)f(A.1.3.)53 1465 y(c\))23 b(enable)16 b(a)f(precise)h(determination)g(of)f(conformit)o(y) g(or)f(non-conformit)o(y)l(.)48 1559 y(d\))23 b(prev)o(en)o(t)15 b(exceptions)h(\(lik)o(e)g(o)o(v)o(er\015o)o(w\))d(from)i(going)g (undetected.)0 1707 y Fx(A.1.2)51 b(Sp)q(eci\014cations)20 b(not)e(within)h(the)e(scop)q(e)h(of)g(this)g(standard)0 1821 y Fw(There)13 b(are)g(man)o(y)g(arithmetic)h(systems,)e(suc)o(h)i(as)f (\014xed)g(p)q(oin)o(t)h(arithmetic,)g(signi\014cance)h(arithmetic,)f(in)o (terv)m(al)0 1878 y(arithmetic)g([37)o(],)e(rational)h(arithmetic,)h(lev)o (el-index)i(arithmetic,)d(slash)h(arithmetic,)f(and)g(so)g(on,)g(whic)o(h)h (di\013er)0 1934 y(considerably)19 b(from)e(traditional)h(in)o(teger)f(and)h (\015oating)f(p)q(oin)o(t)h(arithmetic,)g(as)f(w)o(ell)h(as)f(among)g (themselv)o(es.)0 1991 y(Some)c(of)g(these)h(systems,)e(lik)o(e)j(\014xed)f (p)q(oin)o(t)f(arithmetic,)h(are)f(in)h(wide-spread)h(use)f(as)e(data)h(t)o (yp)q(es)g(in)h(standard)0 2047 y(languages;)20 b(most)d(are)h(not.)29 b(A)19 b(form)e(of)h(\015oating)g(p)q(oin)o(t)h(is)g(de\014ned)h(b)o(y)e (Kulish)i(and)f(Mirank)o(er)f([33)o(])g(whic)o(h)0 2103 y(reduces)e(rounding) h(errors,)d(but)h(not)h(in)g(a)f(manner)g(consonan)o(t)g(with)h(the)g(LIA-1.) 21 b(F)l(or)15 b(reasons)g(of)g(simplicit)o(y)0 2160 y(and)22 b(clarit)o(y)l(,)i(these)e(alternate)g(arithmetic)h(systems)f(are)f(not)h (treated)g(in)h(the)f(LIA-1.)41 b(They)22 b(should)h(b)q(e)0 2216 y(the)17 b(sub)s(ject)f(of)h(other)f(parts)g(of)g(this)i(In)o (ternational)f(Standard)g(if)g(and)g(when)g(they)g(b)q(ecome)g(candidates)h (for)0 2273 y(standardization.)0 2358 y(The)f(p)q(ortabilit)o(y)i(goal)e(of)f (the)i(LIA-1)g(is)f(for)g(programs,)f(rather)h(than)g(data.)25 b(The)17 b(LIA-1)h(do)q(es)g(not)f(sp)q(ecify)0 2414 y(the)c(in)o(ternal)h (represen)o(tation)e(of)h(data.)18 b(Ho)o(w)o(ev)o(er,)12 b(p)q(ortabilit)o (y)i(of)e(data)g(is)h(the)g(sub)s(ject)g(of)f(another)h(standard,)0 2470 y(ASN.1)i([7)o(].)0 2555 y(Mixed)f(mo)q(de)g(op)q(erations,)f(and)h (other)f(issues)h(of)f(expression)h(seman)o(tics,)f(are)g(not)g(addressed)h (directly)h(b)o(y)e(the)0 2612 y(LIA-1.)21 b(Ho)o(w)o(ev)o(er,)13 b(suitable)k(do)q(cumen)o(tation)f(is)f(required)h(\(see)g(clause)g(7\).)0 2828 y(28)p eop %%Page: 29 37 bop -72 1413 13 57 v -72 2382 13 226 v -110 159 51 13 v -110 2506 V 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y(A.1.3)51 b(Prop)q(osed)17 b(follo)o(w-ons)h(to)g(this)g(standard)0 159 y Fw(It)e(is)g(planned)h(that)e (the)g(follo)o(wing)i(topics)f(b)q(e)g(the)g(sub)s(ject)f(of)g(a)h(family)g (of)f(standards,)g(of)g(whic)o(h)i(the)e(LIA-1)0 216 y(is)h(the)f(\014rst)g (mem)o(b)q(er:)51 333 y(a\))22 b(Sp)q(eci\014cations)17 b(for)e(the)g(usual)h (elemen)o(tary)f(functions)h([15)o(].)48 424 y(b\))23 b(Sp)q(eci\014cations)j (for)d(con)o(v)o(erting)h(arithmetic)h(v)m(alues)g(to)e(and)i(from)e(text)g (strings,)j(particularly)g(for)114 481 y(I/O)15 b([15)o(].)53 573 y(c\))23 b(Sp)q(eci\014cations)17 b(for)e(con)o(v)o(erting)g(b)q(et)o(w)o (een)g(\015oating)g(p)q(oin)o(t)h(t)o(yp)q(es)f(of)g(di\013eren)o(t)g(radix)h ([15)o(].)48 664 y(d\))23 b(Sp)q(eci\014cations)17 b(for)e(complex)h(data)e (t)o(yp)q(es)h([16)o(].)0 781 y(This)h(list)g(is)g(incomplete,)g(and)f(no)g (ordering)h(should)g(b)q(e)g(inferred.)0 866 y(Eac)o(h)h(of)f(these)h(new)g (sets)g(of)f(sp)q(eci\014cations)j(is)e(necessary)g(to)g(pro)o(vide)g(a)g Fr(total)h(numeric)n(al)f(envir)n(onment)f Fw(for)0 922 y(the)f(supp)q(ort)h (of)e(p)q(ortable)i(robust)f(n)o(umerical)i(soft)o(w)o(are.)h(The)d(prop)q (erties)h(of)f(the)g(primitiv)o(e)i(op)q(erations)e(will)0 979 y(b)q(e)h(used)g(in)g(the)f(dev)o(elopmen)o(t)h(of)f(elemen)o(tary)g(and) g(complex)h(functions)g(and)g(con)o(v)o(ersion)f(routines)h(whic)o(h)51 1096 y(a\))22 b(are)15 b(realistic)h(from)f(an)g(implemen)o(tation)h(p)q(oin) o(t)g(of)f(view,)48 1187 y(b\))23 b(ha)o(v)o(e)14 b(acceptable)j(p)q (erformance,)e(and)53 1279 y(c\))23 b(ha)o(v)o(e)14 b(adequate)i(accuracy)f (to)f(supp)q(ort)i(n)o(umerical)g(analysis.)0 1396 y(In)22 b(connection)h(with)g(the)f(third)g(item,)i(the)e(accuracy)f(prop)q(erties)i (of)f(the)f(primitiv)o(e)j(op)q(erations)e(will)h(b)q(e)0 1453 y(used)c(to)e(arriv)o(e)h(at)f(accuracy)h(sp)q(eci\014cations)i(for)e(the)g (new)g(items.)29 b(F)l(or)17 b(radix)h(con)o(v)o(ersion)h(and)f(op)q (erations)0 1509 y(on)e(complex)i(n)o(um)o(b)q(er)e(t)o(yp)q(es,)h(accuracy)f (sp)q(eci\014cations)i(comparable)f(to)f(those)g(in)h(the)g(LIA-1)g(are)f (certainly)0 1566 y(feasible,)h(but)f(ma)o(y)e(ha)o(v)o(e)i(unacceptable)h(p) q(erformance)f(p)q(enalties.)23 b(Complete)16 b(v)o(eri\014cation)g(of)f(the) h(accuracy)0 1622 y(of)f(an)g(elemen)o(tary)g(function)h(ma)o(y)f(not)g(b)q (e)h(p)q(ossible.)0 1771 y FB(A.2)56 b(Conformit)n(y)0 1885 y Fw(A)15 b(conforming)g(system)g(consists)g(of)g(an)g(implemen)o(tation)h (\(whic)o(h)g(ob)q(eys)f(the)g(requiremen)o(ts\))g(together)g(with)0 1941 y(do)q(cumen)o(tation)h(whic)o(h)h(sho)o(ws)f(ho)o(w)f(the)h(implemen)o (tation)h(conforms)f(to)f(the)h(standard.)22 b(This)17 b(do)q(cumen)o(ta-)0 1998 y(tion)g(is)g(vital)g(since)h(it)f(giv)o(es)g(crucial)h(c)o (haracteristics)f(of)f(the)h(system,)g(suc)o(h)g(as)f(the)h(range)f(for)g(in) o(tegers,)h(the)0 2054 y(range)g(and)h(precision)i(for)d(\015oating)h(p)q (oin)o(t,)g(and)g(the)g(actions)g(tak)o(en)f(b)o(y)h(the)g(system)f(on)h(the) g(o)q(ccurrence)g(of)0 2111 y(noti\014cations.)0 2195 y(The)13 b(binding)i(of)e(LIA-1)h(facilities)h(to)d(a)h(particular)g(programming)g (language)g(should)h(b)q(e)g(as)e(natural)h(as)g(p)q(ossi-)0 2252 y(ble.)21 b(Existing)14 b(language)h(syn)o(tax)e(and)h(features)g (should)h(b)q(e)f(used)h(for)f(op)q(erations,)g(parameters,)f (noti\014cation,)0 2308 y(and)20 b(so)g(on.)33 b(F)l(or)20 b(example,)h(if)g(a)e(language)h(expresses)g(addition)h(b)o(y)f(\\)p Fu(x)13 b Fw(+)h Fu(y)r Fw(,")20 b(then)g(the)g(LIA-1)h(addition)0 2365 y(op)q(eration)15 b Fu(add)g Fw(should)h(b)q(e)g(b)q(ound)g(to)f(the)g (in\014x)h(\\+")f(op)q(erator.)0 2450 y(Most)22 b(in)o(teger)g(arithmetic)h (implemen)o(tations)h(are)e(exp)q(ected)i(to)e(conform)g(to)g(the)h(sp)q (eci\014cations)h(in)g(this)0 2506 y(standard.)0 2591 y(Most)13 b(curren)o(t)h(implemen)o(tations)h(of)f(\015oating)g(p)q(oin)o(t)h(can)f(b)q (e)h(exp)q(ected)g(to)f(conform)f(to)h(the)g(sp)q(eci\014cations)i(in)0 2647 y(this)f(standard.)k(In)c(particular,)g(implemen)o(tations)h(of)e(IEEE)g (754)g([1)o(])g(will)j(conform,)c(pro)o(vided)j(that)d(the)i(user)0 2704 y(is)h(made)f(a)o(w)o(are)f(of)h(an)o(y)f(status)h(\015ags)g(that)f (remain)i(set)f(up)q(on)h(exit)f(from)g(a)g(program.)1905 2828 y(29)p eop %%Page: 30 38 bop -72 268 13 263 v -72 401 13 57 v -72 1914 13 59 v -110 677 51 13 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y(The)j(do)q(cumen)o (tation)g(required)h(b)o(y)e(the)h(LIA-1)g(will)i(highligh)o(t)f(the)e (di\013erences)i(b)q(et)o(w)o(een)f(\\almost)f(IEEE")0 102 y(systems)d(and)g(fully)i(IEEE)e(conforman)o(t)f(ones.)0 186 y(Note)i(that)f(a)h(system)g(can)g(claim)i(conformit)o(y)d(for)h(a)g(single)h (in)o(teger)g(t)o(yp)q(e,)f(a)g(single)h(\015oating)g(p)q(oin)o(t)f(t)o(yp)q (e,)g(or)0 243 y(a)f(collection)i(of)e(arithmetic)g(t)o(yp)q(es.)0 327 y(An)i(implemen)o(tation)i(is)e(free)g(to)f(pro)o(vide)i(arithmetic)g(t)o (yp)q(es)f(\(e.g.)24 b(\014xed)18 b(p)q(oin)o(t\))f(or)f(arithmetic)i(op)q (erations)0 384 y(\(e.g.)f(exp)q(onen)o(tiation)12 b(on)e(in)o(tegers\))g (whic)o(h)h(ma)o(y)e(b)q(e)i(required)h(b)o(y)e(a)g(language)g(standard)g (but)g(are)g(not)g(sp)q(eci\014ed)0 440 y(b)o(y)23 b(the)f(LIA-1.)43 b(Similarly)l(,)27 b(an)c(implemen)o(tation)h(ma)o(y)e(ha)o(v)o(e)g(mo)q(des) h(of)f(op)q(eration)h(\(e.g.)41 b(noti\014cations)0 497 y(disabled\))24 b(that)e(do)g(not)g(conform)g(to)f(the)i(LIA-1.)42 b(The)23 b(implemen)o(tation)g(m)o(ust)f(not)g(claim)h(conformit)o(y)0 553 y(to)c(the)h(LIA-1)g(for)f(these)h(arithmetic)g(t)o(yp)q(es)g(or)f(mo)q (des)h(of)f(op)q(eration.)33 b(Again,)21 b(the)f(do)q(cumen)o(tation)g(that)0 610 y(distinguishes)15 b(b)q(et)o(w)o(een)f(conformit)o(y)e(and)h (non-conformit)o(y)g(is)h(critical.)20 b(An)14 b(example)g(conformit)o(y)e (statemen)o(t)0 666 y(\(for)i(a)h(F)l(ortran)f(implemen)o(tation\))i(is)g (giv)o(en)g(in)g(annex)f(F.)0 814 y Fx(A.2.1)51 b(V)l(alidation)0 928 y Fw(This)15 b(standard)f(giv)o(es)h(a)f(v)o(ery)g(precise)i(description) g(of)e(the)h(prop)q(erties)g(of)f(in)o(teger)h(and)g(\015oating)f(p)q(oin)o (t)h(t)o(yp)q(es.)0 985 y(This)21 b(will)h(exp)q(edite)g(the)e(construction)g (of)g(conformit)o(y)g(tests.)34 b(It)20 b(is)h(imp)q(ortan)o(t)f(that)f(ob)s (jectiv)o(e)i(tests)e(b)q(e)0 1041 y(a)o(v)m(ailable.)24 b(Sc)o(hry)o(er)15 b([34)o(])h(has)g(sho)o(wn)f(that)g(suc)o(h)i(testing)e(is)i(needed)g(for)e (\015oating)h(p)q(oin)o(t)g(since)h(t)o(w)o(o)e(thirds)h(of)0 1098 y(units)e(tested)g(b)o(y)f(him)i(con)o(tained)f(serious)g(design)h (\015a)o(ws.)j(Another)c(test)f(suite)h(is)h(a)o(v)m(ailable)g(for)e (\015oating)g(p)q(oin)o(t)0 1154 y([27)o(],)18 b(whic)o(h)h(includes)i (enhancemen)o(ts)e(based)g(up)q(on)g(exp)q(erience)h(with)f(Sc)o(hry)o(er's)f (w)o(ork)f([34)o(],)h(but)h(progress)0 1211 y(here)d(is)f(inhibited)j(b)o(y)d (the)h(lac)o(k)f(of)g(a)g(standard)g(against)f(whic)o(h)i(to)f(test.)0 1295 y(The)g(LIA-1)h(do)q(es)g(not)f(de\014ne)h(an)o(y)f(pro)q(cess)g(for)g (v)m(alidating)i(conformit)o(y)l(.)0 1380 y(Indep)q(enden)o(t)22 b(assurance)e(of)g(conformit)o(y)f(to)h(the)g(LIA-1)h(could)g(b)q(e)f(b)o(y)g (sp)q(ot)g(c)o(hec)o(ks)h(on)f(pro)q(ducts)g(with)g(a)0 1437 y(v)m(alidation)g(suite,)f(as)f(for)f(language)i(standards,)f(or)g(via)g(v)o (endors)g(b)q(eing)i(registered)e(under)h(ISO/IEC)g(9001)0 1493 y Fr(Mo)n(del)d(for)h(quality)g(assur)n(anc)n(e)e(in)h(pr)n(o)n(duction) h(and)g(instal)r(lation)d Fw([8)o(])h(enhanced)i(with)f(the)g(requiremen)o(t) g(that)0 1549 y(their)g(pro)q(ducts)g(claiming)h(conformit)o(y)e(are)g (tested)g(with)h(the)g(v)m(alidation)h(suite)f(and)g(c)o(hec)o(k)o(ed)g(to)e (conform)h(as)0 1606 y(part)g(of)f(the)i(release)g(pro)q(cess.)0 1691 y(Alternativ)o(ely)l(,)25 b(c)o(hec)o(king)d(could)h(b)q(e)g(regarded)f (as)f(the)h(resp)q(onsibilit)o(y)i(of)e(the)g(v)o(endor,)h(who)e(w)o(ould)i (then)0 1747 y(do)q(cumen)o(t)16 b(the)f(evidence)i(supp)q(orting)f(an)o(y)f (claim)h(to)f(conformit)o(y)l(.)0 1897 y FB(A.3)56 b(Normativ)n(e)18 b(references)0 2013 y(A.4)56 b(Sym)n(b)r(ols)19 b(and)g(de\014nitions)0 2127 y Fw(An)e(arithmetic)f(standard)g(m)o(ust)g(b)q(e)h(understo)q(o)q(d)g (b)o(y)f(n)o(umerous)g(p)q(eople)i(with)e(di\013eren)o(t)h(bac)o(kgrounds:)22 b(n)o(u-)0 2183 y(merical)14 b(analysts,)g(compiler-writers,)g(programmers,)e (micro)q(co)q(ders,)i(and)g(hardw)o(are)f(designers.)20 b(This)14 b(raises)0 2240 y(certain)j(practical)g(di\016culties.)26 b(If)17 b(the)g(standard)f(w)o(ere)g(written)h(en)o(tirely)g(in)h(a)e(natural)h (language,)f(it)h(migh)o(t)0 2296 y(con)o(tain)f(am)o(biguities.)24 b(If)16 b(it)g(w)o(ere)g(written)g(en)o(tirely)h(in)g(mathematical)f(terms,)f (it)h(migh)o(t)g(b)q(e)h(inaccessible)i(to)0 2353 y(some)f(readers.)27 b(These)18 b(problems)h(w)o(ere)f(resolv)o(ed)g(b)o(y)g(using)g(mathematical) g(notation)g(for)f(the)h(LIA-1,)h(and)0 2409 y(pro)o(viding)d(this)g (rationale)f(in)h(English)h(to)d(explain)j(the)f(notation.)0 2494 y(There)f(are)g(v)m(arious)h(notations)f(for)f(giving)j(a)d(formal)h (de\014nition)i(of)e(arithmetic.)21 b(In)16 b([40)o(])e(a)h(formal)g (de\014nition)0 2550 y(is)e(giv)o(en)g(in)g(terms)f(of)g(the)h(Bro)o(wn)f(mo) q(del)h([24)o(].)19 b(Since)14 b(the)e(curren)o(t)h(prop)q(osal)f(di\013ers)h (from)f(the)g(Bro)o(wn)g(mo)q(del,)0 2607 y(the)j(de\014nition)i(in)f([40)o (])f(is)g(not)g(appropriate)g(for)g(the)g(LIA-1.)21 b(The)15 b(pro)q(duction)h(of)f(a)g(formal)f(de\014nition)j(using)0 2663 y(VDM)e([30)o(])f(w)o(ould)i(nev)o(ertheless)g(b)q(e)g(useful.)0 2828 y(30)p eop %%Page: 31 39 bop 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y(A.4.1)51 b(Sym)o(b)q(ols)0 159 y Fw(The)21 b(LIA-1)h(uses)g(the)f(con)o(v)o(en)o(tional)h(notation)f (for)f(sets)h(and)h(op)q(erations)f(on)g(sets.)38 b(The)21 b(set)g Fv(Z)k Fw(denotes)0 216 y(the)16 b(set)f(of)g(mathematical)h(in)o (tegers.)22 b(This)16 b(set)f(is)i(in\014nite,)g(unlik)o(e)g(the)f(\014nite)h (subset)e(whic)o(h)i(a)e(mac)o(hine)i(can)0 272 y(con)o(v)o(enien)o(tly)c (handle.)20 b(The)11 b(set)h(of)f(real)h(n)o(um)o(b)q(ers)g(is)g(denoted)g(b) o(y)f Fv(R)p Fw(,)h(whic)o(h)g(is)g(also)g(in\014nite.)20 b(Hence)13 b(n)o(um)o(b)q(ers)0 329 y(suc)o(h)j(as)e Fu(\031)r Fw(,)h(1/3)f(and)385 291 y Fv(p)p 423 291 23 2 v 38 x Fw(2)h(are)g(in)h Fv(R)p Fw(,)e(but)i (usually)g(they)g(cannot)e(b)q(e)i(represen)o(ted)g(exactly)g(in)g(a)f (computer.)0 413 y(This)i(annex)g(uses)g(the)f(con)o(v)o(en)o(tional)h (notation)f(for)g(op)q(en)h(and)g(closed)g(in)o(terv)m(als)h(of)e(real)h(n)o (um)o(b)q(ers,)g(e.g.)23 b(the)0 470 y(in)o(terv)m(al)16 b([)p Fu(a;)8 b(b)p Fw(\))13 b(denotes)j(the)f(set)g Fv(f)p Fu(x)p Fv(j)p Fu(a)d Fv(\024)h Fu(x)g(<)g(b)p Fv(g)p Fw(.)0 618 y Fx(A.4.2)51 b(De\014nitions)0 732 y Fw(A)18 b(vital)h(de\014nition)h(is)f (that)f(of)g(\\noti\014cation.")29 b(A)18 b(noti\014cation)h(is)g(the)f(rep)q (ort)g(\(to)g(the)g(program)f(or)h(user\))0 788 y(that)c(results)i(from)f(an) g(error)f(or)h(exception)h(as)f(de\014ned)h(in)g(ISO/IEC)h(TR)e(10176)f([10)o (].)0 873 y(The)21 b(principle)i(b)q(ehind)f(noti\014cation)g(is)f(that)e (suc)o(h)i(ev)o(en)o(ts)f(in)h(the)g(execution)g(of)f(a)h(program)e(should)i (not)0 930 y(go)e(unnoticed.)35 b(The)20 b(preferred)g(action)g(is)g(to)f(in) o(v)o(ok)o(e)h(a)g(c)o(hange)f(in)i(the)f(\015o)o(w)f(con)o(trol)h(of)f(a)g (program)g(\(for)0 986 y(example,)e(an)f(Ada)h(\\exception"\),)f(to)g(allo)o (w)g(the)h(user)f(to)g(tak)o(e)f(correctiv)o(e)i(action.)23 b(T)l(raditional)17 b(practice)g(is)0 1042 y(that)d(a)g(noti\014cation)i (consists)f(of)f(ab)q(orting)h(execution)h(with)f(a)f(suitable)i(error)e (message.)20 b(The)15 b(v)m(arious)g(forms)0 1099 y(of)g(noti\014cation)h (are)f(giv)o(en)g(names,)g(suc)o(h)h(as)e Fx(\015oating)p 968 1099 16 2 v 21 w(o)o(v)o(er\015o)o(w)p Fw(,)e(so)j(that)g(they)g(can)g(b)q(e) h(distinguished.)0 1184 y(Another)c(imp)q(ortan)o(t)f(de\014nition)j(is)e (that)f(of)h(a)f(rounding)i(function.)19 b(A)12 b(rounding)h(function)f(is)h (a)e(mapping)i(from)0 1240 y(the)h(real)f(n)o(um)o(b)q(ers)h(on)o(to)f(a)g (subset)h(of)f(the)g(real)h(n)o(um)o(b)q(ers.)20 b(T)o(ypically)l(,)15 b(the)f(subset)f Fu(X)k Fw(is)d(an)g(\\appro)o(ximation")0 1297 y(to)k Fv(R)p Fw(,)h(ha)o(ving)f(un)o(b)q(ounded)j(range)d(but)h (limited)h(precision.)32 b Fu(X)22 b Fw(is)d(a)f(discrete)i(subset)f(of)f Fv(R)p Fw(,)g(whic)o(h)i(allo)o(ws)0 1353 y(precise)h(iden)o(ti\014cation)g (of)e(the)h(elemen)o(ts)g(of)f Fu(X)k Fw(whic)o(h)e(are)e(closest)h(to)f(a)g (giv)o(en)h(real)g(n)o(um)o(b)q(er)g(in)g Fv(R)p Fw(.)33 b(The)0 1409 y(rounding)16 b(function)g Fu(r)q(nd)f Fw(maps)g(eac)o(h)g(real)h(n)o (um)o(b)q(er)f Fu(u)g Fw(to)g(an)g(appro)o(ximation)g(of)g Fu(u)g Fw(that)g(lies)h(in)g Fu(X)t Fw(.)0 1494 y(If)i(a)f(real)h(n)o(um)o(b) q(er)g Fu(u)f Fw(is)h(in)g Fu(X)t Fw(,)f(then)h(clearly)h Fu(u)e Fw(is)h(the)g(b)q(est)g(appro)o(ximation)f(for)g(itself,)h(so)g Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))d(=)i Fu(u)p Fw(.)27 b(If)0 1551 y Fu(u)17 b Fw(is)h(b)q(et)o(w)o(een)g(t)o(w)o(o)e(adjacen)o(t)h(v)m (alues)i Fu(x)705 1558 y Fn(1)742 1551 y Fw(and)e Fu(x)858 1558 y Fn(2)895 1551 y Fw(in)i Fu(X)t Fw(,)d(then)i(one)g(of)f(these)g (adjacen)o(t)g(v)m(alues)i(m)o(ust)e(b)q(e)h(the)0 1607 y(appro)o(ximation)d (for)g Fu(u)p Fw(:)114 1729 y Fu(x)140 1736 y Fn(1)172 1729 y Fu(<)e(u)g(<)g(x)333 1736 y Fn(2)380 1729 y Fv(\))28 b Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))12 b(=)h Fu(x)674 1736 y Fn(1)709 1729 y Fr(or)20 b Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))12 b(=)h Fu(x)992 1736 y Fn(2)0 1851 y Fw(Finally)l(,)19 b(if)f Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))f(is)h(the)g(appro)o(ximation)f(for)g Fu(u)p Fw(,)h(and)g Fu(z)h Fw(is)f(b)q(et)o(w)o(een)g Fu(u)g Fw(and)g Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\),)e(then)i Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))f(is)h(the)0 1908 y(appro)o(ximation)d(for)g Fu(z)i Fw(also.)114 2030 y Fu(u)12 b(<)h(z)i(<)e(r)q(nd)p Fw(\()p Fu(u)p Fw(\))27 b Fv(\))h Fu(r)q(nd)p Fw(\()p Fu(z)r Fw(\))12 b(=)h Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))114 2086 y Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))e Fu(<)i(z)i(<)e(u)28 b Fv(\))g Fu(r)q(nd)p Fw(\()p Fu(z)r Fw(\))12 b(=)h Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))0 2208 y(The)i(last)h(three)f(rules)h (are)f(sp)q(ecial)i(cases)e(of)g(the)g(monotonicit)o(y)g(requiremen)o(t)114 2330 y Fu(x)d(<)h(y)30 b Fv(\))e Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))12 b Fv(\024)h Fu(r)q(nd)p Fw(\()p Fu(y)r Fw(\))0 2452 y(whic)o(h)j(app)q(ears)f(in)h(the)g(de\014nition)h(of)d(a)h(rounding)h (function.)0 2537 y(Note)d(that)f(the)h(v)m(alue)h(of)f Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))f(dep)q(ends)i(only)g(on)e Fu(u)h Fw(and)h(not)e(on)h (the)g(arithmetic)h(op)q(eration)f(\(or)f(op)q(erands\))0 2593 y(that)e(ga)o(v)o(e)g(rise)h(to)f Fu(u)p Fw(.)18 b(Ho)o(w)o(ev)o(er,)11 b(see)g(A.5.2.4)d(for)i(a)h(discussion)h(of)e(the)h(subtle)h(in)o(teraction)f (b)q(et)o(w)o(een)g Fu(add)1816 2577 y Fm(\003)1816 2606 y Fp(F)1845 2593 y Fw(\()p Fu(x;)d(y)r Fw(\))0 2650 y(and)15 b(the)h(rounding)g(function.)1905 2828 y(31)p eop %%Page: 32 40 bop -72 2156 13 57 v -72 2664 V 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993) 1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y(The)f(graph)f(of)g (a)g(rounding)h(function)h(lo)q(oks)e(lik)o(e)i(a)e(series)h(of)f(steps.)20 b(As)14 b Fu(u)h Fw(increases,)g(the)f(v)m(alue)i(of)e Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))f(is)0 102 y(constan)o(t)h(for)h(a)g(while)h(\(equal)g (to)e(some)h(v)m(alue)h(in)g Fu(X)t Fw(\))e(and)i(then)f(jumps)g(abruptly)h (to)e(the)i(next)f(higher)h(v)m(alue)0 158 y(in)g Fu(X)t Fw(.)0 243 y(Some)i(examples)g(ma)o(y)f(help)i(clarify)g(things.)28 b(Consider)18 b(a)g(n)o(um)o(b)q(er)g(of)f(rounding)i(functions)f(from)f Fv(R)h Fw(to)f Fv(Z)t Fw(.)0 299 y(One)f(p)q(ossibilit)o(y)h(is)f(to)f(map)g (eac)o(h)g(real)g(n)o(um)o(b)q(er)h(to)f(the)g(next)g(lo)o(w)o(er)g(in)o (teger:)114 418 y Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))c(=)i Fv(b)p Fu(u)p Fv(c)0 537 y Fw(This)j(giv)o(es)g Fu(r)q(nd)p Fw(\(1\))c(=)h(1,)i Fu(r)q(nd)p Fw(\(1)p Fu(:)p Fw(3\))c(=)j(1,)h Fu(r)q(nd)p Fw(\(1)p Fu(:)p Fw(99)8 b Fv(\001)g(\001)f(\001)m Fw(\))12 b(=)i(1,)h(and)g Fu(r)q(nd)p Fw(\(2\))d(=)i(2.)20 b(Another)c(p)q(ossibilit)o(y)i(w)o(ould)0 593 y(b)q(e)f(to)g(map)f(eac)o(h)h(real)g(n)o(um)o(b)q(er)h(to)e(the)h(next)g (higher)g(in)o(teger.)25 b(A)17 b(third)g(example)h(maps)f(eac)o(h)f(real)i (n)o(um)o(b)q(er)0 650 y(to)d(the)g(closest)g(in)o(teger)h(\(with)f(half-w)o (a)o(y)g(cases)g(rounding)h(to)o(w)o(ard)e(plus)i(in\014nit)o(y\):)114 769 y Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))11 b(=)i Fv(b)p Fu(u)e Fw(+)f Fu(:)p Fw(5)p Fv(c)0 888 y Fw(This)18 b(giv)o(es)g Fu(r)q(nd)p Fw(\(1\))d(=)h(1,)i Fu(r)q(nd)p Fw(\(1)p Fu(:)p Fw(49)8 b Fv(\001)g(\001)f (\001)l Fw(\))16 b(=)h(1,)g Fu(r)q(nd)p Fw(\(1)p Fu(:)p Fw(5\))e(=)i(2,)g (and)g Fu(r)q(nd)p Fw(\(2\))e(=)i(2.)26 b(Eac)o(h)18 b(of)f(these)g(examples) 0 944 y(corresp)q(onds)e(to)g(rounding)h(functions)g(in)g(actual)f(use.)21 b(F)l(or)14 b(some)h(\015oating)g(p)q(oin)o(t)h(examples,)g(see)f(A.5.2.5.)0 1029 y(Note,)f(the)h(v)m(alue)h Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))e(ma)o(y)g(not)g(b)q(e)h(represen)o(table.)21 b(The)15 b Fu(r)q(esul)q(t)1214 1036 y Fp(F)1258 1029 y Fw(function)g(deals)h(with)f (this)g(p)q(ossibilit)o(y)l(.)0 1085 y(\(See)g(A.5.2.6)f(for)g(further)h (discussion.\))0 1170 y(There)k(is)g(a)g(precise)h(distinction)g(b)q(et)o(w)o (een)f Fr(shal)r(l)f Fw(and)h Fr(should)g Fw(as)g(used)g(in)g(this)h (standard:)26 b Fr(shal)r(l)18 b Fw(implies)j(a)0 1226 y(requiremen)o(t,)15 b(while)h Fr(should)f Fw(implies)i(a)d(recommendation.)20 b(One)c(hop)q(es)f (that)f(there)h(is)g(a)g(go)q(o)q(d)f(reason)h(if)g(the)0 1283 y(recommendation)h(is)f(not)g(follo)o(w)o(ed.)0 1368 y(Additional)i (de\014nitions)g(sp)q(eci\014c)g(to)e(particular)g(t)o(yp)q(es)h(app)q(ear)f (in)h(the)f(relev)m(an)o(t)h(clauses.)0 1517 y FB(A.5)56 b(The)18 b(arithmetic)h(t)n(yp)r(es)0 1631 y Fw(Eac)o(h)11 b(arithmetic)i(t)o(yp)q(e)e (is)i(a)e(subset)h(of)f(the)h(real)g(n)o(um)o(b)q(ers)g(c)o(haracterized)g(b) o(y)f(a)h(small)g(n)o(um)o(b)q(er)g(of)f(parameters.)0 1687 y(Tw)o(o)i(basic)h(classes)g(of)f(t)o(yp)q(es)h(are)f(sp)q(eci\014ed:)21 b(in)o(teger)14 b(and)g(\015oating)f(p)q(oin)o(t.)20 b(A)14 b(t)o(ypical)g(system)f(could)i(supp)q(ort)0 1744 y(sev)o(eral)g(of)g(eac)o (h.)0 1829 y(In)21 b(general,)h(the)e(parameters)g(of)g(all)h(arithmetic)g(t) o(yp)q(es)g(m)o(ust)f(b)q(e)h(accessible)h(to)e(an)g(executing)h(program.)0 1885 y(Ho)o(w)o(ev)o(er,)c(sometimes)h(a)f(language)h(standard)g(requires)g (that)g(a)f(t)o(yp)q(e)h(parameter)f(has)h(a)f(kno)o(wn)h(v)m(alue)h(\(for)0 1941 y(example,)14 b(that)e(an)h(in)o(teger)g(t)o(yp)q(e)g(is)g(b)q (ounded\).)21 b(In)13 b(this)g(case,)g(the)g(parameter)g(m)o(ust)f(ha)o(v)o (e)g(the)h(same)g(v)m(alue)h(in)0 1998 y(ev)o(ery)e(implemen)o(tation)h(of)f (that)f(language)h(and)g(therefore)g(need)h(not)f(b)q(e)g(pro)o(vided)h(as)f (a)f(run-time)i(parameter.)0 2083 y(The)21 b(signature)g(of)g(eac)o(h)f(op)q (eration)h(lists)h(the)f(p)q(ossible)i(input)e(and)h(output)e(v)m(alues.)38 b(All)22 b(op)q(erations)f(are)0 2139 y(de\014ned)14 b(for)f(all)h(p)q (ossible)g(com)o(binations)g(of)e(input)i(v)m(alues.)21 b(Exceptions)13 b(\(lik)o(e)h(dividing)h(3)e(b)o(y)g(0\))f(are)h(mo)q(delled)0 2195 y(b)o(y)i(the)g(return)h(of)e(non-n)o(umeric)j(exceptional)f(v)m(alues)h (\(lik)o(e)f Fx(unde\014ned)p Fw(\).)0 2280 y(The)c(presence)i(of)d(an)h (exceptional)i(v)m(alue)f(in)g(a)f(signature)h(sa)o(ys)e(that)g(the)i (noti\014cation)f(ma)o(y)g(o)q(ccur)h(in)f(some)g(im-)0 2337 y(plemen)o(tations,)i(but)g(not)g(necessarily)h(in)g(all)f(implemen)o (tations.)21 b(F)l(or)13 b(example,)i(in)o(teger)f(arithmetic)g(will)h(not)0 2393 y(o)o(v)o(er\015o)o(w)g(in)i(an)f(implemen)o(tation)i(with)e(un)o(b)q (ounded)i(in)o(tegers.)23 b(The)16 b(axioms)g(\(5.1.3,)f(5.2.7\))f(state)h (precisely)0 2450 y(when)h(noti\014cations)g(m)o(ust)e(o)q(ccur.)0 2534 y(The)19 b(philosoph)o(y)h(of)f(the)g(LIA-1)h(is)f(that)f(all)i(op)q (erations)f(either)h(pro)q(duce)g(correct)e(results)h(or)g(giv)o(e)g(a)g (noti-)0 2591 y(\014cation.)28 b(A)18 b(noti\014cation)g(m)o(ust)g(b)q(e)g (based)g(on)g(the)g(\014nal)g(result;)i(there)d(can)h(b)q(e)h(no)f(spurious)g (in)o(termediate)0 2647 y(exceptions.)i(Arithmetic)14 b(on)f(b)q(ounded,)i (non-mo)q(dulo,)f(in)o(tegers)f(m)o(ust)g(b)q(e)g(correct)g(if)h(the)f (result)g(lies)i(b)q(et)o(w)o(een)0 2704 y Fu(minint)h Fw(and)g Fu(maxint)g Fw(and)g(m)o(ust)f(pro)q(duce)i(a)e(noti\014cation)i(if)f(the)g (mathematically)g(w)o(ell-de\014ned)i(result)f(lies)0 2828 y(32)p eop %%Page: 33 41 bop -72 1264 13 432 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y Fw(outside)f(this)f(in)o(terv)m(al)i(\()p Fx(in)o(teger)p 592 45 16 2 v 18 w(o)o(v)o(er\015o)o(w)p Fw(\))c(or)i(if)g(there)h(is)f(no)g (mathematically)h(w)o(ell-de\014ned)i(result)e(\()p Fx(un-)0 102 y(de\014ned)p Fw(\).)0 250 y Fx(A.5.1)51 b(In)o(teger)17 b(t)o(yp)q(es)0 364 y Fw(Most)k(traditional)i(computer)f(languages)h(assume)f (the)g(existence)i(of)d(b)q(ounds)j(on)e(the)g(range)g(of)g(in)o(tegers)0 420 y(whic)o(h)c(can)g(b)q(e)g(data)f(v)m(alues.)27 b(Some)18 b(languages)f(place)h(no)g(limit)h(on)e(the)g(range)g(of)g(in)o(tegers,)h(or) f(ev)o(en)h(allo)o(w)0 477 y(the)d(b)q(oundedness)i(of)e(the)g(in)o(teger)h (t)o(yp)q(e)f(to)f(b)q(e)i(an)f(implemen)o(tation)i(c)o(hoice.)0 561 y(This)e(standard)f(uses)g(the)h(parameter)e Fr(b)n(ounde)n(d)19 b Fw(to)14 b(distinguish)i(b)q(et)o(w)o(een)f(implemen)o(tations)h(whic)o(h)f (place)g(no)0 618 y(restriction)k(on)f(the)g(range)g(of)g(in)o(teger)h(data)e (v)m(alues)j(\()p Fr(b)n(ounde)n(d)i Fw(=)d Fx(false)p Fw(\))f(and)g(those)g (that)g(do)g(\()p Fr(b)n(ounde)n(d)23 b Fw(=)0 674 y Fx(true)p Fw(\).)e(If)16 b(the)g(in)o(teger)g(t)o(yp)q(e)f Fu(I)k Fw(is)e(b)q(ounded,)g (then)f(t)o(w)o(o)e(additional)j(parameters)e(are)g(required,)i Fu(minint)f Fw(and)0 731 y Fu(maxint)p Fw(.)32 b(F)l(or)19 b(un)o(b)q(ounded)h(in)o(tegers,)g Fu(minint)g Fw(and)f Fu(maxint)h Fw(w)o(ould)f(ha)o(v)o(e)g(no)g(meaning,)h(so)f(they)g(are)g(not)0 787 y(pro)o(vided.)0 872 y(F)l(or)10 b(b)q(ounded)j(in)o(tegers,)f(there)f (are)g(t)o(w)o(o)f(approac)o(hes)g(to)h(out-of-range)f(v)m(alues:)19 b(noti\014cation)12 b(and)f(\\wrapping.")0 928 y(In)i(the)g(latter)f(case,)g (all)i(computation)e(except)h(comparisons)f(is)h(done)g Fr(mo)n(dulo)g Fw(the)f(cardinalit)o(y)i(of)e Fu(I)k Fw(\(t)o(ypically)0 985 y(2)23 968 y Fp(N)71 985 y Fw(for)f(some)g Fu(N)5 b Fw(\),)14 b(and)h(no)g(noti\014cation)h(is)g(required.)0 1133 y Fx(A.5.1.0.1)50 b(Bounded)18 b(non-mo)q(dulo)h(in)o(tegers)0 1247 y Fw(F)l(or)d(b)q(ounded)i (non-mo)q(dulo)f(in)o(tegers,)g(it)g(is)g(necessary)f(to)g(de\014ne)i(the)f (range)f(of)g(represen)o(table)h(v)m(alues,)h(and)0 1304 y(to)13 b(ensure)h(that)e(noti\014cation)i(o)q(ccurs)g(on)f(an)o(y)g(op)q(eration)h (whic)o(h)g(w)o(ould)g(giv)o(e)f(a)g(mathematical)h(result)f(outside)0 1360 y(that)h(range.)20 b(Di\013eren)o(t)14 b(ranges)h(result)g(in)h (di\013eren)o(t)f(in)o(teger)g(t)o(yp)q(es.)k(The)c(v)m(alues)h(of)f(the)g (parameters)f Fu(minint)0 1417 y Fw(and)h Fu(maxint)h Fw(m)o(ust)e(b)q(e)i (accessible)h(to)e(an)g(executing)h(program.)0 1501 y(The)f(allo)o(w)o(ed)h (ranges)f(for)f(in)o(tegers)i(fall)g(in)o(to)f(three)g(classes:)51 1623 y(a\))22 b Fu(minint)15 b Fw(=)h(0,)g(corresp)q(onding)i(to)e Fr(unsigne)n(d)g Fw(in)o(tegers.)25 b(The)17 b(op)q(eration)g Fu(neg)1474 1630 y Fp(I)1511 1623 y Fw(w)o(ould)g(alw)o(a)o(ys)f(pro)q(duce) 114 1680 y Fx(in)o(teger)p 275 1680 V 18 w(o)o(v)o(er\015o)o(w)i Fw(\(except)h(on)f(0\),)h(and)g(ma)o(y)f(b)q(e)i(omitted.)30 b(The)19 b(op)q(eration)g Fu(abs)1627 1687 y Fp(I)1666 1680 y Fw(is)g(the)g(iden)o(tit)o(y)114 1736 y(mapping)d(and)f(ma)o(y)f(also)i(b)q (e)f(omitted.)20 b(The)c(op)q(eration)f Fu(div)1186 1743 y Fp(I)1221 1736 y Fw(nev)o(er)g(pro)q(duces)h Fx(in)o(teger)p 1694 1736 V 19 w(o)o(v)o(er\015o)o(w)p Fw(.)48 1830 y(b\))23 b Fu(minint)12 b Fw(=)h Fv(\000)p Fu(maxint)p Fw(,)i(corresp)q(onding)h(to)e Fr(one's)h(c)n(omplement)f Fw(or)g Fr(sign-magnitude)h Fw(in)o(tegers.)k (None)c(of)114 1886 y(the)g(op)q(erations)g Fu(neg)483 1893 y Fp(I)503 1886 y Fw(,)g Fu(abs)596 1893 y Fp(I)631 1886 y Fw(or)g Fu(div)749 1893 y Fp(I)783 1886 y Fw(pro)q(duces)h Fx(in)o(teger)p 1135 1886 V 19 w(o)o(v)o(er\015o)o(w)p Fw(.)53 1980 y(c\))23 b Fu(minint)13 b Fw(=)g Fv(\000)p Fw(\()p Fu(maxint)e Fw(+)f(1\),)15 b(corresp)q(onding)h(to)f Fr(two's)h(c)n(omplement)f Fw(in)o(tegers.)21 b(The)15 b(op)q(erations)h Fu(neg)1930 1987 y Fp(I)114 2037 y Fw(and)g Fu(abs)268 2044 y Fp(I)304 2037 y Fw(pro)q(duce)h Fx(in)o(teger)p 639 2037 V 19 w(o)o(v)o(er\015o)o(w)d Fw(only)i(when)h(applied)h(to)d Fu(minint)p Fw(.)23 b(The)16 b(op)q(eration)h Fu(div)1834 2044 y Fp(I)1869 2037 y Fw(pro-)114 2093 y(duces)f Fx(in)o(teger)p 399 2093 V 18 w(o)o(v)o(er\015o)o(w)d Fw(when)j Fu(minint)f Fw(is)h(divided)i(b)o(y)d Fv(\000)p Fw(1,)f(since)214 2187 y Fu(minint=)p Fw(\()p Fv(\000)p Fw(1\))e(=)h Fv(\000)p Fu(minint)g Fw(=)g Fu(maxint)d Fw(+)h(1)h Fu(>)h(maxint)p Fw(.)0 2309 y(The)j(P)o(ascal,)g(Mo)q(dula-2)h(and)g(Ada)f(programming)f(languages)i (supp)q(ort)f(subranges)g(of)g(in)o(tegers.)24 b(Suc)o(h)16 b(sub-)0 2366 y(ranges)e(t)o(ypically)i(do)e(not)g(satisfy)g(the)g(rules)i (for)d Fu(maxint)i Fw(and)f Fu(minint)p Fw(.)20 b(Ho)o(w)o(ev)o(er,)13 b(w)o(e)h(do)h(not)f(in)o(tend)h(to)f(sa)o(y)0 2422 y(that)e(these)i (languages)f(are)f(non-conforming.)20 b(Eac)o(h)13 b(subrange)g(t)o(yp)q(e)g (can)g(b)q(e)h(view)o(ed)g(as)e(a)h(subset)g(of)g(an)g(ideal)0 2478 y(in)o(teger)18 b(t)o(yp)q(e)g(that)f(do)q(es)h(conform)f(to)g(our)h (rules.)28 b(In)o(teger)18 b(op)q(erations)g(are)f(de\014ned)i(on)f(these)g (ideal)h(t)o(yp)q(es,)0 2535 y(and)c(the)h(subrange)f(constrain)o(ts)g(only)g (a\013ect)g(the)g(legalit)o(y)h(of)f(assignmen)o(t)g(and)g(parameter)g (passing.)1905 2828 y(33)p eop %%Page: 34 42 bop -72 383 13 377 v -72 946 13 57 v -72 2537 13 227 v -110 2273 51 13 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y Fx(A.5.1.0.2)50 b(Mo)q(dulo)19 b(in)o(tegers)0 159 y Fw(Mo)q(dulo)i(in)o(tegers)f(w)o(ere)g (in)o(tro)q(duced)i(b)q(ecause)f(there)g(are)f(languages)g(that)g(mandate)g (wrapping)h(for)e(some)0 216 y(in)o(teger)e(t)o(yp)q(es)g(\(e.g.,)f(C's)g Fx(unsigned)k(in)o(t)d Fw(t)o(yp)q(e\),)g(and)g(mak)o(e)f(it)h(optional)h (for)e(others)h(\(e.g.,)e(C's)i(signed)h Fx(in)o(t)0 272 y Fw(t)o(yp)q(e\).)0 357 y(Mo)q(dulo)e(in)o(tegers)f(b)q(eha)o(v)o(e)g(as)g(ab) q(o)o(v)o(e,)g(but)g(wrap)g(rather)f(than)h(o)o(v)o(er\015o)o(w.)0 505 y Fx(A.5.1.0.3)50 b(Un)o(b)q(ounded)18 b(in)o(tegers)0 619 y Fw(Un)o(b)q(ounded)h(in)o(tegers)e(w)o(ere)h(in)o(tro)q(duced)g(b)q (ecause)g(there)g(are)f(languages)h(whic)o(h)g(pro)o(vide)g(in)o(tegers)f (with)h(no)0 676 y(\014xed)13 b(upp)q(er)g(limit.)20 b(The)13 b(v)m(alue)g(of)f(the)h(Bo)q(olean)g(parameter)e Fr(b)n(ounde)n(d)17 b Fw(m)o(ust)11 b(either)i(b)q(e)g(\014xed)g(in)g(the)g(language)0 732 y(de\014nition)19 b(or)e(m)o(ust)f(b)q(e)i(a)o(v)m(ailable)h(at)e (run-time.)26 b(Some)17 b(languages,)h(lik)o(e)g(Prolog,)f(p)q(ermit)h(the)f (existence)h(of)0 788 y(an)d(upp)q(er)h(limit)h(to)d(b)q(e)i(an)f(implemen)o (tation)i(c)o(hoice.)0 873 y(In)f(an)f(un)o(b)q(ounded)i(in)o(teger)f (implemen)o(tation,)g(ev)o(ery)f(mathematical)g(in)o(teger)h(is)g(p)q(oten)o (tially)g(a)f(data)g(ob)s(ject.)0 930 y(The)g(actual)h(v)m(alues)g (computable)g(dep)q(end)h(on)e(resource)g(limitations,)h(not)f(on)g (prede\014ned)i(b)q(ounds.)0 1014 y(The)d(LIA-1)g(do)q(es)g(not)f(sp)q(ecify) h(ho)o(w)f(the)h(un)o(b)q(ounded)h(t)o(yp)q(e)f(is)g(implemen)o(ted.)21 b(T)o(ypical)14 b(implemen)o(tations)h(use)0 1071 y(a)j(v)m(ariable)i(amoun)o (t)d(of)h(storage)f(for)h(an)g(in)o(teger,)h(as)f(needed.)31 b(Indeed,)20 b(if)f(an)f(implemen)o(tation)i(supplied)g(a)0 1127 y(\014xed)f(amoun)o(t)e(of)g(storage)g(for)g(eac)o(h)h(in)o(teger,)h (this)f(w)o(ould)g(establish)h(a)f(de)g(facto)f Fu(maxint)i Fw(and)f Fu(minint)p Fw(.)28 b(It)0 1184 y(is)18 b(imp)q(ortan)o(t)g(to)f (note)h(that)f(this)i(standard)e(is)i(not)e(dep)q(enden)o(t)j(up)q(on)f (hardw)o(are)e(supp)q(ort)h(for)f(un)o(b)q(ounded)0 1240 y(in)o(tegers)11 b(\(whic)o(h)h(rarely)l(,)g(if)g(ev)o(er,)f(exists\).)19 b(In)12 b(essence,)g(the)f(LIA-1)h(requires)g(a)f(certain)h(abstract)e(functionalit)o (y)l(,)0 1297 y(and)15 b(this)h(can)f(b)q(e)h(implemen)o(ted)h(in)f(hardw)o (are,)e(soft)o(w)o(are,)f(or)i(more)g(t)o(ypically)l(,)h(a)f(com)o(bination)h (of)f(the)g(t)o(w)o(o.)0 1381 y(Op)q(erations)c(on)g(un)o(b)q(ounded)h(in)o (tegers)f(will)h(nev)o(er)f(o)o(v)o(er\015o)o(w.)17 b(Ho)o(w)o(ev)o(er,)10 b(the)h(storage)f(required)h(for)f(un)o(b)q(ounded)0 1438 y(in)o(tegers)16 b(can)h(result)g(in)g(a)f(program)f(failing)j(due)f(to)f(lac)o(k)h(of)f (memory)l(.)23 b(This)17 b(is)g(logically)h(no)e(di\013eren)o(t)h(from)0 1494 y(failure)f(through)f(other)g(resource)g(limits,)h(suc)o(h)g(as)f(time.) 0 1579 y(The)j(implemen)o(tation)i(ma)o(y)d(b)q(e)i(able)f(to)g(determine)h (that)e(it)h(will)i(not)e(b)q(e)g(able)h(to)f(con)o(tin)o(ue)g(pro)q(cessing) h(in)0 1635 y(the)e(near)f(future)h(and)g(ma)o(y)f(issue)h(a)g(w)o(arning.)24 b(Some)16 b(reco)o(v)o(ery)g(ma)o(y)g(or)g(ma)o(y)g(not)g(b)q(e)i(p)q (ossible.)26 b(It)16 b(ma)o(y)g(b)q(e)0 1692 y(imp)q(ossible)f(for)c(the)h (system)g(to)g(iden)o(tify)h(the)g(sp)q(eci\014c)h(lo)q(cation)f(of)f(the)g (fault.)19 b(Ho)o(w)o(ev)o(er,)11 b(the)i(implemen)o(tation)0 1748 y(m)o(ust)i(not)f(giv)o(e)i(false)f(results)h(without)f(an)o(y)g (indication)i(of)e(a)g(problem.)0 1833 y(It)d(ma)o(y)f(b)q(e)h(imp)q(ossible) i(to)e(giv)o(e)g(a)f(de\014nite)i(\\practical")f(v)m(alue)h(b)q(elo)o(w)g (whic)o(h)f(in)o(teger)g(computation)g(is)g(guaran-)0 1889 y(teed)g(to)g(b)q(e)h(safe,)f(b)q(ecause)h(the)f(largest)g(represen)o(table)h (in)o(teger)g(at)e(time)i Fr(t)f Fw(ma)o(y)g(dep)q(end)h(on)f(the)h(mac)o (hine)g(state)0 1946 y(at)h(that)h(instan)o(t.)k(Sustained)e(computations)e (with)g(v)o(ery)g(large)g(in)o(tegers)g(ma)o(y)f(lead)i(to)f(resource)g (exhaustion.)0 2030 y(The)20 b(signatures)h(of)e(the)h(in)o(teger)h(op)q (erations)f(include)i Fx(in)o(teger)p 1162 2030 16 2 v 19 w(o)o(v)o(er\015o)o (w)c Fw(as)i(a)g(p)q(ossible)h(result)g(b)q(ecause)0 2087 y(they)15 b(refer)g(to)g(b)q(ounded)h(in)o(teger)g(op)q(erations)f(as)g(w)o(ell.)0 2235 y Fx(A.5.1.1)51 b(Op)q(erations)0 2349 y(A.5.1.2)g(Mo)q(dulo)18 b(in)o(tegers)f(v)o(ersus)f(o)o(v)o(er\015o)o(w)0 2463 y Fu(W)6 b(r)q(ap)118 2470 y Fp(I)158 2463 y Fw(pro)q(duces)21 b(results)g(in)g(the)g (range)f([)p Fu(minint;)8 b(maxint)p Fw(].)34 b(These)21 b(results)f(are)g(p) q(ositiv)o(e)i(for)e(unsigned)0 2520 y(in)o(teger)15 b(t)o(yp)q(es,)g(but)h (ma)o(y)e(b)q(e)i(negativ)o(e)f(for)g(signed)h(t)o(yp)q(es.)0 2828 y(34)p eop %%Page: 35 43 bop -72 2347 13 2228 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y(A.5.1.3)51 b(Axioms)0 159 y Fw(The)16 b(ratio)f(of)g(t)o(w)o(o)f(in)o(tegers)i(is)g(not) g(necessarily)h(an)e(in)o(teger.)21 b(Th)o(us,)16 b(the)f(result)i(of)e(an)g (in)o(teger)h(division)i(ma)o(y)0 216 y(require)j(rounding.)35 b(Tw)o(o)19 b(rounding)i(rules)g(are)e(in)i(common)f(use:)30 b Fr(r)n(ound)21 b(towar)n(d)g(minus)g(in\014nity)d Fw(\()p Fu(div)1901 199 y Fn(1)1899 228 y Fp(I)1920 216 y Fw(\),)0 272 y(and)e Fr(r)n(ound)g(towar)n(d)h(zer)n(o)e Fw(\()p Fu(div)543 256 y Fn(2)541 285 y Fp(I)562 272 y Fw(\).)20 b(Both)15 b(are)g(allo)o(w)o (ed)h(b)o(y)f(the)g(LIA-1.)21 b(These)16 b(rounding)g(rules)g(giv)o(e)g(iden) o(tical)0 329 y(de\014nitions)i(of)f Fu(div)337 336 y Fp(I)356 329 y Fw(\()p Fu(x;)8 b(y)r Fw(\))15 b(when)i Fu(x)g Fw(and)g Fu(y)h Fw(ha)o(v)o(e)e(the)h(same)f(sign,)i(but)e(pro)q(duce)i(di\013eren)o (t)f(results)g(when)g(the)0 385 y(signs)f(di\013er.)k(F)l(or)14 b(example,)114 507 y Fu(div)178 491 y Fn(1)176 520 y Fp(I)196 507 y Fw(\()p Fv(\000)p Fw(3)p Fu(;)8 b Fw(2\))j(=)i Fv(\000)p Fw(2)197 b(\(round)15 b(to)o(w)o(ard)f(min)o(us)i(in\014nit)o(y\))114 563 y Fu(div)178 547 y Fn(2)176 576 y Fp(I)196 563 y Fw(\()p Fv(\000)p Fw(3)p Fu(;)8 b Fw(2\))j(=)i Fv(\000)p Fw(1)197 b(\(round)15 b(to)o(w)o(ard)f(zero\))0 685 y Fu(D)q(iv)79 669 y Fn(1)77 698 y Fp(I)113 685 y Fw(satis\014es)i(an)f(broadly)g(useful)h(\\translation") f(in)o(v)m(arian)o(t:)114 808 y Fu(div)178 791 y Fn(1)176 820 y Fp(I)196 808 y Fw(\()p Fu(x)10 b Fw(+)h Fu(i)e Fv(\003)h Fu(y)r(;)e(y)r Fw(\))j(=)i Fu(div)564 791 y Fn(1)562 820 y Fp(I)583 808 y Fw(\()p Fu(x;)8 b(y)r Fw(\))h(+)h Fu(i)121 b Fw(if)16 b Fu(y)e Fv(6)p Fw(=)f(0,)i(and)g(no)g(o)o(v)o(er\015o)o(w)f(o)q (ccurs)0 930 y(and)20 b(is)g(the)g(form)f(of)g(division)j(preferred)e(b)o(y)g (man)o(y)f(mathematicians.)34 b Fu(D)q(iv)1400 913 y Fn(2)1398 942 y Fp(I)1439 930 y Fw(is)20 b(the)g(traditional)g(form)f(of)0 986 y(division)e(in)o(tro)q(duced)g(b)o(y)e(F)l(ortran.)0 1071 y Fu(Rem)96 1078 y Fp(I)116 1071 y Fw(\()p Fu(x;)8 b(y)r Fw(\))14 b(giv)o(es)h(the)g(remainder)h(after)f(division.)21 b(It)16 b(is)f(coupled)i(to)e(division)i(b)o(y)e(the)g(follo)o(wing)h(iden)o(tities:) 114 1193 y Fu(x)c Fw(=)h Fu(div)262 1200 y Fp(I)282 1193 y Fw(\()p Fu(x;)8 b(y)r Fw(\))g Fv(\003)i Fu(y)i Fw(+)e Fu(r)q(em)592 1200 y Fp(I)612 1193 y Fw(\()p Fu(x;)e(y)r Fw(\))135 b(if)16 b Fu(y)e Fv(6)p Fw(=)f(0,)i(and)g(no)g(o)o(v)o(er\015o)o(w)f(o)q(ccurs)114 1249 y(0)e Fv(\024)h(j)p Fu(r)q(em)293 1256 y Fp(I)312 1249 y Fw(\()p Fu(x;)8 b(y)r Fw(\))p Fv(j)j Fu(<)i Fv(j)p Fu(y)r Fv(j)313 b Fw(if)16 b Fu(y)e Fv(6)p Fw(=)f(0)0 1371 y(Th)o(us,)h Fu(div)191 1355 y Fn(1)189 1384 y Fp(I)224 1371 y Fw(and)h Fu(r)q(em)395 1355 y Fn(1)395 1384 y Fp(I)429 1371 y Fw(form)f(a)g(logical)h (pair,)g(as)f(do)g Fu(div)1000 1355 y Fn(2)998 1384 y Fp(I)1033 1371 y Fw(and)h Fu(r)q(em)1204 1355 y Fn(2)1204 1384 y Fp(I)1224 1371 y Fw(.)k(Note)14 b(that)g(computing)h Fu(r)q(em)1770 1378 y Fp(I)1790 1371 y Fw(\()p Fu(x;)8 b(y)r Fw(\))k(as)114 1493 y Fu(sub)181 1500 y Fp(I)200 1493 y Fw(\()p Fu(x;)c(mul)345 1500 y Fp(I)364 1493 y Fw(\()p Fu(div)444 1500 y Fp(I)463 1493 y Fw(\()p Fu(x;)g(y)r Fw(\))p Fu(;)g(y)r Fw(\)\))0 1615 y(is)16 b(not)f(correct)f(b)q(ecause)i Fu(div)508 1622 y Fp(I)528 1615 y Fw(\()p Fu(x;)8 b(y)r Fw(\))13 b(can)j(o)o(v)o(er\015o)o(w)e(but)h Fu(r)q(em)1075 1622 y Fp(I)1095 1615 y Fw(\()p Fu(x;)8 b(y)r Fw(\))13 b(cannot.)0 1700 y(The)18 b(mo)q(dulus)h(op)q(eration)f(and)g(the)g (remainder)g(op)q(eration)h(are)e(quite)i(similar)g(\(in)f(fact,)f Fu(mod)1696 1684 y Fn(1)1696 1713 y Fp(I)1734 1700 y Fw(is)h(iden)o(tical)0 1756 y(to)c Fu(r)q(em)138 1740 y Fn(1)138 1769 y Fp(I)157 1756 y Fw(\),)g(but)g(they)h(ha)o(v)o(e)e(b)q(een)j(selected)f(to)f(satisfy)g (somewhat)f(di\013eren)o(t)h(iden)o(tities.)22 b(In)14 b(addition,)h(v)m (arious)0 1813 y(languages)k(ha)o(v)o(e)g(c)o(hosen)g(to)g(extend)g(the)g (de\014nition)i(of)e(the)g(mo)q(dulus)h(op)q(eration,)g Fu(mod)1600 1820 y Fp(I)1620 1813 y Fw(\()p Fu(x;)8 b(y)r Fw(\),)18 b(to)g(p)q(ermit)0 1869 y(negativ)o(e)e(v)m(alues)g(for)f(the)g(second)h(argumen)o(t,)f(while)i (others)d(\(lik)o(e)j(P)o(ascal\))e(c)o(ho)q(ose)g(to)g(forbid)h(it.)21 b(The)15 b(LIA-1)0 1926 y(in)o(tro)q(duces)h(t)o(w)o(o)d(v)o(ersions)i(of)g (the)f(mo)q(dulus)i(op)q(eration:)k Fu(mod)1096 1909 y Fn(1)1096 1939 y Fp(I)1116 1926 y Fw(,)14 b(whic)o(h)i(extends)f(the)g(de\014nition)i (of)d(mo)q(dulus,)0 1982 y(and)h Fu(mod)174 1966 y Fn(2)174 1995 y Fp(I)194 1982 y Fw(,)f(whic)o(h)i(is)f(unde\014ned)i(when)e Fu(y)g(<)e Fw(0.)19 b(The)c(mo)q(dulus)h(op)q(erations)f(satisfy)g(the)g (follo)o(wing)g(iden)o(tities)0 2039 y(\(in)h(the)f(absence)h(of)f (noti\014cation\):)114 2161 y Fu(x)d Fw(=)h Fu(mod)286 2168 y Fp(I)306 2161 y Fw(\()p Fu(x;)8 b(y)r Fw(\))g(+)j Fu(i)f Fv(\003)f Fu(y)139 b Fw(for)14 b(some)h(in)o(teger)h Fu(i)114 2274 y Fw(0)c Fv(\024)h Fu(mod)283 2281 y Fp(I)303 2274 y Fw(\()p Fu(x;)8 b(y)r Fw(\))j Fu(<)i(y)195 b Fw(if)15 b Fu(y)g(>)e Fw(0)114 2330 y Fu(y)h(<)f(mod)284 2314 y Fn(1)284 2343 y Fp(I)304 2330 y Fw(\()p Fu(x;)8 b(y)r Fw(\))j Fv(\024)i Fw(0)193 b(if)15 b Fu(y)g(<)e Fw(0)1905 2828 y(35)p eop %%Page: 36 44 bop -72 2628 13 235 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y Fx(A.5.2)51 b(Floating)20 b(p)q(oin)o(t)e(t)o(yp)q(es)0 159 y Fw(Floating)d(p)q(oin)o(t)h (v)m(alues)g(are)f(traditionally)i(represen)o(ted)e(as)g(either)h(zero)f(or) 114 281 y Fu(X)g Fw(=)e Fv(\006)p Fu(g)f Fv(\003)e Fu(r)339 265 y Fp(e)370 281 y Fw(=)j Fv(\006)p Fw(0)p Fu(:f)511 288 y Fn(1)531 281 y Fu(f)553 288 y Fn(2)573 281 y Fu(:::f)634 288 y Fp(p)663 281 y Fv(\003)c Fu(r)717 265 y Fp(e)0 403 y Fw(where)15 b(0)p Fu(:f)189 410 y Fn(1)209 403 y Fu(f)231 410 y Fn(2)251 403 y Fu(:::f)312 410 y Fp(p)346 403 y Fw(is)h(the)f Fu(p)p Fw(-digit)h Fr(fr)n(action)f Fu(g)h Fw(\(represen)o(ted)g(in)g(base,)f (or)f(radix,)h Fu(r)q Fw(\))g(and)g Fu(e)h Fw(is)f(the)h(exp)q(onen)o(t.)0 488 y(The)h(exp)q(onen)o(t)h Fu(e)f Fw(is)h(an)f(in)o(teger)g(in)h([)p Fu(emin)p Fw(,)p Fu(emax)p Fw(].)25 b(The)17 b(fraction)g(digits)h(are)f(in)o (tegers)h(in)f([0,)p Fu(r)12 b Fv(\000)f Fw(1].)25 b(If)18 b(the)0 544 y(\015oating)c(p)q(oin)o(t)h(n)o(um)o(b)q(er)g(is)g Fr(normalize)n(d)p Fw(,)e Fu(f)754 551 y Fn(1)789 544 y Fw(is)h(not)g(zero,)g (and)h(hence)g(the)g(minim)o(um)g(v)m(alue)h(of)e(the)g(fraction)h Fu(g)0 601 y Fw(is)h(1)p Fu(=r)f Fw(and)g(the)h(maxim)o(um)f(v)m(alue)h(is)g (1)10 b Fv(\000)g Fu(r)770 584 y Fm(\000)p Fp(p)817 601 y Fw(.)0 685 y(This)17 b(description)g(giv)o(es)g(rise)f(to)g(\014v)o(e)g(parameters)g (that)f(completely)i(c)o(haracterize)g(the)f(v)m(alues)h(of)f(a)g(\015oating) 0 742 y(p)q(oin)o(t)g(t)o(yp)q(e:)23 864 y Fr(r)n(adix)g(r)5 b Fw(:)20 b(the)15 b(\\base")g(of)g(the)g(n)o(um)o(b)q(er)h(system.)23 958 y Fr(pr)n(e)n(cision)f(p)s Fw(:)20 b(the)15 b(n)o(um)o(b)q(er)h(of)e (radix)i Fu(r)g Fw(digits)g(pro)o(vided)g(b)o(y)f(the)g(t)o(yp)q(e.)23 1052 y Fu(emin)g Fw(and)g Fu(emax)p Fw(:)20 b(the)15 b(smallest)h(and)g (largest)e(exp)q(onen)o(t)i(v)m(alues.)21 b(They)16 b(de\014ne)g(the)f(range) g(of)g(the)g(t)o(yp)q(e.)23 1145 y Fu(denor)q(m)p Fw(:)k(\(a)c(Bo)q(olean\))g Fx(true)g Fw(if)h(the)f(t)o(yp)q(e)h(includes)h Fr(denormalize)n(d)e Fw(v)m(alues;)h Fx(false)f Fw(if)h(not.)0 1267 y(The)23 b(fraction)g Fu(g)h Fw(can)e(also)h(b)q(e)h(represen)o(ted)f(as)f Fu(i)15 b Fv(\003)g Fu(r)985 1251 y Fm(\000)p Fp(p)1032 1267 y Fw(,)24 b(where)f Fu(i)f Fw(is)i(a)e Fu(p)p Fw(-digit)i(in)o(teger)e(in)i(the)f(in)o (terv)m(al)0 1324 y([)p Fu(r)35 1307 y Fp(p)p Fm(\000)p Fn(1)99 1324 y Fw(,)15 b Fu(r)149 1307 y Fp(p)179 1324 y Fv(\000)10 b Fw(1].)19 b(Th)o(us)114 1446 y Fu(X)c Fw(=)e Fv(\006)p Fu(g)f Fv(\003)e Fu(r)339 1429 y Fp(e)370 1446 y Fw(=)j Fv(\006)p Fw(\()p Fu(i)d Fv(\003)f Fu(r)551 1429 y Fm(\000)p Fp(p)599 1446 y Fw(\))g Fv(\003)h Fu(r)681 1429 y Fp(e)712 1446 y Fw(=)j Fv(\006)p Fu(i)d Fv(\003)g Fu(r)876 1429 y Fp(e)p Fm(\000)p Fp(p)0 1568 y Fw(This)16 b(is)f(the)h(form)e(of)h(the)g(\015oating)g(p)q(oin) o(t)h(v)m(alues)g(used)g(in)g(de\014ning)h(the)e(\014nite)h(set)f Fu(F)1506 1575 y Fp(N)1540 1568 y Fw(.)0 1653 y(Note)21 b(that)g(in)i(some)e (implemen)o(tations,)j(the)e(exp)q(onen)o(t)g Fu(e)g Fw(is)g(enco)q(ded)h (with)f(a)f(bias)h(added)g(to)f(the)h(true)0 1709 y(exp)q(onen)o(t.)e(The)c (LIA-1)g(uses)f(the)h(un)o(biased,)g(true)f(exp)q(onen)o(t.)0 1794 y(The)j(IEEE)f(standards)g(754)g([1)o(])g(and)g(854)g([21)o(])g(presen)o (t)g(a)g(sligh)o(tly)i(di\013eren)o(t)f(mo)q(del)g(for)f(the)g(\015oating)g (p)q(oin)o(t)0 1850 y(t)o(yp)q(e.)j(Normalized)c(\015oating)f(p)q(oin)o(t)h (n)o(um)o(b)q(ers)g(are)e(represen)o(ted)i(as)114 1972 y Fv(\006)p Fu(f)171 1979 y Fn(0)191 1972 y Fu(:f)226 1979 y Fn(1)246 1972 y Fu(:::f)307 1979 y Fp(p)p Fm(\000)p Fn(1)381 1972 y Fv(\003)10 b Fu(r)436 1956 y Fp(e)0 2094 y Fw(where)15 b Fu(f)153 2101 y Fn(0)173 2094 y Fu(:f)208 2101 y Fn(1)227 2094 y Fu(:::f)288 2101 y Fp(p)p Fm(\000)p Fn(1)366 2094 y Fw(is)g(the)g Fu(p)p Fw(-digit)g Fr(signi\014c)n(and)d Fw(\(represen)o(ted)j(in)g(radix)f Fu(r)q Fw(,)g(where)h Fu(r)g Fw(is)f(2)g(or)g(10\),)f Fu(f)1746 2101 y Fn(0)1779 2094 y Fv(6)p Fw(=)g(0,)h(and)0 2151 y Fu(e)g Fw(is)h(an)f(in)o(teger)h(exp)q(onen)o(t)g(b)q(et)o(w)o(een)f(a)g(giv)o(en)h Fu(E)850 2158 y Fp(min)930 2151 y Fw(and)g Fu(E)1052 2158 y Fp(max)1123 2151 y Fw(.)20 b(The)14 b(minim)o(um)i(v)m(alue)f(of)f(the)g (signi\014cand)i(is)0 2207 y(1;)f(the)g(maxim)o(um)g(v)m(alue)h(is)g Fu(r)11 b Fv(\000)f Fw(1)p Fu(=r)649 2191 y Fp(p)p Fm(\000)p Fn(1)714 2207 y Fw(.)0 2292 y(The)j(IEEE)f(signi\014cand)j(is)e(equiv)m(alen) o(t)h(to)e Fu(g)6 b Fv(\003)f Fu(r)q Fw(.)18 b(Consequen)o(tly)l(,)13 b(the)g(IEEE)f Fu(E)1372 2299 y Fp(max)1456 2292 y Fw(and)h Fu(E)1576 2299 y Fp(min)1654 2292 y Fw(are)g(one)f(smaller)0 2348 y(than)j(the)g Fu(emax)h Fw(and)f Fu(emin)g Fw(giv)o(en)h(in)g(the)f (LIA-1)h(mo)q(del.)0 2433 y(The)j(fraction)f(mo)q(del)h(and)g(the)f (signi\014cand)j(mo)q(del)e(are)f(equiv)m(alen)o(t)i(in)f(that)f(they)g(can)h (generate)f(precisely)0 2490 y(the)d(same)g(sets)g(of)f(\015oating)i(p)q(oin) o(t)f(v)m(alues.)21 b(Curren)o(tly)l(,)15 b(all)h(ISO/IEC)g(JTC1/SC22)e (programming)h(language)0 2546 y(standards)g(that)g(presen)o(t)g(a)h(mo)q (del)g(of)f(\015oating)h(p)q(oin)o(t)g(to)e(the)i(programmer)e(use)i(the)g (fraction)f(mo)q(del)i(rather)0 2602 y(than)e(the)g(signi\014cand)i(one.)j (The)c(LIA-1)g(has)f(c)o(hosen)g(to)g(conform)f(to)h(this)h(trend.)0 2828 y(36)p eop %%Page: 37 45 bop -72 1981 13 57 v -72 2602 13 537 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y(A.5.2.0.1)50 b(Denormalized)19 b(n)o(um)o(b)q(ers)0 159 y Fw(The)k(IEEE)f(standards)g(754)g(and)g(854)g(and)g(a)h(few)f(non-IEEE)h (implemen)o(tations)g(include)i(denormalized)0 216 y(n)o(um)o(b)q(ers.)20 b(The)c(LIA-1)g(mo)q(dels)g(a)e(denormalized)j(\015oating)e(p)q(oin)o(t)h(n)o (um)o(b)q(er)g(as)e(a)h(real)h(n)o(um)o(b)q(er)f(of)g(the)g(form)114 338 y Fu(X)g Fw(=)e Fv(\006)p Fu(i)e Fv(\003)e Fu(r)331 321 y Fp(emin)p Fm(\000)p Fp(p)0 460 y Fw(where)16 b Fu(i)g Fw(is)h(an)e(in)o (teger)i(in)g(the)f(in)o(terv)m(al)h([1)p Fu(;)8 b(r)803 443 y Fp(p)p Fm(\000)p Fn(1)877 460 y Fv(\000)j Fw(1].)22 b(The)16 b(corresp)q(onding)h(fraction)f(g)f(lies)j(in)f(the)f(in)o(terv)m(al)0 516 y([)p Fu(r)35 500 y Fm(\000)p Fp(p)82 516 y Fu(;)8 b Fw(1)p Fu(=r)t Fv(\000)s Fu(r)234 500 y Fm(\000)p Fp(p)279 516 y Fw(];)k(its)g(most) f(signi\014can)o(t)h(digit)h(is)f(zero.)18 b(Denormalized)13 b(n)o(um)o(b)q(ers)f(partially)g(\014ll)h(the)f(\\under\015o)o(w)0 573 y(gaps")j(in)h Fr(fmin)269 580 y Fp(N)318 573 y Fw(that)e(o)q(ccur)i(b)q (et)o(w)o(een)f Fv(\006)p Fu(r)771 556 y Fp(emin)p Fm(\000)p Fn(1)915 573 y Fw(and)g(0.)20 b(T)l(ak)o(en)15 b(together,)f(they)h(comprise) h(the)f(set)g Fu(F)1856 580 y Fp(D)1888 573 y Fw(.)0 657 y(The)e(v)m(alues)h (in)g Fu(F)304 664 y Fp(D)349 657 y Fw(are)f(linearly)i(distributed)f(with)g (the)f(same)g(spacing)g(as)g(the)g(v)m(alues)h(in)g(the)f(range)g([)p Fu(r)1810 641 y Fp(emin)p Fm(\000)p Fn(1)1937 657 y Fw(,)0 714 y Fu(r)22 697 y Fp(emin)105 714 y Fw(\))g(in)h Fu(F)216 721 y Fp(N)250 714 y Fw(.)19 b(Th)o(us)13 b(they)h(ha)o(v)o(e)f(a)g(maxim)o (um)g(absolute)g(represen)o(tation)h(error)e(of)h Fu(r)1499 697 y Fp(emin)p Fm(\000)p Fp(p)1627 714 y Fw(.)19 b(Ho)o(w)o(ev)o(er,)13 b(since)0 770 y(denormalized)h(n)o(um)o(b)q(ers)f(ha)o(v)o(e)e(less)i(than)f Fu(p)h Fw(digits)g(of)e(precision,)k(the)d(relativ)o(e)h(represen)o(tation)f (error)g(can)g(v)m(ary)0 827 y(widely)l(.)21 b(This)16 b(relativ)o(e)f(error) f(v)m(aries)i(from)e Fu(epsil)q(on)e Fw(=)h Fu(r)994 810 y Fn(1)p Fm(\000)p Fp(p)1074 827 y Fw(at)h(the)h(high)h(end)f(of)f Fu(F)1473 834 y Fp(D)1520 827 y Fw(to)h(1)f(at)g(the)h(lo)o(w)g(end)g(of)0 883 y Fu(F)29 890 y Fp(D)61 883 y Fw(.)20 b(Near)15 b(0,)g(the)g(relativ)o(e) h(error)e(increases)i(without)f(b)q(ound.)0 968 y(Whenev)o(er)j(an)g (addition)i(or)d(subtraction)h(pro)q(duces)h(a)f(result)h(in)f Fu(F)1215 975 y Fp(D)1248 968 y Fw(,)g(that)f(result)i(is)g(exact)e({)h(the)g (relativ)o(e)0 1024 y(error)e(is)i(zero.)25 b(Ev)o(en)17 b(for)f(an)h (\\e\013ectiv)o(e)g(subtraction")g(no)g(accuracy)g(is)h(lost,)f(b)q(ecause)h (the)f(decrease)g(in)h(the)0 1081 y(n)o(um)o(b)q(er)c(of)f(signi\014can)o(t)h (digits)g(is)g(exactly)g(the)g(same)f(as)g(the)g(n)o(um)o(b)q(er)h(of)f (digits)h(canceled)h(in)g(the)e(subtraction.)0 1137 y(F)l(or)i(m)o (ultiplication,)j(division,)f(scaling,)f(and)g(some)f(con)o(v)o(ersions,)g (signi\014can)o(t)i(digits)f(\(and)g(hence)g(accuracy\))0 1194 y(ma)o(y)e(b)q(e)i(lost)f(if)h(the)f(result)h(is)g(in)g Fu(F)621 1201 y Fp(D)653 1194 y Fw(.)0 1278 y(The)c(en)o(tire)f(set)g(of)g(\015oating) h(p)q(oin)o(t)f(n)o(um)o(b)q(ers)h Fu(F)18 b Fw(is)12 b(either)g Fu(F)1026 1285 y Fp(N)1062 1278 y Fv([)r Fu(F)1123 1285 y Fp(D)1167 1278 y Fw(\(if)f(denormalized)i(n)o(um)o(b)q(ers)f(are)f(pro)o(vided\),)0 1335 y(or)18 b Fu(F)88 1342 y Fp(N)141 1335 y Fw(\(if)g(all)i(n)o(um)o(b)q (ers)f(are)f(normalized\).)31 b(Th)o(us)19 b(the)g(LIA-1)g(allo)o(ws,)h(but)e (do)q(es)h(not)g(require,)h(the)e(use)h(of)0 1391 y(denormalized)d(n)o(um)o (b)q(ers.)k(See)15 b(Co)q(onen)f([25)o(])g(for)g(a)g(detailed)h(discussion)h (of)e(the)g(prop)q(erties)h(of)f(denormalized)0 1448 y(n)o(um)o(b)q(ers.)0 1596 y Fx(A.5.2.0.2)50 b(Constrain)o(ts)18 b(on)f(the)h(\015oating)h(p)q(oin) o(t)g(parameters)0 1710 y Fw(The)d(constrain)o(ts)g(placed)h(on)f(the)h (\015oating)f(p)q(oin)o(t)g(parameters)g(are)g(in)o(tended)h(to)f(b)q(e)g (close)h(to)f(the)g(minim)o(um)0 1766 y(necessary)i(to)f(ha)o(v)o(e)h(the)g (mo)q(del)g(pro)o(vide)h(meaningful)g(information.)28 b(W)l(e)18 b(will)h(explain)h(wh)o(y)d(eac)o(h)h(of)g(these)0 1823 y(constrain)o(ts)e (is)h(required,)h(and)f(then)g(suggest)f(some)h(constrain)o(ts)f(whic)o(h)h (ha)o(v)o(e)g(pro)o(v)o(ed)f(to)g(b)q(e)i(c)o(haracteristic)0 1879 y(of)d(useful)h(\015oating)f(p)q(oin)o(t)h(data)e(t)o(yp)q(es.)0 1964 y(W)l(e)j(require)h(that)f Fu(r)f Fv(\025)h Fw(2)g(and)g Fu(p)f Fv(\025)g Fw(2)h(in)h(order)f(to)f(ensure)i(that)f(w)o(e)g(ha)o(v)o(e) f(a)h(meaningful)i(set)e(of)g(v)m(alues.)26 b(A)o(t)0 2020 y(presen)o(t,)15 b(only)h(2,)e(8,)h(10,)f(and)h(16)g(app)q(ear)g(to)g(b)q(e)h (in)g(use)f(as)g(v)m(alues)h(for)f Fu(r)q Fw(.)0 2105 y(The)g(requiremen)o(t) h(that)f Fu(emin)d Fv(\024)h Fw(2)d Fv(\000)h Fu(p)k Fw(ensures)g(that)g Fu(epsil)q(on)g Fw(is)g(represen)o(table)h(in)h Fu(F)6 b Fw(.)0 2190 y(The)16 b(requiremen)o(t)g(that)f Fu(emax)f Fv(\025)g Fu(p)h Fw(ensures)h(that)f(1)p Fu(=epsil)q(on)g Fw(is)h(represen)o(table)h (in)g Fu(F)6 b Fw(.)21 b(It)16 b(also)g(implies)i(that)0 2246 y(all)e(in)o(tegers)f(from)g(1)g(to)f Fu(r)454 2230 y Fp(p)484 2246 y Fv(\000)c Fw(1)15 b(are)g(exactly)h(represen)o(table.)0 2331 y(The)22 b(parameters)f Fu(r)h Fw(and)g Fu(p)g Fw(logically)h(m)o(ust)f (b)q(e)g(less)g(than)g Fu(r)1122 2314 y Fp(p)1142 2331 y Fw(,)g(so)g(they)g (are)f(automatically)h(in)h Fu(F)6 b Fw(.)40 b(The)0 2387 y(additional)16 b(requiremen)o(t)g(that)e Fu(emax)h Fw(and)g Fv(\000)p Fu(emin)g Fw(are)f(at)h(most)f Fu(r)1197 2371 y Fp(p)1226 2387 y Fv(\000)9 b Fw(1)15 b(guaran)o(tees)f(that)g Fu(emax)h Fw(and)g Fu(emin)0 2444 y Fw(are)g(in)h Fu(F)22 b Fw(as)14 b(w)o(ell.)0 2529 y(A)g(consequence)h (of)e(the)h(ab)q(o)o(v)o(e)g(restrictions)g(is)g(that)f(a)g(language)h (binding)i(can)e(c)o(ho)q(ose)g(to)f(rep)q(ort)g Fu(r)q Fw(,)h Fu(p)p Fw(,)f Fu(emin)p Fw(,)0 2585 y(and)h Fu(emax)f Fw(to)g(the)g (programmer)g(either)h(as)f(in)o(tegers)g(or)g(as)g(\015oating)h(p)q(oin)o(t) f(v)m(alues)i(without)e(loss)h(of)f(accuracy)l(.)0 2670 y(Constrain)o(ts)h (designed)j(to)d(pro)o(vide:)1905 2828 y(37)p eop %%Page: 38 46 bop -110 940 51 13 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)51 45 y(a\))22 b(adequate)15 b(precision)i(for)d(scien)o(ti\014c)j(applications)48 139 y(b\))23 b(\\balance")15 b(b)q(et)o(w)o(een)h(the)f(o)o(v)o(er\015o)o(w)f (and)h(under\015o)o(w)h(thresholds)53 233 y(c\))23 b(\\balance")15 b(b)q(et)o(w)o(een)h(the)f(range)g(and)g(precision)i(parameters)0 355 y(are)i(sp)q(eci\014ed)j(in)f(IEEE)e(854)g([21)o(])h(and)f(also)h(are)f (applied)j(to)d(mo)q(del)i(and)e(safe)h(n)o(um)o(b)q(ers)g(in)g(Ada)g([6)o (].)33 b(No)0 411 y(suc)o(h)23 b(constrain)o(ts)f(are)g(included)j(in)e (LIA-1)h(whic)o(h)f(emphasizes)g(descriptiv)o(e,)j(rather)c(than)g (prescriptiv)o(e,)0 468 y(sp)q(eci\014cations)17 b(for)e(arithmetic.)20 b(Ho)o(w)o(ev)o(er,)14 b(the)h(follo)o(wing)h(restrictions)g(ha)o(v)o(e)f (some)f(useful)j(prop)q(erties:)51 602 y(a\))22 b Fu(r)16 b Fw(should)g(b)q(e)g(ev)o(en)114 677 y(An)e(ev)o(en)g(v)m(alue)h(of)f Fu(r)g Fw(mak)o(es)g(certain)g(rounding)h(rules)g(easier)f(to)f(implemen)o (t.)21 b(In)15 b(particular,)f(rounding)114 734 y(to)k(nearest)h(w)o(ould)h (p)q(ose)f(a)g(problem)h(b)q(ecause)h(with)e Fu(r)h Fw(o)q(dd)g(and)f Fu(d)g Fw(=)h Fv(b)p Fu(r)q(=)p Fw(2)p Fv(c)f Fw(w)o(e)g(w)o(ould)h(ha)o(v)o (e)1873 716 y Fn(1)p 1873 723 18 2 v 1873 749 a(2)1915 734 y Fw(=)114 790 y Fu(:ddd)8 b Fv(\001)g(\001)f(\001)k Fw(.)19 b(Hence,)c(for)26 b Fu(x)558 797 y Fn(1)591 790 y Fu(<)13 b(x)f(<)h(x)751 797 y Fn(1)778 790 y Fw(+)7 b Fu(ul)q(p)884 797 y Fp(F)913 790 y Fw(\()p Fu(x)957 797 y Fn(1)977 790 y Fw(\))27 b(a)13 b(reliable)j(test)d(for)h Fu(x)f Fw(relativ)o(e)i(to)26 b Fu(x)1665 797 y Fn(1)1692 790 y Fw(+)1740 772 y Fn(1)p 1740 779 V 1740 806 a(2)1763 790 y Fu(ul)q(p)1827 797 y Fp(F)1855 790 y Fw(\()p Fu(x)1899 797 y Fn(1)1919 790 y Fw(\))114 847 y(could)16 b(require)g(reten)o (tion)f(of)g(man)o(y)g(guard)g(digits.)48 940 y(b\))23 b Fu(r)136 924 y Fp(p)p Fm(\000)p Fn(1)215 940 y Fv(\025)14 b Fw(10)310 924 y Fn(6)346 940 y Fw(This)i(giv)o(es)h(a)f(maxim)o(um)g(relativ)o(e)g (error)g(\()p Fu(epsil)q(on)p Fw(\))f(of)h(one)g(in)h(a)f(million.)25 b(This)17 b(is)g(easily)114 997 y(accomplished)g(b)o(y)e(24)f(binary)i(or)f (6)g(hexadecimal)i(digits.)53 1091 y(c\))23 b Fu(emin)10 b Fv(\000)g Fw(1)j Fv(\024)g(\000)p Fu(k)e Fv(\003)f Fw(\()p Fu(p)g Fv(\000)g Fw(1\))15 b(with)g Fu(k)f Fv(\025)f Fw(2)i(and)g Fu(k)h Fw(as)f(large)g(an)g(in)o(teger)h(as)f(practical)114 1166 y(This)22 b(guaran)o(tees)g(that)f Fu(epsil)q(on)708 1149 y Fp(k)751 1166 y Fw(is)i(in)g Fu(F)29 b Fw(whic)o(h)23 b(mak)o(es)f(it)g (easier)h(to)e(sim)o(ulate)i(higher)g(lev)o(els)g(of)114 1222 y(precision)16 b(than)f(w)o(ould)h(b)q(e)g(o\013ered)f(directly)h(b)o(y)f (the)h(v)m(alues)g(in)g(the)f(data)g(t)o(yp)q(e.)48 1316 y(d\))23 b Fu(emax)12 b(>)h(k)d Fv(\003)f Fw(\()p Fu(p)g Fv(\000)g Fw(1\))14 b(This)h(guaran)o(tees)f(that)g Fu(epsil)q(on)1072 1300 y Fm(\000)p Fp(k)1135 1316 y Fw(is)h(in)h Fu(F)21 b Fw(and)15 b(is)g(useful)g(for)f(the)h (same)f(reasons)114 1373 y(giv)o(en)h(ab)q(o)o(v)o(e.)53 1466 y(e\))23 b Fv(\000)p Fw(2)16 b Fv(\024)i Fw(\()p Fu(emin)11 b Fv(\000)h Fw(1\))f(+)h Fu(emax)17 b Fv(\024)g Fw(2)h(This)g(guaran)o(tees)f (that)g(the)h(geometric)f(mean)1591 1432 y Fv(p)p 1629 1432 267 2 v 34 x Fr(fmin)1718 1473 y Fp(N)1762 1466 y Fv(\003)10 b Fr(fmax)23 b Fw(of)114 1523 y Fr(fmin)203 1530 y Fp(N)252 1523 y Fw(and)15 b Fr(fmax)20 b Fw(lies)c(b)q(et)o(w)o(een)g(1)p Fu(=r)f Fw(and)g Fu(r)q Fw(.)k(This)c(also)g(means)g(that)f(for)g(\\most")g Fu(x)h Fw(in)g Fu(F)1712 1530 y Fp(N)1761 1523 y Fw(the)g(recip-)114 1579 y(ro)q(cal)g(1)p Fu(=x)g Fw(is)h(also)f(in)h Fu(F)532 1586 y Fp(N)566 1579 y Fw(.)k(One)d(w)o(ould)e(lik)o(e)i(to)d(b)q(e)i(able)h (to)d(guaran)o(tee)h(this)h(for)e(all)j Fu(x)p Fw(.)j(Unfortunately)114 1636 y(this)15 b(cannot)g(b)q(e)h(done.)k(Consider)c(the)f(recipro)q(cals)i (of)e Fr(fmin)1175 1643 y Fp(N)1224 1636 y Fw(and)g Fr(fmax)6 b Fw(:)214 1730 y(1)p Fu(=)p Fr(fmin)349 1737 y Fp(N)397 1730 y Fw(in)16 b Fu(F)479 1737 y Fp(N)559 1730 y Fw(implies)47 b(1)p Fu(=)p Fr(fmin)878 1737 y Fp(N)927 1730 y Fv(\024)13 b Fr(fmax)214 1786 y Fw(1)p Fu(=)p Fr(fmax)42 b Fw(in)16 b Fu(F)479 1793 y Fp(N)559 1786 y Fw(implies)47 b(1)p Fu(=)p Fr(fmax)c Fv(\025)13 b Fr(fmin)1065 1793 y Fp(N)114 1880 y Fw(Since)i Fr(fmin)321 1887 y Fp(N)368 1880 y Fw(is)g(a)e(p)q(o)o(w)o(er)h (of)f Fu(r)i Fw(and)f Fr(fmax)20 b Fw(is)15 b(not,)e(neither)i(equalit)o(y)g (can)f(hold)h(in)f(the)g(ab)q(o)o(v)o(e.)19 b(F)l(urther,)114 1936 y(with)c(b)q(oth)g(equalities)j(remo)o(v)o(ed,)c(only)i(one)f(of)g(the)g (remaining)h(inequalities)i(can)d(hold.)0 2071 y(All)i(of)e(these)h (restrictions)g(are)f(satis\014ed)i(b)o(y)e(most)g(\(if)h(not)f(all\))h (implemen)o(tations.)23 b(A)15 b(few)h(implemen)o(tations)0 2127 y(presen)o(t)i(a)g(\015oating)h(p)q(oin)o(t)g(mo)q(del)g(with)g(the)f (radix)h(p)q(oin)o(t)g(in)g(the)f(middle)i(or)e(at)g(the)h(lo)o(w)f(end)h(of) f(the)g(frac-)0 2184 y(tion.)23 b(In)16 b(this)h(case,)f(the)g(exp)q(onen)o (t)h(range)e(giv)o(en)i(b)o(y)f(the)g(implemen)o(tation)h(m)o(ust)f(b)q(e)h (adjusted)f(to)f(yield)j(the)0 2240 y(LIA-1)g Fu(emin)f Fw(and)g Fu(emax)p Fw(.)25 b(In)17 b(particular,)h(ev)o(en)f(if)g(the)g(minim)o(um)h (and)f(maxim)o(um)g(exp)q(onen)o(t)h(giv)o(en)f(in)h(the)0 2297 y(implemen)o(tation's)e(o)o(wn)g(mo)q(del)g(w)o(ere)f(negativ)o(es)h(of) f(one)h(another,)f(the)h(adjusted)f Fu(emin)h Fw(and)g Fu(emax)f Fw(b)q(ecome)0 2353 y(asymmetric.)0 2828 y(38)p eop %%Page: 39 47 bop 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y(A.5.2.0.3)50 b(Radix)19 b(complemen)o(t)e(\015oating)i(p)q(oin)o(t)0 159 y Fw(The)d(LIA-1)g(presen)o (ts)g(an)f(abstract)g(mo)q(del)i(for)e(the)g(\015oating)h(p)q(oin)o(t)g(t)o (yp)q(e,)f(de\014ned)i(in)g(terms)e(of)g(parameters.)0 216 y(An)e(implemen)o(tation)i(is)e(exp)q(ected)i(to)d(b)q(e)i(able)g(to)e(map)h (its)g(o)o(wn)g(\015oating)g(p)q(oin)o(t)g(n)o(um)o(b)q(ers)h(to)e(the)h (elemen)o(ts)h(in)0 272 y(this)f(mo)q(del,)h(but)f(the)g(LIA-1)h(places)f(no) g(restrictions)g(on)g(the)g(actual)g(in)o(ternal)h(represen)o(tation)f(of)f (the)h(\015oating)0 329 y(p)q(oin)o(t)j(v)m(alues.)0 413 y(The)d(\015oating)g (p)q(oin)o(t)h(mo)q(del)g(presen)o(ted)f(in)h(the)f(LIA-1)h(is)f (sign-magnitude.)21 b(A)13 b(few)g(curren)o(t)g(implemen)o(tations)0 470 y(k)o(eep)22 b(their)g(\015oating)f(p)q(oin)o(t)h(fraction)g(in)g(a)f (radix-complemen)o(t)i(format.)38 b(Sev)o(eral)22 b(di\013eren)o(t)g (patterns)f(for)0 526 y(radix-complemen)o(t)h(\015oating)f(p)q(oin)o(t)h(ha)o (v)o(e)f(b)q(een)h(used,)h(but)e(a)g(common)g(feature)g(is)h(the)f(presence)h (of)f(one)0 583 y(extra)g(negativ)o(e)g(\015oating)h(p)q(oin)o(t)f(n)o(um)o (b)q(er:)33 b(the)22 b(most)e(negativ)o(e.)39 b(This)22 b(\\most)e(negativ)o (e")h(\015oating)g(p)q(oin)o(t)0 639 y(n)o(um)o(b)q(er)14 b(has)g(no)h(p)q (ositiv)o(e)g(coun)o(terpart.)j(It)d(b)q(elongs)g(to)e Fu(F)1037 623 y Fm(\003)1057 639 y Fw(,)h(and)h(its)f(v)m(alue)h(is)g Fv(\000)p Fr(fmax)f Fv(\000)9 b Fu(ul)q(p)1647 646 y Fp(F)1675 639 y Fw(\()p Fr(fmax)d Fw(\).)19 b(Some)0 695 y(radix-complemen)o(t)d (implemen)o(tations)h(also)e(omit)g(the)g(negativ)o(e)h(coun)o(terpart)e(of)h Fr(fmin)1556 702 y Fp(N)1590 695 y Fw(.)0 780 y(In)h(order)f(to)f(accommo)q (date)h(radix-complemen)o(t)h(\015oating)f(p)q(oin)o(t,)h(the)f(LIA-1)h(w)o (ould)g(ha)o(v)o(e)e(to)51 899 y(a\))22 b(de\014ne)e(additional)h(deriv)o(ed) f(constan)o(ts)e(whic)o(h)j(corresp)q(ond)e(to)g(the)g(negativ)o(e)h(coun)o (terparts)e(of)h Fr(fmin)114 956 y Fw(\(the)f(\\least)g(negativ)o(e")g (\015oating)h(p)q(oin)o(t)g(n)o(um)o(b)q(er\))f(and)h Fr(fmax)24 b Fw(\(the)18 b(\\most)g(negativ)o(e")g(\015oating)g(p)q(oin)o(t)114 1012 y(n)o(um)o(b)q(er\);)48 1105 y(b\))23 b(add)15 b Fx(\015oating)p 374 1105 16 2 v 20 w(o)o(v)o(er\015o)o(w)e Fw(to)h(the)h(signature)g(of)f Fu(neg)1045 1112 y Fp(F)1090 1105 y Fw(\(b)q(ecause)h Fu(neg)1345 1112 y Fp(F)1389 1105 y Fw(ev)m(aluated)h(on)f(the)g(\\most)f(neg-)114 1161 y(ativ)o(e")g(n)o(um)o(b)q(er)i(will)h(o)o(v)o(er\015o)o(w\);)53 1254 y(c\))23 b(add)15 b Fx(\015oating)p 374 1254 V 20 w(o)o(v)o(er\015o)o(w) e Fw(to)i(the)g(signature)g(of)g Fu(abs)1042 1261 y Fp(F)1086 1254 y Fw(\(b)q(ecause)h Fu(abs)1337 1261 y Fp(F)1381 1254 y Fw(will)h(o)o(v)o(er\015o)o(w)c(when)j(ev)m(aluated)114 1311 y(on)f(the)g(\\most)f(negativ)o(e")h(n)o(um)o(b)q(er\);)48 1403 y(d\))23 b(p)q(erhaps)15 b(add)h Fx(under\015o)o(w)e Fw(to)h(the)g (signature)g(of)g Fu(neg)1065 1410 y Fp(F)1094 1403 y Fw(,)g(if)h Fv(\000)p Fr(fmin)1289 1410 y Fp(N)1338 1403 y Fw(is)f(omitted;)53 1496 y(e\))23 b(remo)o(v)o(e)15 b Fv(\000)p Fu(x)i Fw(from)f(the)h (de\014nitions)h(of)e Fu(sub)878 1503 y Fp(F)924 1496 y Fw(and)g Fu(tr)q(unc)1124 1503 y Fp(F)1154 1496 y Fw(,)g(and)h(rede\014ne)h(these)f (op)q(erations)f(and)h(also)114 1552 y Fu(r)q(ound)235 1559 y Fp(F)279 1552 y Fw(op)q(erations)e(to)g(ensure)h(that)e(ev)o(ery)h (\015oating)g(p)q(oin)o(t)h(n)o(um)o(b)q(er)f(b)q(eha)o(v)o(es)h(correctly;) 56 1645 y(f)t(\))22 b(rede\014ne)16 b(the)f Fu(pr)q(ed)451 1652 y Fp(F)495 1645 y Fw(and)g Fu(succ)670 1652 y Fp(F)715 1645 y Fw(op)q(erations)g(to)f(treat)h(the)g(\\most)f(negativ)o(e")h (\015oating)g(p)q(oin)o(t)h(n)o(um)o(b)q(er)114 1702 y(prop)q(erly)l(.)0 1821 y(Because)g(of)f(this)g(complexit)o(y)l(,)h(the)f(LIA-1)h(do)q(es)g(not) e(curren)o(tly)i(include)h(radix-complemen)o(t)g(\015oating)e(p)q(oin)o(t.)0 1905 y(Floating)h(p)q(oin)o(t)h(implemen)o(tations)h(with)e(sign-magnitude)i (or)e(\(radix)p Fv(\000)p Fw(1\)-complemen)o(t)h(fractions)f(can)g(map)0 1962 y(the)f(\015oating)g(p)q(oin)o(t)h(n)o(um)o(b)q(ers)g(directly)g(to)f (the)g(LIA-1)h(mo)q(del)g(without)f(these)h(adjustmen)o(ts.)0 2110 y Fx(A.5.2.0.4)50 b(In\014nit)o(y)18 b(and)g(NaNs)0 2224 y Fw(The)j(IEEE)g(standards)g(754)f([1)o(])h(and)g(854)f([21)o(])g(pro)o (vide)i(non-n)o(umeric)g(v)m(alues)g(to)e(represen)o(t)h Fr(in\014nity)f Fw(and)0 2280 y Fr(Not-a-Numb)n(er)p Fw(.)g Fr(In\014nity)13 b Fw(represen)o(ts)h(a)g(large)g(v)m(alue)h(b)q(ey)o(ond)g(measure,)f(either) h(as)e(an)h(exact)g(quan)o(tit)o(y)g(\(from)0 2337 y(dividing)22 b(a)d(\014nite)i(n)o(um)o(b)q(er)e(b)o(y)h(zero\))f(or)g(as)g(the)h(result)g (of)f(un)o(trapp)q(ed)h(o)o(v)o(er\015o)o(w.)32 b(A)19 b Fr(NaN)h Fw(represen)o(ts)f(an)0 2393 y(indeterminate,)d(and)g(hence)g(in)o(v)m(alid,) h(quan)o(tit)o(y)e(\(e.g.)k(from)14 b(dividing)k(zero)d(b)o(y)g(zero\).)0 2478 y(Most)h(non-IEEE)h(\015oating)g(p)q(oin)o(t)h(implemen)o(tations)g(do)f (not)f(pro)o(vide)i(in\014nit)o(y)g(or)e(NaNs.)25 b(Th)o(us,)17 b(programs)0 2534 y(that)d(mak)o(e)h(use)g(of)g(in\014nit)o(y)h(or)f(NaNs)g (will)h(not)f(b)q(e)h(p)q(ortable)f(to)g(systems)f(that)h(do)g(not)f(pro)o (vide)i(them.)k(Non-)0 2591 y(p)q(ortable)c(programs)e(are)h(not)g(in)h(the)f (scop)q(e)h(of)f(the)g(LIA-1.)21 b(Therefore,)15 b(the)g(LIA-1)h(mak)o(es)f (no)g(pro)o(vision)h(for)0 2647 y(in\014nit)o(y)h(or)f(NaNs.)21 b(The)16 b(b)q(eha)o(vior)h(of)e(op)q(erations)h(with)g(an)g(in\014nit)o(y)h (or)e(a)h(NaN)g(as)f(input)i(is)f(not)g(de\014ned)h(b)o(y)0 2704 y(the)e(LIA-1.)1905 2828 y(39)p eop %%Page: 40 48 bop -72 62 13 57 v -72 866 V 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y(The)e(handling)h(of)e (arithmetic)h(exceptions)h(b)o(y)e(testing)h(results)g(for)e(in\014nit)o(y)j (or)e(NaN)h(is)g(not)f(p)q(ortable.)20 b(There-)0 102 y(fore,)14 b(programmers)g(desiring)j(p)q(ortabilit)o(y)f(to)e(b)q(oth)i(IEEE)f(and)g (non-IEEE)h(systems)e(should)j(use)e(the)g(noti\014-)0 158 y(cation)g(metho)q(ds)h(describ)q(ed)h(in)f(clause)g(6.)0 305 y Fx(A.5.2.0.5)50 b(Signed)19 b(zero)0 419 y Fw(The)h(IEEE)f(standards)g (de\014ne)i(b)q(oth)e(+0)h(and)g Fv(\000)p Fw(0.)32 b(V)l(ery)20 b(few)f(non-IEEE)h(implemen)o(tations)h(pro)o(vide)f(the)0 476 y(user)d(with)g(t)o(w)o(o)e(\\di\013eren)o(t")i(zeros.)24 b(Ev)o(en)17 b(in)h(an)e(IEEE)h(implemen)o(tation,)h(the)f(t)o(w)o(o)f(enco)q (dings)i(of)e(zero)h(can)0 532 y(only)i(b)q(e)h(distinguished)h(with)e(op)q (erations)g(that)f(are)g(not)g(pro)o(vided)i(in)f(the)g(LIA-1,)h(e.g.)30 b(use)19 b(of)f(the)h(IEEE)0 589 y Fr(c)n(opysign)c Fw(function,)h(dividing)j (b)o(y)c(zero)h(to)g(obtain)g(signed)g(in\014nit)o(y)l(,)i(or)d(\(p)q (ossibly\))i(con)o(v)o(erting)f(to)f(a)g(decimal)0 645 y(string.)24 b(Programs)15 b(that)h(assume)g(+0)h(and)g Fv(\000)p Fw(0)f(are)g(distinct)i (will)g(not)f(b)q(e)g(p)q(ortable)g(to)f(non-IEEE)h(systems.)0 702 y(Therefore,)e(the)g(LIA-1)h(mak)o(es)f(no)g(distinction)i(b)q(et)o(w)o (een)e(+0)g(and)h Fv(\000)p Fw(0.)0 849 y Fx(A.5.2.1)51 b(Range)18 b(and)g(gran)o(ularit)o(y)f(constan)o(ts)0 963 y Fw(The)h(p)q(ositiv)o(e)g (real)f(n)o(um)o(b)q(ers)h Fr(fmax)6 b Fw(,)17 b Fr(fmin)s Fw(,)h(and)f Fr(fmin)978 970 y Fp(N)1029 963 y Fw(are)f(in)o(teresting)i(b)q (oundaries)h(in)f(the)f(set)g Fu(F)6 b Fw(.)27 b Fr(fmax)0 1019 y Fw(is)21 b(the)f(\\o)o(v)o(er\015o)o(w)f(threshold".)35 b(It)20 b(is)h(the)f(largest)g(v)m(alue)h(in)g(b)q(oth)f Fu(F)27 b Fw(and)20 b Fu(F)1404 1026 y Fp(N)1438 1019 y Fw(.)35 b Fr(fmin)23 b Fw(is)e(the)f(\\under\015o)o(w)0 1076 y(threshold".)i(It)15 b(is)h(the)g(v)m(alue)h(of)e(smallest)h(magnitude)h(in)f Fu(F)6 b Fw(.)22 b Fr(fmin)1199 1083 y Fp(N)1248 1076 y Fw(is)17 b(the)e (\\denormalization)i(threshold".)0 1132 y(It)d(is)h(the)g(smallest)g (normalized)g(v)m(alue)h(in)f Fu(F)6 b Fw(:)20 b(the)14 b(p)q(oin)o(t)h (where)g(the)f(n)o(um)o(b)q(er)h(of)f(signi\014can)o(t)h(digits)g(b)q(egins)h (to)0 1189 y(decrease.)k(Finally)l(,)d Fr(fmin)450 1196 y Fp(D)498 1189 y Fw(is)e(the)h(smallest)f(denormalized)i(v)m(alue,)f(represen)o(table)g (only)g(if)g Fu(denor)q(m)f Fw(is)g Fx(true)p Fw(.)0 1273 y(This)20 b(standard)g(requires)g(that)f(the)h(v)m(alues)h(of)e Fr(fmax)6 b Fw(,)21 b Fr(fmin)s Fw(,)f(and)g Fr(fmin)1305 1280 y Fp(N)1358 1273 y Fw(b)q(e)g(accessible)i(to)d(an)h(executing)0 1330 y(program.)e(All)d (non-zero)e(\015oating)h(p)q(oin)o(t)f(v)m(alues)i(fall)f(in)g(the)g(range)f Fv(\006)p Fw([)p Fr(fmin)s Fu(;)8 b Fr(fmax)d Fw(],)13 b(and)g(v)m(alues)i (in)f(the)f(range)0 1386 y Fv(\006)p Fw([)p Fr(fmin)138 1393 y Fp(N)171 1386 y Fu(;)8 b Fr(fmax)d Fw(])15 b(can)g(b)q(e)h(represen)o(ted)g (with)f(full)i(precision.)0 1471 y(The)e(deriv)o(ed)h(constan)o(t)d Fr(fmin)524 1478 y Fp(D)571 1471 y Fw(need)i(not)g(b)q(e)g(giv)o(en)g(as)f(a) h(run-time)g(parameter.)k(On)c(an)g(implemen)o(tation)h(in)0 1527 y(whic)o(h)d(denormalized)h(n)o(um)o(b)q(ers)f(are)f(pro)o(vided)h(and)g (enabled,)h(the)e(v)m(alue)i(of)e Fr(fmin)1431 1534 y Fp(D)1476 1527 y Fw(is)h Fr(fmin)s Fw(.)19 b(If)12 b(denormalized)0 1584 y(n)o(um)o(b)q(ers)j(are)g(not)g(presen)o(t,)g(the)g(constan)o(t)g Fr(fmin)862 1591 y Fp(D)909 1584 y Fw(is)h(not)f(represen)o(table,)g(and)h Fr(fmin)g Fw(=)d Fr(fmin)1658 1591 y Fp(N)1692 1584 y Fw(.)0 1669 y(The)i(deriv)o(ed)i(constan)o(t)d Fu(epsil)q(on)h Fw(m)o(ust)g(also)g (b)q(e)h(accessible)h(to)d(an)h(executing)i(program:)114 1785 y Fu(epsil)q(on)12 b Fw(=)h Fu(r)341 1769 y Fn(1)p Fm(\000)p Fp(p)0 1902 y Fw(It)f(is)g(de\014ned)h(as)f(ratio)f(of)g(the)h(w)o(eigh)o(t)g (of)f(the)h(least)g(signi\014can)o(t)h(digit)f(of)g(the)g(fraction)f Fu(g)r Fw(,)h Fu(r)1563 1886 y Fm(\000)p Fp(p)1610 1902 y Fw(,)g(to)f(the)h (minim)o(um)0 1959 y(v)m(alue)17 b(of)e Fu(g)r Fw(,)f(1)p Fu(=r)q Fw(.)20 b(So)15 b Fu(epsil)q(on)h Fw(can)f(b)q(e)h(describ)q(ed)i(as)d(the)g (largest)h(relativ)o(e)g(represen)o(tation)f(error)g(for)g(the)g(set)0 2015 y(of)g(normalized)h(v)m(alues)h(in)f Fu(F)502 2022 y Fp(N)535 2015 y Fw(.)0 2100 y(An)g(alternate)g(de\014nition)i(of)d Fu(epsil)q(on)h Fw(curren)o(tly)g(in)h(use)f(is)h(the)f(smallest)g(\015oating)g(p)q(oin)o(t)g (n)o(um)o(b)q(er)g(suc)o(h)h(that)0 2156 y(1)7 b(+)g Fu(epsil)q(on)12 b Fv(6)p Fw(=)h(1.)19 b(This)14 b(de\014nition)h(is)f(\015a)o(w)o(ed,)f(b)q (ecause)i(it)f(dep)q(ends)h(on)e(the)h(c)o(haracteristics)f(of)h(the)f (rounding)0 2213 y(function.)22 b(F)l(or)15 b(example,)h(on)g(an)f(IEEE)h (implemen)o(tation)h(with)f(round-to-p)q(ositiv)o(e-in\014nit)o(y)l(,)i Fu(epsil)q(on)e Fw(w)o(ould)0 2269 y(b)q(e)g Fr(fmin)151 2276 y Fp(D)183 2269 y Fw(.)0 2416 y Fx(A.5.2.2)51 b(Op)q(erations)0 2530 y Fw(This)16 b(clause)g(describ)q(es)h(the)e(\015oating)g(p)q(oin)o(t)h (op)q(erations)f(de\014ned)i(b)o(y)e(the)g(standard.)51 2647 y(a\))22 b(The)16 b(op)q(erations)h Fu(add)503 2654 y Fp(F)531 2647 y Fw(,)g Fu(sub)628 2654 y Fp(F)657 2647 y Fw(,)f Fu(mul)766 2654 y Fp(F)811 2647 y Fw(and)h Fu(div)963 2654 y Fp(F)1008 2647 y Fw(carry)e(out)h(the)h(usual)g(basic)g(arithmetic)g(op)q(erations)114 2704 y(of)d(addition,)i(subtraction,)f(m)o(ultiplication)j(and)d(division.)0 2828 y(40)p eop %%Page: 41 49 bop -72 269 13 113 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)48 45 y Fw(b\))23 b(The)16 b(op)q(erations)g Fu(neg)500 52 y Fp(F)545 45 y Fw(and)g Fu(abs)699 52 y Fp(F)744 45 y Fw(pro)q(duce)h(the)f(negativ)o(e)g(and)g(absolute)g(v)m (alue,)h(resp)q(ectiv)o(ely)l(,)g(of)f(the)114 102 y(input)g(argumen)o(t.)j (They)c(nev)o(er)h(o)o(v)o(er\015o)o(w)e(or)g(under\015o)o(w.)53 195 y(c\))23 b(The)11 b(op)q(eration)h Fu(sig)r(n)491 202 y Fp(F)531 195 y Fw(returns)f(a)g(\015oating)g(p)q(oin)o(t)h(+1,)g(0,)f(or)g Fv(\000)p Fw(1,)h(dep)q(ending)h(on)f(whether)f(its)h(argumen)o(t)114 252 y(is)j(p)q(ositiv)o(e,)h(zero,)f(or)g(negativ)o(e.)48 346 y(d\))23 b(The)18 b(op)q(eration)g Fu(exponent)599 353 y Fp(F)648 346 y Fw(giv)o(es)g(the)g(exp)q(onen)o(t)h(of)e(the)h(\015oating)g(p)q(oin)o (t)h(n)o(um)o(b)q(er)f(in)h(the)f(mo)q(del)h(as)114 402 y(presen)o(ted)e(in)h (the)e(LIA-1,)i(as)f(though)f(the)h(range)g(of)f(exp)q(onen)o(t)h(v)m(alues)h (w)o(as)e(un)o(b)q(ounded.)27 b(The)17 b(v)m(alue)114 459 y(of)d Fu(exponent)348 466 y Fp(F)393 459 y Fw(can)h(also)f(b)q(e)i(though)o(t)e(of) g(as)g(the)h(\\order)f(of)g(magnitude")h(of)g(its)f(argumen)o(t,)g(i.e.,)g (if)i Fu(n)e Fw(is)114 515 y(an)h(in)o(teger)g(suc)o(h)h(that)e Fu(r)550 499 y Fp(n)p Fm(\000)p Fn(1)631 515 y Fv(\024)f Fu(x)g(<)g(r)788 499 y Fp(n)811 515 y Fw(,)i(then)g Fu(exponent)1125 522 y Fp(F)1156 515 y Fw(\()p Fu(x)p Fw(\))d(=)h Fu(n)p Fw(.)20 b Fu(E)s(xponent)1537 522 y Fp(F)1566 515 y Fw(\(0\))15 b(is)g(unde\014ned.)53 609 y(e\))23 b(The)12 b(op)q(eration)g Fr(fr)n(action)561 620 y Fp(F)602 609 y Fw(scales)h(its)f(argumen)o(t)f(\(b)o(y)h(a)g(p)q(o)o(w)o(er)g (of)f Fu(r)q Fw(\))h(un)o(til)h(it)f(is)h(in)g(the)f(range)g Fv(\006)p Fw([1)p Fu(=r)o(;)c Fw(1\).)114 665 y(Th)o(us,)14 b(for)h Fu(x)e Fv(6)p Fw(=)g(0,)214 759 y Fu(x)f Fw(=)h Fr(fr)n(action)456 770 y Fp(F)486 759 y Fw(\()p Fu(x)p Fw(\))c Fv(\003)h Fu(r)612 743 y Fp(exponent)754 749 y Fi(F)780 743 y Fn(\()p Fp(x)p Fn(\))56 853 y Fw(f)t(\))22 b(The)15 b(op)q(eration)g Fu(scal)q(e)511 860 y Fp(F)556 853 y Fw(scales)g(a)g(\015oating)g(p)q(oin)o(t)h(n)o(um)o(b)q (er)g(b)o(y)f(an)g(in)o(teger)g(p)q(o)o(w)o(er)g(of)g(the)g(radix.)51 947 y(g\))22 b(The)17 b(op)q(eration)g Fu(succ)501 954 y Fp(F)547 947 y Fw(returns)f(the)h(closest)h(elemen)o(t)f(of)g Fu(F)23 b Fw(greater)16 b(than)h(the)g(argumen)o(t,)f(the)h(\\suc-)114 1003 y(cessor")d(of)h(the)g(argumen)o(t.)48 1097 y(h\))23 b(The)15 b(op)q(eration)h Fu(pr)q(ed)501 1104 y Fp(F)545 1097 y Fw(returns)f(the)h (closest)f(elemen)o(t)i(of)e Fu(F)21 b Fw(less)16 b(than)g(the)f(argumen)o (t,)f(its)i(\\predeces-)114 1153 y(sor".)114 1229 y(T)l(ogether,)11 b(the)h Fu(succ)476 1236 y Fp(F)516 1229 y Fw(and)g Fu(pr)q(ed)691 1236 y Fp(F)731 1229 y Fw(op)q(erations)f(corresp)q(ond)h(to)f(the)h(IEEE)f (754)g(recommended)h(function)114 1285 y Fr(nextafter)p Fw(.)19 b(These)c(op)q(erations)f(are)g(useful)i(for)d(generating)i(adjacen)o(t)f (\015oating)g(p)q(oin)o(t)h(n)o(um)o(b)q(ers,)f(e.g.)19 b(in)114 1341 y(order)c(to)f(test)h(an)g(algorithm)g(in)h(the)f(neigh)o(b)q(orho)q(o)q (d)i(of)e(a)g(\\sensitiv)o(e")g(p)q(oin)o(t.)61 1435 y(i\))23 b(The)14 b(op)q(eration)g Fu(ul)q(p)472 1442 y Fp(F)514 1435 y Fw(giv)o(es)h(the)f(v)m(alue)h(of)e(one)h(unit)h(in)g(the)f(last)f(place,)i (i.e.,)f(its)g(v)m(alue)h(is)g(the)f(w)o(eigh)o(t)f(of)114 1492 y(the)g(least)h(signi\014can)o(t)g(digit)g(of)f(a)h(non-zero)f(argumen)o (t.)19 b(The)13 b(op)q(eration)h(is)g(unde\014ned)h(if)f(the)g(argumen)o(t) 114 1548 y(is)h(zero.)59 1642 y(j\))23 b(The)18 b(op)q(eration)g Fu(tr)q(unc)527 1649 y Fp(F)575 1642 y Fw(zeros)g(out)g(the)g(lo)o(w)g(\()p Fu(p)11 b Fv(\000)i Fu(n)p Fw(\))18 b(digits)h(of)e(the)i(\014rst)e(argumen)o (t.)28 b(When)19 b Fu(n)e Fv(\024)h Fw(0)114 1698 y(then)d(0)g(is)h (returned;)f(and)g(when)h Fu(n)d Fv(\025)g Fu(p)i Fw(the)g(argumen)o(t)g(is)g (returned.)49 1792 y(k\))23 b(The)15 b(op)q(eration)h Fu(r)q(ound)532 1799 y Fp(F)576 1792 y Fw(rounds)f(the)h(\014rst)f(argumen)o(t)f(to)h Fu(n)g Fw(signi\014can)o(t)i(digits.)k(That)14 b(is,)i(the)f(nearest)114 1849 y(n-digit)g(\015oating)e(p)q(oin)o(t)h(v)m(alue)h(is)f(returned.)20 b(V)l(alues)15 b(exactly)f(half-w)o(a)o(y)f(b)q(et)o(w)o(een)h(t)o(w)o(o)e (adjacen)o(t)i Fu(n)p Fw(-digit)114 1905 y(\015oating)i(p)q(oin)o(t)h(n)o(um) o(b)q(ers)g(round)f(a)o(w)o(a)o(y)f(from)h(zero.)23 b Fu(Round)1191 1912 y Fp(F)1237 1905 y Fw(di\013ers)17 b(from)e Fu(tr)q(unc)1593 1912 y Fp(F)1639 1905 y Fw(b)o(y)i(at)e(most)h(1)g(in)114 1962 y(the)d Fu(n)p Fw(-th)h(digit.)20 b(Note)13 b(that)g Fu(r)q(ound)738 1969 y Fp(F)780 1962 y Fw(is)h(distinct)h(from)e(the)g(function)i Fu(r)q(nd)1419 1969 y Fp(F)1448 1962 y Fw(.)k Fu(Round)1614 1969 y Fp(F)1657 1962 y Fw(is)13 b(not)h(in)o(tended)114 2018 y(to)g(pro)o(vide)i(access)f(to)g(mac)o(hine)h(rounding.)114 2093 y(The)11 b Fu(tr)q(unc)314 2100 y Fp(F)355 2093 y Fw(and)h Fu(r)q(ound)561 2100 y Fp(F)601 2093 y Fw(op)q(erations)g(can)f(b)q(e)i(used) f(to)e(split)j(a)e(\015oating)g(p)q(oin)o(t)h(n)o(um)o(b)q(er)g(in)o(to)f(a)h (n)o(um)o(b)q(er)114 2150 y(of)g(\\shorter")f(parts)h(in)h(order)f(to)g(exp)q (edite)i(the)f(sim)o(ulation)g(of)f(m)o(ultiple)i(precision)g(op)q(erations)f (without)114 2206 y(use)i(of)g(op)q(erations)g(at)g(a)g(higher)h(lev)o(el)g (of)f(precision.)61 2300 y(l\))23 b(The)16 b(op)q(eration)h Fu(intpar)q(t)557 2307 y Fp(F)603 2300 y Fw(isolates)g(the)g(in)o(teger)g (part)f(of)g(the)g(argumen)o(t,)g(and)h(returns)f(this)h(result)g(in)114 2356 y(\015oating)e(p)q(oin)o(t)g(form.)35 2450 y(m\))23 b(The)15 b(op)q(eration)h Fr(fr)n(actp)n(art)583 2461 y Fp(F)628 2450 y Fw(returns)f(the)h(v)m(alue)g(of)f(the)g(argumen)o(t)g(min)o(us)h(its)f(in) o(teger)h(part)f(\(obtained)114 2507 y(b)o(y)g Fu(intpar)q(t)321 2514 y Fp(F)351 2507 y Fw(\).)48 2601 y(n\))23 b(The)12 b(Bo)q(olean)h(op)q (erations)g(are)f(atomic)g(op)q(erations)h(whic)o(h)g(nev)o(er)f(pro)q(duce)i (a)e(noti\014cation,)h(and)g(alw)o(a)o(ys)114 2657 y(return)i Fx(true)g Fw(or)f Fx(false)i Fw(in)g(accordance)g(with)f(the)g(exact)g (mathematical)h(result.)1905 2828 y(41)p eop %%Page: 42 50 bop -72 401 13 57 v -72 1932 13 1327 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y(An)i(implemen)o(tation)h(can)f(easily)h(pro)o(vide)g(an)o (y)e(of)h(these)g(op)q(erations)g(in)g(soft)o(w)o(are.)27 b(See)18 b([38)o(])g(for)f(a)g(sample)0 102 y(p)q(ortable)g(implemen)o(tation)i(in)e (P)o(ascal.)25 b(Ho)o(w)o(ev)o(er,)16 b(p)q(ortable)h(v)o(ersions)g(of)g (these)g(op)q(erations)g(will)h(not)f(b)q(e)g(as)0 158 y(e\016cien)o(t)f(as)f (those)g(whic)o(h)h(an)f(implemen)o(tation)h(pro)o(vides)g(and)f(\\tunes")g (to)g(the)g(arc)o(hitecture.)0 243 y(Standardizing)k(functions)g(suc)o(h)g (as)e Fu(exponent)839 250 y Fp(F)888 243 y Fw(and)h Fu(ul)q(p)1043 250 y Fp(F)1090 243 y Fw(helps)h(shield)h(programs)d(from)g(explicit)j(dep)q (en-)0 299 y(dence)c(on)f(the)h(underlying)h(format.)0 384 y(The)d(requiremen)o(t)g(that)f Fu(J)18 b Fw(con)o(tains)c(all)h(the)f(in)o (teger)g(v)m(alues)g(in)h(the)f(range)f Fv(\006)p Fw(\()p Fu(emax)7 b Fv(\000)g Fu(emin)g Fw(+)g Fu(p)g Fv(\000)g Fw(1\))15 b(means)0 440 y(that)e(the)h(in)o(teger)g(argumen)o(t)f(to)h(the)g(function)g Fu(scal)q(e)934 447 y Fp(F)977 440 y Fw(is)g(in)h(range)f(whenev)o(er)g (scaling)h(b)q(et)o(w)o(een)f(v)m(alues)h(in)g Fu(F)6 b Fw(.)0 497 y(This)16 b(is)f(a)g(reasonably)h(w)o(eak)e(condition)j(whic)o(h)f(most)e (arithmetic)i(systems)f(easily)h(satisfy)l(.)0 645 y Fx(A.5.2.3)51 b(Appro)o(ximate)16 b(op)q(erations)0 759 y Fw(Let's)f(apply)h(the)f(three)h (stage)e(mo)q(del)i(to)f(m)o(ultiplication)i(\()p Fu(mul)1128 766 y Fp(F)1157 759 y Fw(\()p Fu(x;)8 b(y)r Fw(\)\):)51 881 y(a\))22 b(First,)14 b(compute)h(the)h(p)q(erfect)f(result,)h Fu(x)10 b Fv(\003)g Fu(y)r Fw(,)k(as)h(an)g(elemen)o(t)h(of)f Fv(R)p Fw(.)48 975 y(b\))23 b(Second,)15 b(mo)q(dify)h(this)g(to)e(form)h(a)g (rounded)g(result,)h Fu(r)q(nd)1112 982 y Fp(F)1141 975 y Fw(\()p Fu(x)10 b Fv(\003)f Fu(y)r Fw(\),)15 b(as)g(an)g(elemen)o(t)h(of)e Fu(F)1670 958 y Fm(\003)1691 975 y Fw(.)53 1069 y(c\))23 b(Finally)l(,)16 b(decide)h(whether)e(to)g(accept)g(the)h(rounded)g(result)f(or)g(to)f(cause)i (a)f(noti\014cation.)0 1191 y(Putting)g(this)h(all)g(together,)e(w)o(e)h(get) g(the)g(de\014ning)i(axiom)e(for)f(m)o(ultiplication:)114 1313 y Fu(mul)194 1320 y Fp(F)222 1313 y Fw(\()p Fu(x;)8 b(y)r Fw(\))k(=)g Fu(r)q(esul)q(t)509 1320 y Fp(F)539 1313 y Fw(\()p Fu(x)e Fv(\003)g Fu(y)r(;)22 b(r)q(nd)758 1320 y Fp(F)787 1313 y Fw(\))0 1435 y(\(F)l(or)14 b(tec)o(hnical)j(reasons,)d(the)i Fu(r)q(esul)q(t)662 1442 y Fp(F)706 1435 y Fw(function)g(is)g(de\014ned)g(to)f(compute)g Fu(r)q(nd)1399 1442 y Fp(F)1428 1435 y Fw(\()p Fu(x)10 b Fv(\003)g Fu(y)r Fw(\))15 b(in)o(ternally)l(.\))0 1520 y(Note)h(that)g(in)i(realit)o(y) l(,)f(step)g(\(a\))e(only)j(needs)f(to)f(compute)h(enough)g(of)f Fu(x)11 b Fv(\003)g Fu(y)19 b Fw(to)d(b)q(e)h(able)h(to)e(complete)h(steps)0 1576 y(\(b\))e(and)g(\(c\),)f(i.e.,)h(to)g(pro)q(duce)h(a)f(rounded)h(result) f(and)h(to)e(decide)j(on)e(o)o(v)o(er\015o)o(w)f(and)i(under\015o)o(w.)0 1661 y(The)d(help)q(er)h(functions)f Fu(r)q(nd)492 1668 y Fp(F)521 1661 y Fw(,)f Fu(r)q(esul)q(t)667 1668 y Fp(F)697 1661 y Fw(,)g(and)h Fu(add)880 1644 y Fm(\003)880 1674 y Fp(F)921 1661 y Fw(are)f(the)g(same)g (for)g(all)h(the)g(op)q(erations)f(of)g(a)g(giv)o(en)h(\015oating)0 1717 y(p)q(oin)o(t)j(t)o(yp)q(e.)k(Similarly)l(,)d(the)e(constan)o(ts)f Fu(r)q(nd)p 796 1717 14 2 v 16 w(er)q(r)q(or)i Fw(and)f Fu(r)q(nd)p 1097 1717 V 17 w(sty)r(l)q(e)g Fw(do)g(not)g(di\013er)g(b)q(et)o(w)o(een)h (op)q(erations.)0 1802 y(The)21 b(help)q(er)h(functions)g(are)e(not)g (visible)j(to)d(the)h(programmer,)f(but)h(they)g(are)f(included)k(in)d(the)g (required)0 1858 y(do)q(cumen)o(tation)d(of)f(the)h(t)o(yp)q(e.)27 b(This)18 b(is)g(b)q(ecause)h(these)f(functions)g(form)f(the)h(most)f (concise)h(description)h(of)0 1915 y(the)c(seman)o(tics)h(of)e(the)i(appro)o (ximate)e(op)q(erations.)0 2063 y Fx(A.5.2.4)51 b(Appro)o(ximate)16 b(addition)0 2177 y Fw(The)g(de\014nition)h(of)e(\015oating)g(p)q(oin)o(t)h (addition)g(and)f(subtraction)h(giv)o(en)g(in)g(the)f(LIA-1)h(is)g(more)f (complex)h(than)0 2234 y(for)d(an)o(y)h(other)f(arithmetic)i(op)q(eration.)k (This)c(is)f(b)q(ecause)h(some)f(highly-optimized)i(mac)o(hines)f(mo)q(dify)f (one)g(or)0 2290 y(b)q(oth)h(op)q(erands)h Fr(b)n(efor)n(e)e Fw(computing)i(the)f(sum.)0 2375 y(The)k(t)o(ypical)g(addition/subtraction)g (implemen)o(tation)h(describ)q(ed)g(b)q(elo)o(w)f(sho)o(ws)e(the)i(in)o (teraction)g(b)q(et)o(w)o(een)0 2431 y(alignmen)o(t,)c(negation,)g(and)h (guard)f(digits.)0 2516 y(Floating)g(p)q(oin)o(t)g(additions)h(and)f (subtractions)f(form)g(t)o(w)o(o)g(cases,)g(dep)q(ending)j(on)e(the)g(signs)g (of)f(the)h(op)q(erands:)0 2572 y(implied)j(additions)e(\(addition)g(of)f(op) q(erands)h(of)f(the)g(same)g(sign)h(or)f(subtraction)g(of)g(op)q(erands)h (with)g(di\013eren)o(t)0 2629 y(signs\))e(and)g(implied)i(subtractions)e (\(addition)h(with)f(opp)q(osite)g(signs,)h(subtraction)f(with)g(lik)o(e)h (signs\).)k(In)c(b)q(oth)0 2685 y(implied)h(addition)f(and)f(subtraction,)g (the)f(radix)i(p)q(oin)o(ts)f(of)f(the)h(op)q(erands)g(are)f(aligned)j(b)o(y) d(righ)o(t-shifting)i(the)0 2828 y(42)p eop %%Page: 43 51 bop -72 768 13 593 v -72 2498 13 1533 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y Fw(smaller)f(op)q(erand's)g(fraction.)25 b(In)17 b(an)g(implied)i (subtraction,)e(the)f(smaller)i(op)q(erand)f(m)o(ust)f(also)h(b)q(e)g (negated,)0 102 y(but)c(there)f(is)h(a)f(p)q(erformance)g(cost)g(asso)q (ciated)h(with)g(negating)f(b)q(efore)h(the)f(alignmen)o(t)h(shift.)19 b(T)l(o)13 b(negate)f(after)0 158 y(alignmen)o(t,)j(enough)g(guard)f(digits)h (m)o(ust)f(b)q(e)h(main)o(tained)g(at)f(the)g(righ)o(t)h(to)e(propagate)h (the)g(b)q(orro)o(w)g(correctly)0 214 y(ev)o(en)i(if)f(digits)h(w)o(ere)f (lost)g(in)h(the)g(alignmen)o(t)f(shift.)0 299 y(If)e(the)g(design)h(goal)f (is)g(merely)h(1-ulp)g(accuracy)l(,)f(then)g(a)g(single)h(guard)f(digit)h(is) f(su\016cien)o(t.)20 b(This)14 b(is)f(for)g(implied)0 356 y(subtraction)i({)g (implied)j(addition)e(do)q(esn't)f(need)h(it.)0 440 y(If)k(round)g(to)o(w)o (ard)f(zero)g(is)i(desired,)h(implied)g(subtraction)e(requires)h(a)e(single)i (guard)f(digit)h Fr(plus)f Fw(a)f(\\stic)o(ky)0 497 y(bit")d(\(whic)o(h)h (records)e(whether)i(an)o(y)e(information)h(w)o(as)f(lost)h(during)h (alignmen)o(t\).)22 b(Again,)17 b(implied)h(addition)0 553 y(do)q(esn't)d(need)h(these.)0 638 y(Finally)l(,)d(if)f(round)g(to)e(nearest) h(is)h(desired)g(\(either)g(v)o(ersion\),)f(b)q(oth)h(implied)h(addition)g (and)e(implied)j(subtraction)0 694 y(need)j(an)e(additional)j(\\rounding)e (bit".)22 b(This)17 b(bit)f(records)g(the)g(size)g(of)g(the)g(next)g(lo)o(w)o (er)f(guard)h(digit)g(relativ)o(e)0 751 y(to)f Fu(r)q(=)p Fw(2.)0 835 y(High-p)q(erformance)h(implemen)o(tations)g(frequen)o(tly)f(omit)f(b)q (oth)h(the)g(rounding)h(bit)f(and)g(the)f(stic)o(ky)h(bit.)20 b(This)0 892 y(increases)11 b(the)g(execution)h(sp)q(eed)f(and)g (simpli\014es)i(the)d(hardw)o(are)g(design.)20 b(Ho)o(w)o(ev)o(er,)10 b(the)g(smaller)i(op)q(erand)f(ma)o(y)0 948 y(ha)o(v)o(e)g(lost)g(some)h (precision)h(during)f(the)f(alignmen)o(t)i(and)e(negation.)19 b(This)12 b(sligh)o(t)g(loss)g(of)f(precision)i(can)e(b)q(ecome)0 1005 y(visible)18 b(to)d(the)h(programmer)e(when)i(the)g(computed)g(result)h (unexp)q(ectedly)h(rounds)e(to)f(the)g(other)h(one)g(of)f(the)0 1061 y(t)o(w)o(o)f(elemen)o(ts)i(of)f Fu(F)21 b Fw(most)15 b(closely)h(brac)o(k)o(eting)g(the)f(true)g(result.)21 b(In)15 b(fact,)g(in)h(suc)o(h)f(an)h(implemen)o(tation,)g(the)0 1118 y(computed)f(result)h(cannot)e(b)q(e)i(predicted)g(from)e(the)h(true)g(sum)g (alone,)g(but)g(dep)q(ends)h(on)f(the)g(exact)g(op)q(erands)0 1174 y(giv)o(en.)0 1259 y(The)d(LIA-1)h(in)o(tro)q(duces)g(a)f(help)q(er)h (function)g Fu(add)852 1242 y Fm(\003)852 1272 y Fp(F)893 1259 y Fw(to)f(mo)q(del)g(suc)o(h)h(p)q(erformance)f(optimizations.)20 b Fu(Add)1816 1242 y Fm(\003)1816 1272 y Fp(F)1845 1259 y Fw(\()p Fu(x;)8 b(y)r Fw(\))0 1315 y(is)21 b(an)g(appro)o(ximate)g(sum)g(of)g Fu(x)f Fw(and)i Fu(y)r Fw(.)37 b(It)21 b(represen)o(ts)g(an)g(in)o (termediate)g(stage)g(in)g(the)g(computation)g(of)0 1372 y Fu(add)72 1379 y Fp(F)101 1372 y Fw(\()p Fu(x;)8 b(y)r Fw(\))k({)i(one)g (whic)o(h)h(o)q(ccurs)f Fr(after)h Fu(x)f Fw(and)g Fu(y)i Fw(ha)o(v)o(e)d(b)q (een)j(com)o(bined)f(in)o(to)f(a)f(single)j(v)m(alue,)f(but)f(\(p)q (ossibly\))0 1428 y Fr(b)n(efor)n(e)h Fw(all)h(rounding)g(steps)f(ha)o(v)o(e) g(b)q(een)h(completed.)0 1513 y(Th)o(us,)f(the)g(de\014ning)i(axiom)e(for)f (addition)j(will)g(b)q(e)114 1635 y Fu(add)186 1642 y Fp(F)242 1635 y Fw(=)c Fu(r)q(esul)q(t)411 1642 y Fp(F)440 1635 y Fw(\()p Fu(add)530 1618 y Fm(\003)530 1648 y Fp(F)559 1635 y Fw(\()p Fu(x;)8 b(y)r Fw(\))p Fu(;)21 b(r)q(nd)773 1642 y Fp(F)802 1635 y Fw(\))569 b(\(correct)14 b(axiom\))0 1757 y(rather)h(than)114 1879 y Fu(add)186 1886 y Fp(F)242 1879 y Fw(=)e Fu(r)q(esul)q(t)411 1886 y Fp(F)440 1879 y Fw(\()p Fu(x)d Fw(+)h Fu(y)r(;)22 b(r)q(nd)672 1886 y Fp(F)701 1879 y Fw(\))670 b(\(incorrect)15 b(axiom\))0 2001 y(The)22 b(ideal)i(de\014nition)g(of)d Fu(add)555 1985 y Fm(\003)555 2014 y Fp(F)584 2001 y Fw(\()p Fu(x;)8 b(y)r Fw(\))21 b(is)h Fu(x)15 b Fw(+)g Fu(y)r Fw(.)41 b(Ho)o(w)o(ev)o(er,)22 b(as)g(noted)g(ab)q(o)o(v)o(e,)h(some)f(high-p)q(erformance)0 2058 y(implemen)o(tations)16 b(of)f(addition)h(are)f(less)h(than)f(ideal.)0 2142 y Fu(Add)82 2126 y Fm(\003)82 2155 y Fp(F)126 2142 y Fw(is)g (constrained)h(b)o(y)f(\014v)o(e)g(axioms.)20 b(These)15 b(are)g(designed)i (to)d(ensure)i(that)e Fu(add)1490 2126 y Fm(\003)1490 2155 y Fp(F)1519 2142 y Fw(\()p Fu(x;)8 b(y)r Fw(\))13 b(b)q(eha)o(v)o(es)j (enough)0 2199 y(lik)o(e)k Fu(x)12 b Fw(+)g Fu(y)21 b Fw(so)d(that)f(the)i (\014nal)g(computed)g(sum)f Fu(add)945 2206 y Fp(F)974 2199 y Fw(\()p Fu(x;)8 b(y)r Fw(\))17 b(will)j(satisfy)e(a)g(reasonable)h(set)f (of)g(iden)o(tities)i({)0 2255 y(iden)o(tities)15 b(that)d(most)g(real)h(mac) o(hines)g(actually)h(satisfy)l(.)19 b(These)13 b(axioms)g(guaran)o(tee)f (that)g(the)h(appro)o(ximation)0 2312 y(pro)q(cess)f(do)q(es)h(not)e(force)h (the)g(result)h(to)q(o)e(far)h(from)f(the)h(mathematical)h(result,)f(do)q(es) h(not)e(dep)q(end)j(on)e(the)g(order)0 2368 y(of)k(op)q(erands,)h(is)g (monotonic)g(non-decreasing)h(in)f(eac)o(h)g(op)q(erand)g(indep)q(enden)o (tly)l(,)j(and)d(b)q(eha)o(v)o(es)g(w)o(ell)g(under)0 2425 y(c)o(hange)f(of)g(sign.)23 b(In)16 b(general,)h Fu(add)618 2408 y Fm(\003)618 2437 y Fp(F)662 2425 y Fw(will)h(dep)q(end)g(on)e(the)g (alignmen)o(t)h(shift)f(\(the)g(di\013erence)h(in)g(exp)q(onen)o(ts\),)0 2481 y(but)e(not)g(on)g(the)h(magnitude)f(of)g(the)g(exp)q(onen)o(ts.)1905 2828 y(43)p eop %%Page: 44 52 bop -72 1380 13 57 v -72 2037 13 170 v -72 2356 13 113 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y Fx(A.5.2.5)51 b(Rounding)0 159 y Fw(Floating)16 b(p)q(oin)o(t)g(op)q(erations)g(are)f(rarely)h(exact.)21 b(The)15 b(true)h(mathematical)g(result)g(seldom)g(lies)h(in)f Fu(F)6 b Fw(,)16 b(so)g(this)0 216 y(result)21 b(m)o(ust)g(b)q(e)g(rounded)h (to)e(a)g(nearb)o(y)h(v)m(alue)h(that)e(do)q(es)h(lie)i(in)e Fu(F)6 b Fw(.)37 b(F)l(or)21 b(con)o(v)o(enience,)i(this)e(pro)q(cess)g(is)0 272 y(describ)q(ed)d(in)e(three)g(steps:)21 b(\014rst)15 b(the)h(exact)g(v)m (alue)h(is)f(computed,)g(then)g(the)g(exact)f(v)m(alue)i(is)f(rounded)h(to)e (the)0 329 y(appropriate)g(precision,)i(\014nally)f(a)f(determination)h(is)g (made)f(ab)q(out)g(o)o(v)o(er\015o)o(w)f(or)h(under\015o)o(w.)0 413 y(The)f(rounding)h(rule)f(is)h(sp)q(eci\014ed)h(b)o(y)d(a)h(rounding)h (function)f Fu(r)q(nd)1137 420 y Fp(F)1166 413 y Fw(,)g(whic)o(h)h(maps)e(v)m (alues)i(in)g Fv(R)e Fw(on)o(to)g(v)m(alues)i(in)0 470 y Fu(F)35 453 y Fm(\003)55 470 y Fw(.)20 b Fu(F)123 453 y Fm(\003)157 470 y Fw(is)14 b(the)g(set)g Fu(F)377 477 y Fp(N)418 470 y Fv([)8 b Fu(F)485 477 y Fp(D)531 470 y Fw(augmen)o(ted)14 b(with)h(all)f(v)m (alues)h(of)f(the)g(form)f Fv(\006)p Fu(i)8 b Fv(\003)f Fu(r)1404 453 y Fp(e)p Fm(\000)p Fp(p)1481 470 y Fw(where)15 b Fu(r)1634 453 y Fp(p)p Fm(\000)p Fn(1)1711 470 y Fv(\024)e Fu(i)f Fv(\024)h Fu(r)1857 453 y Fp(p)1884 470 y Fv(\000)8 b Fw(1)0 526 y(\(as)17 b(in)h Fu(F)160 533 y Fp(N)194 526 y Fw(\))g(but)f Fu(e)g(>)h(emax)p Fw(.)27 b(The)18 b(extra)f(v)m(alues)i(in)f Fu(F)1001 510 y Fm(\003)1039 526 y Fw(are)f(un)o(b)q(ounded)j(in)e(range,)g(but)g(all)g(ha)o (v)o(e)g(exactly)0 583 y Fu(p)p Fw(-digits)e(of)f(precision.)21 b(These)16 b(are)f(\\help)q(er)h(v)m(alues,")g(and)f(are)g(not)g(represen)o (table)h(in)g(the)f(t)o(yp)q(e)h Fu(F)6 b Fw(.)0 667 y(The)11 b(requiremen)o(t)h(of)e(\\sign)h(symmetry",)g Fu(r)q(nd)815 674 y Fp(F)844 667 y Fw(\()p Fv(\000)p Fu(x)p Fw(\))h(=)h Fv(\000)p Fu(r)q(nd)1109 674 y Fp(F)1139 667 y Fw(\()p Fu(x)p Fw(\),)d(is)i(needed)g (to)e(assure)h(the)g(arithmetic)h(op-)0 724 y(erations)h Fu(add)242 731 y Fp(F)271 724 y Fw(,)g Fu(sub)364 731 y Fp(F)393 724 y Fw(,)h Fu(mul)500 731 y Fp(F)528 724 y Fw(,)g(and)f Fu(div)703 731 y Fp(F)745 724 y Fw(ha)o(v)o(e)g(the)h(exp)q(ected)g(b)q(eha)o(vior)g (with)g(resp)q(ect)g(to)e(sign,)i(as)f(describ)q(ed)0 780 y(in)j(A.5.2.12.)0 865 y(In)22 b(addition)g(to)e(b)q(eing)i(a)f(rounding)h(function)g(\(as)e (de\014ned)j(in)f(4.2\),)e Fu(r)q(nd)1347 872 y Fp(F)1397 865 y Fw(m)o(ust)h(not)f(dep)q(end)j(up)q(on)f(the)0 921 y(exp)q(onen)o(t)16 b(of)e(its)i(input)g(\(except)f(for)g(denormalized)i(v)m(alues\).)k(This)15 b(is)h(captured)g(b)o(y)f(a)g(\\scaling)h(rule":)114 1043 y Fu(r)q(nd)187 1050 y Fp(F)216 1043 y Fw(\()p Fu(x)9 b Fv(\003)h Fu(r)324 1027 y Fp(j)342 1043 y Fw(\))j(=)g Fu(r)q(nd)494 1050 y Fp(F)523 1043 y Fw(\()p Fu(x)p Fw(\))c Fv(\003)h Fu(r)649 1027 y Fp(j)0 1165 y Fw(whic)o(h)16 b(holds)g(as)f(long)g(as)g Fu(x)g Fw(and)h Fu(x)10 b Fv(\003)g Fu(r)680 1149 y Fp(j)713 1165 y Fw(ha)o(v)o(e)k(magnitude)i(greater)f(than)g(\(or)f(equal)i(to\))e Fr(fmin)1659 1172 y Fp(N)1692 1165 y Fw(.)0 1250 y(Denormalized)j(v)m(alues)h (ha)o(v)o(e)d(a)h(wider)h(relativ)o(e)g(spacing)f(than)g(normalized)i(v)m (alues.)24 b(Th)o(us,)16 b(the)g(scaling)h(rule)0 1307 y(ab)q(o)o(v)o(e)f(do) q(es)h(not)f(hold)h(for)f(all)i(x)e(in)i(the)e(denormalized)i(range.)24 b(When)17 b(the)f(scaling)i(rule)f(fails,)h(w)o(e)e(sa)o(y)g(that)0 1363 y Fu(r)q(nd)73 1370 y Fp(F)117 1363 y Fw(has)f(a)g Fr(denormalization)h (loss)e Fw(at)h(x,)g(and)g(the)g(relativ)o(e)h(error)114 1503 y Fe(j)136 1475 y Fl(x)p Fh(\000)p Fl(r)q(nd)259 1481 y Fj(F)285 1475 y Fq(\()p Fl(x)p Fq(\))p 136 1489 207 2 v 226 1524 a Fl(x)346 1503 y Fe(j)0 1625 y Fw(is)g(t)o(ypically)g(larger)f(than)g(for)g(normalized) h(v)m(alues.)0 1710 y(Within)23 b(a)e(single)h(exp)q(onen)o(t)g(range,)h(the) e(rounding)h(function)h(is)f(not)f(further)g(constrained.)39 b(In)22 b(fact,)g(an)0 1766 y(implemen)o(tation)17 b(that)e(conforms)h(to)f (the)h(LIA-1)g(could)h(pro)o(vide)g(a)e(n)o(um)o(b)q(er)h(of)g(rounding)g (rules.)23 b(Eac)o(h)16 b(suc)o(h)0 1823 y(rule)g(w)o(ould)g(giv)o(e)f(rise)h (to)e(a)h(logically)i(distinct)g(set)e(of)f(\015oating)h(p)q(oin)o(t)h(op)q (erations)g(\(or)e(t)o(yp)q(es\).)0 1908 y(Information)22 b(ab)q(out)g(the)g (rounding)h(function)g(is)f(a)o(v)m(ailable)i(to)d(the)h(programmer)f(via)h (a)g(pair)g(of)g(deriv)o(ed)0 1964 y(constan)o(ts:)j Fu(r)q(nd)p 301 1964 14 2 v 16 w(er)q(r)q(or)18 b Fw(and)g Fu(r)q(nd)p 607 1964 V 16 w(sty)r(l)q(e)p Fw(.)29 b(See)18 b(5.2.8)f(and)h(A.5.2.8)e(for) h(an)h(explanation)h(of)f(these)g(constan)o(ts)0 2020 y(and)d(a)g(further)g (discussion)i(of)e(rounding.)0 2169 y Fx(A.5.2.6)51 b(Result)18 b(function)0 2283 y Fw(The)f(rounding)g(function)g Fu(r)q(nd)540 2290 y Fp(F)586 2283 y Fw(pro)q(duces)g(un)o(b)q(ounded)h(v)m(alues.)25 b(A)17 b(result)g(function)g(is)g(then)g(used)g(to)f(c)o(hec)o(k)0 2339 y(whether)i(this)h(result)f(is)h(within)g(range,)f(and)g(to)g(generate)f (an)h(exceptional)i(v)m(alue)f(if)g(required.)29 b(The)19 b(result)0 2396 y(function)14 b Fu(r)q(esul)q(t)297 2403 y Fp(F)340 2396 y Fw(tak)o(es)f(t)o(w)o(o)f(argumen)o(ts.)18 b(The)c(\014rst)f(one)h(is)g(a)f (real)h(v)m(alue)h Fu(x)e Fw(\(t)o(ypically)i(the)e(mathematically)0 2452 y(correct)i(result\))g(and)g(the)h(second)f(one)h(is)g(a)e(rounding)i (function)g Fu(r)q(nd)f Fw(to)g(b)q(e)h(applied)h(to)d Fu(x)p Fw(.)0 2537 y(If)20 b Fu(F)25 b Fw(do)q(es)20 b(not)f(include)j(denormalized) f(n)o(um)o(b)q(ers,)f(and)g Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))e(is)i(represen) o(table,)h(then)e Fu(r)q(esul)q(t)1759 2544 y Fp(F)1808 2537 y Fw(returns)0 2593 y Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\).)e(If)11 b Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))e(is)h(to)q(o)g(large)g(or)g(to)q(o)f (small)i(to)f(b)q(e)g(represen)o(ted,)i(then)e Fu(r)q(esul)q(t)1387 2600 y Fp(F)1427 2593 y Fw(returns)g Fx(\015oating)p 1752 2593 16 2 v 21 w(o)o(v)o(er\015o)o(w)0 2650 y Fw(or)15 b Fx(under\015o)o(w)g Fw(resp)q(ectiv)o(ely)l(.)0 2828 y(44)p eop %%Page: 45 53 bop -72 542 13 170 v -72 861 13 113 v -72 1640 13 377 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y Fw(The)13 b(only)g(di\013erence)h(when)g Fu(F)19 b Fw(do)q(es)13 b(con)o(tain)g(denormalized)h(v)m(alues)g(o)q(ccurs)g (when)f Fu(r)q(nd)f Fw(returns)h(a)f(denormal-)0 102 y(ized)j(v)m(alue.)21 b(If)15 b(there)f(w)o(as)f(a)h(denormalization)h(loss)g(in)g(computing)f(the) g(rounded)h(v)m(alue,)h(then)e Fu(r)q(esul)q(t)1809 109 y Fp(F)1853 102 y Fw(m)o(ust)0 158 y(return)j Fx(under\015o)o(w)o Fw(.)25 b(On)17 b(the)g(other)f(hand,)h(if)g(there)g(w)o(as)f(no)g(denormalization)i (loss,)f(then)g(the)g(implemen-)0 214 y(tation)f(is)h(free)g(to)e(return)i (either)g Fx(under\015o)o(w)f Fw(\(causing)h(a)f(noti\014cation\))h(or)f Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\).)22 b(Note)16 b(that)g(IEEE)h(754)0 271 y(allo)o(ws)h(some)g(implemen)o(tation)h(\015exibili)q(t)o(y)h(in)f (precisely)h(this)e(case.)29 b(See)18 b(the)g(discussion)i(of)e(\\con)o(tin)o (uation)0 327 y(v)m(alue")e(in)g(6.1.2.)0 412 y Fu(Resul)q(t)134 419 y Fp(F)164 412 y Fw(\()p Fu(x;)8 b(r)q(nd)p Fw(\))14 b(tak)o(es)h Fu(r)q(nd)g Fw(as)h(its)g(second)g(argumen)o(t)f(\(rather)g(than)h(taking)g Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\)\))f(b)q(ecause)h(one)g(of)g(the)0 469 y(\014nal)k(parts)f(of)g(the)h(de\014nition)h(of)e Fu(r)q(esul)q(t)748 476 y Fp(F)797 469 y Fw(refers)h(to)e(denormalization)j(loss.)33 b(Denormalization)21 b(loss)e(is)h(a)0 525 y(prop)q(ert)o(y)15 b(of)g(the)g(function)h Fu(r)q(nd)f Fw(rather)f(than)h(the)h(individual)i(v)m (alue)f Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\).)0 673 y Fx(A.5.2.7)51 b(Axioms)0 787 y Fw(Note)20 b(that)g(the)g(help)q(er)j(function)e Fu(e)650 794 y Fp(F)700 787 y Fw(is)g(not)f(the)g(same)h(as)f(the)g Fu(exponent)1367 794 y Fp(F)1418 787 y Fw(op)q(eration.)36 b(They)21 b(agree)f(on)0 844 y(normalized)15 b(n)o(um)o(b)q(ers,)g(but)f (di\013er)h(on)f(denormalized)i(ones.)j Fu(E)s(xponent)1282 851 y Fp(F)1312 844 y Fw(\()p Fu(x)p Fw(\))13 b(is)i(c)o(hosen)g(to)e(b)q(e)i (the)f(exp)q(onen)o(t)0 900 y(of)21 b Fu(x)h Fw(as)f(though)g Fu(x)h Fw(w)o(ere)f(in)i(normalized)g(form)e(and)g(the)h(range)f(and)h (precision)h(w)o(ere)f(un)o(b)q(ounded.)41 b(F)l(or)0 957 y(denormalized)17 b(n)o(um)o(b)q(ers,)e Fu(e)495 964 y Fp(F)524 957 y Fw(\()p Fu(x)p Fw(\))g(is)h(equal)g(to)e Fu(emin)p Fw(.)0 1041 y(The)i(help)q(er)i (function)e Fu(r)q(n)460 1048 y Fp(F)490 1041 y Fw(\()p Fu(x;)8 b(n)p Fw(\))14 b(rounds)j(a)e(\015oating)h(p)q(oin)o(t)g(n)o(um)o(b)q(er)h Fu(x)f Fw(to)f Fu(n)p Fw(-digits)i(of)e(precision)j(\(radix)e Fu(r)q Fw(\).)0 1098 y(V)l(alues)h(that)d(are)i(exactly)g(half-w)o(a)o(y)f(b) q(et)o(w)o(een)h(t)o(w)o(o)e(adjacen)o(t)h Fu(n)p Fw(-digit)i(\015oating)f(p) q(oin)o(t)g(n)o(um)o(b)q(ers)g(round)g(a)o(w)o(a)o(y)0 1154 y(from)e(zero.)0 1303 y Fx(A.5.2.8)51 b(Rounding)18 b(constan)o(ts)0 1417 y Fw(Tw)o(o)12 b(constan)o(ts)f(are)h(pro)o(vided)i(to)e(giv)o(e)h(the)f (programmer)g(access)g(to)g(some)g(information)h(ab)q(out)f(the)h(rounding)0 1473 y(function)j(in)g(use.)21 b Fu(Rnd)p 417 1473 14 2 v 16 w(er)q(r)q(or)16 b Fw(describ)q(es)h(the)f(maxim)o(um)f(rounding)h(error)f (\(in)h(ulps\),)g(and)f Fu(r)q(nd)p 1705 1473 V 16 w(sty)r(l)q(e)h Fw(places)0 1529 y(the)f(rounding)h(function)g(in)o(to)g(one)f(of)g(three)g (ma)s(jor)f(classes:)20 b(truncate,)15 b(round)g(to)g(nearest,)f(and)i (other.)0 1614 y(What)f(are)f(the)i(most)e(common)h(rounding)h(rules?)0 1699 y(IEEE)c(754)f([1])g(and)h(854)f([21)o(])h(de\014ne)h(four)f(rounding)g (rules.)20 b(In)13 b(addition,)g(a)f(\014fth)f(rounding)i(rule)g(is)g(in)f (common)0 1755 y(use.)20 b(Hence,)c(a)f(useful)h(list)g(is)g(as)f(follo)o (ws:)51 1877 y(a\))22 b Fr(R)n(ound)16 b(towar)n(d)h(minus)f(in\014nity)48 1971 y Fw(b\))23 b Fr(R)n(ound)16 b(towar)n(d)h(plus)f(in\014nity)53 2065 y Fw(c\))23 b Fr(R)n(ound)16 b(towar)n(d)h(zer)n(o)48 2159 y Fw(d\))23 b Fr(IEEE)17 b(r)n(ound)i(to)g(ne)n(ar)n(est)p Fw(:)70 b(In)18 b(the)g(case)g(of)f(a)g(v)m(alue)i(exactly)g(half-w)o(a)o(y)e (b)q(et)o(w)o(een)h(t)o(w)o(o)f(neigh)o(b)q(oring)114 2215 y(v)m(alues)f(in)g Fu(F)331 2222 y Fp(N)365 2215 y Fw(,)f(select)h(the)f (\\ev)o(en")g(result.)20 b(That)15 b(is,)g(for)g Fu(x)g Fw(in)h Fu(F)1253 2222 y Fp(N)1302 2215 y Fw(and)f Fu(u)e Fw(=)g Fu(r)1499 2199 y Fp(e)1515 2205 y Fi(F)1540 2199 y Fn(\()p Fp(x)p Fn(\))p Fm(\000)p Fp(p)214 2309 y Fu(r)q(nd)p Fw(\()p Fu(x)c Fw(+)391 2291 y Fn(1)p 391 2298 18 2 v 391 2325 a(2)413 2309 y Fu(u)p Fw(\))15 b(=)e Fu(x)d Fw(+)h Fu(u)k Fw(if)g Fu(x=u)g Fw(is)h(o)q(dd)472 2365 y(=)d Fu(x)97 b Fw(if)15 b Fu(x=u)g Fw(is)h(ev)o(en)114 2459 y(This)f(is)h(the)f(default)h(rounding)g(mo)q(de)g(in)g(the)f(IEEE)g (standards.)53 2553 y(e\))23 b Fr(T)m(r)n(aditional)15 b(r)n(ound)i(to)g(ne)n (ar)n(est)p Fw(:)61 b(In)16 b(the)f(case)h(of)f(a)g(half-w)o(a)o(y)h(v)m (alue,)g(round)g(a)o(w)o(a)o(y)e(from)h(zero.)21 b(That)114 2609 y(is,)15 b(if)h Fu(x)f Fw(and)g Fu(u)g Fw(are)g(as)g(ab)q(o)o(v)o(e,)f (then)214 2703 y Fu(r)q(nd)p Fw(\()p Fu(x)9 b Fw(+)391 2685 y Fn(1)p 391 2692 V 391 2719 a(2)413 2703 y Fu(u)p Fw(\))j(=)h Fu(x)e Fw(+)f Fu(u)1905 2828 y Fw(45)p eop %%Page: 46 54 bop -72 231 13 170 v -72 1030 13 453 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y(The)i(\014rst)g(t)o(w)o(o)f(of)h(these)g(rounding)h(rules)g (do)f(not)g(ha)o(v)o(e)g(sign)g(symmetry)l(,)h(but)f(the)g(last)g(three)g (do,)h(and)f(are)0 102 y(p)q(ossible)23 b(candidates)g(for)e Fu(r)q(nd)558 109 y Fp(F)587 102 y Fw(.)40 b(The)22 b Fr(r)n(ound)g(towar)n (d)h(zer)n(o)e Fw(rule)i(has)f(a)f Fu(r)q(nd)p 1436 102 14 2 v 16 w(sty)r(l)q(e)h Fw(of)f Fx(truncate)p Fw(.)41 b(The)0 158 y(t)o(w)o(o)18 b Fr(r)n(ound)j(to)f(ne)n(ar)n(est)f Fw(rules)h(ha)o(v)o (e)f(a)h Fu(r)q(nd)p 782 158 V 16 w(sty)r(l)q(e)g Fw(of)f Fx(nearest)p Fw(.)33 b(Rounding)21 b(rules)f(not)f(listed)i(here)f(ha)o(v)o(e)f(a)0 214 y Fu(r)q(ound)p 124 214 V 16 w(sty)r(l)q(e)d Fw(of)e Fx(other)p Fw(.)0 299 y(The)20 b(\014rst)g(three)g(rules)h(giv)o(e)f(a)g(one-ulp)h (error)f(b)q(ound.)35 b(That)19 b(is,)j Fu(r)q(nd)p 1287 299 V 16 w(er)q(r)q(or)e Fw(is)h(1.)34 b(The)20 b(last)g(t)o(w)o(o)f(giv)o(e)h(a) 0 356 y(half-ulp)j(b)q(ound,)h(so)e Fu(r)q(nd)p 474 356 V 16 w(er)q(r)q(or)g Fw(is)674 338 y Fn(1)p 674 345 18 2 v 674 371 a(2)697 356 y Fw(.)39 b(Ho)o(w)o(ev)o(er,)22 b(one)g(cannot)g(conclude)h (that)e Fu(r)q(nd)p 1573 356 14 2 v 16 w(sty)r(l)q(e)h Fw(is)g Fx(truncate)0 412 y Fw(when)f Fu(r)q(nd)p 200 412 V 16 w(er)q(r)q(or)f Fw(is)h(1,)f(nor)g(that)g Fu(r)q(nd)p 714 412 V 16 w(sty)r(l)q(e)g Fw(is)h Fx(nearest)e Fw(if)i Fu(r)q(nd)p 1202 412 V 16 w(er)q(r)q(or)g Fw(is)1399 394 y Fn(1)p 1399 401 18 2 v 1399 428 a(2)1422 412 y Fw(.)34 b(Most)19 b(curren)o(t)h(non-IEEE)0 469 y(implemen)o(tations)c(pro) o(vide)g(either)g(the)f(third)h(rule)g(or)f(the)g(last)g(rule.)0 617 y Fx(A.5.2.9)51 b(Conformit)o(y)16 b(to)i(IEC)g(559)0 731 y Fw(IEC)d(559)g(is)g(the)h(in)o(ternational)g(v)o(ersion)f(of)g(IEEE)g(754.) 0 816 y(Note)k(that)f(\\metho)q(ds)h(shall)h(b)q(e)f(pro)o(vided)h(...)31 b(to)18 b(access)h(eac)o(h)g([IEC)g(559])e(facilit)o(y)l(.")33 b(This)19 b(means)g(that)f(a)0 872 y(complete)e(LIA-1)g(binding)h(will)g (include)g(a)e(binding)i(for)e(IEC)g(559)g(as)f(w)o(ell.)0 957 y(IEC)j(559)g(con)o(tains)g(an)g(annex)h(listing)h(a)e(n)o(um)o(b)q(er)g (of)g(recommended)h(functions.)27 b(While)19 b(not)e(required,)h(im-)0 1013 y(plemen)o(tations)e(of)f(LIA-1)h(are)f(encouraged)g(to)g(pro)o(vide)g (those)g(functions.)0 1161 y Fx(A.5.2.10)51 b(Relations)19 b(among)f(\015oating)h(p)q(oin)o(t)f(t)o(yp)q(es)0 1275 y Fw(An)e(implemen)o (tation)g(ma)o(y)f(pro)o(vide)h(more)f(than)g(one)h(\015oating)f(p)q(oin)o(t) h(t)o(yp)q(e,)f(and)h(most)e(curren)o(t)i(systems)e(do.)0 1332 y(It)h(is)h(usually)h(p)q(ossible)f(to)f(order)g(those)g(with)g(a)g(giv)o(en) h(radix)g(as)e Fu(F)1177 1339 y Fn(1)1197 1332 y Fu(;)8 b(F)1247 1339 y Fn(2)1266 1332 y Fu(;)g(F)1316 1339 y Fn(3)1336 1332 y Fu(;)g Fv(\001)g(\001)g(\001)57 b Fw(suc)o(h)16 b(that)114 1454 y Fu(p)137 1461 y Fn(1)169 1454 y Fv(\024)d Fu(p)240 1461 y Fn(2)272 1454 y Fv(\024)g Fu(p)343 1461 y Fn(3)370 1454 y Fv(\001)8 b(\001)g(\001)114 1510 y Fu(emin)218 1517 y Fn(1)250 1510 y Fv(\025)13 b Fu(emin)402 1517 y Fn(2)434 1510 y Fv(\025)g Fu(emin)586 1517 y Fn(3)614 1510 y Fv(\001)8 b(\001)g(\001)114 1567 y Fu(emax)225 1574 y Fn(1)257 1567 y Fv(\024)13 b Fu(emax)416 1574 y Fn(2)448 1567 y Fv(\024)g Fu(emax)607 1574 y Fn(3)635 1567 y Fv(\001)8 b(\001)g(\001)n Fw(.)0 1689 y(A)20 b(n)o(um)o(b)q(er)g(of)f (curren)o(t)h(systems)f(do)g(not)h(increase)g(the)g(exp)q(onen)o(t)g(range)g (with)g(precision.)34 b(Ho)o(w)o(ev)o(er,)20 b(the)0 1745 y(follo)o(wing)c (constrain)o(ts)114 1867 y(2)9 b Fv(\003)h Fu(p)202 1874 y Fp(i)229 1867 y Fv(\024)j Fu(p)300 1874 y Fp(i)p Fn(+1)114 1924 y Fw(2)c Fv(\003)h Fw(\()p Fu(emin)301 1931 y Fp(i)325 1924 y Fv(\000)h Fw(1\))h Fv(\025)h Fw(\()p Fu(emin)594 1931 y Fp(i)p Fn(+1)663 1924 y Fv(\000)d Fw(1\))114 1980 y(2)f Fv(\003)h Fu(emax)290 1987 y Fp(i)317 1980 y Fv(\024)j Fu(emax)476 1987 y Fp(i)p Fn(+1)0 2102 y Fw(for)19 b(eac)o(h)h(pair)g Fu(F)308 2109 y Fp(i)342 2102 y Fw(and)h Fu(F)465 2109 y Fp(i)p Fn(+1)544 2102 y Fw(w)o(ould)f(pro)o(vide)g(adv)m(an)o(tages)g(to)f(programmers)f(of)i (n)o(umerical)h(soft)o(w)o(are)d(\(for)0 2159 y(\015oating)d(p)q(oin)o(t)h(t) o(yp)q(es)f(not)g(at)f(the)i(widest)f(lev)o(el)i(of)e(range-precision\):)51 2281 y(a\))22 b(The)16 b(constrain)o(t)f(on)g(the)h(increase)h(in)f (precision)h(exp)q(edites)h(the)d(accurate)h(calculation)h(of)e(residuals)i (in)114 2337 y(an)c(iterativ)o(e)g(pro)q(cedure.)20 b(It)13 b(also)g(pro)o(vides)h(exact)f(pro)q(ducts)g(for)g(the)g(calculation)i(of)d (an)h(inner)i(pro)q(duct)114 2394 y(or)f(a)h(Euclidean)i(norm.)48 2488 y(b\))23 b(The)12 b(constrain)o(ts)f(on)h(the)g(increase)h(in)g(the)f (exp)q(onen)o(t)g(range)g(mak)o(es)f(it)i(easy)e(to)h(a)o(v)o(oid)f(the)h(o)q (ccurrence)h(of)114 2544 y(an)i(o)o(v)o(er\015o)o(w)f(or)g(under\015o)o(w)i (in)g(the)f(in)o(termediate)h(steps)f(of)g(a)g(calculation,)i(for)d(whic)o(h) i(the)f(\014nal)i(result)114 2600 y(is)e(in)h(range.)0 2828 y(46)p eop %%Page: 47 55 bop -72 1154 13 57 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y(A.5.2.11)51 b(Lev)o(els)17 b(of)g(predictabilit)o(y)0 159 y Fw(This)f(clause)g(explains)h(wh)o(y)e(the)g (metho)q(d)g(used)h(to)f(sp)q(ecify)h(\015oating)f(p)q(oin)o(t)h(t)o(yp)q(es) f(w)o(as)g(c)o(hosen.)0 244 y(The)20 b(main)f(question)h(is,)h(\\Ho)o(w)d (precise)j(should)f(the)g(sp)q(eci\014cations)h(b)q(e?")33 b(The)20 b(p)q(ossibilities)j(range)c(from)0 300 y(completely)i(prescriptiv)o (e)g(\(sp)q(ecifying)g(ev)o(ery)f(last)f(detail\))i(to)e(lo)q(osely)i (descriptiv)o(e)g(\(giving)f(a)g(few)f(axioms)0 357 y(whic)o(h)d(essen)o (tially)h(ev)o(ery)e(\015oating)g(p)q(oin)o(t)h(system)e(already)i (satis\014es\).)0 441 y(IEEE)e(754)f([1)o(])g(tak)o(es)g(the)h(highly)h (prescriptiv)o(e)g(approac)o(h,)e(allo)o(wing)i(relativ)o(ely)g(little)g (latitude)g(for)e(v)m(ariation.)0 498 y(It)20 b(ev)o(en)h(stipulates)g(m)o (uc)o(h)f(of)g(the)h(represen)o(tation.)35 b(The)20 b(Bro)o(wn)g(mo)q(del)h ([24)o(])f(comes)g(close)h(to)f(the)g(other)0 554 y(extreme,)15 b(ev)o(en)g(p)q(ermitting)h(non-deterministic)i(b)q(eha)o(vior.)0 639 y(There)d(are)g(\(at)g(least\))g(\014v)o(e)g(in)o(teresting)h(p)q(oin)o (ts)g(on)f(the)g(range)g(from)g(a)g(strong)f(sp)q(eci\014cation)j(to)e(a)g(v) o(ery)g(w)o(eak)0 695 y(one.)20 b(These)c(are)51 818 y(a\))22 b(Sp)q(ecify)d(the)f(set)g(of)f(represen)o(table)i(v)m(alues)g(exactly;)g (de\014ne)g(the)f(op)q(erations)g(exactly;)h(but)f(lea)o(v)o(e)g(the)114 874 y(represen)o(tations)d(unsp)q(eci\014ed.)48 968 y(b\))23 b(Allo)o(w)10 b(limited)i(v)m(ariation)f(in)g(the)g(set)e(of)h(represen)o (table)h(v)m(alues,)h(and)f(limited)h(v)m(ariation)e(in)h(the)g(op)q(eration) 114 1024 y(seman)o(tics.)22 b(The)16 b(v)m(ariation)h(in)g(the)f(v)m(alues)h (set)f(is)h(pro)o(vided)g(b)o(y)f(a)f(small)i(set)f(of)g(parameters,)f(and)h (the)114 1081 y(v)m(ariation)i(in)h(the)f(op)q(eration)g(seman)o(tics)g(is)h (pro)o(vided)f(b)o(y)g(p)q(ermitting)h(di\013eren)o(t)f(rounding)h(functions) 114 1137 y(and)c(small)h(di\013erences)g(in)g(o)o(v)o(er\015o)o(w)e(and)i (under\015o)o(w)f(c)o(hec)o(king.)53 1231 y(c\))23 b(Use)18 b(parameters)g(to)g(de\014ne)h(a)f(\\minim)o(um")h(set)g(of)f(represen)o (table)h(v)m(alues,)h(and)f(an)f(idealized)j(set)d(of)114 1287 y(op)q(erations.)26 b(This)18 b(is)f(called)i(a)e Fr(mo)n(del)p Fw(.)26 b(Implemen)o(tations)18 b(ma)o(y)f(pro)o(vide)g(more)g(v)m(alues)i (\(extra)d(preci-)114 1344 y(sion\),)i(and)g(di\013eren)o(t)h(op)q(eration)f (seman)o(tics,)g(as)g(long)g(as)g(the)g(implemen)o(ted)h(v)m(alues)h(and)e (op)q(erations)114 1400 y(are)d(su\016cien)o(tly)h(close)g(to)e(the)i(mo)q (del.)21 b(The)15 b(standard)g(w)o(ould)g(ha)o(v)o(e)g(to)g(de\014ne)h (\\su\016cien)o(tly)g(close".)48 1494 y(d\))23 b(Allo)o(w)17 b(an)o(y)f(set)h(of)f(v)m(alues)i(and)f(op)q(eration)g(seman)o(tics)g(as)f (long)h(as)g(the)g(op)q(erations)g(are)f(deterministic)114 1551 y(and)f(satisfy)f(certain)h(accuracy)g(constrain)o(ts.)k(Accuracy)c (constrain)o(ts)g(w)o(ould)g(t)o(ypically)h(b)q(e)f(phrased)g(as)114 1607 y(maxim)o(um)g(relativ)o(e)h(errors.)53 1701 y(e\))23 b(Allo)o(w)15 b(non-deterministic)j(op)q(erations.)0 1823 y(The)i(IEEE)g(mo)q (del)h(is)g(close)f(to)g(\(a\).)33 b(The)20 b(Bro)o(wn)g(mo)q(del)h(is)f (close)h(to)e(\(e\).)34 b(The)20 b(LIA-1)h(selects)f(the)h(sec-)0 1879 y(ond)16 b(approac)o(h)f(b)q(ecause)i(it)f(p)q(ermits)h(conformit)o(y)e (b)o(y)h(most)f(curren)o(t)g(systems,)g(pro)o(vides)i(\015exibilit)o(y)h(for) d(high)0 1936 y(p)q(erformance)g(designs,)h(and)f(discourages)h(increase)g (in)g(v)m(ariation)g(among)e(future)i(systems.)0 2020 y(Note)h(that)f(the)h (Bro)o(wn)g(mo)q(del)h(allo)o(ws)f(\\parameter)f(p)q(enalties")j(\(reducing)f Fu(p)f Fw(or)f Fu(emin)h Fw(or)g Fu(emax)p Fw(\))g(to)f(com-)0 2077 y(p)q(ensate)g(for)e(inaccurate)i(hardw)o(are.)j(The)d(LIA-1)g(mo)q(del) g(do)q(es)f(not)g(p)q(ermit)h(parameter)e(p)q(enalties.)0 2162 y(A)i(ma)s(jor)f(reason)h(for)g(rejecting)g(a)g(standard)g(based)h(up)q(on)g (the)f(Bro)o(wn)g(mo)q(del)h(is)g(that)e(the)h(relational)i(op)q(er-)0 2218 y(ations)e(do)h(not)f(\(necessarily\))h(ha)o(v)o(e)f(the)g(prop)q (erties)i(one)e(exp)q(ects.)24 b(F)l(or)16 b(instance,)h(with)g(the)g(Bro)o (wn)e(mo)q(del,)0 2275 y Fu(x)e(<)g(y)k Fw(and)e Fu(y)g(<)e(z)k Fw(do)q(es)e(not)g(imply)i(that)d Fu(x)f(<)g(z)r Fw(.)0 2423 y Fx(A.5.2.12)51 b(Iden)o(tities)0 2537 y Fw(By)11 b(c)o(ho)q(osing)g(a)f (relativ)o(ely)h(strong)f(sp)q(eci\014cation)i(of)e(\015oating)h(p)q(oin)o (t,)g(certain)g(useful)h(iden)o(tities)g(are)e(guaran)o(teed)0 2593 y(to)15 b(hold.)22 b(The)16 b(follo)o(wing)g(is)g(a)f(sample)i(list)f (of)f(suc)o(h)h(iden)o(tities.)23 b(These)16 b(iden)o(tities)h(can)f(b)q(e)g (deriv)o(ed)h(from)e(the)0 2650 y(axioms)g(de\014ning)i(the)e(arithmetic)h (op)q(erations.)1905 2828 y(47)p eop %%Page: 48 56 bop 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y(In)g(the)f(follo)o(wing)h (discussion,)h(let)e Fu(u)p Fw(,)g Fu(v)r Fw(,)f Fu(x)p Fw(,)h(and)h Fu(y)h Fw(b)q(e)e(elemen)o(ts)h(of)f Fu(F)6 b Fw(,)15 b(and)h(let)f Fu(j)s Fw(,)g Fu(k)q Fw(,)f(and)i Fu(n)f Fw(b)q(e)h(in)o(tegers.)0 130 y(The)g(sev)o(en)f(op)q(erations)h Fu(add)509 137 y Fp(F)538 130 y Fw(,)f Fu(sub)633 137 y Fp(F)662 130 y Fw(,)g Fu(mul)770 137 y Fp(F)799 130 y Fw(,)g Fu(div)889 137 y Fp(F)917 130 y Fw(,)g Fu(scal)q(e)1046 137 y Fp(F)1075 130 y Fw(,)g Fu(cv)r(t)1163 137 y Fp(F)1190 128 y Fz(0)1202 137 y Fm(!)p Fp(F)1266 130 y Fw(,)g(and)h Fu(cv)r(t)1443 137 y Fp(I)s Fm(!)p Fp(F)1541 130 y Fw(compute)f(appro)o(xima-)0 186 y(tions)i(to)f(the)h(ideal)h (mathematical)f(functions.)26 b(All)18 b(the)f(other)g(op)q(erations)g (de\014ned)h(in)g(the)e(LIA-1)i(pro)q(duce)0 243 y(exact)d(results)h(\(in)f (the)h(absence)f(of)g(noti\014cations\).)0 327 y(Since)j(the)e(sev)o(en)h (appro)o(ximate)f(op)q(erations)g(are)h(all)g(so)f(similar,)h(it)g(is)g(con)o (v)o(enien)o(t)g(to)f(giv)o(e)g(a)g(series)h(of)f(rules)0 384 y(that)d(apply)i(to)e(all)i(of)e(the)h(sev)o(en)g(\(with)g(some)f (quali\014cations\).)21 b(Let)14 b(\010)f(b)q(e)i(an)o(y)e(of)h(the)g(giv)o (en)g(op)q(erations,)g(and)0 440 y(let)i Fu(\036)g Fw(b)q(e)g(the)f(corresp)q (onding)i(ideal)g(mathematical)e(function.)22 b(In)16 b(what)f(follo)o(ws,)g (if)h Fu(\036)g Fw(is)g(a)f(single)i(argumen)o(t)0 497 y(function,)f(ignore)f (the)g(second)h(argumen)o(t.)0 581 y(When)g Fu(\036)p Fw(\()p Fu(x;)8 b(y)r Fw(\))13 b(is)j(de\014ned,)g(and)g(no)f(noti\014cation)h(o)q (ccurs,)114 703 y Fu(u)c Fv(\024)h Fu(\036)p Fw(\()p Fu(x;)8 b(y)r Fw(\))j Fv(\024)i Fu(v)30 b Fv(\))e Fu(u)13 b Fv(\024)g Fw(\010\()p Fu(x;)8 b(y)r Fw(\))j Fv(\024)i Fu(v)959 b Fw(\(I\))0 826 y(When)16 b Fu(\036)p Fw(\()p Fu(x;)8 b(y)r Fw(\))13 b(is)j(de\014ned,)g (and)g(no)f(noti\014cation)h(o)q(ccurs,)114 948 y Fu(\036)p Fw(\()p Fu(x;)8 b(y)r Fw(\))j Fv(2)i Fu(F)34 b Fv(\))28 b Fw(\010\()p Fu(x;)8 b(y)r Fw(\))j(=)i Fu(\036)p Fw(\()p Fu(x;)8 b(y)r Fw(\))996 b(\(I)q(I\))0 1070 y(When)16 b Fu(\036)p Fw(\()p Fu(u;)8 b(x)p Fw(\))13 b(and)j Fu(\036)p Fw(\()p Fu(v)r(;)8 b(y)r Fw(\))13 b(are)i(de\014ned,)h(and)g(no)f(noti\014cation)h(o)q(ccurs,)114 1192 y Fu(\036)p Fw(\()p Fu(u;)8 b(x)p Fw(\))j Fv(\024)i Fu(\036)p Fw(\()p Fu(v)r(;)8 b(y)r Fw(\))26 b Fv(\))i Fw(\010\()p Fu(u;)8 b(x)p Fw(\))j Fv(\024)i Fw(\010\()p Fu(v)r(;)8 b(y)r Fw(\))870 b(\(I)q(I)q(I\))0 1314 y(When)16 b Fu(\036)p Fw(\()p Fu(x;)8 b(y)r Fw(\))13 b(is)j(de\014ned,)g(non-zero,)f(and)h(no)f(noti\014cation)h(o) q(ccurs,)114 1436 y Fv(j)p Fw(\010\()p Fu(x;)8 b(y)r Fw(\))g Fv(\000)i Fu(\036)p Fw(\()p Fu(x;)e(y)r Fw(\))p Fv(j)j(\024)i Fu(ul)q(p)p Fw(\()p Fu(\036)p Fw(\()p Fu(x;)8 b(y)r Fw(\)\))i Fv(\024)j Fu(ul)q(p)882 1443 y Fp(F)910 1436 y Fw(\(\010\()p Fu(x;)8 b(y)r Fw(\)\))665 b(\(IV\))0 1558 y(where)15 b Fu(ul)q(p)g Fw(is)h(the)f(ob)o(vious)g(extension)h(of)f Fu(ul)q(p)815 1565 y Fp(F)859 1558 y Fw(to)f(all)j(of)d Fv(R)p Fw(.)0 1642 y(When)i Fu(\036)p Fw(\()p Fu(x;)8 b(y)r Fw(\))13 b(is)j(de\014ned,)g(is)g(in)g(the)f (range)g Fv(\006)p Fw([)p Fr(fmin)934 1649 y Fp(N)967 1642 y Fu(;)8 b Fr(fmax)d Fw(],)15 b(and)g(no)g(noti\014cation)h(o)q(ccurs,)114 1724 y Fd(\014)114 1748 y(\014)114 1773 y(\014)114 1798 y(\014)132 1760 y Fq(\010\()p Fl(x;y)q Fq(\))p Fh(\000)p Fl(\036)p Fq(\()p Fl(x;y)q Fq(\))p 132 1774 266 2 v 208 1809 a Fl(\036)p Fq(\()p Fl(x;y)q Fq(\))403 1724 y Fd(\014)403 1748 y(\014)403 1773 y(\014)403 1798 y(\014)432 1788 y Fv(\024)d Fu(ul)q(p)544 1795 y Fp(F)573 1788 y Fw(\(1\))f(=)h Fu(epsil)q(on)930 b Fw(\(V\))0 1932 y(When)22 b Fu(\036)p Fw(\()p Fu(x;)8 b(y)r Fw(\))19 b(and)j Fu(\036)p Fw(\()p Fu(x)14 b Fv(\003)g Fu(r)531 1916 y Fp(j)549 1932 y Fu(;)8 b(y)15 b Fv(\003)f Fu(r)666 1916 y Fp(k)687 1932 y Fw(\))21 b(are)g(de\014ned,)j(are)d(in)h(the)f(range)g Fv(\006)p Fw([)p Fr(fmin)1478 1939 y Fp(N)1512 1932 y Fu(;)8 b Fr(fmax)d Fw(])13 b Fv([)i(f)p Fw(0)p Fv(g)p Fw(,)22 b(and)f(no)0 1989 y(noti\014cation)16 b(o)q(ccurs,)114 2111 y Fu(\036)p Fw(\()p Fu(x)9 b Fv(\003)h Fu(r)249 2094 y Fp(j)267 2111 y Fu(;)e(y)k Fv(\003)d Fu(r)376 2094 y Fp(k)397 2111 y Fw(\))k(=)g Fu(\036)p Fw(\()p Fu(x;)8 b(y)r Fw(\))g Fv(\003)i Fu(r)673 2094 y Fp(n)724 2111 y Fv(\))28 b Fw(\010\()p Fu(x)10 b Fv(\003)g Fu(r)939 2094 y Fp(j)957 2111 y Fu(;)e(y)j Fv(\003)f Fu(r)1066 2094 y Fp(k)1087 2111 y Fw(\))i(=)h(\010\()p Fu(x;)8 b(y)r Fw(\))h Fv(\003)h Fu(r)1369 2094 y Fp(n)1751 2111 y Fw(\(VI\))0 2233 y(Rules)k(\(I\))f(through)g(\(VI\))g(apply)h(to)e(the)h(sev)o(en)g(appro)o (ximate)g(op)q(erations)g Fu(add)1379 2240 y Fp(F)1408 2233 y Fw(,)g Fu(sub)1501 2240 y Fp(F)1530 2233 y Fw(,)g Fu(mul)1636 2240 y Fp(F)1665 2233 y Fw(,)g Fu(div)1753 2240 y Fp(F)1781 2233 y Fw(,)g Fu(scal)q(e)1908 2240 y Fp(F)1937 2233 y Fw(,)0 2289 y Fu(cv)r(t)60 2297 y Fp(F)87 2288 y Fz(0)98 2297 y Fm(!)p Fp(F)163 2289 y Fw(,)e(and)f Fu(cv)r(t)330 2296 y Fp(I)s Fm(!)p Fp(F)423 2289 y Fw(with)h(one)f(exception.)19 b(Rule)12 b(I)q(I)q(I)g(ma)o(y) e(fail)h(for)f Fu(add)1286 2296 y Fp(F)1325 2289 y Fw(and)h Fu(sub)1476 2296 y Fp(F)1515 2289 y Fw(when)g(the)f(appro)o(ximate)0 2346 y(addition)19 b(function)g(is)f(not)f(equal)i(to)e(the)h(true)g(sum)g (\(i.e.,)g Fu(add)1133 2329 y Fm(\003)1133 2359 y Fp(F)1161 2346 y Fw(\()p Fu(u;)8 b(x)p Fw(\))16 b Fv(6)p Fw(=)h Fu(u)12 b Fw(+)h Fu(x)p Fw(,)18 b(or)f Fu(add)1611 2329 y Fm(\003)1611 2359 y Fp(F)1640 2346 y Fw(\()p Fu(v)r(;)8 b(y)r Fw(\))16 b Fv(6)p Fw(=)h Fu(v)d Fw(+)e Fu(y)r Fw(\).)0 2402 y(F)l(ortunately)l(,)j(the)g (follo)o(wing)h(w)o(eak)o(er)e(rules)i(alw)o(a)o(ys)f(hold:)114 2524 y Fu(u)d Fv(\024)h Fu(v)30 b Fv(\))e Fu(add)397 2531 y Fp(F)426 2524 y Fw(\()p Fu(u;)8 b(x)p Fw(\))j Fv(\024)i Fu(add)666 2531 y Fp(F)694 2524 y Fw(\()p Fu(v)r(;)8 b(x)p Fw(\))114 2581 y Fu(u)k Fv(\024)h Fu(v)30 b Fv(\))e Fu(sub)392 2588 y Fp(F)421 2581 y Fw(\()p Fu(u;)8 b(x)p Fw(\))j Fv(\024)i Fu(sub)656 2588 y Fp(F)685 2581 y Fw(\()p Fu(v)r(;)8 b(x)p Fw(\))114 2637 y Fu(u)k Fv(\024)h Fu(v)30 b Fv(\))e Fu(sub)392 2644 y Fp(F)421 2637 y Fw(\()p Fu(x;)8 b(u)p Fw(\))j Fv(\025)i Fu(sub)656 2644 y Fp(F)685 2637 y Fw(\()p Fu(x;)8 b(v)r Fw(\))0 2828 y(48)p eop %%Page: 49 57 bop 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y Fw(Rules)c(\(I\))d(through)h (\(VI\))g(also)g(apply)h(to)f(the)g(\\exact")f(op)q(erations,)i(but)f(they)g (don't)g(sa)o(y)f(an)o(ything)i(of)e(in)o(terest.)0 130 y(Here)k(are)g(some)g (iden)o(tities)i(that)e(apply)h(to)e(sp)q(eci\014c)j(op)q(erations)f(\(when)f (no)g(noti\014cation)h(o)q(ccurs\):)114 243 y Fu(add)186 250 y Fp(F)214 243 y Fw(\()p Fu(x;)8 b(y)r Fw(\))j(=)i Fu(add)452 250 y Fp(F)481 243 y Fw(\()p Fu(y)r(;)8 b(x)p Fw(\))114 356 y Fu(mul)194 363 y Fp(F)222 356 y Fw(\()p Fu(x;)g(y)r Fw(\))k(=)g Fu(mul)468 363 y Fp(F)497 356 y Fw(\()p Fu(y)r(;)c(x)p Fw(\))114 468 y Fu(sub)181 475 y Fp(F)210 468 y Fw(\()p Fu(x;)g(y)r Fw(\))j(=)i Fv(\000)p Fu(sub)478 475 y Fp(F)507 468 y Fw(\()p Fu(y)r(;)8 b(x)p Fw(\))114 581 y Fu(add)186 588 y Fp(F)214 581 y Fw(\()p Fv(\000)p Fu(x;)g Fv(\000)p Fu(y)r Fw(\))k(=)h Fv(\000)p Fu(add)558 588 y Fp(F)587 581 y Fw(\()p Fu(x;)8 b(y)r Fw(\))114 694 y Fu(sub)181 701 y Fp(F)210 694 y Fw(\()p Fv(\000)p Fu(x;)g Fv(\000)p Fu(y)r Fw(\))k(=)h Fv(\000)p Fu(sub)549 701 y Fp(F)578 694 y Fw(\()p Fu(x;)8 b(y)r Fw(\))114 807 y Fu(mul)194 814 y Fp(F)222 807 y Fw(\()p Fv(\000)p Fu(x;)g(y)r Fw(\))k(=)h Fu(mul)504 814 y Fp(F)533 807 y Fw(\()p Fu(x;)8 b Fv(\000)p Fu(y)r Fw(\))j(=)i Fv(\000)p Fu(mul)849 814 y Fp(F)878 807 y Fw(\()p Fu(x;)8 b(y)r Fw(\))114 920 y Fu(div)176 927 y Fp(F)204 920 y Fw(\()p Fv(\000)p Fu(x;)g(y)r Fw(\))k(=)h Fu(div)468 927 y Fp(F)496 920 y Fw(\()p Fu(x;)8 b Fv(\000)p Fu(y)r Fw(\))k(=)h Fv(\000)p Fu(div)795 927 y Fp(F)824 920 y Fw(\()p Fu(x;)8 b(y)r Fw(\))0 1033 y(F)l(or)15 b Fu(x)d Fv(6)p Fw(=)h(0,)114 1146 y Fu(x)f Fv(2)h Fu(F)224 1153 y Fp(N)286 1146 y Fv(\))28 b Fu(exponent)542 1153 y Fp(F)573 1146 y Fw(\()p Fu(x)p Fw(\))11 b Fv(2)i Fw([)p Fu(emin;)8 b(emax)p Fw(])114 1259 y Fu(x)k Fv(2)h Fu(F)224 1266 y Fp(D)284 1259 y Fv(\))28 b Fu(exponent)540 1266 y Fp(F)571 1259 y Fw(\()p Fu(x)p Fw(\))12 b Fv(2)h Fw([)p Fu(emin)d Fv(\000)g Fu(p)g Fw(+)g(1)p Fu(;)e(emin)h Fv(\000)i Fw(1])114 1373 y Fu(r)136 1357 y Fp(exponent)278 1363 y Fi(F)304 1357 y Fn(\()p Fp(x)p Fn(\))p Fm(\000)p Fn(1)411 1373 y Fv(2)i Fu(F)114 1488 y(r)136 1472 y Fp(exponent)278 1478 y Fi(F)304 1472 y Fn(\()p Fp(x)p Fn(\))p Fm(\000)p Fn(1)411 1488 y Fv(\024)g(j)p Fu(x)p Fv(j)f Fu(<)h(r)593 1472 y Fp(exponent)735 1478 y Fi(F)761 1472 y Fn(\()p Fp(x)p Fn(\))114 1601 y Fr(fr)n(action)270 1612 y Fp(F)299 1601 y Fw(\()p Fu(x)p Fw(\))f Fv(2)h Fw([1)p Fu(=r)o(;)8 b Fw(1\))114 1714 y Fu(scal)q(e)215 1721 y Fp(F)244 1714 y Fw(\()p Fr(fr)n(action)417 1725 y Fp(F)447 1714 y Fw(\()p Fu(x)p Fw(\))p Fu(;)21 b(exponent)726 1721 y Fp(F)757 1714 y Fw(\()p Fu(x)p Fw(\)\))12 b(=)h Fu(x)0 1827 y(S)s(cal)q(e)111 1834 y Fp(F)139 1827 y Fw(\()p Fu(x;)8 b(n)p Fw(\))18 b(is)h(exact)g(\(=)g Fu(x)13 b Fv(\003)f Fu(r)608 1810 y Fp(n)632 1827 y Fw(\))18 b(if)i Fu(x)12 b Fv(\003)h Fu(r)810 1810 y Fp(n)852 1827 y Fw(is)19 b(in)h(the)f(range)g Fv(\006)p Fw([)p Fr(fmin)1306 1834 y Fp(N)1339 1827 y Fu(;)8 b Fr(fmax)d Fw(])13 b Fv([)g(f)p Fw(0)p Fv(g)p Fw(,)18 b(or)h(if)g Fu(n)h Fv(\025)f Fw(0)g(and)0 1883 y Fv(j)p Fu(x)10 b Fv(\003)g Fu(r)104 1867 y Fp(n)127 1883 y Fv(j)i(\024)h Fr(fmax)6 b Fw(.)0 1968 y(F)l(or)15 b Fu(x)d Fv(6)p Fw(=)h(0)i(and)g Fu(y)g Fv(6)p Fw(=)e(0,)114 2081 y Fu(x)f Fw(=)h Fv(\006)p Fu(i)d Fv(\003)g Fu(ul)q(p)358 2088 y Fp(F)387 2081 y Fw(\()p Fu(x)p Fw(\))k(for)h(some)g(in)o(teger)g(i)h (whic)o(h)g(satis\014es)189 2194 y Fu(r)211 2177 y Fp(p)p Fm(\000)p Fn(1)289 2194 y Fv(\024)d Fu(i)f(<)h(r)435 2177 y Fp(p)530 2194 y Fw(if)j Fu(x)d Fv(2)g Fu(F)683 2201 y Fp(N)189 2250 y Fw(1)g Fv(\024)g Fu(i)f(<)h(r)371 2234 y Fp(p)p Fm(\000)p Fn(1)530 2250 y Fw(if)j Fu(x)d Fv(2)g Fu(F)683 2257 y Fp(D)114 2363 y Fu(exponent)297 2370 y Fp(F)327 2363 y Fw(\()p Fu(x)p Fw(\))f(=)h Fu(exponent)632 2370 y Fp(F)663 2363 y Fw(\()p Fu(y)r Fw(\))27 b Fv(\))h Fu(ul)q(p)887 2370 y Fp(F)916 2363 y Fw(\()p Fu(x)p Fw(\))11 b(=)i Fu(ul)q(p)1101 2370 y Fp(F)1130 2363 y Fw(\()p Fu(y)r Fw(\))114 2478 y Fu(x)f Fv(2)h Fu(F)224 2485 y Fp(N)286 2478 y Fv(\))28 b Fu(ul)q(p)423 2485 y Fp(F)452 2478 y Fw(\()p Fu(x)p Fw(\))12 b(=)h Fu(epsil)q(on)c Fv(\003)h Fu(r)783 2461 y Fp(exponent)925 2467 y Fi(F)951 2461 y Fn(\()p Fp(x)p Fn(\))p Fm(\000)p Fn(1)0 2591 y Fw(Note)17 b(that)h(if)g Fu(denor)q(m)f Fw(=)g Fx(true)p Fw(,)h Fu(ul)q(p)673 2598 y Fp(F)719 2591 y Fw(is)g(de\014ned)i(on)d(all)i(non-zero)f(\015oating)g(p)q (oin)o(t)g(v)m(alues.)29 b(If)18 b Fu(denor)q(m)f Fw(=)0 2647 y Fx(false)p Fw(,)f Fu(ul)q(p)193 2654 y Fp(F)237 2647 y Fw(under\015o)o(ws)g (on)g(all)h(v)m(alues)g(less)f(than)g Fr(fmin)1009 2654 y Fp(N)1042 2647 y Fu(=epsil)q(on)p Fw(,)f(i.e.,)h(on)g(all)g(v)m(alues)h(for)f(whic)o(h) g Fu(e)1810 2654 y Fp(F)1840 2647 y Fw(\()p Fu(x)p Fw(\))d Fu(<)0 2704 y(emin)d Fw(+)h Fu(p)f Fv(\000)g Fw(1.)1905 2828 y(49)p eop %%Page: 50 58 bop -72 889 13 57 v -72 2648 V 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993) 1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y(F)l(or)f Fv(j)p Fu(x)p Fv(j)c(\025)i Fw(1,)114 167 y Fu(intpar)q(t)258 174 y Fp(F)287 167 y Fw(\()p Fu(x)p Fw(\))f(=)h Fu(tr)q(unc)520 174 y Fp(F)550 167 y Fw(\()p Fu(x;)8 b(e)636 174 y Fp(F)664 167 y Fw(\()p Fu(x)p Fw(\)\))k(=)h Fu(tr)q(unc)915 174 y Fp(F)944 167 y Fw(\()p Fu(x;)8 b(exponent)1192 174 y Fp(F)1222 167 y Fw(\()p Fu(x)p Fw(\)\))0 289 y(F)l(or)15 b(an)o(y)f Fu(x)p Fw(,)h(when)h(no)f(noti\014cation)h(o)q(ccurs,)114 411 y Fu(succ)201 418 y Fp(F)230 411 y Fw(\()p Fu(pr)q(ed)338 418 y Fp(F)366 411 y Fw(\()p Fu(x)p Fw(\)\))c(=)h Fu(x)114 524 y(pr)q(ed)204 531 y Fp(F)232 524 y Fw(\()p Fu(succ)337 531 y Fp(F)366 524 y Fw(\()p Fu(x)p Fw(\)\))f(=)h Fu(x)114 637 y(succ)201 644 y Fp(F)230 637 y Fw(\()p Fv(\000)p Fu(x)p Fw(\))f(=)h Fv(\000)p Fu(pr)q(ed)512 644 y Fp(F)541 637 y Fw(\()p Fu(x)p Fw(\))114 750 y Fu(pr)q(ed)204 757 y Fp(F)232 750 y Fw(\()p Fv(\000)p Fu(x)p Fw(\))g(=)g Fv(\000)p Fu(succ)512 757 y Fp(F)541 750 y Fw(\()p Fu(x)p Fw(\))0 872 y(F)l(or)i(p)q(ositiv)o(e)h Fu(x)p Fw(,)f(when)g(no)g(noti\014cation)h(o)q(ccurs,)114 994 y Fu(succ)201 1001 y Fp(F)230 994 y Fw(\()p Fu(x)p Fw(\))c(=)h Fu(x)d Fw(+)g Fu(ul)q(p)497 1001 y Fp(F)526 994 y Fw(\()p Fu(x)p Fw(\))114 1107 y Fu(pr)q(ed)204 1114 y Fp(F)232 1107 y Fw(\()p Fu(x)p Fw(\))15 b(=)e Fu(x)d Fv(\000)g Fu(ul)q(p)502 1114 y Fp(F)531 1107 y Fw(\()p Fu(x)p Fw(\))105 b(if)16 b Fu(x)f Fw(is)h(not)f Fu(r)930 1090 y Fp(n)968 1107 y Fw(for)g(some)g Fu(n)e Fv(\025)g Fu(emin)309 1163 y Fw(=)g Fu(x)d Fv(\000)g Fu(ul)q(p)502 1170 y Fp(F)531 1163 y Fw(\()p Fu(x)p Fw(\))p Fu(=r)61 b Fw(if)16 b Fu(x)f Fw(is)h Fu(r)849 1147 y Fp(n)887 1163 y Fw(for)f(some)g Fu(n)e Fv(\025)g Fu(emin)114 1278 y(ul)q(p)178 1285 y Fp(F)206 1278 y Fw(\()p Fu(x)p Fw(\))d Fv(\003)g Fu(r)333 1262 y Fp(p)p Fm(\000)p Fp(n)414 1278 y Fw(=)j Fu(r)484 1262 y Fp(e)500 1268 y Fi(F)525 1262 y Fn(\()p Fp(x)p Fn(\))p Fm(\000)p Fp(n)0 1400 y Fw(F)l(or)i(an)o(y)f Fu(x)i Fw(and)f(an)o(y)g Fu(n)e(>)g Fw(0,)h(when)i(no)f(noti\014cation)h(o)q(ccurs,)114 1522 y Fu(r)136 1506 y Fp(exponent)278 1512 y Fi(F)304 1506 y Fn(\()p Fp(x)p Fn(\))p Fm(\000)p Fn(1)411 1522 y Fv(\024)d(j)p Fu(tr)q(unc)583 1529 y Fp(F)612 1522 y Fw(\()p Fu(x;)8 b(n)p Fw(\))p Fv(j)j(\024)i(j)p Fu(x)p Fv(j)114 1635 y Fu(r)q(ound)235 1642 y Fp(F)264 1635 y Fw(\()p Fu(x;)8 b(n)p Fw(\))14 b(=)f Fu(tr)q(unc)547 1642 y Fp(F)576 1635 y Fw(\()p Fu(x;)8 b(n)p Fw(\),)59 b(or)388 1692 y(=)13 b Fu(tr)q(unc)547 1699 y Fp(F)576 1692 y Fw(\()p Fu(x;)8 b(n)p Fw(\))h(+)h Fu(sig)r(n)828 1699 y Fp(F)857 1692 y Fw(\()p Fu(x)p Fw(\))g Fv(\003)g Fu(ul)q(p)1026 1699 y Fp(F)1054 1692 y Fw(\()p Fu(x)p Fw(\))g Fv(\003)g Fu(r)1181 1675 y Fp(p)p Fm(\000)p Fp(n)0 1840 y Fx(A.5.2.13)51 b(Precision,)17 b(accuracy)l(,)g(and)h (error)0 1954 y Fw(The)13 b(LIA-1)h(uses)g(the)f(term)g Fr(pr)n(e)n(cision)f Fw(to)h(mean)g(the)g(n)o(um)o(b)q(er)h(of)e(radix)i Fu(r)g Fw(digits)g(in)g(the)f(fraction)g(of)g(a)g(\015oating)0 2010 y(p)q(oin)o(t)20 b(data)g(t)o(yp)q(e.)34 b(Hence)21 b(all)f(\015oating)g(p)q (oin)o(t)h(n)o(um)o(b)q(ers)f(of)f(a)h(giv)o(en)g(t)o(yp)q(e)g(ha)o(v)o(e)g (the)g(same)f(precision.)36 b(A)0 2067 y(denormalized)18 b(n)o(um)o(b)q(er)f (has)f(the)h(same)f(n)o(um)o(b)q(er)h(of)f(radix)h Fu(r)g Fw(digits,)g(but)g (the)f(presence)i(of)e(leading)i(zeros)e(in)0 2123 y(its)f(fraction)g(means)h (that)e(few)o(er)h(of)g(these)g(digits)h(are)f(signi\014can)o(t.)0 2208 y(In)22 b(general,)h(n)o(um)o(b)q(ers)f(of)f(a)g(giv)o(en)h(data)f(t)o (yp)q(e)g(will)j(not)d(ha)o(v)o(e)g(the)g(same)g(accuracy)l(.)39 b(Most)21 b(will)i(con)o(tain)0 2264 y(com)o(binations)16 b(of)f(errors)f (whic)o(h)i(can)f(arise)h(from)e(man)o(y)h(sources:)51 2387 y(a\))22 b(The)15 b(error)g(in)o(tro)q(duced)h(b)o(y)f(a)g(single)h(atomic)f (arithmetic)h(op)q(eration;)48 2480 y(b\))23 b(The)17 b(error)g(in)o(tro)q (duced)h(b)o(y)g(appro)o(ximations)f(in)h(mathematical)f(constan)o(ts,)g(suc) o(h)h(as)e Fu(\031)r Fw(,)h(1)p Fu(=)p Fw(3,)g(or)1877 2443 y Fv(p)p 1915 2443 23 2 v 37 x Fw(2)o(,)114 2537 y(used)e(as)g(program)f (constan)o(ts;)53 2631 y(c\))23 b(The)17 b(errors)f(incurred)i(in)g(con)o(v)o (erting)e(data)g(b)q(et)o(w)o(een)h(external)h(format)d(\(decimal)j(text\))e (and)h(in)o(ternal)114 2687 y(format;)0 2828 y(50)p eop %%Page: 51 59 bop 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)48 45 y Fw(d\))23 b(The)15 b(error)g(in)o(tro)q(duced)h(b)o(y)f(use)h(of)e(a)h(mathematical)h(library)g (routine;)53 138 y(e\))23 b(The)15 b(errors)f(arising)i(from)f(limited)i (resolution)f(in)g(measuremen)o(ts;)56 231 y(f)t(\))22 b(Tw)o(o)14 b(t)o(yp)q(es)h(of)g(mo)q(deling)i(errors:)151 324 y(1\))22 b(Appro)o(ximations)c(made)g(in)g(the)g(form)o(ulation)g(of)f(a)h (mathematical)g(mo)q(del)g(for)f(the)h(application)214 381 y(at)c(hand;)151 453 y(2\))22 b(Con)o(v)o(ersion)16 b(of)g(the)g (mathematical)h(mo)q(del)g(in)o(to)g(a)f(computational)g(mo)q(del,)i (including)h(appro)o(xi-)214 510 y(mations)c(imp)q(osed)h(b)o(y)f(the)g (discrete)h(nature)f(of)g(computers.)51 603 y(g\))22 b(The)15 b(maxim)o(um)g(p)q(ossible)i(accum)o(ulation)f(of)f(suc)o(h)g(errors)g(in)h (a)f(calculation;)48 696 y(h\))23 b(The)15 b(true)g(accum)o(ulation)h(of)f (suc)o(h)g(errors)g(in)h(a)f(calculation;)61 789 y(i\))23 b(The)15 b(\014nal)h(di\013erence)g(b)q(et)o(w)o(een)g(the)f(computed)h(\\answ)o(er")e (and)h(the)h(\\truth.")0 909 y(The)g(last)f(item)h(is)g(the)f(goal)g(of)g (error)g(analysis.)21 b(T)l(o)15 b(obtain)h(this)g(\014nal)g(di\013erence,)g (it)g(is)g(necessary)f(to)g(under-)0 966 y(stand)j(the)g(other)g(eigh)o(t)h (items,)g(some)f(of)f(whic)o(h)j(are)d(discussed)j(b)q(elo)o(w.)30 b(A)18 b(future)h(part)e(of)h(this)h(standard,)0 1022 y Fr(Information)14 b(te)n(chnolo)n(gy)g({)g(L)n(anguage)g(indep)n(endent)f(arithmetic)i({)g (Part)g(2:)20 b(Mathematic)n(al)14 b(pr)n(o)n(c)n(e)n(dur)n(es)f Fw([15)o(],)0 1079 y(will)k(deal)f(with)f(items)h(\(b\),)e(\(c\),)h(and)g (\(d\).)0 1227 y Fx(A.5.2.13.1)51 b(The)17 b(LIA-1)h(and)g(error)0 1341 y Fw(The)13 b(LIA-1)g(in)o(terprets)g(the)f(error)g(in)i(a)e(single)i (atomic)e(arithmetic)h(op)q(eration)g(to)f(mean)g(the)h(error)f(in)o(tro)q (duced)0 1397 y(in)o(to)k(the)g(result)h(b)o(y)f(the)g(op)q(eration,)h (without)f(regard)f(to)h(an)o(y)g(error)f(whic)o(h)i(ma)o(y)f(ha)o(v)o(e)f(b) q(een)j(presen)o(t)e(in)h(the)0 1454 y(input)f(op)q(erands.)0 1538 y(The)g(rounding)h(function)f(in)o(tro)q(duced)h(in)g(5.2.5)d(pro)q (duces)i(the)g(only)h(source)e(of)h(error)f(con)o(tributed)h(b)o(y)g(arith-)0 1595 y(metic)g(op)q(erations.)j(If)d(the)f(results)g(of)g(an)g(arithmetic)g (op)q(eration)g(are)g(exactly)g(represen)o(table,)h(they)f(m)o(ust)f(b)q(e)0 1651 y(returned)i(without)f(error.)k(Otherwise,)d(the)f(LIA-1)h(requires)g (that)f(the)g(error)g(in)h(the)f(result)h(of)f(a)g(conforming)0 1708 y(op)q(eration)g(b)q(e)h(b)q(ounded)h(in)f(magnitude)g(b)o(y)f(one)g (ulp.)0 1792 y(Rounding)j(that)d(results)i(in)g(a)e(denormalized)j(n)o(um)o (b)q(er)f(triggers)e(a)h(loss)g(of)g(signi\014can)o(t)h(digits.)24 b(The)16 b(result)g(is)0 1849 y(alw)o(a)o(ys)g(exact)h(for)f(an)h Fu(add)477 1856 y Fp(F)523 1849 y Fw(or)f Fu(sub)647 1856 y Fp(F)693 1849 y Fw(op)q(eration.)26 b(Ho)o(w)o(ev)o(er,)16 b(a)g(denormalized)j(result)e(for)g(a)f Fu(mul)1756 1856 y Fp(F)1802 1849 y Fw(or)g Fu(div)1921 1856 y Fp(F)0 1905 y Fw(op)q(eration)e (usually)i(is)f(not)e(exact,)h(whic)o(h)h(in)o(tro)q(duces)g(an)f(error)g(of) f(at)h(most)f(one)i(ulp.)20 b(Because)15 b(of)f(the)g(loss)g(of)0 1962 y(signi\014can)o(t)i(digits,)f(the)g(relativ)o(e)g(error)f(due)i(to)e (rounding)i(exceeds)f(that)g(for)f(rounding)h(a)g(normalized)h(result.)0 2018 y(Hence)i(accuracy)f(of)f(a)h(denormalized)h(result)g(for)e(a)g Fu(mul)1018 2025 y Fp(F)1064 2018 y Fw(or)g Fu(div)1183 2025 y Fp(F)1229 2018 y Fw(op)q(eration)h(is)g(usually)h(lo)o(w)o(er)f(than)g (that)0 2075 y(for)e(a)f(normalized)j(result.)0 2159 y(Note)f(that)f(the)h (error)f(in)i(the)f(result)g(of)g(an)f(op)q(eration)i(on)e(exact)h(input)h (op)q(erands)f(b)q(ecomes)h(an)f(\\inherited")0 2216 y(error)e(if)i(and)f (when)h(this)g(result)f(app)q(ears)h(as)e(input)i(to)f(a)g(subsequen)o(t)h (op)q(eration.)k(The)15 b(in)o(teraction)h(b)q(et)o(w)o(een)0 2272 y(the)c(in)o(trinsic)h(error)e(in)i(an)e(op)q(eration)h(and)g(the)g (inherited)h(errors)e(presen)o(t)h(in)h(the)e(input)i(op)q(erands)f(is)g (discussed)0 2329 y(b)q(elo)o(w)k(in)g(A.5.2.13.3.)0 2477 y Fx(A.5.2.13.2)51 b(Empirical)19 b(and)f(mo)q(deling)g(errors)0 2591 y Fw(Empirical)c(errors)d(arise)i(from)f(data)f(tak)o(en)h(from)g (sensors)g(of)f(limited)k(resolution,)e(uncertain)o(ties)g(in)g(the)g(v)m (alues)0 2647 y(of)j(ph)o(ysical)i(constan)o(ts,)e(and)h(so)g(on.)24 b(Suc)o(h)18 b(errors)e(can)h(b)q(e)g(incorp)q(orated)g(as)g(initial)i (errors)d(in)h(the)g(relev)m(an)o(t)0 2704 y(input)f(parameters)f(or)f (constan)o(ts.)1905 2828 y(51)p eop %%Page: 52 60 bop 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y(Mo)q(deling)g(errors)f(arise)g (from)g(a)g(sequence)h(of)f(appro)o(ximations:)51 167 y(a\))22 b(F)l(orm)o(ulation)17 b(of)g(the)g(problem)i(in)f(terms)f(of)g(the)g(la)o (ws)h(and)f(principles)j(relev)m(an)o(t)e(to)f(the)h(application.)114 224 y(The)d(underlying)i(theory)e(ma)o(y)f(b)q(e)i(incompletely)i(form)o (ulated)d(or)f(understo)q(o)q(d.)48 317 y(b\))23 b(F)l(orm)o(ulation)11 b(of)h(a)f(mathematical)h(mo)q(del)h(for)e(the)h(underlying)i(theory)l(.)k(A) o(t)12 b(this)g(stage)f(appro)o(ximations)114 374 y(ma)o(y)j(en)o(ter)h(from) g(neglect)h(of)e(e\013ects)h(exp)q(ected)i(to)d(b)q(e)i(small.)53 468 y(c\))23 b(Con)o(v)o(ersion)d(of)g(the)h(mathematical)g(mo)q(del)h(in)o (to)e(a)h(computer)f(mo)q(del)i(b)o(y)f(replacing)h(in\014nite)g(series)114 524 y(b)o(y)16 b(a)f(\014nite)i(n)o(um)o(b)q(er)f(of)g(terms,)f(transforming) g(con)o(tin)o(uous)h(in)o(to)g(discrete)h(pro)q(cesses)f(\(e.g.)22 b(n)o(umerical)114 581 y(in)o(tegration\),)14 b(and)i(so)e(on.)0 703 y(Estimates)20 b(of)g(the)h(mo)q(deling)h(errors)e(can)h(b)q(e)g(incorp)q (orated)g(as)f(additions)i(to)e(the)h(computational)g(errors)0 759 y(discussed)16 b(in)g(the)e(next)h(section.)20 b(The)15 b(complete)h(error)d(mo)q(del)j(will)g(determine)g(whether)f(the)f(\014nal)i (accuracy)0 816 y(of)f(the)g(output)g(of)g(the)g(program)f(is)i(adequate)f (for)g(the)g(purp)q(oses)h(at)e(hand.)0 900 y(Finally)l(,)20 b(comparison)e(of)f(the)h(output)g(of)g(the)g(computer)f(mo)q(del)i(with)f (observ)m(ations)h(ma)o(y)e(shed)h(insigh)o(t)h(on)0 957 y(the)c(v)m(alidit)o (y)i(of)e(the)g(v)m(arious)h(appro)o(ximations)f(made)g({)g(one)g(migh)o(t)g (ev)o(en)h(iden)o(tify)g(a)f(\\new")g(planet!)0 1105 y Fx(A.5.2.13.3)51 b(Propagation)18 b(of)g(errors)0 1219 y Fw(Let)c(eac)o(h)f(v)m(ariable)i(in)f (a)f(program)f(b)q(e)i(giv)o(en)g(b)o(y)g(the)f(sum)g(of)g(its)h(true)f(v)m (alue)i(\(denoted)e(with)h(subscript)g Fu(t)p Fw(\))g(and)0 1275 y(its)h(error)g(\(denoted)g(with)h(subscript)g Fu(e)p Fw(\).)k(That)14 b(is,)i(the)f(program)f(v)m(ariable)i Fu(x)114 1398 y(x)c Fw(=)h Fu(x)226 1405 y Fp(t)251 1398 y Fw(+)e Fu(x)323 1405 y Fp(e)0 1520 y Fw(consists)16 b(of)f(the)h(\\true")e(v)m(alue)j(plus)g (the)e(accum)o(ulated)i(\\error".)i(Note)d(that)e(the)i(v)m(alues)h(tak)o(en) e(on)g(b)o(y)h Fu(x)f Fw(are)0 1576 y(\\mac)o(hine)h(n)o(um)o(b)q(ers")f(in)h (the)f(set)g Fu(F)6 b Fw(,)16 b(while)g Fu(x)817 1583 y Fp(t)847 1576 y Fw(and)g Fu(x)962 1583 y Fp(e)995 1576 y Fw(are)f(mathematical)g(quan) o(tities)h(in)g Fv(R)p Fw(.)0 1661 y(The)h(follo)o(wing)g(example)g (illustrates)h(ho)o(w)e(to)g(estimate)g(the)h(total)e(error)h(con)o(tributed) h(b)o(y)g(the)f(com)o(bination)0 1717 y(of)i(errors)f(in)i(the)g(input)g(op)q (erands)g(and)f(the)g(in)o(trinsic)i(error)e(in)h(addition.)30 b(First,)18 b(the)h(result)f(of)g(an)g(LIA-1)0 1774 y(op)q(eration)e(on)f (appro)o(ximate)g(data)g(can)h(b)q(e)g(describ)q(ed)i(as)d(the)h(sum)f(of)g (the)h(result)g(of)f(the)h(true)f(op)q(eration)h(on)0 1830 y(that)e(data)h(and)g(the)h(\\rounding)f(error",)f(where)114 1952 y Fu(r)q(ounding)p 304 1952 14 2 v 17 w(er)q(r)q(or)f Fw(=)g Fu(computed)p 681 1952 V 16 w(v)r(al)q(ue)d Fv(\000)g Fu(tr)q(ue)p 947 1952 V 17 w(v)r(al)q(ue)0 2074 y Fw(Next,)k(the)g(true)g(op) q(eration)g(on)f(appro)o(ximate)h(data)f(is)i(rewritten)f(in)g(terms)g(of)f (true)h(op)q(erations)g(on)g(true)g(data)0 2131 y(and)h(errors)f(in)h(the)g (data.)k(Finally)l(,)d(the)f(magnitude)g(of)f(the)h(error)f(in)h(the)g (result)g(can)g(b)q(e)g(estimated)g(from)f(the)0 2187 y(errors)g(in)i(the)g (data)e(and)i(the)f(rounding)h(error.)0 2272 y(Consider)g(the)f(result,)g Fu(z)r Fw(,)g(of)g(the)g(LIA-1)h(addition)h(op)q(eration)e(on)g Fu(x)g Fw(and)h Fu(y)r Fw(:)114 2394 y Fu(z)e Fw(=)f Fu(add)269 2401 y Fp(F)298 2394 y Fw(\()p Fu(x;)8 b(y)r Fw(\))j(=)i(\()p Fu(x)d Fw(+)g Fu(y)r Fw(\))g(+)g Fu(r)q(ounding)p 850 2394 V 18 w(er)q(r)q(or)0 2516 y Fw(where)15 b(the)h(true)f(mathematical)g(sum)g (of)g Fu(x)g Fw(and)h Fu(y)h Fw(is)114 2638 y(\()p Fu(x)9 b Fw(+)i Fu(y)r Fw(\))h(=)h Fu(x)341 2645 y Fp(t)366 2638 y Fw(+)d Fu(x)437 2645 y Fp(e)466 2638 y Fw(+)g Fu(y)533 2645 y Fp(t)559 2638 y Fw(+)g Fu(y)626 2645 y Fp(e)657 2638 y Fw(=)j(\()p Fu(x)749 2645 y Fp(t)774 2638 y Fw(+)d Fu(y)841 2645 y Fp(t)856 2638 y Fw(\))g(+)h(\()p Fu(x)974 2645 y Fp(e)1002 2638 y Fw(+)f Fu(y)1069 2645 y Fp(e)1088 2638 y Fw(\))0 2828 y(52)p eop %%Page: 53 61 bop 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y Fw(By)d(de\014nition,)i(the)e (\\true")g(part)f(of)h Fu(z)i Fw(is)114 163 y Fu(z)135 170 y Fp(t)162 163 y Fw(=)c Fu(x)236 170 y Fp(t)261 163 y Fw(+)e Fu(y)329 170 y Fp(t)0 281 y Fw(so)k(that)114 399 y Fu(z)f Fw(=)f Fu(z)218 406 y Fp(t)243 399 y Fw(+)e(\()p Fu(x)333 406 y Fp(e)361 399 y Fw(+)g Fu(y)429 406 y Fp(e)447 399 y Fw(\))f(+)h Fu(r)q(ounding)p 711 399 14 2 v 17 w(er)q(r)q(or)0 517 y Fw(Hence)114 635 y Fu(z)135 642 y Fp(e)166 635 y Fw(=)i(\()p Fu(x)258 642 y Fp(e)286 635 y Fw(+)d Fu(y)353 642 y Fp(e)372 635 y Fw(\))g(+)g Fu(r)q(ounding)p 635 635 V 18 w(er)q(r)q(or)0 754 y Fw(The)16 b(rounding)h(error)f(is)g(b)q (ounded)i(in)f(magnitude)g(b)o(y)f Fu(ul)q(p)1041 761 y Fp(F)1069 754 y Fw(\()p Fu(z)r Fw(\).)23 b(If)16 b(b)q(ounds)h(on)f Fu(x)1459 761 y Fp(e)1494 754 y Fw(and)g Fu(y)1605 761 y Fp(e)1640 754 y Fw(are)f(also)i(kno)o(wn,)0 810 y(then)j(a)g(b)q(ound)g(on)g Fu(z)384 817 y Fp(e)422 810 y Fw(can)g(b)q(e)h(calculated)g(for)e(use)h(in)h (subsequen)o(t)f(op)q(erations)g(for)f(whic)o(h)i Fu(z)h Fw(is)e(an)g(input)0 866 y(op)q(erand.)0 951 y(Although)d(it)g(is)g(a)f(length)o(y)g(and)h (tedious)g(pro)q(cess,)g(an)f(analysis)h(of)f(an)h(en)o(tire)f(program)g(can) g(b)q(e)h(carried)g(out)0 1008 y(from)e(the)h(\014rst)f(op)q(eration)h (through)f(the)h(last.)22 b(It)15 b(is)i(lik)o(ely)g(that)e(the)h(estimates)f (for)h(the)f(\014nal)i(errors)e(will)i(b)q(e)0 1064 y(unduly)d(p)q (essimistic)h(b)q(ecause)f(the)e(signs)i(of)e(the)h(v)m(arious)g(errors)f (are)g(usually)i(unkno)o(wn.)19 b(Th)o(us,)13 b(at)f(eac)o(h)h(stage)0 1121 y(the)i(w)o(orst)f(case)h(com)o(bination)h(of)f(signs)h(and)f (magnitudes)h(in)g(the)f(errors)f(m)o(ust)h(b)q(e)h(assumed.)0 1205 y(Under)h(some)f(circumstances)h(it)g(is)f(p)q(ossible)j(to)c(obtain)i (a)f(realistic)h(estimate)g(of)f(the)g(true)g(accum)o(ulation)h(of)0 1262 y(error)d(instead)i(of)e(the)h(maxim)o(um)g(p)q(ossible)i(accum)o (ulation,)f(e.g.)j(in)d(sums)f(of)f(terms)h(with)g(kno)o(wn)g(c)o(haracter-)0 1318 y(istics.)0 1466 y Fx(A.5.2.14)51 b(Extra)18 b(precision)0 1580 y Fw(The)12 b(use)f(of)g(a)h(higher)g(lev)o(el)h(of)e(range)g(and/or)f (precision)j(is)f(a)g(time-honored)g(w)o(a)o(y)e(of)h(eliminating)j(o)o(v)o (er\015o)o(w)c(and)0 1636 y(under\015o)o(w)18 b(problems)h(and)f(pro)o (viding)h(\\guard)f(digits")g(for)g(the)g(in)o(termediate)h(calculations)g (of)f(a)g(problem.)0 1693 y(In)e(fact,)f(one)h(of)f(the)h(reasons)f(that)g (programming)g(languages)h(ha)o(v)o(e)f(more)h(than)f(one)h(\015oating)g(p)q (oin)o(t)g(t)o(yp)q(e)f(is)0 1749 y(to)g(p)q(ermit)g(programmers)f(to)h(con)o (trol)g(the)g(precision)i(of)e(calculations.)0 1834 y(Clearly)l(,)f (programmers)f(should)h(b)q(e)g(able)h(to)d(con)o(trol)i(the)f(precision)i (of)e(calculations)i(whenev)o(er)f(the)g(accuracy)0 1890 y(of)i(their)h (algorithms)g(require)g(it.)24 b(Con)o(v)o(ersely)l(,)17 b(programmers)e (should)j(not)e(b)q(e)h(b)q(othered)g(with)g(suc)o(h)g(details)0 1947 y(in)f(those)f(parts)g(of)f(their)i(programs)e(that)g(are)h(not)g (precision)i(sensitiv)o(e.)0 2031 y(Some)d(programming)e(language)i(implemen) o(tations)h(calculate)g(in)o(termediate)f(v)m(alues)h(inside)g(expressions)f (to)f(a)0 2088 y(higher)f(precision)h(than)e(is)g(called)i(for)e(b)o(y)g (either)g(the)h(input)g(v)m(ariables)g(or)f(the)g(result)h(v)m(ariable.)20 b(This)11 b(\\extended)0 2144 y(in)o(termediate)16 b(precision")h(strategy)c (has)i(the)h(follo)o(wing)g(adv)m(an)o(tages:)51 2262 y(a\))22 b(The)12 b(result)g(v)m(alue)i(ma)o(y)d(b)q(e)i(closer)f(to)g(the)g (mathematically)g(correct)g(result)h(than)e(if)i(\\normal")e(precision)114 2319 y(had)k(b)q(een)h(used.)48 2411 y(b\))23 b(The)15 b(programmer)f(is)i (not)f(b)q(othered)g(with)h(explicitly)i(calling)f(for)d(higher)i(precision)h (calculations.)0 2529 y(Ho)o(w)o(ev)o(er,)d(there)h(are)g(also)g(some)g (disadv)m(an)o(tages:)51 2647 y(a\))22 b(Since)28 b(the)e(use)h(of)f (extended)h(precision)h(v)m(aries)f(with)g(implemen)o(tation,)j(programs)25 b(b)q(ecome)i(less)114 2704 y(p)q(ortable.)1905 2828 y(53)p eop %%Page: 54 62 bop 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)48 45 y(b\))23 b(It)18 b(is)h(di\016cult)i(to)d(predict)h(the)g(results)g(of)f(calculations)i(and)f (comparisons,)g(ev)o(en)g(when)g(all)h(\015oating)114 102 y(p)q(oin)o(t)15 b(parameters)g(and)g(rounding)h(functions)g(are)f(kno)o(wn.)53 191 y(c\))23 b(It)11 b(is)h(imp)q(ossible)h(to)e(rely)h(on)f(tec)o(hniques)i (that)d(dep)q(end)j(on)f(the)f(n)o(um)o(b)q(er)h(of)f(digits)h(in)g(w)o (orking)f(precision.)48 281 y(d\))23 b(Programmers)17 b(lose)j(the)f(adv)m (an)o(tage)g(of)f(extra)h(precision)i(if)e(they)h(cannot)f(reliably)i(store)d (parts)h(of)f(a)114 337 y(long,)d(complicated)h(expression)g(in)g(a)f(temp)q (orary)g(v)m(ariable)h(at)f(the)g(higher)h(precision.)53 427 y(e\))23 b(Programmers)13 b(cannot)i(exercise)i(precise)f(con)o(trol)f(when)g (needed.)56 516 y(f)t(\))22 b(Programmers)13 b(cannot)i(trade)g(o\013)f (accuracy)i(against)e(p)q(erformance.)0 627 y(Assuming)h(that)f(a)g (programming)g(language)g(designer)i(or)e(implemen)o(tor)h(w)o(an)o(ts)e(to)h (pro)o(vide)h(extended)h(in)o(ter-)0 684 y(mediate)g(precision)h(in)f(a)f(w)o (a)o(y)g(consisten)o(t)g(with)h(the)f(LIA-1,)h(ho)o(w)f(can)h(it)f(b)q(e)h (done?)22 b(Implemen)o(tations)17 b(m)o(ust)0 740 y(follo)o(w)e(the)h(follo)o (wing)g(rules)f(detailed)i(in)f(clause)g(8:)51 851 y(a\))22 b(Eac)o(h)c(\015oating)g(p)q(oin)o(t)h(t)o(yp)q(e,)f(ev)o(en)h(those)f(that)f (are)h(only)h(used)g(in)g(extended)g(in)o(termediate)g(precision)114 908 y(calculations,)d(m)o(ust)f(b)q(e)g(do)q(cumen)o(ted.)48 997 y(b\))23 b(The)14 b(translation)f(of)g(expressions)i(in)o(to)e(LIA-1)i (op)q(erations)f(m)o(ust)f(b)q(e)h(do)q(cumen)o(ted.)20 b(This)14 b(includes)i(an)o(y)114 1054 y(implicit)h(con)o(v)o(ersions)f(to)e(or)h(from) f(extended)i(precision)h(t)o(yp)q(es)e(o)q(ccurring)h(inside)h(expressions.)0 1165 y(This)k(do)q(cumen)o(tation)g(allo)o(ws)g(programmers)f(to)g(predict)i (what)e(eac)o(h)h(implemen)o(tation)h(will)g(do.)36 b(T)l(o)21 b(the)0 1222 y(exten)o(t)g(that)f(a)h(programming)f(language)i(standard)e (constrains)h(what)g(implemen)o(tations)h(can)g(do)f(in)h(this)0 1278 y(area,)d(the)g(programmer)f(will)j(b)q(e)f(able)g(to)f(mak)o(e)f (predictions)j(across)d(all)i(implemen)o(tations.)33 b(In)20 b(addition,)0 1335 y(the)h(implemen)o(tation)h(should)g(also)f(pro)o(vide)h (the)f(user)g(some)f(explicit)k(con)o(trols)c(\(p)q(erhaps)h(with)h(compiler) 0 1391 y(directiv)o(es)16 b(or)f(other)g(declarations\))g(to)g(prev)o(en)o(t) g(or)g(enable)h(this)g(\\silen)o(t")f(widening)i(of)e(precision.)0 1537 y Fx(A.5.3)51 b(Con)o(v)o(ersion)16 b(op)q(erations)0 1651 y Fw(The)i(con)o(v)o(ersion)f(op)q(erations)h(are)f(easily)i(de\014ned.) 28 b(F)l(our)17 b(cases)g(arise)h(according)g(to)e(the)i(source)g(and)f (desti-)0 1708 y(nation)f(t)o(yp)q(es.)22 b(When)16 b(b)q(oth)g(are)f(in)o (teger)h(t)o(yp)q(es,)g(the)g(con)o(v)o(ersion)g(op)q(eration)g(preserv)o(es) g(the)f(v)m(alue)i(if)g(within)0 1764 y(range)e(of)g(the)g(destination)h(t)o (yp)q(e,)f(otherwise)g(giv)o(es)h(an)f(o)o(v)o(er\015o)o(w)f(noti\014cation.) 0 1849 y(F)l(or)h(the)h(con)o(v)o(ersion)g(to)f(a)h(\015oating)f(p)q(oin)o(t) i(t)o(yp)q(e,)e(the)h(v)m(alue)h(is)g(computed)f(b)o(y)g(applying)h(the)f (result)g(function)0 1905 y(with)d(a)g(round-to-nearest)f(rounding)i(rule)g (for)e(the)h(destination)h(t)o(yp)q(e,)f(and)g(the)g(implemen)o(tation)h(m)o (ust)e(do)q(cu-)0 1962 y(men)o(t)i(whic)o(h)h(of)e(the)h(p)q(ossible)i (round-to-nearest)e(rules)g(is)h(b)q(eing)g(used.)20 b(Rules)15 b(\(I\))f(through)g(\(VI\))g(of)f(A.5.2.12)0 2018 y(hold)k(for)e(these)h(con) o(v)o(ersions.)22 b(In)16 b(particular,)h(con)o(v)o(ersion)f(to)f(a)h(higher) g(precision)i(\(or)d(wider)h(range\))f(t)o(yp)q(e)h(is)0 2075 y(alw)o(a)o(ys)e(exact,)h(and)g(nev)o(er)h(pro)q(duces)g(a)f(noti\014cation.) 0 2159 y(F)l(or)f(the)g(\015oating)h(p)q(oin)o(t)g(to)f(in)o(teger)g(con)o(v) o(ersions,)h(a)f(sp)q(ecial)i(purp)q(ose)f(rounding)h(function)f(is)g (applied,)h(whic)o(h)0 2216 y(ma)o(y)j(dep)q(end)j(up)q(on)f(b)q(oth)g(the)f (source)g(and)g(destination)i(t)o(yp)q(es.)34 b(The)21 b(function)g(c)o (hosen)f(will)i(di\013er)f(from)0 2272 y(language)e(to)f(language:)26 b(Ada)19 b(c)o(ho)q(oses)f(round-to-nearest,)h(P)o(ascal)f(pro)o(vides)h(b)q (oth)g(round-to-nearest)f(and)0 2329 y(round-to-zero.)0 2477 y FB(A.6)56 b(Noti\014cation)0 2591 y Fw(The)20 b(essen)o(tial)g(goal)f(of)h (the)f(noti\014cation)h(pro)q(cess)g(is)g(that)f(it)h(should)g(not)g(b)q(e)g (p)q(ossible)h(for)e(a)g(program)g(to)0 2647 y(terminate)d(with)h(an)g (unresolv)o(ed)g(arithmetic)g(violation)g(unless)h(the)f(user)f(has)h(b)q (een)g(informed)g(of)f(that)g(fact,)0 2704 y(since)g(the)g(results)f(of)g (suc)o(h)h(a)e(program)g(ma)o(y)h(b)q(e)h(unreliable.)0 2828 y(54)p eop %%Page: 55 63 bop -72 345 13 57 v -72 599 V -72 656 V -72 2330 13 537 v -72 2592 13 57 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y(A.6.1)51 b(Noti\014cation)20 b(alternativ)o(es)0 159 y Fw(LIA-1)15 b(pro)o(vides)g(a)e(c)o(hoice)i(of)f (noti\014cation)h(mec)o(hanisms)g(to)e(\014t)h(the)h(requiremen)o(ts)f(of)g (v)m(arious)h(programming)0 216 y(languages.)20 b(The)15 b(\014rst)f (alternativ)o(e)h(\(alteration)g(of)f(con)o(trol)h(\015o)o(w\))f(essen)o (tially)i(sa)o(ys)e(\\if)i(a)e(programming)g(lan-)0 272 y(guage)d(already)h (pro)o(vides)g(an)g(exception)g(handlng)h(mec)o(hanism,)f(use)g(it.")19 b(The)12 b(second)g(alternativ)o(e)g(\(recording)0 329 y(of)i(indicators\))g (pro)o(vides)g(a)g(p)q(ortable)g(exception)h(handling)h(mec)o(hanism)f(for)e (languages)h(that)f(do)h(not)g(already)0 385 y(ha)o(v)o(e)g(one.)20 b(Language)14 b(or)g(binding)i(standards)e(are)g(exp)q(ected)h(to)f(c)o(ho)q (ose)g(one)h(of)f(these)g(t)o(w)o(o)f(as)h(their)h(primary)0 441 y(noti\014cation)h(mec)o(hanism.)0 526 y(The)c(third)h(alternativ)o(e)f (\(termination)g(with)h(message\))e(is)h(pro)o(vided)h(for)f(use)g(in)h(t)o (w)o(o)e(situations:)18 b(\(a\))11 b(when)i(the)0 583 y(programmer)j(has)h (not)g(\(y)o(et\))f(programmed)h(an)o(y)g(exception)h(handling)h(co)q(de,)f (and)f(\(b\))g(when)h(a)f(user)g(w)o(an)o(ts)0 639 y(to)e(to)f(b)q(e)i (immediately)h(informed)f(of)e(an)o(y)h(exception.)0 724 y(Implemen)o (tations)j(are)f(encouraged)g(to)f(pro)o(vide)i(additional)g(mec)o(hanisms)g (whic)o(h)g(w)o(ould)f(b)q(e)h(useful)g(for)e(de-)0 780 y(bugging.)j(F)l(or) 12 b(example,)h(pausing)g(and)f(dropping)h(in)o(to)f(a)g(debugger,)g(or)g (con)o(tin)o(uing)h(execution)g(while)g(writing)0 837 y(a)i(log)g(\014le.)0 921 y(In)h(order)f(to)g(pro)o(vide)h(the)f(full)i(adv)m(an)o(tage)d(of)h (these)h(noti\014cation)g(capabilities,)h(information)f(describing)h(the)0 978 y(nature)f(of)g(the)g(violation)i(should)f(b)q(e)g(complete)g(and)f(a)o (v)m(ailable)i(as)e(close)h(in)g(time)g(to)e(the)i(o)q(ccurrence)g(of)f(the)0 1034 y(violation)g(as)f(p)q(ossible.)0 1182 y Fx(A.6.1.1)51 b(Alteration)18 b(of)g(con)o(trol)g(\015o)o(w)0 1297 y Fw(This)12 b(alternativ)o(e)f(requires)h(the)f(programmer)f(to)g(pro)o(vide)i (application)h(sp)q(eci\014c)f(co)q(de)g(whic)o(h)g(decides)h(whether)0 1353 y(the)21 b(computation)g(should)i(pro)q(ceed,)g(and)e(if)h(so)f(ho)o(w)f (it)i(should)g(pro)q(ceed.)39 b(This)21 b(alternativ)o(e)h(places)g(the)0 1409 y(resp)q(onsibilit)o(y)d(for)d(the)g(decision)j(to)d(pro)q(ceed)h(with)g (the)f(programmer)g(who)g(is)h(presumed)g(to)f(ha)o(v)o(e)g(the)h(b)q(est)0 1466 y(understanding)f(of)f(the)g(needs)h(of)f(the)g(application.)0 1551 y(AD)o(A)g(and)g(PL/I)g(are)g(examples)h(of)f(standard)f(languages)h (whic)o(h)h(include)i(syn)o(tax)c(whic)o(h)i(allo)o(ws)f(the)g(user)h(to)0 1607 y(describ)q(e)h(this)f(t)o(yp)q(e)f(of)g(alteration)g(of)g(con)o(trol)f (\015o)o(w.)0 1692 y(Note,)e(ho)o(w)o(ev)o(er,)f(that)g(a)h(programmer)f(ma)o (y)g(not)g(ha)o(v)o(e)h(pro)o(vided)h(co)q(de)f(for)f(all)i(trouble-sp)q(ots) g(in)f(the)g(program.)0 1748 y(This)k(implies)h(that)e(program)f(termination) h(m)o(ust)g(b)q(e)h(an)f(a)o(v)m(ailable)i(alternativ)o(e.)0 1833 y(Although)d(this)g(alternativ)o(e)f(is)h(expressed)g(in)h(terms)e(of)g (con)o(trol)g(\015o)o(w,)g(clause)h(2)f(giv)o(es)h(binding)h(standards)e(the) 0 1889 y(p)q(o)o(w)o(er)h(to)g(select)h(the)g(exception)g(handling)i(mec)o (hanisms)e(most)e(natural)i(for)f(the)h(programming)e(language)i(in)0 1946 y(question.)31 b(F)l(or)18 b(example,)i(a)f(functional)h(programming)e (language)h(migh)o(t)f(extend)i(eac)o(h)f(of)f(its)h(t)o(yp)q(es)g(with)0 2002 y(sp)q(ecial)c(\\error")d(v)m(alues.)20 b(In)14 b(suc)o(h)g(a)e (language,)i(the)f(natural)g(noti\014cation)h(mec)o(hanism)g(w)o(ould)g(b)q (e)f(to)g(pro)q(duce)0 2059 y(error)h(v)m(alues)j(rather)d(than)i(to)e(alter) h(con)o(trol)g(\015o)o(w.)0 2143 y(Designers)e(of)f(programming)g(languages)g (and)h(binding)h(standards)e(should)i(k)o(eep)f(in)g(mind)g(the)g(basic)g (principle)0 2200 y(that)i(a)g(program)g(should)i(not)e(b)q(e)i(allo)o(w)o (ed)f(to)f(tak)o(e)g(signi\014can)o(t)i(irrev)o(ersible)g(action)f(\(for)f (example,)h(prin)o(ting)0 2256 y(out)j(apparen)o(tly)g(accurate)f(results,)i (or)f(ev)o(en)g(terminating)h(\\normally"\))e(based)i(on)e(erroneous)h (arithmetic)0 2313 y(computations.)0 2461 y Fx(A.6.1.2)51 b(Recording)18 b(of)g(indicators)0 2575 y Fw(This)g(alternativ)o(e)f(giv)o(es)h(a)f (programmer)f(the)h(primitiv)o(es)i(needed)g(to)d(obtain)i(exception)g (handling)h(capabil-)0 2631 y(ities)g(in)g(cases)g(where)f(the)g(programming) g(language)g(do)q(es)h(not)f(pro)o(vide)h(suc)o(h)f(a)g(mec)o(hanism)h (directly)l(.)31 b(An)0 2688 y(implemen)o(tation)14 b(of)f(this)g(alternativ) o(e)g(for)f(noti\014cation)i(should)g(not)e(need)i(extensions)g(to)e(an)o(y)g (language.)20 b(The)1905 2828 y(55)p eop %%Page: 56 64 bop 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y(status)e(of)h(the)g(indicators)h (is)g(main)o(tained)g(b)o(y)f(the)g(system.)20 b(The)15 b(op)q(erations)g (for)g(testing)g(and)g(manipulating)0 102 y(the)g(indicators)h(can)g(b)q(e)f (implemen)o(ted)i(as)e(a)g(library)h(of)f(callable)i(routines.)0 186 y(This)h(alternativ)o(e)f(can)h(b)q(e)g(implemen)o(ted)h(on)e(an)o(y)g (system)g(with)h(an)f(\\in)o(terrupt")g(capabilit)o(y)l(,)i(and)f(on)f(some)0 243 y(without)e(suc)o(h)h(a)f(capabilit)o(y)l(.)0 327 y(This)e(alternativ)o (e)g(can)g(b)q(e)g(implemen)o(ted)h(on)e(an)h(IEEE)g(system)f(b)o(y)g(making) h(use)g(of)f(the)g(required)i(status)e(\015ags.)0 384 y(The)j(mapping)h(b)q (et)o(w)o(een)g(the)f(IEEE)g(status)g(\015ags)g(and)g(the)g(LIA-1)h (indicators)g(is)g(as)f(follo)o(ws:)p 556 477 838 2 v 555 533 2 57 v 664 516 a(IEEE)g(\015ag)p 966 533 V 966 533 V 186 w(LIA)h(indicator)p 1393 533 V 556 535 838 2 v 555 591 2 57 v 581 574 a Fx(o)o(v)o(er\015o)o(w)p 966 591 V 221 w(\015oating)p 1164 574 16 2 v 20 w(o)o(v)o(er\015o)o(w)p 1393 591 2 57 v 555 648 V 581 631 a(under\015o)o(w)p 966 648 V 186 w(under\015o)o(w)p 1393 648 V 555 704 V 581 687 a(in)o(v)m(alid)p 966 704 V 262 w(unde\014ned)p 1393 704 V 555 760 V 581 744 a(division)i(b)o(y)f(zero)p 966 760 V 50 w(unde\014ned)p 1393 760 V 555 817 V 581 800 a(inexact)p 966 817 V 966 817 V 271 w Fw(\(no)e(coun)o(terpart\))p 1393 817 V 555 873 V 597 856 a(\(no)f(coun)o(terpart\))p 966 873 V 65 w Fx(in)o(teger)p 1153 856 16 2 v 19 w(o)o(v)o(er\015o)o(w)p 1393 873 2 57 v 556 875 838 2 v 0 989 a Fw(The)d(LIA-1)g(do)q(es)f(not)g(include)j (noti\014cation)e(for)f Fx(inexact)h Fw(b)q(ecause)g(non-IEEE)g(implemen)o (tations)h(are)e(unlik)o(ely)0 1045 y(to)15 b(detect)g(inexactness)h(of)f (\015oating)g(p)q(oin)o(t)h(results.)0 1130 y(F)l(or)f(a)g(zero)h(divisor,)g (IEEE)g(sp)q(eci\014es)h(an)f Fx(in)o(v)m(alid)g Fw(exception)h(if)f(the)g (dividend)i(is)e(zero,)f(and)h(a)f Fx(division)k(b)o(y)0 1186 y(zero)12 b Fw(otherwise.)19 b(Other)13 b(arc)o(hitectures)g(are)f(not)g (necessarily)i(capable)f(of)f(making)h(this)f(distinction.)21 b(In)13 b(order)0 1243 y(to)f(pro)o(vide)h(a)g(reasonable)g(mapping)g(for)f (an)h(exception)h(asso)q(ciated)f(with)g(a)f(zero)h(divisor,)h(the)f(LIA-1)g (sp)q(eci\014es)0 1299 y Fx(unde\014ned)p Fw(,)i(regardless)g(of)g(the)g(v)m (alue)i(of)e(the)g(dividend.)0 1384 y(An)g(implemen)o(tation)h(m)o(ust)e(c)o (hec)o(k)i(the)e(recording)i(b)q(efore)f(successfully)i(terminating)e(the)g (program.)k(Merely)0 1440 y(setting)c(a)f(status)g(\015ag)h(is)g(not)g (regarded)f(as)h(adequate)g(noti\014cation,)g(since)h(this)f(action)g(is)g (to)q(o)g(easily)g(ignored)0 1497 y(b)o(y)f(the)h(user)f(and)h(could)g(th)o (us)f(damage)g(the)h(in)o(tegrit)o(y)f(of)g(a)g(program)f(b)o(y)i(lea)o(ving) g(the)f(user)h(una)o(w)o(are)e(that)h(an)0 1553 y(unresolv)o(ed)19 b(arithmetic)g(violation)h(o)q(ccurred.)30 b(Hence)20 b(this)f(In)o (ternational)g(Standard)f(prohibits)i(successful)0 1610 y(completion)d(of)d (a)i(program)e(if)i(an)o(y)f(status)f(\015ag)h(is)h(set.)k(Implemen)o (tations)d(can)e(pro)o(vide)h(system)f(soft)o(w)o(are)f(to)0 1666 y(test)h(all)h(status)e(\015ags)h(at)f(completion,)i(and)g(if)f(an)o(y)g (\015ag)g(is)h(set,)e(pro)o(vide)i(a)f(message.)0 1751 y(The)f(mec)o(hanism)g (of)f(recording)h(of)g(indicators)g(prop)q(osed)g(here)g(is)g(general)g (enough)g(to)f(b)q(e)h(applied)i(to)d(a)g(broad)0 1807 y(range)20 b(of)h(phenomena)g(b)o(y)g(simply)h(extending)g(the)f(v)m(alue)h(set)f Fu(E)h Fw(to)f(include)i(indicators)e(for)g(other)f(t)o(yp)q(es)0 1864 y(of)d(conditions.)27 b(Ho)o(w)o(ev)o(er,)16 b(in)i(order)f(to)g(main)o (tain)g(p)q(ortabilit)o(y)i(across)d(implemen)o(tations,)j(suc)o(h)e (extensions)0 1920 y(should)f(b)q(e)g(made)f(in)h(comformit)o(y)f(with)g (other)g(standards,)f(suc)o(h)i(as)f(language)g(standards.)0 2005 y(Noti\014cation)e(indicators)g(are)f(a)g(form)f(of)h(global)h(v)m (ariable.)20 b(A)12 b(single)i(thread)e(of)g(computation)g(should)h(see)f (only)0 2061 y(one)19 b(cop)o(y)f(of)g(these)h(indicators.)31 b(Ho)o(w)o(ev)o(er,)18 b(care)h(should)g(b)q(e)g(tak)o(en)g(in)g(designing)h (systems)e(with)h(m)o(ultiple)0 2118 y(threads)c(or)g(\\in)o(terrupts")f(so)h (that)51 2240 y(a\))22 b(logically)17 b(async)o(hronous)e(computations)g(do)g (not)g(in)o(terfere)g(with)h(eac)o(h)f(other's)f(indicators,)i(and)48 2334 y(b\))23 b(noti\014cations)15 b(do)h(not)e(get)h(lost.)0 2456 y(The)i(prop)q(er)h(w)o(a)o(y)e(to)g(do)h(this)h(is)f(part)g(of)g(the)g (design)h(of)e(the)i(programming)e(language)h(or)g(threads)g(system,)0 2512 y(and)e(is)h(not)f(within)h(the)g(scop)q(e)f(of)g(LIA-1.)0 2828 y(56)p eop %%Page: 57 65 bop -72 374 13 57 v -72 2027 13 113 v -72 2112 13 57 v -72 2225 V -72 2338 V -72 2394 V 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y(A.6.1.3)51 b(T)l(ermination)18 b(with)g(message)0 159 y Fw(This)g (alternativ)o(e)f(results)g(in)h(the)g(termination)f(of)g(the)g(program)f (follo)o(wing)i(a)f(noti\014cation.)26 b(It)17 b(is)h(in)o(tended)0 216 y(mainly)e(for)f(use)g(when)h(a)f(programmer)f(has)h(failed)h(to)f (exploit)h(one)g(of)e(the)i(other)e(alternativ)o(es)i(pro)o(vided.)0 300 y(The)11 b(message)f(m)o(ust)h(b)q(e)g(\\hard)g(to)f(ignore".)18 b(It)11 b(m)o(ust)f(b)q(e)i(deliv)o(ered)h(in)e(suc)o(h)g(a)g(w)o(a)o(y)f (that)g(there)h(is)g(no)g(p)q(ossibilit)o(y)0 357 y(that)h(the)h(user)g(will) h(b)q(e)f(una)o(w)o(are)f(that)g(the)h(program)e(w)o(as)h(terminated)h(b)q (ecause)h(of)e(an)h(unresolv)o(ed)g(exception.)0 413 y(F)l(or)h(example,)h (the)g(message)g(could)g(b)q(e)h(prin)o(ted)f(on)g(the)g(standard)f(error)g (output)h(device,)h(suc)o(h)f(as)f(the)h(user's)0 470 y(terminal)h(if)g(the)f (program)f(is)i(run)f(in)h(an)f(in)o(teractiv)o(e)h(en)o(vironmen)o(t.)0 618 y Fx(A.6.2)51 b(Dela)o(ys)17 b(in)h(noti\014cation)0 732 y Fw(Man)o(y)g(mo)q(dern)h(\015oating)g(p)q(oin)o(t)g(implemen)o(tations)h (are)f(pip)q(elined,)k(or)18 b(otherwise)h(execute)g(instructions)h(in)0 788 y(parallel.)h(This)14 b(can)g(lead)h(to)e(an)h(apparen)o(t)g(dela)o(y)g (in)h(rep)q(orting)f(violations,)h(since)g(an)e(o)o(v)o(er\015o)o(w)g(in)i(a) e(m)o(ultiply)0 845 y(op)q(eration)e(migh)o(t)g(b)q(e)h(detected)g(after)e(a) h(subsequen)o(t,)h(but)f(faster,)g(add)g(op)q(eration)g(completes.)19 b(The)11 b(pro)o(visions)0 901 y(for)k(dela)o(y)o(ed)g(noti\014cation)h(are)f (designed)i(to)d(accommo)q(date)h(these)g(implemen)o(tations.)0 986 y(P)o(arallel)k(implemen)o(tations)g(ma)o(y)e(also)g(not)h(b)q(e)g(able)h (to)e(distinguish)j(a)d(single)i(o)o(v)o(er\015o)o(w)e(from)g(t)o(w)o(o)f(or) h(more)0 1042 y(\\almost)d(sim)o(ultaneous")i(o)o(v)o(er\015o)o(ws.)j(Hence,) c(some)g(merging)h(of)e(noti\014cations)i(is)g(p)q(ermitted.)0 1127 y(Imprecise)d(in)o(terrupts)f(\(where)f(the)h(o\013ending)g(instruction) h(cannot)e(b)q(e)i(iden)o(ti\014ed\))g(can)f(b)q(e)g(accommo)q(dated)f(as)0 1184 y(noti\014cation)j(dela)o(ys.)19 b(Suc)o(h)14 b(in)o(terrupts)f(ma)o(y)g (also)g(result)g(in)h(not)f(b)q(eing)h(able)g(to)e(rep)q(ort)h(the)g(kind)h (of)f(violation)0 1240 y(that)h(o)q(ccurred,)i(or)f(to)f(rep)q(ort)h(the)g (order)g(in)h(whic)o(h)g(t)o(w)o(o)e(or)h(more)g(violations)h(o)q(ccurred.)0 1325 y(In)h(general)f(the)h(longer)f(the)g(noti\014cation)h(is)g(dela)o(y)o (ed)g(the)f(greater)f(the)i(risk)f(to)g(the)g(con)o(tin)o(ued)h(execution)g (of)0 1381 y(the)e(program.)0 1529 y Fx(A.6.3)51 b(User)17 b(selection)i(of)e(alternativ)o(e)i(for)e(noti\014cation)0 1644 y Fw(On)c(some)g(mac)o(hine)g(arc)o(hitectures,)g(the)g(noti\014cation)g (alternativ)o(e)g(selected)h(ma)o(y)e(in\015uence)j(co)q(de)e(generation.)0 1700 y(In)18 b(particular,)h(the)e(optimal)i(co)q(de)f(that)f(can)h(b)q(e)g (generated)f(for)g(6.1.1)f(ma)o(y)h(di\013er)h(substan)o(tially)h(from)e(the) 0 1756 y(optimal)g(co)q(de)f(for)g(6.1.2.)21 b(Because)16 b(of)g(this,)g(it)h (is)f(un)o(wise)h(for)e(a)h(language)g(or)g(binding)i(standard)e(to)f (require)0 1813 y(the)20 b(abilit)o(y)g(to)f(switc)o(h)h(b)q(et)o(w)o(een)g (noti\014cation)g(alternativ)o(es)g(during)g(execution.)34 b(Compile)21 b(time)f(selection)0 1869 y(should)c(b)q(e)g(su\016cien)o(t.)0 1954 y(An)d(implemen)o(tation)g(can)g(pro)o(vide)g(separate)e(selection)j (for)e(eac)o(h)g(kind)i(of)d(noti\014cation)i(\()p Fx(\015oating)p 1732 1954 16 2 v 21 w(o)o(v)o(er\015o)o(w)p Fw(,)0 2010 y Fx(under\015o)o(w)p Fw(,)h(etc\),)g(but)i(this)f(is)h(not)f(required.)0 2095 y(If)h(a)f(system)f (had)i(a)f(mo)q(de)g(of)g(op)q(eration)h(in)g(whic)o(h)g(exceptions)g(w)o (ere)f(totally)h(ignored,)f(then)h(for)e(this)i(mo)q(de,)0 2152 y(the)h(system)f(w)o(ould)i(not)e(conform)g(to)h(this)g(In)o (ternational)g(Standard.)25 b(Ho)o(w)o(ev)o(er,)16 b(mo)q(des)h(of)g(op)q (eration)g(that)0 2208 y(ignore)h(exceptions)h(ma)o(y)e(ha)o(v)o(e)h(some)f (uses,)i(particularly)g(if)f(they)g(are)g(otherwise)g(LIA-1)h(conforman)o(t.) 27 b(F)l(or)0 2265 y(example,)19 b(a)f(user)g(ma)o(y)f(\014nd)i(it)f (desirable)i(to)d(v)o(erify)i(and)f(debug)h(a)e(program's)g(b)q(eha)o(vior)h (in)h(a)f(fully)h(LIA-1)0 2321 y(conforman)o(t)h(mo)q(de)i(\(exception)g(c)o (hec)o(king)g(on\),)h(and)e(then)h(run)g(the)f(resulting)i(\\trusted")d (program)h(with)0 2377 y(exception)15 b(c)o(hec)o(king)f(o\013.)k(Another)c (non-conforman)o(t)e(mo)q(de)i(could)h(b)q(e)f(one)f(in)i(whic)o(h)f(the)f (\014nal)i(c)o(hec)o(k)e(on)h(the)0 2434 y(noti\014cation)i(indicators)g(w)o (as)e(suppressed.)0 2519 y(In)g(an)o(y)f(case,)h(it)f(is)h(essen)o(tial)h (for)d(an)i(implemen)o(tation)h(to)d(pro)o(vide)i(do)q(cumen)o(tation)g(on)g (ho)o(w)f(to)f(select)j(among)0 2575 y(the)g(v)m(arious)h(LIA-1)g(conforming) f(noti\014cation)h(alternativ)o(es)f(pro)o(vided.)1905 2828 y(57)p eop %%Page: 58 66 bop -72 862 13 179 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y FB(A.7)56 b(Relationship)20 b(with)g(language)g(standards)0 159 y Fw(Language)d (standards)f(v)m(ary)g(in)i(the)e(degree)h(to)f(whic)o(h)i(the)e(underlying)j (data)d(t)o(yp)q(es)h(are)f(sp)q(eci\014ed.)26 b(F)l(ortran)0 216 y([3)o(])13 b(states)e(virtually)j(nothing)f(ab)q(out)g(the)f(c)o (haracteristics)h(of)f Fc(INTEGER)g Fw(or)g Fc(REAL)p Fw(,)g(P)o(ascal)g([5]) g(merely)h(giv)o(es)g(the)0 272 y(largest)j(in)o(teger)g(v)m(alue)i(\()p Fu(maxint)p Fw(\),)d(while)j(Ada)e([6])f(giv)o(es)i(a)f(large)g(n)o(um)o(b)q (er)g(of)g(attributes)g(of)g(the)g(underlying)0 329 y(in)o(teger)e(and)h (\015oating)f(p)q(oin)o(t)g(t)o(yp)q(es.)20 b(The)14 b(LIA-1)h(pro)o(vides)g (a)f(language)g(indep)q(enden)o(t)j(framew)o(ork)c(for)g(giving)0 385 y(the)i(same)g(lev)o(el)i(of)d(detail)j(that)d(Ada)h(requires,)h(sp)q (eci\014c)h(to)e(a)g(particular)g(implemen)o(tation.)0 470 y(The)f(LIA-1)g(giv)o(es)g(the)g(meaning)g(of)f(individual)k(op)q(erations)c (on)h(n)o(umeric)g(v)m(alues)h(of)e(particular)i(t)o(yp)q(e.)k(It)14 b(do)q(es)0 526 y(not)g(sp)q(ecify)i(the)f(seman)o(tics)g(of)f(expressions,)h (since)h(expressions)f(are)g(sequences)g(of)g(op)q(erations)f(whic)o(h)i (could)0 583 y(b)q(e)c(mapp)q(ed)g(in)o(to)g(individual)i(op)q(erations)e(in) g(more)f(than)g(one)h(w)o(a)o(y)l(.)18 b(The)11 b(LIA-1)i(do)q(es)e(require)i (do)q(cumen)o(tation)0 639 y(of)i(the)g(range)g(of)g(p)q(ossible)i(mappings.) 0 724 y(The)g(essen)o(tial)g(requiremen)o(t)h(is)f(to)f(do)q(cumen)o(t)h(the) g(seman)o(tics)f(of)h(expressions)g(w)o(ell)h(enough)f(so)f(that)g(a)g(rea-)0 780 y(sonable)f(error)f(analysis)h(can)g(b)q(e)g(done.)20 b(There)14 b(is)h(no)g(requiremen)o(t)g(to)e(do)q(cumen)o(t)i(the)g(sp)q(eci\014c)h (optimization)0 837 y(tec)o(hnology)f(in)h(use.)0 921 y(An)k(implemen)o (tation)g(migh)o(t)f(conform)g(to)g(the)g(letter)h(of)f(the)g(LIA-1,)i(but)e (still)i(violate)f(its)f(\\spirit")h({)f(the)0 978 y(principles)c(b)q(ehind)f (the)e(LIA-1)h({)f(b)o(y)g(pro)o(viding,)i(for)d(example,)i(a)f Fu(sin)h Fw(function)g(that)e(returned)i(v)m(alues)g(greater)0 1034 y(than)20 b(1)f(or)g(that)g(w)o(as)g(highly)i(inaccurate)g(for)e(large)h (input)g(v)m(alues.)35 b(Another)20 b(part)f(of)g(this)h(In)o(ternational)0 1091 y(Standard)d(will)h(tak)o(e)f(care)f(of)h(this)g(particular)h(example.) 26 b(Bey)o(ond)17 b(this,)g(implemen)o(tors)h(are)e(encouraged)i(to)0 1147 y(pro)o(vide)e(n)o(umerical)g(facilities)h(that)51 1269 y(a\))22 b(are)15 b(highly)h(accurate,)48 1363 y(b\))23 b(ob)q(ey)15 b(useful)i(iden)o(tities)f(lik)o(e)h(those)e(in)h(A.5.2.0.2)c(or)j(A.5.2.12,) 53 1457 y(c\))23 b(notify)15 b(the)h(user)f(whenev)o(er)h(the)g (mathematically)g(correct)f(result)h(w)o(ould)g(b)q(e)g(out)f(of)g(range,)g (not)g(accu-)114 1513 y(rately)g(represen)o(table,)g(or)g(unde\014ned,)48 1607 y(d\))23 b(are)15 b(de\014ned)h(on)f(as)g(wide)h(a)f(range)g(of)g(input) h(v)m(alues)g(as)f(is)h(consisten)o(t)f(with)h(the)f(three)g(items)h(ab)q(o)o (v)o(e.)0 1729 y(The)f(LIA-1)h(do)q(es)f(not)g(co)o(v)o(er)f(programming)h (language)g(issues)h(suc)o(h)f(as)g(t)o(yp)q(e)g(errors)f(or)g(the)i (e\013ects)e(of)h(unini-)0 1786 y(tialized)k(v)m(ariables.)27 b(Implemen)o(tors)18 b(are)f(encouraged)g(to)g(catc)o(h)g(suc)o(h)g(errors)g ({)g(at)f(compile)j(time)f(whenev)o(er)0 1842 y(p)q(ossible,)e(at)e(run)g (time)h(if)g(necessary)l(.)20 b(Uncaugh)o(t)14 b(programming)g(errors)f(of)h (this)h(kind)g(can)g(pro)q(duce)g(the)f(v)o(ery)0 1898 y(unpredictable)j(and) f(false)f(results)h(that)e(this)i(standard)f(w)o(as)f(designed)j(to)d(a)o(v)o (oid.)0 1983 y(A)i(list)h(of)e(the)h(information)h(that)e(ev)o(ery)h (implemen)o(tation)h(of)e(LIA-1)i(m)o(ust)f(do)q(cumen)o(t)g(is)g(giv)o(en)h (in)g(clause)g(8.)0 2040 y(Some)c(of)g(this)h(information,)g(lik)o(e)g(the)g (v)m(alue)g(of)f Fu(emax)h Fw(for)f(a)g(particular)h(\015oating)f(p)q(oin)o (t)h(t)o(yp)q(e,)f(will)i(frequen)o(tly)0 2096 y(v)m(ary)g(from)f(implemen)o (tation)h(to)g(implemen)o(tation.)20 b(Other)15 b(information,)g(lik)o(e)h (the)e(syn)o(tax)g(for)g(accessing)i(the)0 2152 y(v)m(alue)h(of)d Fu(emax)p Fw(,)h(should)i(b)q(e)f(the)f(same)g(for)g(all)h(implemen)o (tations)h(of)d(a)h(particular)h(programming)f(language.)0 2209 y(See)h(annex)f(E)g(for)g(information)g(on)h(ho)o(w)e(this)i(migh)o(t)f (b)q(e)h(done.)0 2294 y(T)l(o)21 b(maximize)g(the)g(p)q(ortabilit)o(y)h(of)f (programs,)f(most)g(of)h(the)g(information)f(listed)j(in)e(clause)h(8)e (should)i(b)q(e)0 2350 y(standardized)e(for)f(a)h(giv)o(en)g(language)g({)f (either)h(b)o(y)g(inclusion)i(in)f(the)e(language)h(standard)f(itself,)j(or)d (b)o(y)g(a)0 2407 y(language)14 b(sp)q(eci\014c)h(binding)h(standard.)j(On)14 b(the)f(other)g(hand)h(to)f(allo)o(w)h(freedom)f(in)i(the)e(implemen)o (tation,)i(w)o(e)0 2463 y(recommend)g(that)g(the)g(follo)o(wing)h (information)f(not)g(b)q(e)g(standardized,)h(but)f(should)h(b)q(e)g(do)q (cumen)o(ted)g(b)o(y)f(the)0 2519 y(implemen)o(tation:)51 2654 y(a\))22 b(The)15 b(v)m(alues)h(of)f Fu(maxint)h Fw(and)f Fu(minint)g Fw(should)i(not)d(b)q(e)i(standardized.)0 2828 y(58)p eop %%Page: 59 67 bop -72 212 13 57 v -72 926 13 113 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)114 45 y Fw(Ho)o(w)o(ev)o(er,)e(it)h(is)h(reasonable)f(to)g(standardize)g (whether)h(a)e(particular)i(in)o(teger)f(t)o(yp)q(e)h(is)f(signed,)h(and)g (to)114 102 y(giv)o(e)d(a)g(lo)o(w)o(er)g(b)q(ound)h(on)f(the)g(size)h(of)f Fu(maxint)p Fw(.)48 195 y(b\))23 b(The)15 b(v)m(alues)h(of)f Fu(r)q Fw(,)f Fu(p)p Fw(,)g Fu(emin)p Fw(,)h Fu(emax)p Fw(,)g Fu(denor)q(m)p Fw(,)f(and)h(\(for)f(no)o(w\))h Fr(ie)n(c)p 1294 195 14 2 v 18 w(559)22 b Fw(should)16 b(not)f(b)q(e)g(standardized.)114 271 y(Ho)o(w)o(ev)o(er,)f(it)i(is)g(reasonable)h(to)e(giv)o(e)h(upp)q(er)g(b) q(ounds)h(on)f Fu(epsil)q(on)f Fw(\()p Fu(r)1329 254 y Fn(1)p Fm(\000)p Fp(p)1394 271 y Fw(\),)g(and)h(b)q(ounds)g(on)g(the)g(v)m(alues)114 327 y(of)j Fu(emin)g Fw(and)h Fu(emax)p Fw(.)34 b(Certain)19 b(languages)h(pro)o(vide)g(decimal)h(\015oating)f(p)q(oin)o(t)g(t)o(yp)q(es)g (whic)o(h)g(require)114 383 y Fu(r)13 b Fw(=)g(10.)53 477 y(c\))23 b(The)15 b(seman)o(tics)g(of)g Fu(r)q(nd)538 484 y Fp(F)567 477 y Fw(,)g Fu(r)q(esul)q(t)716 484 y Fp(F)745 477 y Fw(,)g(and)h Fu(add)934 461 y Fm(\003)934 490 y Fp(F)977 477 y Fw(should)h(not)d(b)q(e)i (standardized.)114 552 y(That)k(is,)i(no)f(further)g(standardization)g(b)q (ey)o(ond)g(what)g(is)g(already)g(required)h(b)o(y)f(LIA-1,)i(since)f(this) 114 609 y(w)o(ould)16 b(limit)g(the)g(range)f(of)g(hardw)o(are)g(platforms)g (that)g(could)i(supp)q(ort)e(e\016cien)o(t)i(implemen)o(tations)f(of)114 665 y(the)f(language.)48 759 y(d\))23 b(The)15 b(b)q(eha)o(vior)h(of)f Fu(near)q(est)597 766 y Fp(F)642 759 y Fw(on)g(ties)h(should)g(probably)g (not)f(b)q(e)h(standardized.)53 853 y(e\))23 b(The)17 b(IEC)h(559)e(implemen) o(tor)i(c)o(hoices)g(should)h(not)d(b)q(e)i(limited)i(\(except)d(b)o(y)g (future)h(revisions)g(of)f(IEC)114 909 y(559\).)0 1044 y(The)12 b(allo)o(w)o(ed)f(translations)g(of)g(expressions)h(in)o(to)g(com)o (binations)f(of)g(LIA)h(op)q(erations)g(should)g(allo)o(w)g(reasonable)0 1100 y(\015exibilit)o(y)17 b(for)c(compiler)j(optimization.)k(The)15 b(programming)f(language)g(standard)g(m)o(ust)f(determine)j(what)d(is)0 1157 y(reasonable.)23 b(In)16 b(particular,)h(languages)f(in)o(tended)i(for)d (the)h(careful)h(expression)g(of)e(n)o(umeric)i(algorithms)f(are)0 1213 y(urged)h(to)g(pro)o(vide)h(w)o(a)o(ys)e(for)g(programmers)g(to)h(con)o (trol)g(order)g(of)g(ev)m(aluation)h(and)f(in)o(termediate)h(precision)0 1270 y(within)j(expressions.)35 b(Note)20 b(that)f(programmers)g(ma)o(y)g (wish)i(to)e(distinguish)j(b)q(et)o(w)o(een)e(suc)o(h)h(\\con)o(trolled")0 1326 y(ev)m(aluation)16 b(of)f(some)g(expressions)h(and)f(\\don't)g(care")g (ev)m(aluation)h(of)f(others.)0 1411 y(Dev)o(elop)q(ers)21 b(of)g(language)g(standards)f(or)h(binding)h(standards)f(ma)o(y)f(\014nd)i (it)f(con)o(v)o(enien)o(t)g(to)f(reference)i(the)0 1467 y(LIA-1.)29 b(F)l(or)17 b(example,)i(the)f(functions)h Fu(r)q(nd)789 1474 y Fp(F)818 1467 y Fw(,)f Fu(r)q(nd)922 1474 y Fp(I)942 1467 y Fw(,)g Fu(r)q(nd)1046 1474 y Fp(F)5 b Fm(!)p Fp(I)1128 1467 y Fw(,)18 b Fu(r)q(esul)q(t)1280 1474 y Fp(F)1309 1467 y Fw(,)h Fu(add)1413 1451 y Fm(\003)1413 1480 y Fp(F)1441 1467 y Fw(,)f Fu(e)1493 1474 y Fp(F)1523 1467 y Fw(,)g(and)g Fu(r)q(n)1694 1474 y Fp(F)1741 1467 y Fw(ma)o(y)g(pro)o(v)o(e)0 1524 y(useful)e(in)g (de\014ning)h(additional)g(arithmetic)f(op)q(erations.)0 1674 y FB(A.8)56 b(Do)r(cumen)n(tation)19 b(requiremen)n(ts)0 1788 y Fw(T)l(o)13 b(mak)o(e)g(go)q(o)q(d)g(use)h(of)f(an)h(implemen)o(tation)g (of)f(this)h(standard,)f(programmers)g(need)h(to)f(kno)o(w)g(not)g(only)h (that)0 1844 y(the)g(implemen)o(tation)i(conforms,)d(but)h Fr(how)h Fw(the)f(implemen)o(tation)i(conforms.)j(Clause)14 b(8)g(requires)h(implemen-)0 1901 y(tations)f(to)h(do)q(cumen)o(t)g(the)g (binding)i(b)q(et)o(w)o(een)e(the)g(LIA-1)g(t)o(yp)q(es)g(and)g(op)q (erations)g(and)g(the)g(total)f(arithmetic)0 1957 y(en)o(vironmen)o(t)h(pro)o (vided)h(b)o(y)g(the)f(implemen)o(tation.)0 2042 y(An)g(example)i(conformit)o (y)d(statemen)o(t)g(\(for)h(a)f(F)l(ortran)g(implemen)o(tation\))j(is)e(giv)o (en)h(in)g(annex)g(F.)0 2126 y(It)g(is)g(exp)q(ected)i(that)d(an)h(implemen)o (tation)h(will)h(meet)d(part)h(of)f(its)i(do)q(cumen)o(tation)f(requiremen)o (ts)g(b)o(y)g(incor-)0 2183 y(p)q(oration)g(of)f(the)h(relev)m(an)o(t)h (language)f(standard.)21 b(Ho)o(w)o(ev)o(er,)15 b(there)h(will)i(b)q(e)e(asp) q(ects)g(of)g(the)g(implemen)o(tation)0 2239 y(that)f(the)h(language)h (standard)e(do)q(es)i(not)e(sp)q(ecify)j(in)e(the)h(required)g(detail,)g(and) f(the)g(implemen)o(tation)h(needs)0 2296 y(to)i(do)q(cumen)o(t)g(those)g (details.)33 b(F)l(or)19 b(example,)h(the)g(language)f(standard)g(ma)o(y)f (sp)q(ecify)j(a)e(range)g(of)g(allo)o(w)o(ed)0 2352 y(parameter)c(v)m(alues,) i(but)g(the)f(implemen)o(tation)h(m)o(ust)e(do)q(cumen)o(t)i(the)f(v)m(alue)h (actually)g(used.)23 b(The)16 b(com)o(bina-)0 2409 y(tion)e(of)g(the)g (language)g(standard)g(and)g(the)g(implemen)o(tation)h(do)q(cumen)o(tation)g (together)e(should)i(meet)f(all)h(the)0 2465 y(requiremen)o(ts)h(in)g(clause) g(8.)0 2550 y(Most)21 b(of)g(the)h(do)q(cumen)o(tation)g(required)h(can)e(b)q (e)i(pro)o(vided)f(easily)l(.)41 b(The)22 b(only)g(di\016culties)i(migh)o(t)e (b)q(e)g(in)0 2606 y(de\014ning)15 b Fu(add)242 2590 y Fm(\003)242 2619 y Fp(F)270 2606 y Fw(,)f(or)e(in)j(sp)q(ecifying)g(the)e(translation)g (of)g(arithmetic)h(expressions)g(in)o(to)g(com)o(binations)f(of)g(LIA-1)0 2663 y(op)q(erations.)1905 2828 y(59)p eop %%Page: 60 68 bop 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y(Compilers)e(often)g(\\optimize") g(co)q(de)g(as)f(part)g(of)g(the)h(compilation)h(pro)q(cess.)20 b(P)o(opular)13 b(optimizations)i(include)0 102 y(mo)o(ving)g(co)q(de)h(to)e (less)i(frequen)o(tly)g(executed)g(sp)q(ots,)e(eliminating)k(common)c(sub)q (expressions,)j(and)e(reduction)0 158 y(in)h(strength)f(\(replacing)h(exp)q (ensiv)o(e)h(op)q(erations)e(with)h(c)o(heap)q(er)f(ones\).)0 243 y(Compilers)i(are)e(alw)o(a)o(ys)g(free)h(to)g(alter)g(co)q(de)g(in)h(w)o (a)o(ys)e(that)g(preserv)o(e)h(the)g(seman)o(tics)g(\(the)f(v)m(alues)j (computed)0 299 y(and)d(the)g(noti\014cations)h(generated\).)j(Ho)o(w)o(ev)o (er,)14 b(when)i(a)e(co)q(de)i(transformation)d(ma)o(y)i(c)o(hange)g(the)g (seman)o(tics)0 356 y(of)j(an)h(expression,)h(this)f(m)o(ust)f(b)q(e)h(do)q (cumen)o(ted)g(b)o(y)g(listing)h(the)f(alternativ)o(e)f(com)o(binations)i(of) e(op)q(erations)0 412 y(that)d(migh)o(t)h(b)q(e)g(generated.)22 b(\(There)16 b(is)g(no)g(need)h(to)e(include)j(seman)o(tically)f(equiv)m (alen)o(t)h(alternativ)o(es)e(in)h(this)0 469 y(list.\))0 2828 y(60)p eop %%Page: 61 69 bop -72 2820 13 2856 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)841 45 y FC(Annex)23 b(B)803 120 y Ff(\(informativ)n(e\))689 269 y FC(P)n(artial)f(conformit)n(y)0 449 y Fw(The)d(requiremen)o(ts)h(of)e(LIA-1)i (ha)o(v)o(e)e(b)q(een)i(carefully)g(c)o(hosen)f(to)g(b)q(e)g(as)g(b)q (ene\014cial)i(as)e(p)q(ossible,)i(y)o(et)d(b)q(e)i(ef-)0 506 y(\014cien)o(tly)h(implemen)o(ted)g(on)e(almost)g(all)i(existing)f(or)f(an)o (ticipated)h(hardw)o(are)f(arc)o(hitectures.)32 b(The)20 b(bulk)g(of)0 562 y(LIA-1)c(requiremen)o(ts)g(are)f(for)f(do)q(cumen)o(tation,)i(or)e(for)h (parameters)f(and)i(functions)g(that)e(can)i(b)q(e)g(e\016cien)o(tly)0 619 y(realized)f(in)e(soft)o(w)o(are.)18 b(Ho)o(w)o(ev)o(er,)12 b(the)h(accuracy)g(and)g(noti\014cation)h(requiremen)o(ts)g(on)f(the)g(four)f (basic)i(\015oating)0 675 y(p)q(oin)o(t)i(op)q(erations)h(\()p Fu(add)432 682 y Fp(F)460 675 y Fw(,)f Fu(sub)556 682 y Fp(F)585 675 y Fw(,)g Fu(mul)694 682 y Fp(F)722 675 y Fw(,)g(and)g Fu(div)902 682 y Fp(F)931 675 y Fw(\))g(do)g(ha)o(v)o(e)f(implications)j(for)e(the)g (underlying)i(hardw)o(are)0 732 y(arc)o(hitecture.)0 816 y(A)e(small)g(n)o (um)o(b)q(er)h(of)e(computer)h(systems)f(will)i(ha)o(v)o(e)f(di\016cult)o(y)h (with)f(some)f(of)h(the)g(LIA-1)g(requiremen)o(ts)h(for)0 873 y(\015oating)e(p)q(oin)o(t.)21 b(The)15 b(requiremen)o(ts)h(in)g(question)f (are:)51 991 y(a\))22 b(Strict)15 b(1-ulp)h(accuracy)f(of)g Fu(add)668 998 y Fp(F)697 991 y Fw(,)g Fu(sub)792 998 y Fp(F)821 991 y Fw(,)g Fu(mul)929 998 y Fp(F)957 991 y Fw(,)g(and)h Fu(div)1136 998 y Fp(F)1164 991 y Fw(.)48 1083 y(b\))23 b(A)15 b(common)g(rounding)h (rule)g(for)e Fu(add)769 1090 y Fp(F)798 1083 y Fw(,)h Fu(sub)893 1090 y Fp(F)922 1083 y Fw(,)g Fu(mul)1030 1090 y Fp(F)1058 1083 y Fw(,)g(and)h Fu(div)1237 1090 y Fp(F)1265 1083 y Fw(.)53 1175 y(c\))23 b(The)15 b(abilit)o(y)h(to)f(catc)o(h)g(all)h(exceptions,)g (particularly)g(under\015o)o(w.)48 1267 y(d\))23 b(The)15 b(abilit)o(y)h(to)f (do)g(exact)g(comparisons)g(without)h(spurious)f(noti\014cations.)53 1359 y(e\))23 b(A)15 b(sign)h(symmetric)f(v)m(alue)h(set)f(\(all)h(v)m(alues) g(can)g(b)q(e)g(negated)f(exactly\).)0 1477 y(As)f(an)f(example,)i(the)e(Cra) o(y)g(family)i(of)e(sup)q(ercomputers)h(cannot)f(satisfy)h(the)g(\014rst)f (four)g(requiremen)o(ts)h(ab)q(o)o(v)o(e)0 1534 y(without)h(a)g(signi\014can) o(t)i(loss)e(in)i(p)q(erformance.)j(Mac)o(hines)c(with)g(t)o(w)o (o's-complemen)o(t)e(\015oating)h(p)q(oin)o(t)h(formats)0 1590 y(\(quite)g(rare\))e(ha)o(v)o(e)h(di\016cult)o(y)h(with)g(the)f(last)g (requiremen)o(t.)0 1675 y(Language)21 b(standards)g(will)j(w)o(an)o(t)c(to)h (adopt)g(all)h(the)g(requiremen)o(ts)g(of)f(LIA-1)h(to)f(pro)o(vide)h (programmers)0 1731 y(with)e(the)f(maxim)o(um)g(b)q(ene\014t.)33 b(Ho)o(w)o(ev)o(er,)19 b(if)h(it)f(is)h(p)q(erceiv)o(ed)h(that)d(requiring)j (full)f(accuracy)f(will)i(exclude)0 1788 y(a)c(signi\014can)o(t)i(p)q(ortion) e(of)h(that)e(language's)i(user)f(comm)o(unit)o(y)h(from)e(an)o(y)i(b)q (ene\014t,)g(then)g(sp)q(ecifying)i(partial)0 1844 y(LIA-1)c(conformit)o(y)l (,)e(as)h(p)q(ermitted)h(in)g(clause)g(2,)f(ma)o(y)f(b)q(e)i(a)f(reasonable)h (alternativ)o(e.)0 1929 y(Suc)o(h)h(partial)g(conformit)o(y)f(w)o(ould)h (relax)g(one)f(or)g(more)g(of)g(the)h(\014v)o(e)f(requiremen)o(ts)h(listed)h (ab)q(o)o(v)o(e,)e(but)h(w)o(ould)0 1985 y(retain)e(the)h(b)q(ene\014ts)g(of) f(all)h(other)f(LIA-1)h(requiremen)o(ts.)k(All)c(deviations)h(from)d(LIA-1)i (conformit)o(y)f(m)o(ust)f(b)q(e)0 2042 y(fully)j(do)q(cumen)o(ted.)0 2127 y(If)e(a)g(programming)g(language)g(\(or)f(binding\))j(standard)d (states)h(that)f(partial)h(conformit)o(y)g(is)h(p)q(ermitted,)f(pro-)0 2183 y(grammers)i(will)i(need)f(to)f(detect)h(what)f(degree)h(of)f(conformit) o(y)g(is)h(a)o(v)m(ailable.)29 b(It)18 b(w)o(ould)g(b)q(e)g(helpful)i(for)d (the)0 2239 y(language)f(standard)g(to)f(require)i(parameters)e(indicating)j (whether)e(or)f(not)h(conformit)o(y)f(is)i(complete,)f(and)g(if)0 2296 y(not,)e(whic)o(h)i(of)f(the)h(\014v)o(e)f(requiremen)o(ts)h(ab)q(o)o(v) o(e)e(is)i(violated.)0 2381 y(The)f(follo)o(wing)h(parameters)f(migh)o(t)g(b) q(e)h(suitable)g(set.)51 2499 y(a\))22 b Fu(S)s(tr)q(ict)15 b Fw({)h(a)g(b)q(o)q(olean)h(parameter)e(that)h(is)h(false)f(when)h(an)o(y)e (of)h(the)g(LIA-1)h(requiremen)o(ts)g(on)f(rounding)114 2555 y(and)f(accuracy)g(are)g(violated.)21 b(\(See)15 b(5.2.4)f(and)h(5.2.5.\))48 2647 y(b\))23 b Fu(S)s(il)q(ent)p 243 2647 14 2 v 15 w(under)q(f)5 b(l)q(ow)21 b Fw({)f(a)g(b)q(o)q(olean)i(parameter)e(that)f(is)i(true)g(when) g(under\015o)o(w)f(noti\014cation)h(is)g(sup-)114 2704 y(pressed.)1905 2828 y(61)p eop %%Page: 62 70 bop -72 391 13 391 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)53 45 y(c\))23 b Fu(C)s(ompar)q(ison)p 370 45 14 2 v 16 w(v)r(ia)p 450 45 V 15 w(subtr)q(act)13 b Fw({)f(a)g(b)q(o)q(olean)h(parameter)e(that)h(is)h (true)f(when)g(comparisons)h(ma)o(y)e(o)o(v)o(er\015o)o(w)114 102 y(and)k(under\015o)o(w)g(lik)o(e)i(subtraction.)48 195 y(d\))23 b Fu(N)5 b(eg)r(ate)p 265 195 V 16 w(may)p 368 195 V 18 w(f)g(ail)15 b Fw({)g(a)g(b)q(o)q(olean)h(parameter)f(that)f(is)i(true)f (when)h(the)f(set)g(of)g(\015oating)g(p)q(oin)o(t)h(v)m(alues)g(is)114 252 y(not)e(sign)i(symmetric.)0 374 y(Finally)l(,)h Fu(r)q(nd)p 240 374 V 16 w(er)q(r)q(or)e Fw(ma)o(y)g(b)q(e)h(greater)e(than)h(1)g(in)h (non-strict)f(implemen)o(tations.)0 2828 y(62)p eop %%Page: 63 71 bop -72 2820 13 2856 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)841 45 y FC(Annex)23 b(C)803 120 y Ff(\(informativ)n(e\))704 269 y FC(IEC)g(559)h(bindings)0 450 y Fw(When)12 b(the)f(parameter)g Fr(ie)n(c)p 474 450 14 2 v 16 w(559)h Fw(is)f Fx(true)h Fw(for)e(a)h (\015oating)g(p)q(oin)o(t)h(t)o(yp)q(e)g Fu(F)6 b Fw(,)12 b(all)g(the)f (facilities)j(required)e(b)o(y)f(IEC)h(559)0 507 y(shall)g(b)q(e)g(pro)o (vided)g(for)f(that)g(t)o(yp)q(e.)18 b(Metho)q(ds)12 b(shall)g(b)q(e)g(pro)o (vided)g(for)f(a)g(program)f(to)h(access)g(eac)o(h)g(suc)o(h)h(facilit)o(y)l (.)0 563 y(In)18 b(addition,)h(do)q(cumen)o(tation)f(shall)h(b)q(e)f(pro)o (vided)h(to)e(describ)q(e)i(these)f(metho)q(ds,)g(and)g(all)h(implemen)o (tation)0 620 y(c)o(hoices.)0 705 y(This)c(means)f(that)g(a)g Fr(c)n(omplete)f Fw(programming)h(language)h(binding)h(for)d(LIA-1)i(should)h (pro)o(vide)e(a)g(binding)j(for)0 761 y(all)f(IEC)f(559)g(facilities)i(as)e (w)o(ell.)0 846 y(The)10 b(normativ)o(e)g(listing)i(of)e(those)g(facilities)i (\(and)e(their)h(de\014nitions\))g(is)g(giv)o(en)g(in)g(IEC)f(559.)17 b(This)11 b(In)o(ternational)0 902 y(Standard)20 b(do)q(es)g(not)f(alter)h (or)f(eliminate)j(an)o(y)d(of)h(them.)34 b(Ho)o(w)o(ev)o(er,)19 b(to)g(assist)h(the)g(reader,)g(the)g(follo)o(wing)0 959 y(summary)15 b(is)g(o\013ered.)0 1108 y FB(C.1)56 b(Summary)0 1222 y Fw(A)15 b(binding)i(of)e(IEC)g(559)g(\(and)g(th)o(us)g(LIA-1\))g(to)g(a)g (programming)f(language)i(m)o(ust)f(pro)o(vide:)51 1341 y(a\))22 b(The)15 b(name)g(of)g(the)g(programming)g(language)g(t)o(yp)q(e)h(that)e (corresp)q(onds)i(to)e(single)j(format.)48 1433 y(b\))23 b(The)15 b(name)g(of)g(the)g(programming)g(language)g(t)o(yp)q(e)h(that)e(corresp)q (onds)i(to)e(double)j(format,)c(if)j(an)o(y)l(.)53 1525 y(c\))23 b(The)15 b(names)g(of)g(the)g(programming)g(language)g(t)o(yp)q(es)g(that)g (corresp)q(ond)g(to)g(extended)h(formats,)e(if)h(an)o(y)l(.)0 1644 y(F)l(or)g(eac)o(h)g(IEC)g(559)g(conforming)g(t)o(yp)q(e,)g(the)g (binding)i(m)o(ust)e(pro)o(vide:)51 1763 y(a\))22 b(A)10 b(metho)q(d)h(for)f (denoting)h(p)q(ositiv)o(e)h(in\014nit)o(y)l(.)20 b(\(Negativ)o(e)10 b(in\014nit)o(y)i(can)e(b)q(e)i(deriv)o(ed)f(from)f(p)q(ositiv)o(e)i (in\014nit)o(y)114 1819 y(b)o(y)j(negation\).)48 1912 y(b\))23 b(A)15 b(metho)q(d)g(for)g(denoting)h(at)e(least)i(one)f(quiet)h(NaN)f (\(not-a-n)o(um)o(b)q(er\).)53 2004 y(c\))23 b(A)15 b(metho)q(d)g(for)g (denoting)h(at)e(least)i(one)f(signalling)i(NaN)e(\(not-a-n)o(um)o(b)q(er\).) 0 2123 y(The)g(binding)j(m)o(ust)c(pro)o(vide)i(the)f(notation)g(for)g(in)o (v)o(oking)g(eac)o(h)h(of)e(the)i(follo)o(wing)g(op)q(erations:)51 2241 y(a\))22 b Fu(Add)196 2248 y Fp(F)224 2241 y Fw(,)15 b Fu(sub)319 2248 y Fp(F)348 2241 y Fw(,)g Fu(mul)456 2248 y Fp(F)485 2241 y Fw(,)g(and)g Fu(div)663 2248 y Fp(F)692 2241 y Fw(.)k(\(Already)d(required)g(b)o(y)f(LIA-1.\))48 2334 y(b\))23 b(Remainder,)16 b(square-ro)q(ot,)e(and)h(round-to-in)o(tegral-v)m(alue.)53 2426 y(c\))23 b(The)15 b(t)o(yp)q(e)g(con)o(v)o(ersions)h Fu(cv)r(t)609 2433 y Fp(F)631 2437 y Fi(a)650 2433 y Fm(!)p Fp(F)707 2439 y Fi(b)725 2426 y Fw(,)f Fu(cv)r(t)813 2433 y Fp(F)5 b Fm(!)p Fp(I)895 2426 y Fw(,)15 b Fu(cv)r(t)983 2433 y Fp(I)s Fm(!)p Fp(F)1065 2426 y Fw(.)20 b(\(Already)15 b(required)i(b)o(y)e(LIA-1.\))48 2519 y(d\))23 b(T)o(yp)q(e)15 b(con)o(v)o(ersions)g(b)q(et)o(w)o(een)h(the)f (\015oating)g(p)q(oin)o(t)h(v)m(alues)g(and)g(decimal)g(strings)f(\(b)q(oth)g (w)o(a)o(ys\).)53 2611 y(e\))23 b(The)15 b(comparisons)g Fu(eq)506 2618 y Fp(F)536 2611 y Fw(,)g Fu(neq)632 2618 y Fp(F)662 2611 y Fw(,)g Fu(l)q(ss)747 2618 y Fp(F)776 2611 y Fw(,)g Fu(l)q(eq)860 2618 y Fp(F)889 2611 y Fw(,)g Fu(g)r(tr)978 2618 y Fp(F)1006 2611 y Fw(,)g(and)g Fu(g)r(eq)1187 2618 y Fp(F)1217 2611 y Fw(.)k(\(Already)d(required)g(b)o(y)f(LIA-1.\))56 2704 y(f)t(\))22 b(The)15 b(comparison)g(\\unordered".)20 b(\(Optional)c(in)g(IEC)g(559,)e (but)h(highly)i(desirable.\))1905 2828 y(63)p eop %%Page: 64 72 bop -72 2712 13 2712 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)51 45 y(g\))22 b(The)15 b(other)g(19)f(comparison)i(op)q(erations.)k(\(Optional)c(in)g(IEC)f (559.\))48 135 y(h\))23 b(The)c(\\recommended)h(functions")h(cop)o(ysign,)f (negate,)g(scaleb,)h(logb,)g(nextafter,)e(\014nite,)j(isnan,)f Fu(<>)p Fw(,)114 192 y(and)c(class.)26 b(\(Eac)o(h)16 b(is)i(optional)g(in)g (IEC)f(559.)25 b(Negate,)16 b(scaleb,)j(logb,)e(and)g(nextafter)g(are)g (redundan)o(t)114 248 y(with)e(existing)h(LIA-1)g(op)q(erations.\))0 362 y(The)i(binding)i(m)o(ust)d(pro)o(vide)h(the)g(abilit)o(y)h(to)e(read)g (and)h(write)g(the)g(follo)o(wing)g(comp)q(onen)o(ts)g(of)f(the)h(\015oating) 0 418 y(p)q(oin)o(t)e(en)o(vironmen)o(t)f(\(mo)q(des)g(or)g(\015ags\):)51 532 y(a\))22 b(The)15 b(rounding)h(mo)q(de.)48 622 y(b\))23 b(The)15 b(\014v)o(e)g(exception)i(\015ags:)i(inexact,)d(under\015o)o(w,)f (\(\015oating)p 1177 622 14 2 v 16 w(\)o)o(v)o(er\015o)o(w,)e(divide-b)o (y-zero,)k(and)e(in)o(v)m(alid.)53 712 y(c\))23 b(The)15 b(disable/enable)j (\015ags)d(for)f(eac)o(h)h(of)g(the)h(\014v)o(e)f(exceptions.)21 b(\(Optional)16 b(in)g(IEC)f(559.\))48 803 y(d\))23 b(The)15 b(handlers)h(for)f(eac)o(h)g(of)g(the)g(exceptions.)21 b(\(Optional)16 b(in)g(IEC)f(559.\))0 916 y(The)g(binding)j(should)e(pro)o(vide)g(b)q(o)q (olean)g(parameters)e(for)h(eac)o(h)g(implemen)o(tor)h(c)o(hoice)g(allo)o(w)o (ed)g(b)o(y)f(IEC)g(559:)51 1029 y(a\))22 b(Whether)15 b(trapping)g(is)h (implemen)o(ted.)48 1120 y(b\))23 b(Whether)15 b(tin)o(yness)h(is)f(detected) h(\\b)q(efore)f(rounding")h(or)f(\\after)f(rounding.")53 1210 y(c\))23 b(Whether)15 b(loss-of-accuracy)g(is)h(detected)g(as)f(a)f (denormalization)j(loss)e(or)g(as)g(an)g(inexact)h(result.)0 1323 y(Note)i(that)g(sev)o(eral)g(of)g(the)h(ab)q(o)o(v)o(e)f(facilities)i (are)e(already)h(required)h(b)o(y)e(LIA-1)h(ev)o(en)g(for)f(implemen)o (tations)0 1380 y(that)c(do)i(not)e(conform)h(to)g(IEC)g(559.)0 1528 y FB(C.2)56 b(Noti\014cation)0 1642 y Fw(One)18 b(appropriate)f(w)o(a)o (y)f(to)g(access)h(the)g(\014v)o(e)h(IEC)f(559)f(exception)i(\015ags)f(is)g (to)f(use)i(the)f(functions)h(de\014ned)g(in)0 1698 y(6.1.2.)29 b(This)19 b(requires)g(extending)h(the)f(set)f Fu(E)j Fw(with)e(three)g(new)g (v)m(alues:)28 b Fx(inexact)p Fw(,)20 b Fx(divide-b)o(y-zero)p Fw(,)g(and)0 1755 y Fx(in)o(v)m(alid)p Fw(.)g(\(Suc)o(h)11 b(an)h(extension)g(is)g(expressly)g(p)q(ermitted)g(b)o(y)f(6.1.2.\))17 b(Whenev)o(er)11 b Fx(divide-b)o(y-zero)h Fw(or)f Fx(in)o(v)m(alid)0 1811 y Fw(is)16 b(set)e(\(whether)h(b)o(y)g(the)g(system)g(or)g(explicit)i (programmer)d(action\),)g(the)h(LIA-1)h(indicator)g(\015ag)f Fx(unde\014ned)0 1868 y Fw(is)k(set)f(as)h(w)o(ell.)31 b(Whenev)o(er)19 b(the)f(LIA-1)i(\015ag)e Fx(unde\014ned)g Fw(is)i(cleared,)g Fx(divide-b)o(y-zero)f Fw(and)f Fx(in)o(v)m(alid)i Fw(are)0 1924 y(cleared)c(as)f(w)o(ell.)0 2009 y(Designing)k(a)e(binding)i(for)e(the)h (optional)g(\\trapping")f(facilit)o(y)i(should)g(b)q(e)f(done)g(in)g(harmon)o (y)f(with)h(the)g(ex-)0 2065 y(ception)c(handling)h(features)e(already)h (presen)o(t)g(in)g(the)f(programming)g(language.)20 b(It)13 b(is)h(p)q(ossible)h(that)e(existing)0 2122 y(language)i(features)g(are)g (su\016cien)o(t)h(to)f(meet)g(programer's)e(needs.)0 2270 y FB(C.3)56 b(Rounding)0 2384 y Fw(The)14 b(t)o(w)o(o)e(directed)j(roundings)f (of)g(IEC)f(559,)g(round-to)o(w)o(ard-p)q(ositiv)o(e)h(in\014nit)o(y)h(and)f (round-to)o(w)o(ard-negativ)o(e-)0 2441 y(in\014nit)o(y)l(,)23 b(do)e(not)g(satisfy)f(the)h(sign)g(symmetry)g(requiremen)o(t)g(of)f(5.2.5.) 36 b(Ho)o(w)o(ev)o(er,)21 b(the)f(default)i(IEC)f(559)0 2497 y(rounding)16 b(do)q(es)g(satisfy)e(LIA-1)i(requiremen)o(ts.)0 2582 y(T)l(o)k(use)g(the)h(directed)g(roundings,)h(a)e(programmer)f(w)o(ould) h(ha)o(v)o(e)g(to)g(tak)o(e)f(explicit)k(action)d(to)g(c)o(hange)g(the)0 2638 y(curren)o(t)15 b(rounding)h(mo)q(de.)21 b(A)o(t)15 b(that)g(p)q(oin)o (t,)g(the)h(program)e(is)i(op)q(erating)f(under)i(the)e(IEC)h(559)e(rules,)i (not)f(the)0 2695 y(LIA-1)h(rules.)21 b(Suc)o(h)15 b(non-conforming)h(mo)q (des)f(are)g(expressly)h(p)q(ermitted)g(b)o(y)g(clause)g(2.)0 2828 y(64)p eop %%Page: 65 73 bop -72 2377 13 2413 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)839 45 y FC(Annex)23 b(D)803 120 y Ff(\(informativ)n(e\))503 269 y FC(Requiremen)n(ts)d(b)r(ey)n(ond)k(IEC)e(559)0 455 y Fw(An)o(y)c(computing)h (system)e(conforming)i(to)e(the)h(requiremen)o(ts)h(of)f(IEC)g(559)f(can)h (economically)i(conform)e(to)0 512 y(LIA-1)c(as)e(w)o(ell.)20 b(This)14 b(annex)f(outlines)h(the)f(LIA-1)h(requiremen)o(ts)g(that)e(go)g(b) q(ey)o(ond)i(the)f(requiremen)o(ts)g(of)g(IEC)0 568 y(559.)0 653 y(F)l(or)h(eac)o(h)h(\015oating)g(p)q(oin)o(t)g(t)o(yp)q(e)g Fu(F)6 b Fw(,)15 b(the)g(follo)o(wing)g(parameters)f(or)h(deriv)o(ed)g (constan)o(ts)f(m)o(ust)h(b)q(e)g(pro)o(vided)h(to)0 709 y(the)f(program:)114 831 y Fu(p)p Fw(,)26 b Fu(r)q Fw(,)g Fu(emin)p Fw(,)h Fu(emax)p Fw(,)f Fu(denor)q(m)p Fw(,)g Fr(ie)n(c)p 783 831 14 2 v 16 w(559)p Fw(,)i Fr(fmax)5 b Fw(,)27 b Fr(fmin)s Fw(,)f Fr(fmin)1269 838 y Fp(N)1303 831 y Fw(,)g Fu(epsil)q(on)p Fw(,)g Fu(r)q(nd)p 1602 831 V 16 w(er)q(r)q(or)q Fw(,)g(and)114 888 y Fu(r)q(nd)p 190 888 V 16 w(sty)r(l)q(e)0 1010 y Fw(The)15 b(follo)o(wing)h(op)q(erations) g(m)o(ust)e(b)q(e)i(pro)o(vided)g(\(t)o(ypically)g(in)g(soft)o(w)o(are\):)114 1132 y Fu(neg)184 1139 y Fp(F)213 1132 y Fw(,)c Fu(abs)303 1139 y Fp(F)332 1132 y Fw(,)h Fu(sig)r(n)446 1139 y Fp(F)475 1132 y Fw(,)f Fu(exponent)683 1139 y Fp(F)713 1132 y Fw(,)h Fr(fr)n(action)895 1143 y Fp(F)924 1132 y Fw(,)f Fu(scal)q(e)1050 1139 y Fp(F)1079 1132 y Fw(,)h Fu(succ)1192 1139 y Fp(F)1221 1132 y Fw(,)f Fu(pr)q(ed)1336 1139 y Fp(F)1365 1132 y Fw(,)g Fu(ul)q(p)1454 1139 y Fp(F)1483 1132 y Fw(,)g Fu(tr)q(unc)1619 1139 y Fp(F)1648 1132 y Fw(,)h Fu(r)q(ound)1795 1139 y Fp(F)1824 1132 y Fw(,)114 1188 y Fu(intpar)q(t)258 1195 y Fp(F)287 1188 y Fw(,)i(and)h Fr(fr)n(actp)n(art)576 1199 y Fp(F)0 1310 y Fw(A)d(metho)q(d)g(for)f(noti\014cation)i(m)o(ust)e(b)q(e)h(pro)o(vided)h (that)e(conforms)g(to)g(the)h(applicable)j(programming)c(language)0 1367 y(standard.)22 b(\(This)16 b(is)h(indep)q(enden)o(t)h(of)e(LIA-1)g(p)q (er)h(se,)f(since)h(an)o(y)f(implemen)o(tation)h(of)e(a)h(standard)g (language)0 1423 y(m)o(ust)f(conform)f(to)h(that)f(language's)h(standard.\))0 1508 y(When)k(the)h(language)f(\(or)f(binding\))j(standard)d(do)q(es)i(not)e (sp)q(ecify)j(a)d(noti\014cation)i(metho)q(d,)g(6.1.2)d(requires)0 1564 y(that)c(noti\014cation)h(b)q(e)g(done)g(b)o(y)f(setting)g (\\indicators")h(whic)o(h)g(re\015ect)g(the)f(status)g(\015ags)g(required)h (b)o(y)g(IEC)f(559.)0 1621 y(\(See)i(annex)h(C)f(as)g(w)o(ell.\))0 1706 y(6.1.3)i(requires)i(that)e(the)i(programmer)e(can)h(demand)h(prompt)f (program)f(termination)h(on)h(the)f(o)q(ccurrence)0 1762 y(of)e(an)g(LIA-1)h (noti\014cation.)23 b(This)17 b(is)g(t)o(ypically)g(implemen)o(ted)h(using)f (IEC)f(559)g(trapping,)g(or)g(\(if)g(trapping)g(is)0 1818 y(una)o(v)m (ailable\))h(b)o(y)e(compiler)i(generated)e(co)q(de.)114 1934 y Fq(NOTE)20 b({)39 b(LIA-1)19 b(noti\014cations)g(corresp)q(ond)j(to)d(the)i (IEC)e(559)g(exceptions)i Fb(o)o(v)o(er\015o)o(w)p Fq(,)e Fb(under\015o)o(w)p Fq(,)114 1984 y Fb(divide-b)n(y-zero)p Fq(,)10 b(and)k Fb(in)o(v)m(alid)p Fq(.)0 2106 y Fw(If)k(an)o(y)g(status)g(\015ags)f(are)h(set)g(at)g(program)f (termination,)i(this)f(fact)g(m)o(ust)g(b)q(e)h(rep)q(orted)f(to)f(the)i (user)f(of)g(the)0 2162 y(program.)0 2247 y(Thorough)11 b(do)q(cumen)o (tation)i(m)o(ust)e(b)q(e)h(pro)o(vided)h(as)e(outlined)j(in)f(clause)f(8.)19 b(Citing)12 b(IEC)g(559)f(will)j(b)q(e)e(su\016cien)o(t)0 2303 y(for)j(sev)o(eral)g(of)g(the)g(do)q(cumen)o(tation)h(requiremen)o(ts,)f (including)j(requiremen)o(ts)e(\(c\),)e(\(f)t(\),)g(and)h(\(h\).)20 b(Note)15 b(that)0 2360 y(the)g(implemen)o(tor)h(c)o(hoices)g(p)q(ermitted)g (b)o(y)f(IEC)h(559)e(m)o(ust)h(b)q(e)h(do)q(cumen)o(ted.)1905 2828 y(65)p eop %%Page: 66 74 bop -72 2015 13 113 v -72 2579 13 170 v -110 1565 51 13 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)843 45 y FC(Annex)23 b(E)803 120 y Ff(\(informativ)n(e\))504 269 y FC(Bindings)f(for)i(sp)r(eci\014c)d (languages)0 455 y Fw(This)15 b(annex)f(describ)q(es)i(ho)o(w)e(a)g (computing)g(system)g(can)g(sim)o(ultaneously)i(conform)e(to)f(a)h(language)g (standard)0 512 y(and)19 b(to)f(the)h(LIA-1.)31 b(It)19 b(con)o(tains)g (suggestions)g(for)f(binding)i(the)f(\\abstract")e(op)q(erations)i(sp)q (eci\014ed)i(in)f(the)0 568 y(LIA-1)c(to)f(concrete)g(language)g(syn)o(tax.)0 653 y(P)o(ortabilit)o(y)f(of)f(programs)f(can)h(b)q(e)i(impro)o(v)o(ed)e(if)h (t)o(w)o(o)e(conforming)i(LIA-1)g(systems)f(using)h(the)g(same)f(language)0 709 y(agree)21 b(in)i(the)f(manner)f(with)h(whic)o(h)h(they)f(adhere)g(to)f (LIA-1.)40 b(F)l(or)21 b(instance,)j(LIA-1)e(requires)h(that)e(the)0 766 y(deriv)o(ed)c(constan)o(t)d Fu(epsil)q(on)i Fw(b)q(e)g(pro)o(vided,)g (but)g(if)g(one)g(system)f(pro)o(vides)h(it)g(b)o(y)g(means)f(of)g(the)h (iden)o(ti\014er)h Fc(EPS)0 822 y Fw(and)i(another)f(b)o(y)g(the)g(iden)o (ti\014er)i Fc(EPSILON)p Fw(,)e(p)q(ortabilit)o(y)h(is)g(impaired.)31 b(Clearly)l(,)19 b(it)g(w)o(ould)g(b)q(e)g(b)q(est)g(if)g(suc)o(h)0 879 y(names)14 b(w)o(ere)g(de\014ned)i(in)f(the)g(relev)m(an)o(t)g(language)f (standards)g(or)g(binding)i(standards,)e(but)h(in)g(the)f(mean)o(time,)0 935 y(suggestions)h(are)g(giv)o(en)h(here)f(to)g(aid)h(p)q(ortabilit)o(y)l(.) 0 1020 y(The)h(follo)o(wing)g(clauses)h(are)e(suggestions)h(rather)f(than)h (requiremen)o(ts)g(b)q(ecause)h(the)f(areas)f(co)o(v)o(ered)g(are)h(the)0 1076 y(resp)q(onsibilit)o(y)h(of)c(the)h(v)m(arious)h(language)f(standards)g (committees.)20 b(Un)o(til)c(binding)h(standards)e(are)f(in)i(place,)0 1133 y(implemen)o(tors)g(can)f(promote)g(\\de)g(facto")f(p)q(ortabilit)o(y)i (b)o(y)f(follo)o(wing)h(these)g(suggestions)f(on)g(their)h(o)o(wn.)0 1217 y(The)f(languages)h(co)o(v)o(ered)f(in)h(this)f(annex)h(are)114 1339 y(Ada)114 1396 y(Basic)114 1452 y(C)114 1509 y(Common)e(Lisp)114 1565 y(F)l(ortran)114 1622 y(Mo)q(dula-2)114 1678 y(P)o(ascal)h(and)g (Extended)h(P)o(ascal)114 1735 y(PL/I)0 1857 y(This)g(list)g(is)g(not)e (exhaustiv)o(e.)21 b(Other)15 b(languages)g(are)g(suitable)i(for)d(conformit) o(y)h(to)g(the)g(LIA-1.)0 1941 y(In)j(this)g(annex,)g(the)g(data)e(t)o(yp)q (es,)i(parameters,)f(constan)o(ts,)g(op)q(erations,)h(and)f(exception)i(b)q (eha)o(vior)f(of)f(eac)o(h)0 1998 y(language)f(are)g(examined)h(to)f(see)g (ho)o(w)g(closely)h(they)g(\014t)f(the)g(requiremen)o(ts)h(of)e(the)i(LIA-1.) 23 b(Where)16 b(parame-)0 2054 y(ters,)g(constan)o(ts,)g(or)g(op)q(erations)g (are)g(not)g(pro)o(vided)i(b)o(y)e(the)h(language,)f(names)h(and)g(syn)o(tax) e(are)h(suggested.)0 2111 y(Substan)o(tial)h(additional)h(suggestions)f(to)e (language)i(dev)o(elop)q(ers)h(are)e(presen)o(ted)h(in)g(A.7,)f(but)h(a)f (few)g(general)0 2167 y(suggestions)f(are)g(reiterated)g(b)q(elo)o(w.)0 2252 y(This)d(annex)h(describ)q(es)g(only)g(the)f(language-lev)o(el)h(supp)q (ort)f(for)f(the)h(LIA-1.)20 b(An)12 b(implemen)o(tation)h(that)e(wishes)0 2308 y(to)16 b(conform)h(m)o(ust)f(ensure)h(that)f(the)h(underlying)i(hardw)o (are)d(and)h(soft)o(w)o(are)f(is)h(also)g(con\014gured)g(to)g(conform)0 2365 y(to)e(LIA-1)h(requiremen)o(ts.)0 2449 y(A)i(complete)g(binding)i(for)d (the)h(LIA-1)g(will)i(include)g(a)d(binding)j(for)d(IEC)h(559.)27 b(Suc)o(h)18 b(a)f(join)o(t)h(LIA-1)g(/)g(IEC)0 2506 y(559)i(binding)j (should)f(b)q(e)f(dev)o(elop)q(ed)i(as)d(a)h(single)h(binding)h(standard.)36 b(T)l(o)20 b(a)o(v)o(oid)h(con\015ict)h(with)f(ongoing)0 2562 y(dev)o(elopmen)o(t,)16 b(only)f(the)h(LIA-1)f(sp)q(eci\014c)j(p)q(ortions)d (of)g(suc)o(h)g(a)g(binding)i(are)e(presen)o(ted)h(in)g(this)g(annex.)0 2828 y(66)p eop %%Page: 67 75 bop -72 63 13 59 v -72 233 13 57 v -72 919 13 235 v -72 1870 13 57 v -72 2208 13 170 v -72 2519 13 113 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y FB(E.1)55 b(General)19 b(commen)n(ts)0 159 y Fw(Most)e(language)h (standards)f(p)q(ermit)h(an)g(implemen)o(tation)h(to)e(pro)o(vide,)i(b)o(y)f (some)f(means,)h(the)g(parameters,)0 216 y(constan)o(ts)g(and)g(op)q (erations)h(required)h(b)o(y)e(the)h(LIA-1)g(that)f(are)h(not)f(already)h (part)f(of)g(the)g(language.)31 b(The)0 272 y(metho)q(d)20 b(for)f(accessing)i(these)f(additional)h(constan)o(ts)e(and)h(op)q(erations)g (dep)q(ends)i(on)e(the)g(implemen)o(tation)0 329 y(and)14 b(language,)h(and)f (is)h(not)f(sp)q(eci\014ed)i(in)f(the)g(LIA-1.)20 b(It)14 b(could)h(include)i (external)e(subroutine)g(libraries;)h(new)0 385 y(in)o(trinsic)e(functions)f (supp)q(orted)g(b)o(y)f(the)h(compiler;)h(constan)o(ts)d(and)i(functions)g (pro)o(vided)g(as)f(global)h(\\macros";)0 441 y(and)i(so)g(on.)0 526 y(A)i(few)f(parameters)g(are)g(completely)i(determined)f(b)o(y)g(the)f (language)h(de\014nition,)h(e.g.)24 b(whether)16 b(the)h(in)o(teger)0 583 y(t)o(yp)q(e)g(is)h Fr(b)n(ounde)n(d)5 b Fw(.)26 b(Suc)o(h)18 b(parameters)e(ha)o(v)o(e)h(the)g(same)g(v)m(alue)i(in)f(ev)o(ery)f(implemen) o(tation)i(of)e(the)g(language,)0 639 y(and)e(therefore)g(need)h(not)f(b)q(e) h(pro)o(vided)g(as)f(a)g(run-time)h(parameter.)0 724 y(During)e(the)f(dev)o (elopmen)o(t)h(of)f(standard)g(language)g(bindings,)i(eac)o(h)f(language)f (comm)o(unit)o(y)g(should)i(tak)o(e)d(care)0 780 y(to)19 b(minimize)j(the)d (impact)h(of)f(an)o(y)h(newly)g(in)o(tro)q(duced)h(names)e(on)h(existing)h (programs.)31 b(T)l(ec)o(hniques)22 b(suc)o(h)0 837 y(as)c(\\mo)q(dules")h (or)f(name)h(pre\014xing)g(ma)o(y)f(b)q(e)h(suitable)h(dep)q(ending)g(on)f (the)f(con)o(v)o(en)o(tions)h(of)f(that)g(language)0 893 y(comm)o(unit)o(y)l (.)0 978 y(The)d(LIA-1)g(treats)e(only)i(single)g(op)q(erations)g(on)f(op)q (erands)g(of)g(a)g(single)i(data)e(t)o(yp)q(e,)g(but)g(nearly)h(all)g (computa-)0 1034 y(tional)i(languages)f(p)q(ermit)h(expressions)g(that)e(con) o(tain)i(m)o(ultiple)h(op)q(erations)e(in)o(v)o(olving)i(op)q(erands)e(of)g (mixed)0 1091 y(t)o(yp)q(es.)32 b(The)19 b(rules)h(of)f(the)g(language)h(sp)q (ecify)g(ho)o(w)f(the)g(op)q(erations)g(and)h(op)q(erands)f(in)h(an)f (expression)h(are)0 1147 y(mapp)q(ed)h(in)o(to)e(the)h(primitiv)o(e)i(op)q (erations)e(describ)q(ed)h(b)o(y)f(the)g(LIA-1.)35 b(In)20 b(principle,)j(the)d(mapping)h(could)0 1204 y(b)q(e)d(completely)h(sp)q (eci\014ed)g(in)f(the)f(language)h(standard.)26 b(Ho)o(w)o(ev)o(er,)16 b(the)h(translator)g(often)g(has)g(the)g(freedom)0 1260 y(to)e(depart)h(from) f(this)h(precise)i(sp)q(eci\014cation:)23 b(to)15 b(reorder)h(computations,)f (widen)i(data)e(t)o(yp)q(es,)h(short-circuit)0 1316 y(ev)m(aluations,)k(and)f (p)q(erform)f(other)g(optimizations)i(that)e(yield)i(\\mathematically)f (equiv)m(alen)o(t")h(results)f(but)0 1373 y(remo)o(v)o(e)14 b(the)i(computation)f(ev)o(en)g(further)g(from)g(the)g(image)g(presen)o(ted)h (b)o(y)f(the)h(programmer.)0 1458 y(W)l(e)i(suggest)g(that)f(eac)o(h)h (language)h(standard)e(committee)i(require)g(implemen)o(tations)g(to)e(pro)o (vide)i(a)f(means)0 1514 y(for)d(the)g(user)g(to)g(con)o(trol,)f(in)i(a)f(p)q (ortable)h(w)o(a)o(y)l(,)e(the)h(order)g(of)g(ev)m(aluation)h(of)f (arithmetic)h(expressions.)0 1599 y(Some)h(n)o(umerical)g(analysts)g(assert)f (that)f(user)i(con)o(trol)f(of)h(the)f(precision)i(of)f(in)o(termediate)g (computations)f(is)0 1655 y(desirable.)21 b(W)l(e)15 b(suggest)e(that)h (language)g(standard)g(committee)h(consider)g(requiremen)o(ts)g(whic)o(h)g(w) o(ould)f(mak)o(e)0 1712 y(suc)o(h)i(user)f(con)o(trol)g(a)o(v)m(ailable)i(in) f(a)f(p)q(ortable)g(w)o(a)o(y)l(.)k(\(See)d(A.5.2.14.\))0 1796 y(Most)e(language)g(standards)h(do)f(not)g(constrain)h(the)g(accuracy)f(of)h (\015oating)f(p)q(oin)o(t)h(op)q(erations,)g(or)f(sp)q(ecify)i(the)0 1853 y(subsequen)o(t)g(b)q(eha)o(vior)g(after)e(a)h(serious)h(arithmetic)f (violation)h(o)q(ccurs.)0 1937 y(W)l(e)d(suggest)e(that)h(eac)o(h)h(language) f(standard)g(committee)h(require)g(that)f(the)g(arithmetic)i(op)q(erations)e (pro)o(vided)0 1994 y(in)k(the)f(language)h(satisfy)f(the)g(LIA-1)h (requiremen)o(ts)g(for)e(accuracy)h(and)h(noti\014cation.)0 2079 y(W)l(e)d(also)g(suggest)g(that)f(eac)o(h)i(language)f(standard)g (committee)g(de\014ne)h(a)f(w)o(a)o(y)f(of)h(handling)i(exceptions)f(within)0 2135 y(the)g(language,)g(e.g.)19 b(to)13 b(allo)o(w)h(the)g(user)g(to)g(con)o (trol)f(the)h(form)f(of)h(noti\014cation,)g(and)g(p)q(ossibly)i(to)d(\\\014x) h(up")g(the)0 2192 y(error)j(and)g(con)o(tin)o(ue)h(execution.)27 b(The)17 b(binding)i(of)e(the)g(exception)i(handling)g(within)f(the)f (language)h(syn)o(tax)0 2248 y(m)o(ust)d(also)g(b)q(e)h(sp)q(eci\014ed.)0 2333 y(If)e(a)g(language)g(or)f(binding)j(standard)d(wishes)i(to)e(mak)o(e)g (selection)j(of)d(noti\014cation)i(metho)q(d)f(p)q(ortable)g(but)g(has)0 2389 y(no)g(syn)o(tax)g(for)f(sp)q(ecifying)k(suc)o(h)d(a)g(selection,)i(w)o (e)d(suggest)h(the)g(use)h(of)f(one)g(of)g(the)g(commonly)h(used)g(metho)q (ds)0 2446 y(for)j(extending)h(the)g(language)g(suc)o(h)f(as)h(sp)q(ecial)h (commen)o(t)e(statemen)o(ts)f(in)i(F)l(ortran)f(or)g Fc(pragma)p Fw(s)f(in)j(C)e(and)0 2502 y(Ada.)0 2587 y(In)h(the)g(ev)o(en)o(t)f(that)g (there)g(is)h(a)f(con\015ict)i(b)q(et)o(w)o(een)e(the)h(requiremen)o(ts)g(of) f(the)h(language)f(standard)g(and)h(the)0 2643 y(requiremen)o(ts)e(of)f(the)h (LIA-1,)g(the)g(language)f(binding)j(standard)d(should)h(clearly)h(iden)o (tify)g(the)e(con\015ict)i(and)0 2700 y(state)c(its)i(resolution)g(of)e(the)i (con\015ict.)1905 2828 y(67)p eop %%Page: 68 76 bop -72 1352 13 113 v -72 1841 13 57 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y FB(E.2)55 b(Ada)0 159 y Fw(The)16 b(programming)f(language) h(Ada)g(is)h(de\014ned)g(b)o(y)f(ISO/IEC)g(8652:1986,)d Fr(Information)k(te)n (chnolo)n(gy)f({)h(Pr)n(o-)0 216 y(gr)n(amming)f(languages)g({)g(A)n(da)f Fw([6].)0 300 y(An)i(implemen)o(tation)i(should)e(follo)o(w)h(all)f(the)h (requiremen)o(ts)f(of)g(LIA-1)g(unless)h(otherwise)g(sp)q(eci\014ed)h(b)o(y)e (this)0 357 y(language)e(binding.)0 441 y(The)i(op)q(erations)g(or)g (parameters)f(mark)o(ed)h(\\)p Fv(y)p Fw(")f(are)h(not)g(part)f(of)h(the)g (language)g(and)g(m)o(ust)g(b)q(e)g(pro)o(vided)h(b)o(y)0 498 y(an)c(implemen)o(tation)h(that)f(wishes)g(to)g(conform)f(to)h(the)g(LIA-1.) 20 b(F)l(or)14 b(eac)o(h)g(of)f(the)h(mark)o(ed)g(items)g(a)g(suggested)0 554 y(iden)o(ti\014er)i(is)f(pro)o(vided.)21 b(The)15 b(additional)h (facilities)g(can)f(b)q(e)g(pro)o(vided)h(b)o(y)e(means)h(of)f(an)g (additional)i(pac)o(k)m(age,)0 611 y(denoted)g(b)o(y)f Fc(LIA)p Fw(.)0 695 y(The)g(Ada)h(data)e(t)o(yp)q(e)h Fc(BOOLEAN)g Fw(corresp)q(onds)g (to)g(the)g(LIA-1)h(data)e(t)o(yp)q(e)i Fu(B)r(ool)q(ean)p Fw(.)0 780 y(Ev)o(ery)i(implemen)o(tation)h(of)f(Ada)g(has)h(at)e(least)h (one)h(in)o(teger)f(data)g(t)o(yp)q(e,)h(and)f(at)g(least)g(one)g(\015oating) g(p)q(oin)o(t)0 837 y(data)c(t)o(yp)q(e.)19 b(The)c(notations)f Fr(INT)f Fw(and)i Fr(FL)m(T)d Fw(are)i(used)h(to)f(stand)g(for)g(the)h(names) f(of)g(one)h(of)f(these)g(data)g(t)o(yp)q(es)0 893 y(in)i(what)f(follo)o(ws.) 0 978 y(The)g(parameters)g(for)f(an)h(in)o(teger)h(data)e(t)o(yp)q(e)i(can)f (b)q(e)h(accessed)g(b)o(y)f(the)g(follo)o(wing)h(syn)o(tax:)114 1100 y Fu(maxint)451 b Fr(INT)p Fc('LAST)114 1156 y Fu(minint)458 b Fr(INT)p Fc('FIRST)0 1278 y Fw(The)12 b(parameter)g Fr(b)n(ounde)n(d)k Fw(is)d(alw)o(a)o(ys)e Fx(true)p Fw(,)i(and)f(need)h(not)f(b)q(e)g(pro)o (vided.)20 b(The)12 b(parameter)g Fu(modul)q(o)f Fw(is)i(alw)o(a)o(ys)0 1335 y Fx(false)p Fw(,)i(and)h(need)g(not)f(b)q(e)g(pro)o(vided.)0 1419 y(The)g(parameters)g(for)f(a)h(\015oating)g(p)q(oin)o(t)h(data)f(t)o(yp) q(e)g(can)g(b)q(e)h(accessed)g(b)o(y)f(the)g(follo)o(wing)h(syn)o(tax:)114 1541 y Fu(r)579 b Fr(FL)m(T)p Fc('MACHINE)p 998 1541 15 2 v 14 w(RADIX)114 1598 y Fu(p)e Fr(FL)m(T)p Fc('MACHINE)p 998 1598 V 14 w(MANTISSA)114 1654 y Fu(emax)489 b Fr(FL)m(T)p Fc('MACHINE)p 998 1654 V 14 w(EMAX)114 1711 y Fu(emin)496 b Fr(FL)m(T)p Fc('MACHINE)p 998 1711 V 14 w(EMIN)114 1767 y Fu(denor)q(m)444 b Fr(FL)m(T)p Fc('DENORM)643 b Fv(y)114 1824 y Fr(ie)n(c)p 173 1824 14 2 v 18 w(559)459 b(FL)m(T)p Fc('IEC)p 902 1824 15 2 v 14 w(559)629 b Fv(y)0 1946 y Fw(The)15 b(deriv)o(ed)i(constan)o(ts)d(for)g(the)i (\015oating)f(p)q(oin)o(t)h(data)e(t)o(yp)q(e)h(can)h(b)q(e)g(accessed)f(b)o (y)h(the)f(follo)o(wing)h(syn)o(tax:)114 2080 y Fr(fmax)505 b(FL)m(T)p Fc('LAST)114 2137 y Fr(fmin)203 2144 y Fp(N)714 2137 y Fr(FL)m(T)p Fc('MIN)p 902 2137 V 14 w(NORM)605 b Fv(y)114 2193 y Fr(fmin)509 b(FL)m(T)p Fc('MIN)715 b Fv(y)114 2250 y Fu(epsil)q(on)455 b Fr(FL)m(T)p Fc('EPSILON)619 b Fv(y)114 2306 y Fu(r)q(nd)p 190 2306 14 2 v 16 w(er)q(r)q(or)403 b Fr(FL)m(T)p Fc('RND)p 902 2306 15 2 v 14 w(ERROR)581 b Fv(y)114 2363 y Fu(r)q(nd)p 190 2363 14 2 v 16 w(sty)r(l)q(e)414 b Fr(FL)m(T)p Fc('RND)p 902 2363 15 2 v 14 w(STYLE)581 b Fv(y)0 2497 y Fw(where)15 b Fu(x)h Fw(is)f(an)g(expression)h(of)f(t)o(yp)q(e)h Fr(FL)m(T)p Fw(.)0 2582 y(The)i(v)m(alue)h(returned)f(b)o(y)g(the)g(function)g Fr(FL)m(T)p Fc('RND)p 918 2582 V 15 w(STYLE)f Fw(are)h(from)f(the)h(en)o (umeration)g(t)o(yp)q(e)f Fc(RND)p 1780 2582 V 17 w(STYLES)p Fw(.)0 2638 y(Eac)o(h)e(en)o(umeration)g(literal)i(should)f(corresp)q(ond)g (as)f(follo)o(ws)g(to)f(an)h(LIA-1)h(rounding)g(st)o(yle)g(v)m(alue:)0 2828 y(68)p eop %%Page: 69 77 bop -72 756 13 226 v -110 1490 51 13 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)114 45 y Fu(near)q(est)448 b Fc(NEAREST)732 b Fv(y)114 102 y Fu(tr)q(uncate)428 b Fc(TRUNCATE)708 b Fv(y)114 158 y Fu(other)494 b Fc(OTHER)780 b Fv(y)0 279 y Fw(The)15 b(in)o(teger)h(op)q(erations)f(are)g(listed)i(b)q (elo)o(w,)e(along)g(with)h(the)f(syn)o(tax)f(used)i(to)f(in)o(v)o(ok)o(e)g (them:)114 400 y Fu(add)186 407 y Fp(I)714 400 y Fu(x)23 b Fc(+)h Fu(y)114 457 y(sub)181 464 y Fp(I)714 457 y Fu(x)f Fc(-)h Fu(y)114 513 y(mul)194 520 y Fp(I)714 513 y Fu(x)f Fc(*)h Fu(y)114 570 y(div)178 553 y Fn(1)176 583 y Fp(I)714 570 y Fw(no)15 b(binding)114 626 y Fu(div)178 610 y Fn(2)176 639 y Fp(I)714 626 y Fu(x)23 b Fc(/)h Fu(y)114 683 y(mod)200 666 y Fn(1)200 695 y Fp(I)714 683 y Fw(no)15 b(binding)114 739 y Fu(r)q(em)197 723 y Fn(2)197 752 y Fp(I)714 739 y Fu(x)23 b Fc(rem)h Fu(y)114 796 y(mod)200 779 y Fn(1)200 808 y Fp(I)714 796 y Fu(x)f Fc(mod)h Fu(y)114 852 y(mod)200 835 y Fn(2)200 865 y Fp(I)714 852 y Fw(no)15 b(binding)114 908 y Fu(sig)r(n)202 915 y Fp(I)714 908 y Fc(SIGNUM\()p Fu(x)p Fc(\))682 b Fv(y)114 965 y Fu(neg)184 972 y Fp(I)714 965 y Fc(-)23 b Fu(x)114 1021 y(abs)179 1028 y Fp(I)714 1021 y Fc(abs)g Fu(x)114 1078 y(eq)155 1085 y Fp(I)714 1078 y Fu(x)g Fc(=)h Fu(y)114 1134 y(neq)182 1141 y Fp(I)714 1134 y Fu(x)f Fc(/=)h Fu(y)114 1191 y(l)q(ss)171 1198 y Fp(I)714 1191 y Fu(x)f Fc(<)h Fu(y)114 1247 y(l)q(eq)170 1254 y Fp(I)714 1247 y Fu(x)f Fc(<=)h Fu(y)114 1304 y(g)r(tr)175 1311 y Fp(I)714 1304 y Fu(x)f Fc(>)h Fu(y)114 1360 y(g)r(eq)179 1367 y Fp(I)714 1360 y Fu(x)f Fc(>=)h Fu(y)0 1481 y Fw(where)15 b Fu(x)h Fw(and)f Fu(y)i Fw(are)e(expressions)h(of)f(t)o(yp)q(e)g Fr(INT)p Fw(.)0 1566 y(The)g(\015oating)h(p)q(oin)o(t)f(op)q(erations)h(are)e(listed)j(b)q (elo)o(w,)e(along)h(with)f(the)g(syn)o(tax)g(used)h(to)e(in)o(v)o(ok)o(e)h (them:)114 1687 y Fu(add)186 1694 y Fp(F)714 1687 y Fu(x)23 b Fc(+)h Fu(y)114 1744 y(sub)181 1751 y Fp(F)714 1744 y Fu(x)f Fc(-)h Fu(y)114 1800 y(mul)194 1807 y Fp(F)714 1800 y Fu(x)f Fc(*)h Fu(y)114 1856 y(div)176 1863 y Fp(F)714 1856 y Fu(x)f Fc(/)h Fu(y)114 1913 y(neg)184 1920 y Fp(F)714 1913 y Fc(-)f Fu(x)114 1969 y(abs)179 1976 y Fp(F)714 1969 y Fc(abs)g Fu(x)114 2026 y(sig)r(n)202 2033 y Fp(F)714 2026 y Fc(SIGNUM\()p Fu(x)p Fc(\))682 b Fv(y)114 2082 y Fu(exponent)297 2089 y Fp(F)714 2082 y Fc(EXPONENT\()p Fu(x)p Fc(\))634 b Fv(y)114 2139 y Fu(f)5 b(r)q(action)288 2146 y Fp(F)714 2139 y Fc(FRACTION\()p Fu(x)p Fc(\))634 b Fv(y)114 2195 y Fu(scal)q(e)215 2202 y Fp(F)714 2195 y Fc(SCALE\()p Fu(x;)8 b(n)p Fc(\))658 b Fv(y)114 2252 y Fu(succ)201 2259 y Fp(F)714 2252 y Fc(SUCCESSOR\()p Fu(x)p Fc(\))610 b Fv(y)114 2308 y Fu(pr)q(ed)204 2315 y Fp(F)714 2308 y Fc(PREDECESSOR\()p Fu(x)p Fc(\))562 b Fv(y)114 2365 y Fu(ul)q(p)178 2372 y Fp(F)714 2365 y Fc(UNIT)p 813 2365 15 2 v 16 w(LAST)p 925 2365 V 17 w(PLACE\()p Fu(x)p Fc(\))481 b Fv(y)114 2421 y Fu(tr)q(unc)225 2428 y Fp(F)714 2421 y Fc(LEADING)p 885 2421 V 16 w(PLACES\()p Fu(x;)8 b(n)p Fc(\))450 b Fv(y)114 2477 y Fu(r)q(ound)235 2484 y Fp(F)714 2477 y Fc(ROUND)p 837 2477 V 16 w(PLACES\()p Fu(x;)8 b(n)p Fc(\))498 b Fv(y)114 2534 y Fu(intpar)q(t)258 2541 y Fp(F)714 2534 y Fc(INT)p 789 2534 V 16 w(PART\()p Fu(x)p Fc(\))642 b Fv(y)114 2590 y Fr(fr)n(actp)n(art)286 2601 y Fp(F)714 2590 y Fc(FRACT)p 837 2590 V 16 w(PART\()p Fu(x)p Fc(\))594 b Fv(y)114 2647 y Fu(eq)155 2654 y Fp(F)714 2647 y Fu(x)23 b Fc(=)h Fu(y)114 2703 y(neq)182 2710 y Fp(F)714 2703 y Fu(x)f Fc(/=)h Fu(y)1905 2828 y Fw(69)p eop %%Page: 70 78 bop -72 1247 13 113 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)114 45 y Fu(l)q(ss)171 52 y Fp(F)714 45 y Fu(x)23 b Fc(<)h Fu(y)114 102 y(l)q(eq)170 109 y Fp(F)714 102 y Fu(x)f Fc(<=)h Fu(y)114 158 y(g)r(tr)175 165 y Fp(F)714 158 y Fu(x)f Fc(>)h Fu(y)114 214 y(g)r(eq)179 221 y Fp(F)714 214 y Fu(x)f Fc(>=)h Fu(y)0 337 y Fw(where)15 b Fu(x)h Fw(and)f Fu(y)i Fw(are)e(expressions)h(of)f(t)o(yp)q(e)g Fr(FL)m(T)e Fw(and)j Fu(n)f Fw(is)h(of)f(t)o(yp)q(e)g Fr(INT)p Fw(.)0 421 y(T)o(yp)q(e)g(con)o(v)o(ersions)f(in)h(Ada)g(are)f(alw)o(a)o(ys)g (explicit)i(and)f(use)g(the)f(destination)i(t)o(yp)q(e)e(name)h(as)f(the)g (name)h(of)f(the)0 478 y(con)o(v)o(ersion)h(function.)21 b(Hence:)114 600 y Fu(cv)r(t)174 607 y Fp(I)s Fm(!)p Fp(F)256 600 y Fw(,)15 b Fu(cv)r(t)344 607 y Fp(F)371 598 y Fz(0)382 607 y Fm(!)p Fp(F)714 600 y Fr(FL)m(T)p Fc(\()p Fu(x)p Fc(\))114 656 y Fu(cv)r(t)174 663 y Fp(F)5 b Fm(!)p Fp(I)256 656 y Fw(,)15 b Fu(cv)r(t)344 664 y Fp(I)362 654 y Fz(0)372 664 y Fm(!)p Fp(I)714 656 y Fr(INT)p Fc(\()p Fu(x)p Fc(\))0 778 y Fw(where)j Fu(x)g Fw(is)g(an)g(expression)g(of)g (the)f(appropriate)h(t)o(yp)q(e.)28 b(An)18 b(implemen)o(tation)h(that)e (wishes)h(to)f(conform)h(to)0 835 y(the)d(LIA-1)h(m)o(ust)f(use)g(a)g(round)h (to)e(nearest)h(st)o(yle)h(for)e(all)i(con)o(v)o(ersions)f(to)g(\015oating)g (p)q(oin)o(t.)0 919 y(The)g(noti\014cation)h(metho)q(d)f(required)h(b)o(y)f (Ada)g(is)g(alteration)g(of)g(con)o(trol)g(\015o)o(w)f(as)h(describ)q(ed)h (in)g(6.1.1.)i(Noti\014-)0 976 y(cation)13 b(is)g(accomplished)h(b)o(y)f (raising)g(the)g(exception)g Fc(CONSTRAINT)p 1176 976 15 2 v 16 w(ERROR)p Fw(.)f(An)g(implemen)o(tation)i(that)e(wishes)0 1032 y(to)k(conform)g(to)g(the)h(LIA-1)g(m)o(ust)f(pro)o(vide)h(a)g(default)g (exception)h(handler)f(whic)o(h)h(terminates)e(the)h(program)0 1089 y(if)f(no)f(handler)h(for)f(the)g(exception)h(has)f(b)q(een)i(supplied)g (b)o(y)e(the)h(programmer.)0 1173 y(In)h(addition,)h(an)e(implemen)o(tation)i (that)d(wishes)j(to)d(conform)h(to)g(the)h(LIA-1)g(shall)g(pro)o(vide)g(the)g (alternativ)o(e)0 1230 y(of)e(noti\014cation)h(through)f(termination)g(with)h (a)f(message)f(as)h(describ)q(ed)i(in)f(6.1.3.)114 1358 y Fq(NOTE)e({)26 b(A)14 b(more)e(comprehensiv)o(e)i(discussion)g(of)f(the)h(relationship)f(b)q (et)o(w)o(een)i(the)f(LIA-1)f(and)g(the)h(Ada)114 1407 y(language)9 b(can)h(b)q(e)h(found)f(in)g([39)o(].)16 b(In)10 b(particular,)h(this)f(co)o (v)o(ers)h(the)g(relationship)f(b)q(et)o(w)o(een)h(the)g(pac)o(k)n(age)f Fg(LIA)114 1457 y Fq(and)k(pac)o(k)n(ages)h(for)g(the)g(elemen)o(tary)f (functions)h([17)o(])g(and)f(for)h(primitiv)o(e)d(functions)j([18)o(])g(b)q (eing)f(prop)q(osed)114 1507 y(to)f(ISO.)0 1657 y FB(E.3)55 b(BASIC)0 1771 y Fw(The)17 b(programming)f(language)h(BASIC)g(is)g(de\014ned) h(b)o(y)f(ISO/IEC)g(10279:1991,)d Fr(Information)j(T)m(e)n(chnolo)n(gy)f({)0 1828 y(Pr)n(o)n(gr)n(amming)g(L)n(anguages)f({)h(F)m(ul)r(l)g(BASIC,)e(First) i(Edition)f Fw([13)o(].)0 1912 y(An)i(implemen)o(tation)i(should)e(follo)o(w) h(all)f(the)h(requiremen)o(ts)f(of)g(LIA-1)g(unless)h(otherwise)g(sp)q (eci\014ed)h(b)o(y)e(this)0 1969 y(language)e(binding.)0 2053 y(The)i(op)q(erations)g(or)g(parameters)f(mark)o(ed)h(\\)p Fv(y)p Fw(")f(are)h(not)g(part)f(of)h(the)g(language)g(and)g(m)o(ust)g(b)q(e) g(pro)o(vided)h(b)o(y)0 2110 y(an)c(implemen)o(tation)h(that)f(wishes)g(to)g (conform)f(to)h(the)g(LIA-1.)20 b(F)l(or)14 b(eac)o(h)g(of)f(the)h(mark)o(ed) g(items)g(a)g(suggested)0 2166 y(iden)o(ti\014er)j(is)e(pro)o(vided.)0 2251 y(There)d(is)g(no)g(user)g(accessible)i(BASIC)e(data)g(t)o(yp)q(e)f (corresp)q(onding)i(to)e(the)h(LIA-1)h(data)e(t)o(yp)q(e)h Fu(B)r(ool)q(ean)p Fw(.)20 b(An)o(y)11 b(of)0 2307 y(the)i(LIA-1)h(op)q (erations)g(that)e(return)i(a)f Fu(B)r(ool)q(ean)h Fw(v)m(alue)g(corresp)q (ond)g(to)e(\\relational-expressions")j(in)f(BASIC)0 2364 y(whic)o(h)i(app)q (ear)f(within)i(con)o(trol)e(structures.)0 2449 y(BASIC)h(has)f(one)h (primitiv)o(e)g(computational)g(data)f(t)o(yp)q(e,)g Fc(numeric)p Fw(.)k(The)d(mo)q(del)g(presen)o(ted)g(b)o(y)f(the)g(BASIC)0 2505 y(language)k(is)f(that)g(of)g(a)g(real)h(n)o(um)o(b)q(er)g(with)f (decimal)i(radix)f(and)f(a)h(sp)q(eci\014ed)h(\(minim)o(um\))f(n)o(um)o(b)q (er)g(of)f(sig-)0 2561 y(ni\014can)o(t)g(decimal)h(digits.)28 b(Numeric)19 b(data)e(is)h(not)f(declared)i(directly)l(,)g(but)f(an)o(y)f(sp) q(ecial)i(c)o(haracteristics)f(are)0 2618 y(inferred)e(from)f(ho)o(w)f(they)i (are)e(used)i(and)g(from)e(an)o(y)h Fc(OPTIONS)f Fw(that)h(are)g(in)h(force.) 0 2828 y(70)p eop %%Page: 71 79 bop -72 466 13 66 v -72 946 13 57 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y Fw(The)k(BASIC)h(statemen)o(t)f Fc(OPTION)h(ARITHMETIC)f(NATIVE)f Fw(ties)i(the)f Fc(numeric)g Fw(t)o(yp)q(e)g(more)g(closely)h(to)f(the)0 102 y(underlying)g(implemen)o(tation.)37 b(The)20 b(precision)i(and)e(t)o(yp) q(e)h(of)f Fc(NATIVE)f Fw(n)o(umeric)i(data)f(is)h(implemen)o(tation)0 158 y(dep)q(enden)o(t.)0 243 y(Since)f(the)f(BASIC)g(n)o(umeric)g(data)f(t)o (yp)q(e)h(do)q(es)g(not)f(matc)o(h)g(the)g(in)o(teger)h(t)o(yp)q(e)g (required)g(b)o(y)g(the)f(LIA-1,)i(an)0 299 y(implemen)o(tation)g(is)g(not)f (required)h(to)e(supply)j(an)o(y)d(of)h(the)g(LIA-1)h(parameters)e(or)h(op)q (erations)g(for)g(in)o(teger)0 356 y(data)c(t)o(yp)q(es.)0 440 y(The)g(BASIC)h(n)o(umeric)g(t)o(yp)q(e)g(is)f(used)h(for)f(the)g(in)o (teger)g(v)m(alued)i(t)o(yp)q(e)e(\\)p Fu(J)t Fw(")h(in)o(tro)q(duced)g(in)g (5.2.2.)0 525 y(The)f(parameters)g(for)f(the)i Fc(numeric)e Fw(data)g(t)o(yp)q(e)i(can)f(b)q(e)h(accessed)g(b)o(y)f(the)g(follo)o(wing)h (syn)o(tax:)114 647 y Fu(r)579 b Fc(RADIX)780 b Fv(y)114 703 y Fu(p)577 b Fc(PLACES)756 b Fv(y)114 760 y Fu(emax)489 b Fc(MAXEXP)756 b Fv(y)114 816 y Fu(emin)496 b Fc(MINEXP)756 b Fv(y)114 873 y Fu(denor)q(m)444 b Fc(DENORM)756 b Fv(y)114 929 y Fr(ie)n(c)p 173 929 14 2 v 18 w(559)459 b Fc(IEC)p 789 929 15 2 v 16 w(559)740 b Fv(y)0 1051 y Fw(The)15 b(deriv)o(ed)i(constan)o(ts)d(for)g(the)i Fc(numeric)e Fw(data)g(t)o(yp)q(e)i(can)f(b)q(e)h(accessed)g(b)o(y)f(the)g (follo)o(wing)h(syn)o(tax:)114 1186 y Fr(fmax)505 b Fc(MAXNUM)756 b Fv(y)114 1242 y Fr(fmin)203 1249 y Fp(N)714 1242 y Fc(FMINN)780 b Fv(y)114 1299 y Fr(fmin)509 b Fc(EPS\(0\))114 1355 y Fu(epsil)q(on)455 b Fc(EPSILON)732 b Fv(y)114 1412 y Fu(r)q(nd)p 190 1412 14 2 v 16 w(er)q(r)q(or)403 b Fc(RNDERROR)708 b Fv(y)114 1468 y Fu(r)q(nd)p 190 1468 V 16 w(sty)r(l)q(e)414 b Fc(RNDSTYLE)708 b Fv(y)0 1603 y Fw(The)17 b(allo)o(w)o(ed)g(v)m(alues)h(of)e(the)g(parameter) g Fu(r)q(nd)p 822 1603 V 16 w(sty)r(l)q(e)h Fw(are)f Fc(numeric)g Fw(and)h(can)g(b)q(e)g(accessed)g(b)o(y)g(the)f(follo)o(wing)0 1659 y(syn)o(tax:)114 1781 y Fu(near)q(est)448 b Fc(NEAREST)732 b Fv(y)114 1838 y Fu(tr)q(uncate)428 b Fc(TRUNCATE)708 b Fv(y)114 1894 y Fu(other)494 b Fc(OTHER)780 b Fv(y)0 2016 y Fw(The)15 b(LIA-1)h(\015oating)g(p)q(oin)o(t)f(op)q(erations)h(are)e(listed)j(b)q(elo)o (w,)e(along)h(with)f(the)g(syn)o(tax)g(used)h(to)e(in)o(v)o(ok)o(e)h(them:) 114 2138 y Fu(add)186 2145 y Fp(F)714 2138 y Fu(x)23 b Fc(+)h Fu(y)114 2195 y(sub)181 2202 y Fp(F)714 2195 y Fu(x)f Fc(-)h Fu(y)114 2251 y(mul)194 2258 y Fp(F)714 2251 y Fu(x)f Fc(*)h Fu(y)114 2307 y(div)176 2314 y Fp(F)714 2307 y Fu(x)f Fc(/)h Fu(y)114 2364 y(neg)184 2371 y Fp(F)714 2364 y Fc(-)f Fu(x)114 2420 y(abs)179 2427 y Fp(F)714 2420 y Fc(ABS\()p Fu(x)p Fc(\))114 2477 y Fu(sig)r(n)202 2484 y Fp(F)714 2477 y Fc(SGN\()p Fu(x)p Fc(\))114 2533 y Fu(exponent)297 2540 y Fp(F)714 2533 y Fc(EXPON\()p Fu(x)p Fc(\))706 b Fv(y)114 2590 y Fr(fr)n(action)270 2601 y Fp(F)714 2590 y Fc(FRACTION\()p Fu(x)p Fc(\))634 b Fv(y)114 2646 y Fu(scal)q(e)215 2653 y Fp(F)714 2646 y Fc(SCALE\()p Fu(x;)8 b(n)p Fc(\))658 b Fv(y)114 2703 y Fu(succ)201 2710 y Fp(F)714 2703 y Fc(SUCC\()p Fu(x)p Fc(\))730 b Fv(y)1905 2828 y Fw(71)p eop %%Page: 72 80 bop -72 1815 13 57 v -72 2567 13 113 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)114 45 y Fu(pr)q(ed)204 52 y Fp(F)714 45 y Fc(PRED\()p Fu(x)p Fc(\))730 b Fv(y)114 102 y Fu(ul)q(p)178 109 y Fp(F)714 102 y Fc(ULP\()p Fu(x)p Fc(\))754 b Fv(y)114 158 y Fu(tr)q(unc)225 165 y Fp(F)714 158 y Fc(TRUNC\()p Fu(x;)8 b(n)p Fc(\))658 b Fv(y)114 214 y Fu(r)q(ound)235 221 y Fp(F)714 214 y Fc(ROUND\()p Fu(x;)8 b(n)p Fc(\))658 b Fv(y)114 271 y Fu(intpar)q(t)258 278 y Fp(F)714 271 y Fc(IP\()p Fu(x)p Fc(\))114 327 y Fr(fr)n(actp)n(art)286 338 y Fp(F)714 327 y Fc(FP\()p Fu(x)p Fc(\))114 384 y Fu(eq)155 391 y Fp(F)714 384 y Fu(x)23 b Fc(=)h Fu(y)114 440 y(neq)182 447 y Fp(F)714 440 y Fu(x)f Fc(><)h Fu(y)47 b Fw(or)e Fu(x)24 b Fc(<>)g Fu(y)114 497 y(l)q(ss)171 504 y Fp(F)714 497 y Fu(x)f Fc(<)h Fu(y)114 553 y(l)q(eq)170 560 y Fp(F)714 553 y Fu(x)f Fc(=<)h Fu(y)47 b Fw(or)e Fu(x)24 b Fc(<=)g Fu(y)114 610 y(g)r(tr)175 617 y Fp(F)714 610 y Fu(x)f Fc(>)h Fu(y)114 666 y(g)r(eq)179 673 y Fp(F)714 666 y Fu(x)f Fc(=>)h Fu(y)47 b Fw(or)e Fu(x)24 b Fc(>=)g Fu(y)0 788 y Fw(where)15 b Fu(x)h Fw(and)f Fu(y)i Fw(are)e Fc(numeric)f Fw(expressions)i(and)f Fu(n)h Fw(is)g(in)o(tegral.)114 916 y Fq(NOTE)g({)30 b(The)16 b(BASIC)g Fg(EPS\()p Fl(x)p Fg(\))e Fq(function)h(di\013ers)h(from)d Fl(ul)q(p)1127 922 y Fj(F)1155 916 y Fq(,)i(in)g(that)g Fl(ul)q(p)1381 922 y Fj(F)1409 916 y Fq(\()p Fl(x)p Fq(\))g(raises)h(a)f(noti\014cation)114 966 y(when)f Fl(x)e Fq(=)g(0)i(and)f(can)i(under\015o)o(w)f(when)h Fl(x)e Fq(is)h(v)o(ery)h(close)f(to)g(zero,)h(but)f Fg(EPS\()p Fl(x)p Fg(\))f Fq(returns)i Fo(fmin)i Fq(for)d(these)114 1016 y(v)n(alues)f(of)h Fl(x)p Fq(.)114 1084 y(The)h(BASIC)h(functions)f Fg(ROUND)f Fq(and)h Fg(TRUNCATE)e Fq(di\013er)i(from)f Fl(r)q(ound)1238 1090 y Fj(F)1280 1084 y Fq(and)g Fl(tr)q(unc)1463 1090 y Fj(F)1505 1084 y Fq(in)h(that)g Fl(n)g Fq(refers)h(to)114 1134 y(the)h(n)o(um)o(b)q(er) f(of)h(digits)f(retained)h(after)h(the)f(decimal)e(p)q(oin)o(t,)i(rather)h (than)f(the)g(total)f(n)o(um)o(b)q(er)h(of)f(digits)114 1184 y(retained.)0 1318 y Fw(The)d(noti\014cation)h(metho)q(d)f(required)h(b)o(y)f (BASIC)h(is)g(through)e(alteration)h(of)g(con)o(trol.)19 b(Noti\014cation)14 b(is)f(accom-)0 1375 y(plished)g(through)d(the)g(exception)i(handling)g (facilities)g(required)g(b)o(y)e(BASIC.)h(An)g(implemen)o(tation)h(that)d (wishes)0 1431 y(to)18 b(conform)h(to)f(the)h(LIA-1)h(m)o(ust)e(create)h(a)f (BASIC)i(exception)g(in)g(an)o(y)e(case)h(where)g(an)g(LIA-1)h(op)q(eration)0 1488 y(w)o(ould)e(return)f(an)g(exceptional)i(v)m(alue.)28 b(BASIC)18 b(requires)g(that)f(a)g(program)f(substitute)i(zero)f(and)g(con)o (tin)o(ue)0 1544 y(execution)i(when)f(under\015o)o(w)g(o)q(ccurs)g(and)f(no)h (programmer-sp)q(eci\014ed)g(reco)o(v)o(ery)f(pro)q(cedure)i(has)e(b)q(een)i (pro-)0 1601 y(vided.)29 b(This)18 b(do)q(es)g(not)g(meet)f(the)h (noti\014cation)h(requiremen)o(ts)f(of)f(LIA-1,)i(but)f(is)g(explicitly)i(p)q (ermitted)f(b)o(y)0 1657 y(this)d(binding)h(standard.)0 1742 y(The)d(exception)h(co)q(des)g(returned)f(b)o(y)g(the)g(function)h Fc(EXTYPE)e Fw(include)k(re\014nemen)o(ts)d(of)g(the)g(LIA-1)h(exceptional)0 1798 y(v)m(alues)21 b(along)g(with)f(v)m(alues)i(c)o(haracterizing)f(non-n)o (umeric)h(exceptions)f(as)f(w)o(ell.)36 b(The)21 b(follo)o(wing)g(lists)g (the)0 1855 y(BASIC)16 b(exception)g(co)q(de)g(along)f(with)h(a)f (description)h(and)g(corresp)q(onding)g(LIA-1)g(exceptional)g(v)m(alue.)114 1977 y Fr(Co)n(de)53 b(Description)581 b(LIA-1)16 b(value)114 2033 y Fw(1002)59 b(Numeric)16 b(expression)g(o)o(v)o(er\015o)o(w)245 b Fx(\015oating)p 1247 2033 16 2 v 20 w(o)o(v)o(er\015o)o(w)114 2090 y Fw(1003)59 b(Numeric)16 b(supplied)i(function)e(o)o(v)o(er\015o)o(w) 106 b Fx(\015oating)p 1247 2090 V 20 w(o)o(v)o(er\015o)o(w)114 2146 y Fw(1502)59 b(Numeric)16 b(expression)g(under\015o)o(w)215 b Fx(under\015o)o(w)114 2202 y Fw(1503)59 b(Numeric)16 b(supplied)i(function) e(under\015o)o(w)76 b Fx(under\015o)o(w)114 2259 y Fw(3001)59 b(Division)17 b(b)o(y)e(zero)488 b Fx(unde\014ned)114 2315 y Fw(3010)59 b(A)o(ttempt)14 b(to)h(ev)m(aluate)h Fc(EXPON\(0\))200 b Fx(unde\014ned)300 b Fv(y)114 2372 y Fw(3011)59 b(A)o(ttempt)14 b(to)h(ev)m(aluate)h Fc(ULP\(0\))248 b Fx(unde\014ned)300 b Fv(y)0 2494 y Fw(In)17 b(addition,)h(an)e(implemen)o(tation)i(that)d(wishes)j (to)d(conform)h(to)g(the)h(LIA-1)g(shall)g(pro)o(vide)g(the)g(alternativ)o(e) 0 2550 y(of)e(noti\014cation)h(through)f(termination)g(with)h(a)f(message)f (as)h(describ)q(ed)i(in)f(6.1.3.)0 2828 y(72)p eop %%Page: 73 81 bop -72 712 13 57 v -72 882 V -72 1114 13 100 v -72 1805 13 405 v -72 2294 13 57 v -72 2416 V 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y FB(E.4)55 b(C)0 159 y Fw(The)20 b(programming)f(language)i(C)e(is)i (de\014ned)g(b)o(y)f(ISO/IEC)h(9899:1990,)d Fr(Information)i(te)n(chnolo)n (gy)g({)h(Pr)n(o-)0 216 y(gr)n(amming)16 b(languages)g({)g(C,)g(First)g (Edition)f Fw([9)o(].)0 300 y(An)i(implemen)o(tation)i(should)e(follo)o(w)h (all)f(the)h(requiremen)o(ts)f(of)g(LIA-1)g(unless)h(otherwise)g(sp)q (eci\014ed)h(b)o(y)e(this)0 357 y(language)e(binding.)0 441 y(The)22 b(op)q(erations)f(or)g(parameters)f(mark)o(ed)h(\\)p Fv(y)p Fw(")g(are)g(not)g(part)g(of)g(the)g(language)h(and)f(m)o(ust)g(b)q(e) h(pro)o(vided)0 498 y(b)o(y)g(an)g(implemen)o(tation)h(that)f(wishes)h(to)e (conform)h(to)f(the)h(LIA-1.)42 b(F)l(or)21 b(eac)o(h)h(of)g(the)g(mark)o(ed) g(items)g(a)0 554 y(suggested)e(iden)o(ti\014er)h(is)g(pro)o(vided.)34 b(An)20 b(implemen)o(tation)i(that)d(wishes)h(to)f(conform)h(to)f(the)h (LIA-1)h(m)o(ust)0 611 y(supply)16 b(declarations)g(of)f(these)h(items)f(in)h (a)f(header)h Fc()p Fw(.)0 695 y(P)o(arameters)e(and)h(deriv)o(ed)h (constan)o(ts)f(can)g(b)q(e)h(used)g(in)g(prepro)q(cessor)f(expressions.)0 780 y(The)g(LIA-1)h(data)f(t)o(yp)q(e)g Fu(B)r(ool)q(ean)h Fw(is)g(implemen)o(ted)h(in)f(the)f(C)g(data)g(t)o(yp)q(e)g Fc(int)g Fw(\(1)f(=)i Fx(true)f Fw(and)g(0)g(=)g Fx(false)p Fw(\).)0 865 y(Ev)o(ery)g(implemen)o(tation)h(of)e(C)h(has)g(in)o(tegral)g(t) o(yp)q(es)g Fc(int)p Fw(,)f Fc(long)24 b(int)p Fw(,)14 b Fc(unsigned)22 b(int)p Fw(,)15 b(and)g Fc(unsigned)23 b(long)0 921 y(int)15 b Fw(whic)o(h)h(conform)e(to)h(the)g(LIA-1.)114 1049 y Fq(NOTE)h({)30 b(The)16 b(conformit)o(y)e(of)h Fg(short)f Fq(and)h Fg(char)g Fq(\(signed)h(or)f(unsigned\))h(is)f(not)h(relev)n(an)o(t)f(since)i(v)n (alues)114 1099 y(of)c(these)i(t)o(yp)q(es)g(are)f(promoted)f(to)h Fg(int)f Fq(\(signed)h(or)g(unsigned\))h(b)q(efore)f(computations)f(are)h (done.)0 1233 y Fw(C)h(has)f(three)h(\015oating)g(p)q(oin)o(t)g(t)o(yp)q(es)g (that)f(conform)g(to)g(this)h(standard:)20 b Fc(float)p Fw(,)13 b Fc(double)p Fw(,)h(and)h Fc(long)23 b(double)p Fw(.)0 1318 y(The)15 b(parameters)g(for)f(an)h(in)o(teger)h(data)e(t)o(yp)q(e)i(can)f(b)q (e)h(accessed)g(b)o(y)f(the)g(follo)o(wing)h(syn)o(tax:)114 1440 y Fu(maxint)451 b Fc(INT)p 789 1440 15 2 v 16 w(MAX)110 b(LONG)p 1083 1440 V 16 w(MAX)86 b(UINT)p 1353 1440 V 16 w(MAX)g(ULONG)p 1647 1440 V 16 w(MAX)114 1497 y Fu(minint)458 b Fc(INT)p 789 1497 V 16 w(MIN)110 b(LONG)p 1083 1497 V 16 w(MIN)114 1553 y Fu(modul)q(o)451 b Fc(INT)p 789 1553 V 16 w(MODULO)38 b(LONG)p 1083 1553 V 16 w(MODULO)584 b Fv(y)0 1675 y Fw(The)13 b(parameter)f Fr(b)n(ounde)n(d)17 b Fw(is)c(alw)o(a)o(ys)e Fx(true)p Fw(,)i(and)g(need)g (not)f(b)q(e)i(pro)o(vided.)19 b(The)13 b(parameter)f Fu(minint)h Fw(is)g(alw)o(a)o(ys)0 1732 y(0)e(for)g(the)h(unsigned)h(t)o(yp)q(es,)f(and)f (need)i(not)e(b)q(e)h(pro)o(vided)h(for)e(those)g(t)o(yp)q(es.)18 b(The)12 b(parameter)f Fu(modul)q(o)g Fw(is)h(alw)o(a)o(ys)0 1788 y Fx(true)j Fw(for)g(the)g(unsigned)i(t)o(yp)q(es,)d(and)i(need)g(not)f (b)q(e)g(pro)o(vided)h(for)f(those)g(t)o(yp)q(es.)0 1873 y(The)g(parameters)g (for)f(a)h(\015oating)g(p)q(oin)o(t)h(data)f(t)o(yp)q(e)g(can)g(b)q(e)h (accessed)g(b)o(y)f(the)g(follo)o(wing)h(syn)o(tax:)114 1995 y Fu(r)579 b Fc(FLT)p 789 1995 V 16 w(RADIX)114 2051 y Fu(p)e Fc(FLT)p 789 2051 V 16 w(MANT)p 901 2051 V 17 w(DIG)57 b(DBL)p 1119 2051 V 16 w(MANT)p 1231 2051 V 17 w(DIG)g(LDBL)p 1473 2051 V 16 w(MANT)p 1585 2051 V 17 w(DIG)114 2108 y Fu(emax)489 b Fc(FLT)p 789 2108 V 16 w(MAX)p 877 2108 V 17 w(EXP)81 b(DBL)p 1119 2108 V 16 w(MAX)p 1207 2108 V 17 w(EXP)g(LDBL)p 1473 2108 V 16 w(MAX)p 1561 2108 V 17 w(EXP)114 2164 y Fu(emin)496 b Fc(FLT)p 789 2164 V 16 w(MIN)p 877 2164 V 17 w(EXP)81 b(DBL)p 1119 2164 V 16 w(MIN)p 1207 2164 V 17 w(EXP)g(LDBL)p 1473 2164 V 16 w(MIN)p 1561 2164 V 17 w(EXP)114 2221 y Fu(denor)q(m)444 b Fc(FLT)p 789 2221 V 16 w(DENORM)98 b(DBL)p 1119 2221 V 16 w(DENORM)g(LDBL)p 1473 2221 V 16 w(DENORM)119 b Fv(y)114 2277 y Fr(ie)n(c)p 173 2277 14 2 v 18 w(559)459 b Fc(FLT)p 789 2277 15 2 v 16 w(IEC)p 877 2277 V 17 w(559)81 b(DBL)p 1119 2277 V 16 w(IEC)p 1207 2277 V 17 w(559)g(LDBL)p 1473 2277 V 16 w(IEC)p 1561 2277 V 17 w(559)102 b Fv(y)0 2399 y Fw(The)15 b(macros)g Fc(*)p 275 2399 V 17 w(DENORM)f Fw(and)i Fc(*)p 563 2399 V 17 w(IEC)p 652 2399 V 16 w(559)f Fw(represen)o(t)g(b)q(o)q(oleans)i(and)e(ha) o(v)o(e)g(v)m(alues)h(1)f(or)g(0.)0 2484 y(The)c(C)f(language)g(standard)g (presumes)h(that)e(all)i(\015oating)g(p)q(oin)o(t)f(precisions)i(use)f(the)f (same)g(radix)h(and)f(rounding)0 2540 y(st)o(yle,)15 b(so)g(that)f(only)i (one)f(iden)o(ti\014er)i(for)e(eac)o(h)g(is)h(pro)o(vided)g(in)g(the)f (language.)0 2625 y(The)g(deriv)o(ed)i(constan)o(ts)d(for)g(the)i(\015oating) f(p)q(oin)o(t)h(data)e(t)o(yp)q(e)h(can)h(b)q(e)g(accessed)f(b)o(y)h(the)f (follo)o(wing)h(syn)o(tax:)1905 2828 y(73)p eop %%Page: 74 82 bop -72 2371 13 57 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)114 45 y Fr(fmax)505 b Fc(FLT)p 789 45 15 2 v 16 w(MAX)170 b(DBL)p 1119 45 V 16 w(MAX)g(LDBL)p 1473 45 V 16 w(MAX)114 102 y Fr(fmin)203 109 y Fp(N)714 102 y Fc(FLT)p 789 102 V 16 w(MIN)g(DBL)p 1119 102 V 16 w(MIN)g(LDBL)p 1473 102 V 16 w(MIN)114 158 y Fr(fmin)509 b Fc(FLT)p 789 158 V 16 w(TRUE)p 901 158 V 17 w(MIN)57 b(DBL)p 1119 158 V 16 w(TRUE)p 1231 158 V 17 w(MIN)g(LDBL)p 1473 158 V 16 w(TRUE)p 1585 158 V 17 w(MIN)78 b Fv(y)114 214 y Fu(epsil)q(on)455 b Fc(FLT)p 789 214 V 16 w(EPSILON)74 b(DBL)p 1119 214 V 16 w(EPSILON)g(LDBL)p 1473 214 V 16 w(EPSILON)114 271 y Fu(r)q(nd)p 190 271 14 2 v 16 w(er)q(r)q(or)403 b Fc(FLT)p 789 271 15 2 v 16 w(RND)p 877 271 V 17 w(ERR)81 b(DBL)p 1119 271 V 16 w(RND)p 1207 271 V 17 w(ERR)g(LDBL)p 1473 271 V 16 w(RND)p 1561 271 V 17 w(ERR)102 b Fv(y)114 327 y Fu(r)q(nd)p 190 327 14 2 v 16 w(sty)r(l)q(e)414 b Fc(FLT)p 789 327 15 2 v 16 w(ROUNDS)0 462 y Fw(The)22 b(C)g(standard)f(sp)q(eci\014es)j(that)d(the)h(v)m(alues)h (of)e(the)h(parameter)f Fc(FLT)p 1308 462 V 17 w(ROUNDS)g Fw(are)g(from)g Fc(int)h Fw(with)g(the)0 518 y(follo)o(wing)16 b(meaning)g(in)g(terms)e(of)h (the)g(LIA-1)h(rounding)g(st)o(yles.)114 640 y Fu(near)q(est)448 b Fc(FLT)p 789 640 V 16 w(ROUNDS)30 b Fu(>)13 b Fw(0)114 697 y Fu(tr)q(uncate)428 b Fc(FLT)p 789 697 V 16 w(ROUNDS)30 b Fw(=)13 b(0)114 753 y Fu(other)494 b Fc(FLT)p 789 753 V 16 w(ROUNDS)30 b Fu(<)13 b Fw(0)114 881 y Fq(NOTE)i({)30 b(The)15 b(de\014nition)f(of)h Fg(FLT)p 690 881 14 2 v 15 w(ROUNDS)e Fq(has)i(b)q(een)h(extended)h(to)e(co)o(v)o(er)g(the)g(rounding)g(st)o(yle)g (used)h(in)114 931 y(all)c(LIA-1)i(op)q(erations,)f(not)h(just)g(addition)f (and)h(subtraction.)0 1065 y Fw(All)k(but)f(one)g(of)f(the)h(in)o(teger)g(op) q(erations)g(are)f(either)i(op)q(erators,)e(or)g(declared)i(in)g(the)f (header)g Fc()p Fw(.)0 1122 y(The)e(in)o(teger)h(op)q(erations)f (are)g(listed)i(b)q(elo)o(w,)e(along)g(with)h(the)f(syn)o(tax)f(used)i(to)f (in)o(v)o(ok)o(e)g(them:)114 1244 y Fu(add)186 1251 y Fp(I)714 1244 y Fu(x)23 b Fc(+)h Fu(y)114 1300 y(sub)181 1307 y Fp(I)714 1300 y Fu(x)f Fc(-)h Fu(y)114 1357 y(mul)194 1364 y Fp(I)714 1357 y Fu(x)f Fc(*)h Fu(y)114 1413 y(div)176 1420 y Fp(I)714 1413 y Fu(x)f Fc(/)h Fu(y)114 1470 y(r)q(em)197 1477 y Fp(I)714 1470 y Fu(x)f Fc(\045)h Fu(y)114 1526 y(mod)200 1510 y Fn(1)200 1539 y Fp(I)714 1526 y Fc(modulo\()p Fu(x;)8 b(y)r Fc(\))67 b(lmodulo\()p Fu(x;)8 b(y)r Fc(\))418 b Fv(y)114 1583 y Fu(mod)200 1566 y Fn(2)200 1596 y Fp(I)714 1583 y Fw(no)15 b(binding)114 1639 y Fu(neg)184 1646 y Fp(I)714 1639 y Fc(-)23 b Fu(x)114 1696 y(abs)179 1703 y Fp(I)714 1696 y Fc(abs\()p Fu(x)p Fc(\))184 b(labs\()p Fu(x)p Fc(\))114 1752 y Fu(sig)r(n)202 1759 y Fp(I)714 1752 y Fc(sgn\()p Fu(x)p Fc(\))g(lsgn\()p Fu(x)p Fc(\))535 b Fv(y)114 1808 y Fu(eq)155 1815 y Fp(I)714 1808 y Fu(x)23 b Fc(==)h Fu(y)114 1865 y(neq)182 1872 y Fp(I)714 1865 y Fu(x)f Fc(!=)h Fu(y)114 1921 y(l)q(ss)171 1928 y Fp(I)714 1921 y Fu(x)f Fc(<)h Fu(y)114 1978 y(l)q(eq)170 1985 y Fp(I)714 1978 y Fu(x)f Fc(<=)h Fu(y)114 2034 y(g)r(tr)175 2041 y Fp(I)714 2034 y Fu(x)f Fc(>)h Fu(y)114 2091 y(g)r(eq)179 2098 y Fp(I)714 2091 y Fu(x)f Fc(>=)h Fu(y)0 2213 y Fw(where)15 b Fu(x)h Fw(and)f Fu(y)i Fw(are)e(expressions)h(of)f(t)o(yp)q(e)g Fc(int)p Fw(.)0 2297 y(The)j(C)g(standard)g(p)q(ermits)h Fu(div)571 2304 y Fp(I)608 2297 y Fw(and)f Fu(r)q(em)782 2304 y Fp(I)820 2297 y Fw(\()p Fc(/)g Fw(and)g Fc(\045)p Fw(\))f(to)h(b)q(e)h(implemen)o(ted)h(using)e (either)h(round)g(to)o(w)o(ard)0 2354 y(min)o(us)13 b(in\014nit)o(y)h(\()p Fu(div)366 2337 y Fn(1)364 2367 y Fp(I)384 2354 y Fu(=r)q(em)490 2337 y Fn(1)490 2367 y Fp(I)509 2354 y Fw(\))e(or)g(to)o(w)o(ard)f(zero)h(\() p Fu(div)916 2337 y Fn(2)914 2367 y Fp(I)934 2354 y Fu(=r)q(em)1040 2337 y Fn(2)1040 2367 y Fp(I)1060 2354 y Fw(\).)18 b(An)13 b(implemen)o(tation)g(that)f(wishes)h(to)f(conform)0 2410 y(to)j(the)g(LIA-1) h(m)o(ust)e(c)o(ho)q(ose)i(the)f(same)g(rounding)h(for)e(b)q(oth)i(and)f(do)q (cumen)o(t)h(the)f(c)o(hoice.)0 2495 y(The)h(\015oating)f(p)q(oin)o(t)g(op)q (erations)h(are)f(either)h(op)q(erators,)e(or)h(declared)h(in)g(the)f(header) h Fc()p Fw(.)j(The)d(op)q(er-)0 2552 y(ations)f(are)g(listed)h(b)q (elo)o(w,)g(along)f(with)h(the)f(syn)o(tax)f(used)i(to)f(in)o(v)o(ok)o(e)g (them:)0 2828 y(74)p eop %%Page: 75 83 bop -72 909 13 57 v -72 965 V 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)114 45 y Fu(add)186 52 y Fp(F)714 45 y Fu(x)23 b Fc(+)h Fu(y)114 102 y(sub)181 109 y Fp(F)714 102 y Fu(x)f Fc(-)h Fu(y)114 158 y(mul)194 165 y Fp(F)714 158 y Fu(x)f Fc(*)h Fu(y)114 214 y(div)176 221 y Fp(F)714 214 y Fu(x)f Fc(/)h Fu(y)114 271 y(neg)184 278 y Fp(F)714 271 y Fc(-)f Fu(x)114 327 y(abs)179 334 y Fp(F)714 327 y Fc(fabsf\()p Fu(x)p Fc(\))p Fv(y)116 b Fc(fabs\()p Fu(x)p Fc(\))160 b(fabsl\()p Fu(x)p Fc(\))p Fv(y)114 384 y Fu(sig)r(n)202 391 y Fp(F)714 384 y Fc(fsgnf\()p Fu(x)p Fc(\))136 b(fsgn\()p Fu(x)p Fc(\))160 b(fsgnl\()p Fu(x)p Fc(\))181 b Fv(y)114 440 y Fu(exponent)297 447 y Fp(F)714 440 y Fc(exponf\()p Fu(x)p Fc(\))112 b(expon\()p Fu(x)p Fc(\))136 b(exponl\()p Fu(x)p Fc(\))157 b Fv(y)114 497 y Fr(fr)n(action)270 508 y Fp(F)714 497 y Fc(fractf\()p Fu(x)p Fc(\))112 b(fract\()p Fu(x)p Fc(\))136 b(fractl\()p Fu(x)p Fc(\))157 b Fv(y)114 553 y Fu(scal)q(e)215 560 y Fp(F)714 553 y Fc(scalef\()p Fu(x;)8 b(n)p Fc(\))64 b(scale\()p Fu(x;)8 b(n)p Fc(\))88 b(scalel\()p Fu(x;)8 b(n)p Fc(\))109 b Fv(y)114 610 y Fu(succ)201 617 y Fp(F)714 610 y Fc(succf\()p Fu(x)p Fc(\))136 b(succ\()p Fu(x)p Fc(\))160 b(succl\()p Fu(x)p Fc(\))181 b Fv(y)114 666 y Fu(pr)q(ed)204 673 y Fp(F)714 666 y Fc(predf\()p Fu(x)p Fc(\))136 b(pred\()p Fu(x)p Fc(\))160 b(predl\()p Fu(x)p Fc(\))181 b Fv(y)114 723 y Fu(ul)q(p)178 730 y Fp(F)714 723 y Fc(ulpf\()p Fu(x)p Fc(\))160 b(ulp\()p Fu(x)p Fc(\))184 b(ulpl\()p Fu(x)p Fc(\))205 b Fv(y)114 779 y Fu(tr)q(unc)225 786 y Fp(F)714 779 y Fc(truncf\()p Fu(x;)8 b(n)p Fc(\))64 b(trunc\()p Fu(x;)8 b(n)p Fc(\))88 b(truncl\()p Fu(x;)8 b(n)p Fc(\))109 b Fv(y)114 835 y Fu(r)q(ound)235 842 y Fp(F)714 835 y Fc(roundf\()p Fu(x;)8 b(n)p Fc(\))64 b(round\()p Fu(x;)8 b(n)p Fc(\))88 b(roundl\()p Fu(x;)8 b(n)p Fc(\))109 b Fv(y)114 892 y Fu(intpar)q(t)258 899 y Fp(F)714 892 y Fc(floorf\()p Fu(x)p Fc(\))p Fv(y)92 b Fc(floor\()p Fu(x)p Fc(\))136 b(floorl\()p Fu(x)p Fc(\))p Fv(y)114 948 y Fu(f)5 b(r)q(actpar)q(t)308 955 y Fp(F)714 948 y Fc(frcprtf\()p Fu(x)p Fc(\))88 b(frcprt\()p Fu(x)p Fc(\))112 b(frcprtl\()p Fu(x)p Fc(\))133 b Fv(y)114 1005 y Fu(eq)155 1012 y Fp(F)714 1005 y Fu(x)23 b Fc(==)h Fu(y)114 1061 y(neq)182 1068 y Fp(F)714 1061 y Fu(x)f Fc(!=)h Fu(y)114 1118 y(l)q(ss)171 1125 y Fp(F)714 1118 y Fu(x)f Fc(<)h Fu(y)114 1174 y(l)q(eq)170 1181 y Fp(F)714 1174 y Fu(x)f Fc(<=)h Fu(y)114 1231 y(g)r(tr)175 1238 y Fp(F)714 1231 y Fu(x)f Fc(>)h Fu(y)114 1287 y(g)r(eq)179 1294 y Fp(F)714 1287 y Fu(x)f Fc(>=)h Fu(y)0 1409 y Fw(where)15 b Fu(x)h Fw(and)f Fu(y)i Fw(are)e(expressions)h(of)f(t)o (yp)q(e)g Fc(float)p Fw(,)f Fc(double)p Fw(,)g(and)h Fc(long)24 b(double)14 b Fw(and)h Fu(n)h Fw(is)g(of)e(t)o(yp)q(e)i Fc(int)p Fw(.)114 1537 y Fq(NOTE)e({)28 b Fl(S)r(cal)q(e)397 1543 y Fj(F)439 1537 y Fq(can)14 b(b)q(e)h(computed)e(using)h(the)g Fg(ldexp)f Fq(library)g(function,)g(only)h(if)f Fg(FLT)p 1574 1537 14 2 v 15 w(RADIX)f Fq(=)j(2.)114 1606 y(The)h(standard)h(C)f(function)g Fg(frexp)f Fq(di\013ers)i(from)d Fl(exponent)1107 1612 y Fj(F)1151 1606 y Fq(in)i(that)g(no)g(noti\014cation)f(is)h(raised)h(when)114 1655 y(the)d(argumen)o(t)f(is)h(0.)0 1790 y Fw(An)i(implemen)o(tation)h(that) e(wishes)h(to)f(conform)g(to)g(the)h(LIA-1)g(m)o(ust)f(pro)o(vide)i(the)e (LIA-1)i(op)q(erations)f(in)g(all)0 1846 y(\015oating)f(p)q(oin)o(t)h (precisions)h(supp)q(orted.)0 1931 y(C)e(pro)o(vides)h(the)f(required)h(t)o (yp)q(e)f(con)o(v)o(ersion)h(op)q(erations)f(with)h(explicit)h(cast)e(op)q (erators:)114 2053 y Fu(cv)r(t)174 2060 y Fp(F)5 b Fm(!)p Fp(I)256 2053 y Fw(,)15 b Fu(cv)r(t)344 2061 y Fp(I)362 2051 y Fz(0)372 2061 y Fm(!)p Fp(I)714 2053 y Fc(\(int\))23 b Fu(x)p Fw(,)45 b Fc(\(long)23 b(int\))g Fu(x)114 2109 y(cv)r(t)174 2116 y Fp(I)s Fm(!)p Fp(F)256 2109 y Fw(,)15 b Fu(cv)r(t)344 2117 y Fp(F)371 2108 y Fz(0)382 2117 y Fm(!)p Fp(F)714 2109 y Fc(\(float\))23 b Fu(x)p Fw(,)45 b Fc(\(double\))22 b Fu(x)p Fw(,)45 b Fc(\(long)24 b(double\))f Fu(x)0 2231 y Fw(The)17 b(C)f(standard)g(requires)h(that)f (\015oat)g(to)g(in)o(teger)h(con)o(v)o(ersions)f(round)h(to)o(w)o(ard)e (zero.)24 b(An)17 b(implemen)o(tation)0 2288 y(that)e(wishes)h(to)f(conform)g (to)g(the)h(LIA-1)g(m)o(ust)g(use)g(round)f(to)g(nearest)h(for)f(con)o(v)o (ersions)h(to)f(a)g(\015oating)g(p)q(oin)o(t)0 2344 y(t)o(yp)q(e.)0 2429 y(An)j(implemen)o(tation)h(that)e(wishes)i(to)e(conform)g(to)h(the)g (LIA-1)g(m)o(ust)g(pro)o(vide)g(recording)g(of)g(indicators)g(as)0 2486 y(one)g(metho)q(d)f(of)g(noti\014cation.)28 b(\(See)17 b(6.1.2.\))25 b(The)18 b(data)e(t)o(yp)q(e)i Fu(I)t(nd)f Fw(is)h(iden)o (ti\014ed)h(with)f(the)f(data)g(t)o(yp)q(e)h Fc(int)p Fw(.)0 2542 y(The)h(v)m(alues)h(represen)o(ting)f(individual)j(indicators)d(should)h (b)q(e)f(distinct)h(non-negativ)o(e)f(p)q(o)o(w)o(ers)f(of)g(t)o(w)o(o)g(and) 0 2598 y(can)d(b)q(e)h(accessed)g(b)o(y)f(the)g(follo)o(wing)h(syn)o(tax:) 1905 2828 y(75)p eop %%Page: 76 84 bop -72 2563 13 113 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)114 45 y Fx(in)o(teger)p 275 45 16 2 v 18 w(o)o(v)o(er\015o)o(w)234 b Fc(INT)p 789 45 15 2 v 16 w(OVERFLOW)620 b Fv(y)114 102 y Fx(\015oating)p 286 102 16 2 v 20 w(o)o(v)o(er\015o)o(w)221 b Fc(FLT)p 789 102 15 2 v 16 w(OVERFLOW)620 b Fv(y)114 158 y Fx(under\015o)o(w)375 b Fc(UNDERFLOW)684 b Fv(y)114 214 y Fx(unde\014ned)378 b Fc(UNDEFINED)684 b Fv(y)0 337 y Fw(The)19 b(empt)o(y)f(set)h(can)f(b)q(e)i(denoted)f(b)o(y)g (0.)29 b(Other)19 b(indicator)h(subsets)f(can)f(b)q(e)i(named)f(b)o(y)f (adding)i(together)0 393 y(individual)e(indicators.)j(F)l(or)15 b(example,)g(the)h(indicator)g(subset)114 515 y Fv(f)p Fx(\015oating)p 309 515 16 2 v 20 w(o)o(v)o(er\015o)o(w)p Fw(,)c Fx(under\015o)o(w)p Fw(,)i Fx(in)o(teger)p 954 515 V 19 w(o)o(v)o(er\015o)o(w)p Fv(g)0 637 y Fw(w)o(ould)i(b)q(e)f(denoted)h(b)o(y)f(the)h(expression)114 759 y Fc(FLT)p 189 759 15 2 v 16 w(OVERFLOW)e Fw(+)i Fc(UNDERFLOW)e Fw(+)h Fc(INT)p 814 759 V 17 w(OVERFLOW)0 881 y Fw(The)j(indicator)h(in)o (terrogation)e(and)h(manipulation)i(op)q(erations)e(are)g(listed)h(b)q(elo)o (w,)g(along)e(with)i(the)f(syn)o(tax)0 938 y(used)e(to)e(in)o(v)o(ok)o(e)h (them:)114 1060 y Fu(set)p 175 1060 14 2 v 17 w(indicator)q(s)317 b Fc(set)p 789 1060 15 2 v 16 w(indicators\()p Fu(i)p Fc(\))508 b Fv(y)114 1116 y Fu(cl)q(ear)p 219 1116 14 2 v 16 w(indicator)q(s)275 b Fc(clear)p 837 1116 15 2 v 16 w(indicators\()p Fu(i)p Fc(\))460 b Fv(y)114 1173 y Fu(test)p 191 1173 14 2 v 17 w(indicator)q(s)301 b Fc(test)p 813 1173 15 2 v 16 w(indicators\()p Fu(i)p Fc(\))484 b Fv(y)114 1229 y Fu(sav)r(e)p 207 1229 14 2 v 16 w(indicator)q(s)286 b Fc(save)p 813 1229 15 2 v 16 w(indicators\(\))500 b Fv(y)0 1351 y Fw(where)15 b Fu(i)g Fw(is)h(an)f(expression)h(of)f(t)o(yp)q(e)g Fc(int)g Fw(represen)o(ting)h(an)f(indicator)h(subset.)0 1436 y(In)h(addition,)h(an)e(implemen)o(tation)i(that)d(wishes)j(to)d(conform)h (to)g(the)h(LIA-1)g(shall)g(pro)o(vide)g(the)g(alternativ)o(e)0 1492 y(of)e(noti\014cation)h(through)f(termination)g(with)h(a)f(message)f(as) h(describ)q(ed)i(in)f(6.1.3.)0 1642 y FB(E.5)55 b(Common)19 b(Lisp)0 1756 y Fw(The)12 b(programming)e(language)i(Common)f(Lisp)h(is)g (under)h(dev)o(elopmen)o(t)f(b)o(y)f(ANSI)h(X3J13)f([22)o(].)19 b(The)11 b(standard)0 1813 y(will)17 b(b)q(e)f(based)f(on)g(the)h (de\014nition)h(con)o(tained)e(in)i Fr(Common)f(Lisp)f(the)i(L)n(anguage)d Fw([36)o(].)0 1897 y(An)j(implemen)o(tation)i(should)e(follo)o(w)h(all)f(the) h(requiremen)o(ts)f(of)g(LIA-1)g(unless)h(otherwise)g(sp)q(eci\014ed)h(b)o(y) e(this)0 1954 y(language)e(binding.)0 2038 y(The)i(op)q(erations)g(or)g (parameters)f(mark)o(ed)h(\\)p Fv(y)p Fw(")f(are)h(not)g(part)f(of)h(the)g (language)g(and)g(m)o(ust)g(b)q(e)g(pro)o(vided)h(b)o(y)0 2095 y(an)c(implemen)o(tation)h(that)f(wishes)g(to)g(conform)f(to)h(the)g(LIA-1.) 20 b(F)l(or)14 b(eac)o(h)g(of)f(the)h(mark)o(ed)g(items)g(a)g(suggested)0 2151 y(iden)o(ti\014er)j(is)e(pro)o(vided.)0 2236 y(Common)f(Lisp)j(do)q(es)e (not)g(ha)o(v)o(e)f(a)h(single)h(data)f(t)o(yp)q(e)g(that)f(corresp)q(onds)i (to)e(the)h(LIA-1)h(data)e(t)o(yp)q(e)i Fu(B)r(ool)q(ean)p Fw(.)0 2292 y(Rather,)f Fc(NIL)g Fw(corresp)q(onds)g(to)g Fx(false)g Fw(and)h Fc(T)f Fw(corresp)q(onds)g(to)g Fx(true)p Fw(.)0 2377 y(Ev)o(ery)j(implemen)o(tation)i(of)f(Common)f(Lisp)h(has)g(one)g(un)o(b)q (ounded)h(in)o(teger)f(data)f(t)o(yp)q(e.)30 b(An)o(y)19 b(mathemati-)0 2434 y(cal)h(in)o(teger)f(is)h(assumed)f(to)g(ha)o(v)o(e)g(a)g(represen)o (tation)g(as)g(a)g(Common)f(Lisp)j(data)d(ob)s(ject,)i(sub)s(ject)f(only)h (to)0 2490 y(total)e(memory)g(limitations.)30 b(Th)o(us,)19 b(the)g(parameters)e Fr(b)n(ounde)n(d)23 b Fw(and)c Fu(modul)q(o)e Fw(are)h(alw)o(a)o(ys)g Fx(false)p Fw(,)h(and)g(the)0 2547 y(parameters)14 b Fr(b)n(ounde)n(d)5 b Fw(,)15 b Fu(modul)q(o)p Fw(,)f Fu(maxint)p Fw(,)h(and)g Fu(minint)g Fw(need)h(not)f(b)q(e)h(pro)o (vided.)0 2631 y(Common)k(Lisp)i(has)f(four)g(\015oating)g(p)q(oin)o(t)g(t)o (yp)q(es:)32 b Fc(short-float)p Fw(,)20 b Fc(single-float)p Fw(,)g Fc(double-float)p Fw(,)h(and)0 2688 y Fc(long-float)p Fw(.)d(Not)d(all)h(of)f(these)g(\015oating)h(p)q(oin)o(t)f(t)o(yp)q(es)g(m)o (ust)g(b)q(e)h(distinct.)0 2828 y(76)p eop %%Page: 77 85 bop -72 974 13 113 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y Fw(The)c(parameters)f(for)h(the)g (\015oating)f(p)q(oin)o(t)i(t)o(yp)q(es)f(can)g(b)q(e)g(accessed)h(b)o(y)f (the)g(follo)o(wing)g(constan)o(ts)f(and)h(inquiry)0 102 y(functions.)114 224 y Fu(r)579 b Fc(\(float-radix)22 b Fu(x)p Fc(\))114 280 y Fu(p)577 b Fc(\(float-digits)22 b Fu(x)p Fc(\))114 393 y Fu(emax)489 b Fc(maxexp-short-float)p Fw(,)73 b Fc(maxexp-single-float)p Fw(,)714 449 y Fc(maxexp-double-float)p Fw(,)49 b Fc(maxexp-long-float)114 562 y Fu(emin)496 b Fc(minexp-short-float)p Fw(,)73 b Fc(minexp-single-float) p Fw(,)714 619 y Fc(minexp-double-float)p Fw(,)49 b Fc(minexp-long-float)114 732 y Fu(denor)q(m)444 b Fc(denorm-short-float)p Fw(,)73 b Fc(denorm-single-float)p Fw(,)88 b Fv(y)714 788 y Fc(denorm-double-float)p Fw(,)49 b Fc(denorm-long-float)149 b Fv(y)114 901 y Fr(ie)n(c)p 173 901 14 2 v 18 w(559)459 b Fc(iec-559-short-float)p Fw(,)49 b Fc(iec-559-single-float)p Fw(,)64 b Fv(y)714 958 y Fc(iec-559-double-float) p Fw(,)25 b Fc(iec-559-long-float)125 b Fv(y)0 1080 y Fw(where)15 b Fu(x)h Fw(is)f(of)g(t)o(yp)q(e)g Fc(short-float)p Fw(,)f Fc(single-float)p Fw(,)f Fc(double-float)g Fw(or)i Fc(long-float)p Fw(.)0 1164 y(The)g(deriv)o(ed)i(constan)o(ts)d(for)g(the)i(\015oating)f(p)q (oin)o(t)h(data)e(t)o(yp)q(e)h(can)h(b)q(e)g(accessed)f(b)o(y)h(the)f(follo)o (wing)h(syn)o(tax:)114 1286 y Fr(fmax)505 b Fc(most-positive-short-flo)o(at) 714 1343 y(most-positive-single-fl)o(oat)714 1399 y(most-positive-double-fl)o (oat)714 1456 y(most-positive-long-floa)o(t)114 1569 y Fr(fmin)203 1576 y Fp(N)714 1569 y Fc(least-positive-normaliz)o(ed-short)o(-float)714 1625 y(least-positive-normaliz)o(ed-singl)o(e-float)714 1681 y(least-positive-normaliz)o(ed-doubl)o(e-float)714 1738 y (least-positive-normaliz)o(ed-long-)o(float)114 1851 y Fr(fmin)k Fc(least-positive-short-fl)o(oat)714 1907 y(least-positive-single-f)o(loat) 714 1964 y(least-positive-double-f)o(loat)714 2020 y(least-positive-long-flo) o(at)114 2133 y Fu(epsil)q(on)455 b Fc(short-float-epsilon)714 2190 y(single-float-epsilon)714 2246 y(double-float-epsilon)714 2302 y(long-float-epsilon)114 2415 y Fu(r)q(nd)p 190 2415 V 16 w(er)q(r)q(or)403 b Fc(short-float-rounding-er)o(ror)277 b Fv(y)714 2472 y Fc(single-float-rounding-e)o(rror)253 b Fv(y)714 2528 y Fc(double-float-rounding-e)o(rror)g Fv(y)714 2585 y Fc(long-float-rounding-err)o(or)301 b Fv(y)114 2698 y Fu(r)q(nd)p 190 2698 V 16 w(sty)r(l)q(e)414 b Fc(rounding)708 b Fv(y)1905 2828 y Fw(77)p eop %%Page: 78 86 bop -72 1156 13 226 v -110 1889 51 13 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)114 45 y Fq(NOTE)k({)39 b(LIA-1)19 b(requires)i(sign)e(symmetry)f (in)h(the)h(range)g(of)f(\015oating)g(p)q(oin)o(t)g(n)o(um)o(b)q(ers.)35 b(Th)o(us)20 b(the)114 95 y(Commo)o(n)14 b(Lisp)j(constan)o(ts)h(of)e(the)i (form)d Fg(*-negative-*)f Fq(are)j(not)g(needed)h(since)g(they)g(are)f (simply)e(the)114 145 y(negativ)o(es)f(of)f(their)h Fg(*-positive-*)e Fq(coun)o(terparts.)0 275 y Fw(The)22 b(v)m(alue)g(of)f(the)h(parameter)e Fc(rounding)h Fw(is)h(an)f(ob)s(ject)g(of)g(t)o(yp)q(e)g Fc(rounding-style)p Fw(.)37 b(The)22 b(subt)o(yp)q(es)f(of)0 331 y Fc(rounding-style)13 b Fw(ha)o(v)o(e)i(the)g(follo)o(wing)h(names)f(corresp)q(onding)i(to)d(LIA-1) i Fu(r)q(nd)p 1419 331 14 2 v 16 w(sty)r(l)q(e)g Fw(v)m(alues:)114 450 y Fu(near)q(est)448 b Fc(nearest)732 b Fv(y)114 506 y Fu(tr)q(uncate)428 b Fc(truncate)708 b Fv(y)114 563 y Fu(other)494 b Fc(other)780 b Fv(y)0 682 y Fw(The)15 b(in)o(teger)h(op)q(erations)f(are)g(listed)i(b)q (elo)o(w,)e(along)g(with)h(the)f(syn)o(tax)f(used)i(to)f(in)o(v)o(ok)o(e)g (them:)114 800 y Fu(add)186 807 y Fp(I)714 800 y Fc(\(+)23 b Fu(x)h(y)r Fc(\))114 857 y Fu(sub)181 864 y Fp(I)714 857 y Fc(\(-)f Fu(x)h(y)r Fc(\))114 913 y Fu(mul)194 920 y Fp(I)714 913 y Fc(\(*)f Fu(x)h(y)r Fc(\))114 970 y Fu(div)178 953 y Fn(1)176 983 y Fp(I)714 970 y Fc(\(floor)f Fu(x)h(y)r Fc(\))114 1026 y Fu(div)178 1010 y Fn(2)176 1039 y Fp(I)714 1026 y Fc(\(truncate)e Fu(x)i(y)r Fc(\))114 1083 y Fu(r)q(em)197 1066 y Fn(1)197 1095 y Fp(I)714 1083 y Fc(\(rem)f Fu(x)h(y)r Fc(\))114 1139 y Fu(r)q(em)197 1123 y Fn(2)197 1152 y Fp(I)714 1139 y Fc(\(mod)f Fu(x)h(y)r Fc(\))114 1195 y Fu(mod)200 1179 y Fn(1)200 1208 y Fp(I)714 1195 y Fc(\(mod)f Fu(x)h(y)r Fc(\))114 1252 y Fu(mod)200 1235 y Fn(2)200 1265 y Fp(I)714 1252 y Fw(no)15 b(binding)114 1308 y Fu(neg)184 1315 y Fp(I)714 1308 y Fc(\(-)23 b Fu(x)p Fc(\))114 1365 y Fu(abs)179 1372 y Fp(I)714 1365 y Fc(\(abs)g Fu(x)p Fc(\))114 1421 y Fu(sig)r(n)202 1428 y Fp(I)714 1421 y Fc(\(signum)g Fu(x)p Fc(\))114 1478 y Fu(eq)155 1485 y Fp(I)714 1478 y Fc(\(=)g Fu(x)h(y)r Fc(\))114 1534 y Fu(neq)182 1541 y Fp(I)714 1534 y Fc(\(/=)f Fu(x)h(y)r Fc(\))114 1591 y Fu(l)q(ss)171 1598 y Fp(I)714 1591 y Fc(\(<)f Fu(x)h(y)r Fc(\))114 1647 y Fu(l)q(eq)170 1654 y Fp(I)714 1647 y Fc(\(<=)f Fu(x)h(y)r Fc(\))114 1704 y Fu(g)r(tr)175 1711 y Fp(I)714 1704 y Fc(\(>)f Fu(x)h(y)r Fc(\))114 1760 y Fu(g)r(eq)179 1767 y Fp(I)714 1760 y Fc(\(>=)f Fu(x)h(y)r Fc(\))0 1879 y Fw(where)15 b Fu(x)h Fw(and)f Fu(y)i Fw(are)e(expressions)h(of)f(t)o(yp)q(e)g Fc(integer)p Fw(.)0 1963 y(The)g(\015oating)h(p)q(oin)o(t)f(op)q(erations)h(are)e(listed)j(b)q (elo)o(w,)e(along)h(with)f(the)g(syn)o(tax)g(used)h(to)e(in)o(v)o(ok)o(e)h (them:)114 2082 y Fu(add)186 2089 y Fp(F)714 2082 y Fc(\(+)23 b Fu(x)h(y)r Fc(\))114 2139 y Fu(sub)181 2146 y Fp(F)714 2139 y Fc(\(-)f Fu(x)h(y)r Fc(\))114 2195 y Fu(mul)194 2202 y Fp(F)714 2195 y Fc(\(*)f Fu(x)h(y)r Fc(\))114 2252 y Fu(div)176 2259 y Fp(F)714 2252 y Fc(\(/)f Fu(x)h(y)r Fc(\))114 2308 y Fu(neg)184 2315 y Fp(F)714 2308 y Fc(\(-)f Fu(x)p Fc(\))114 2365 y Fu(abs)179 2372 y Fp(F)714 2365 y Fc(\(abs)g Fu(x)p Fc(\))114 2421 y Fu(sig)r(n)202 2428 y Fp(F)714 2421 y Fc(\(signum)g Fu(x)p Fc(\))114 2477 y Fu(exponent)297 2484 y Fp(F)714 2477 y Fc(\(float-exponent)e Fu(x)p Fc(\))469 b Fv(y)326 2590 y Fc(\(multiple-value-bind)21 b(\(fraction)i(expon)g(sgn\))g(\(decode-float)f Fu(x)p Fc(\)\))114 2647 y Fr(fr)n(action)270 2658 y Fp(F)714 2647 y Fc(fraction)0 2828 y Fw(78)p eop %%Page: 79 87 bop 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)114 45 y Fu(scal)q(e)215 52 y Fp(F)714 45 y Fc(\(scale-float)k Fu(x)i(n)p Fc(\))114 102 y Fu(succ)201 109 y Fp(F)714 102 y Fc(\(succ)f Fu(x)p Fc(\))707 b Fv(y)114 158 y Fu(pr)q(ed)204 165 y Fp(F)714 158 y Fc(\(pred)23 b Fu(x)p Fc(\))707 b Fv(y)114 214 y Fu(ul)q(p)178 221 y Fp(F)714 214 y Fc(\(ulp)23 b Fu(x)p Fc(\))731 b Fv(y)114 271 y Fu(tr)q(unc)225 278 y Fp(F)714 271 y Fc(\(truncate-float)21 b Fu(x)j(n)p Fc(\))418 b Fv(y)114 327 y Fu(r)q(ound)235 334 y Fp(F)714 327 y Fc(\(round-float)22 b Fu(x)i(n)p Fc(\))489 b Fv(y)326 440 y Fc(\(multiple-value-bind)21 b(\(int)i(fract\))g(\(truncate)g Fu(x)p Fc(\)\))114 497 y Fu(intpar)q(t)258 504 y Fp(F)714 497 y Fc(int)114 553 y Fr(fr)n(actp)n(art)286 564 y Fp(F)714 553 y Fc(fract)114 666 y Fu(eq)155 673 y Fp(F)714 666 y Fc(\(=)g Fu(x)h(y)r Fc(\))114 723 y Fu(neq)182 730 y Fp(F)714 723 y Fc(\(/=)f Fu(x)h(y)r Fc(\))114 779 y Fu(l)q(ss)171 786 y Fp(F)714 779 y Fc(\(<)f Fu(x)h(y)r Fc(\))114 835 y Fu(l)q(eq)170 842 y Fp(F)714 835 y Fc(\(<=)f Fu(x)h(y)r Fc(\))114 892 y Fu(g)r(tr)175 899 y Fp(F)714 892 y Fc(\(>)f Fu(x)h(y)r Fc(\))114 948 y Fu(g)r(eq)179 955 y Fp(F)714 948 y Fc(\(>=)f Fu(x)h(y)r Fc(\))0 1070 y Fw(where)15 b Fu(x)h Fw(and)f Fu(y)i Fw(are)e(data)f(ob)s(jects)h(of)g(the)g(same)g (\015oating)g(p)q(oin)o(t)h(t)o(yp)q(e,)f(and)g Fu(n)g Fw(is)h(of)f(in)o (teger)g(t)o(yp)q(e.)114 1198 y Fq(NOTE)c({)22 b(Only)11 b Fg(signum)f Fq(returns)j(0)e(when)g(applied)g(to)g(0)g(as)g(is)g(required)h (of)e Fl(sig)q(n)1402 1204 y Fj(F)1442 1198 y Fq(b)o(y)h(the)h(LIA-1.)k (Neither)114 1248 y Fg(float-sign)11 b Fq(nor)j Fg(decode-float)e Fq(do.)114 1317 y(The)j(function)h Fg(float-exponent)c Fq(di\013ers)k(from)e Fg(decode-float)f Fq(in)i(that)g(it)g(generates)i(a)f(noti\014cation)e(if)114 1366 y(the)g(argumen)o(t)f(is)h(zero,)g(while)f Fg(decode-float)f Fq(do)q(es)i(not.)0 1501 y Fw(T)o(yp)q(e)f(con)o(v)o(ersions)f(in)h(Common)f (Lisp)i(are)e(explicit)i(through)f(con)o(v)o(ersion)f(functions.)20 b(The)12 b(programmer)g(ma)o(y)0 1557 y(c)o(ho)q(ose)k(the)g(rounding)h(in)g Fu(cv)r(t)531 1564 y Fp(F)5 b Fm(!)p Fp(I)614 1557 y Fw(.)22 b(Con)o(v)o(ersions)16 b(to)g(\015oating)g(p)q(oin)o(t)h(t)o(yp)q(e)f(yield)i (a)e(result)g(of)g(default)h Fc(float)0 1614 y Fw(t)o(yp)q(e,)e(unless)h (there)g(is)f(a)g(second)h(op)q(erand)f Fu(y)r Fw(,)g(in)h(whic)o(h)g(case)f (the)h(result)f(is)h(of)f(the)g(same)g(t)o(yp)q(e)g(as)g Fu(y)r Fw(.)114 1736 y Fu(cv)r(t)174 1743 y Fp(I)s Fm(!)p Fp(F)256 1736 y Fw(,)g Fu(cv)r(t)344 1743 y Fp(F)371 1734 y Fz(0)382 1743 y Fm(!)p Fp(F)714 1736 y Fc(\(float)23 b Fu(x)p Fc(\))p Fw(,)29 b Fc(\(float)23 b Fu(x)h(y)r Fc(\))114 1792 y Fu(cv)r(t)174 1799 y Fp(F)5 b Fm(!)p Fp(I)714 1792 y Fc(\(floor)23 b Fu(x)p Fc(\))383 b Fw(\(round)15 b(to)o(w)o(ard)e(min)o(us)j(in\014nit)o(y\))714 1849 y Fc(\(ceiling)22 b Fu(x)p Fc(\))336 b Fw(\(round)15 b(to)o(w)o(ard)e(p) q(ositiv)o(e)k(in\014nit)o(y\))714 1905 y Fc(\(truncate)22 b Fu(x)p Fc(\))312 b Fw(\(round)15 b(to)o(w)o(ard)e(zero\))714 1962 y Fc(\(round)23 b Fu(x)p Fc(\))383 b Fw(\(round)15 b(to)f(nearest\))0 2084 y(An)e(implemen)o(tation)i(of)d(Common)g(Lisp)i(that)f(wishes)g(to)g (conform)f(to)g(the)h(LIA-1)h(m)o(ust)e(use)i(round)f(to)f(nearest)0 2140 y(when)16 b(con)o(v)o(erting)f(to)f(a)h(\015oating)g(p)q(oin)o(t)h(t)o (yp)q(e.)0 2225 y(The)k(noti\014cation)h(metho)q(d)g(required)g(b)o(y)f (Common)f(Lisp)i(is)g(alteration)f(of)g(con)o(trol)g(\015o)o(w)f(as)h (describ)q(ed)i(in)0 2281 y(6.1.1.)28 b(Noti\014cation)19 b(is)g (accomplished)h(b)o(y)f(signaling)h(a)e(condition)i(of)e(the)g(appropriate)h (t)o(yp)q(e.)29 b(The)19 b(LIA-1)0 2338 y(exceptional)e(v)m(alues)f(are)f (represen)o(ted)h(b)o(y)f(the)g(follo)o(wing)h(Common)e(Lisp)j(condition)f(t) o(yp)q(es:)114 2460 y Fx(in)o(teger)p 275 2460 16 2 v 18 w(o)o(v)o(er\015o)o (w)234 b Fw(\(not)14 b(needed,)i(in)o(teger)g(t)o(yp)q(e)f(is)h(un)o(b)q (ounded\))114 2516 y Fx(\015oating)p 286 2516 V 20 w(o)o(v)o(er\015o)o(w)221 b Fc(floating-point-overflow)114 2573 y Fx(under\015o)o(w)375 b Fc(floating-point-underflo)o(w)114 2629 y Fx(unde\014ned)j Fc(division-by-zero)p Fw(,)27 b(or)j Fc(arithmetic-error)1905 2828 y Fw(79)p eop %%Page: 80 88 bop -72 1662 13 57 v -72 2414 V -110 299 51 13 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y(An)d(implemen)o(tation)h(that)d(wishes)i(to)f(conform)g(to) g(the)h(LIA-1)g(m)o(ust)f(signal)h(the)g(appropriate)f(condition)i(t)o(yp)q (e)0 102 y(whenev)o(er)k(an)g(LIA-1)g(exceptional)h(v)m(alue)g(w)o(ould)f(b)q (e)h(returned,)f(and)g(m)o(ust)f(pro)o(vide)h(a)g(default)g(handler)h(for)0 158 y(use)d(in)g(the)f(ev)o(en)o(t)g(that)f(the)i(programmer)e(has)h(not)f (supplied)k(a)d(condition)h(handler.)0 243 y(In)h(addition,)h(an)e(implemen)o (tation)i(that)d(wishes)j(to)d(conform)h(to)g(the)h(LIA-1)g(shall)g(pro)o (vide)g(the)g(alternativ)o(e)0 299 y(of)e(noti\014cation)h(through)f (termination)g(with)h(a)f(message)f(as)h(describ)q(ed)i(in)f(6.1.3.)0 449 y FB(E.6)55 b(F)-5 b(ortran)0 563 y Fw(The)19 b(programming)g(language)g (F)l(ortran)f(is)i(de\014ned)g(b)o(y)f(ISO/IEC)h(1539:1991,)d Fr(Information)j(te)n(chnolo)n(gy)f({)0 620 y(Pr)n(o)n(gr)n(amming)d (languages)f({)i(F)o(OR)m(TRAN,)d(Se)n(c)n(ond)h(Edition)g Fw([3].)0 704 y(An)i(implemen)o(tation)i(should)e(follo)o(w)h(all)f(the)h (requiremen)o(ts)f(of)g(LIA-1)g(unless)h(otherwise)g(sp)q(eci\014ed)h(b)o(y)e (this)0 761 y(language)e(binding.)0 845 y(The)i(op)q(erations)g(or)g (parameters)f(mark)o(ed)h(\\)p Fv(y)p Fw(")f(are)h(not)g(part)f(of)h(the)g (language)g(and)g(m)o(ust)g(b)q(e)g(pro)o(vided)h(b)o(y)0 902 y(an)c(implemen)o(tation)h(that)f(wishes)g(to)g(conform)f(to)h(the)g(LIA-1.) 20 b(F)l(or)14 b(eac)o(h)g(of)f(the)h(mark)o(ed)g(items)g(a)g(suggested)0 958 y(iden)o(ti\014er)j(is)e(pro)o(vided.)0 1043 y(The)g(F)l(ortran)f(data)h (t)o(yp)q(e)g Fc(LOGICAL)f Fw(corresp)q(onds)i(to)f(the)g(LIA-1)h(data)e(t)o (yp)q(e)i Fu(B)r(ool)q(ean)p Fw(.)0 1128 y(Ev)o(ery)f(implemen)o(tation)h(of) f(F)l(ortran)f(has)h(one)g(in)o(teger)g(data)g(t)o(yp)q(e,)g(denoted)g(as)g Fc(INTEGER)p Fw(,)f(and)h(t)o(w)o(o)f(\015oating)0 1184 y(p)q(oin)o(t)i(data) e(t)o(yp)q(e)h(denoted)h(as)f Fc(REAL)g Fw(\(single)h(precision\))g(and)g Fc(DOUBLE)23 b(PRECISION)p Fw(.)0 1269 y(An)14 b(implemen)o(tation)i(is)f(p)q (ermitted)f(to)g(o\013er)f(additional)j Fc(INTEGER)d Fw(t)o(yp)q(es)h(with)h (a)e(di\013eren)o(t)i(range)f(and)g(addi-)0 1325 y(tional)i Fc(REAL)e Fw(t)o(yp)q(es)i(with)f(di\013eren)o(t)h(precision)g(or)f(range,)f (parameterized)i(with)g(the)f Fc(KIND)g Fw(parameter.)0 1410 y(The)g(parameters)g(for)f Fc(INTEGER)h Fw(can)g(b)q(e)h(accessed)g(b)o(y)f (the)g(follo)o(wing)h(syn)o(tax:)114 1532 y Fu(maxint)451 b Fc(HUGE\()p Fu(x)p Fc(\))114 1588 y Fu(minint)458 b Fc(MININT\()p Fu(x)p Fc(\))682 b Fv(y)114 1645 y Fu(modul)q(o)451 b Fc(MODINT\()p Fu(x)p Fc(\))682 b Fv(y)0 1767 y Fw(where)15 b Fu(x)f Fw(is)h(an)f (expression)h(of)f(t)o(yp)q(e)h Fc(INTEGER)p Fw(,)e(and)h(the)h(result)g (returned)g(is)f(appropriate)h(for)f(the)g Fc(KIND)g Fw(t)o(yp)q(e)0 1823 y(of)h Fu(x)p Fw(.)0 1908 y(The)g(parameter)g Fr(b)n(ounde)n(d)20 b Fw(is)15 b(alw)o(a)o(ys)g Fx(true)p Fw(,)f(and)i(need)g(not)f(b)q(e)g(pro)o (vided.)0 1993 y(The)g(parameters)g(for)f(the)i Fc(REAL)e Fw(data)h(t)o(yp)q (es)g(can)g(b)q(e)h(accessed)g(b)o(y)f(the)g(follo)o(wing)h(syn)o(tax:)114 2115 y Fu(r)579 b Fc(RADIX\()p Fu(x)p Fc(\))114 2171 y Fu(p)e Fc(DIGITS\()p Fu(x)p Fc(\))114 2228 y Fu(emax)489 b Fc(MAXEXPONENT\()p Fu(x)p Fc(\))114 2284 y Fu(emin)496 b Fc(MINEXPONENT\()p Fu(x)p Fc(\))114 2341 y Fu(denor)q(m)444 b Fc(DENORM\()p Fu(x)p Fc(\))682 b Fv(y)114 2397 y Fr(ie)n(c)p 173 2397 14 2 v 18 w(559)459 b Fc(IEC)p 789 2397 15 2 v 16 w(559\()p Fu(x)p Fc(\))666 b Fv(y)0 2519 y Fw(where)15 b Fu(x)h Fw(is)f(an)g(expression)h(of)f(the)h (appropriate)f Fc(KIND)23 b(REAL)15 b Fw(data)f(t)o(yp)q(e.)0 2604 y(The)h(deriv)o(ed)i(constan)o(ts)d(for)g Fc(REAL)h Fw(data)g(t)o(yp)q (es)g(can)g(b)q(e)h(accessed)g(b)o(y)f(the)g(follo)o(wing)h(syn)o(tax:)0 2828 y(80)p eop %%Page: 81 89 bop -72 344 13 113 v -72 551 13 57 v -72 842 13 170 v -72 1425 13 226 v -72 1820 13 57 v -110 2160 51 13 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)114 45 y Fr(fmax)505 b Fc(HUGE\()p Fu(x)p Fc(\))114 102 y Fr(fmin)203 109 y Fp(N)714 102 y Fc(TINY\()p Fu(x)p Fc(\))114 158 y Fr(fmin)k Fc(TINIEST\()p Fu(x)p Fc(\))658 b Fv(y)114 214 y Fu(epsil)q(on)455 b Fc(EPSILON\()p Fu(x)p Fc(\))114 271 y Fu(r)q(nd)p 190 271 14 2 v 16 w(er)q(r)q(or)403 b Fc(RND)p 789 271 15 2 v 16 w(ERROR\()p Fu(x)p Fc(\))618 b Fv(y)114 327 y Fu(r)q(nd)p 190 327 14 2 v 16 w(sty)r(l)q(e)414 b Fc(RND)p 789 327 15 2 v 16 w(STYLE)692 b Fv(y)0 449 y Fw(where)15 b Fu(x)h Fw(is)f(an)g(expression)h(of)f Fc(KIND)24 b(REAL)p Fw(.)0 534 y(The)12 b(allo)o(w)o(ed)g(v)m(alues)g(of)f (the)h(parameter)f Fc(RND)p 791 534 V 17 w(STYLE)f Fw(are)i(from)e(the)i (data)f(t)o(yp)q(e)g Fc(INTEGER)g Fw(and)h(can)f(b)q(e)h(accessed)0 591 y(b)o(y)j(the)g(follo)o(wing)h(syn)o(tax:)114 713 y Fu(near)q(est)448 b Fc(RND)p 789 713 V 16 w(NEAREST)644 b Fv(y)114 769 y Fu(tr)q(uncate)428 b Fc(RND)p 789 769 V 16 w(TRUNCATE)620 b Fv(y)114 826 y Fu(other)494 b Fc(RND)p 789 826 V 16 w(OTHER)692 b Fv(y)0 948 y Fw(The)15 b(in)o(teger)h(op)q(erations)f(are)g(listed)i(b)q(elo)o(w,)e(along)g(with)h (the)f(syn)o(tax)f(used)i(to)f(in)o(v)o(ok)o(e)g(them:)114 1070 y Fu(add)186 1077 y Fp(I)714 1070 y Fu(x)23 b Fc(+)h Fu(y)114 1126 y(sub)181 1133 y Fp(I)714 1126 y Fu(x)f Fc(-)h Fu(y)114 1183 y(mul)194 1190 y Fp(I)714 1183 y Fu(x)f Fc(*)h Fu(y)114 1239 y(div)178 1222 y Fn(1)176 1252 y Fp(I)714 1239 y Fw(no)15 b(binding)114 1295 y Fu(div)178 1279 y Fn(2)176 1308 y Fp(I)714 1295 y Fu(x)23 b Fc(/)h Fu(y)114 1352 y(r)q(em)197 1335 y Fn(1)197 1365 y Fp(I)714 1352 y Fw(no)15 b(binding)114 1408 y Fu(r)q(em)197 1392 y Fn(2)197 1421 y Fp(I)714 1408 y Fc(MOD\()p Fu(x;)8 b(y)r Fc(\))114 1465 y Fu(mod)200 1448 y Fn(1)200 1478 y Fp(I)714 1465 y Fc(MODULO\()p Fu(x;)g(y)r Fc(\))114 1521 y Fu(mod)200 1505 y Fn(2)200 1534 y Fp(I)714 1521 y Fw(no)15 b(binding)114 1578 y Fu(neg)184 1585 y Fp(I)714 1578 y Fc(-)23 b Fu(x)114 1634 y(abs)179 1641 y Fp(I)714 1634 y Fc(ABS\()p Fu(x)p Fc(\))114 1691 y Fu(sig)r(n)202 1698 y Fp(I)714 1691 y Fc(SIGNUM\()p Fu(x)p Fc(\))682 b Fv(y)114 1747 y Fu(eq)155 1754 y Fp(I)714 1747 y Fu(x)23 b Fc(.EQ.)h Fu(y)47 b Fw(or)e Fu(x)24 b Fc(==)g Fu(y)114 1804 y(neq)182 1811 y Fp(I)714 1804 y Fu(x)f Fc(.NE.)h Fu(y)47 b Fw(or)e Fu(x)24 b Fc(/=)g Fu(y)114 1860 y(l)q(ss)171 1867 y Fp(I)714 1860 y Fu(x)f Fc(.LT.)h Fu(y)47 b Fw(or)e Fu(x)24 b Fc(<)g Fu(y)114 1916 y(l)q(eq)170 1923 y Fp(I)714 1916 y Fu(x)f Fc(.LE.)h Fu(y)47 b Fw(or)e Fu(x)24 b Fc(<=)g Fu(y)114 1973 y(g)r(tr)175 1980 y Fp(I)714 1973 y Fu(x)f Fc(.GT.)h Fu(y)47 b Fw(or)e Fu(x)24 b Fc(>)g Fu(y)114 2029 y(g)r(eq)179 2036 y Fp(I)714 2029 y Fu(x)f Fc(.GE.)h Fu(y)47 b Fw(or)e Fu(x)24 b Fc(>=)g Fu(y)0 2151 y Fw(where)15 b Fu(x)h Fw(and)f Fu(y)i Fw(are)e(expressions)h(in)o(v)o(olving)g(in)o(tegers)g(of)e(the)i(same)f Fc(KIND)p Fw(.)0 2236 y(The)g(\015oating)h(p)q(oin)o(t)f(op)q(erations)h(are) e(listed)j(b)q(elo)o(w,)e(along)h(with)f(the)g(syn)o(tax)g(used)h(to)e(in)o (v)o(ok)o(e)h(them:)114 2358 y Fu(add)186 2365 y Fp(F)714 2358 y Fu(x)23 b Fc(+)h Fu(y)114 2415 y(sub)181 2422 y Fp(F)714 2415 y Fu(x)f Fc(-)h Fu(y)114 2471 y(mul)194 2478 y Fp(F)714 2471 y Fu(x)f Fc(*)h Fu(y)114 2527 y(div)176 2534 y Fp(F)714 2527 y Fu(x)f Fc(/)h Fu(y)114 2584 y(neg)184 2591 y Fp(F)714 2584 y Fc(-)f Fu(x)114 2640 y(abs)179 2647 y Fp(F)714 2640 y Fc(ABS\()p Fu(x)p Fc(\))114 2697 y Fu(sig)r(n)202 2704 y Fp(F)714 2697 y Fc(SIGNUM\()p Fu(x)p Fc(\))682 b Fv(y)1905 2828 y Fw(81)p eop %%Page: 82 90 bop -72 683 13 57 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)114 45 y Fu(exponent)297 52 y Fp(F)714 45 y Fc(EXPON\()p Fu(x)p Fc(\))706 b Fv(y)114 102 y Fr(fr)n(action)270 112 y Fp(F)714 102 y Fc(FRACTION\()p Fu(x)p Fc(\))114 158 y Fu(scal)q(e)215 165 y Fp(F)714 158 y Fc(SCALE\()p Fu(x;)8 b(n)p Fc(\))114 214 y Fu(succ)201 221 y Fp(F)714 214 y Fc(NEAREST\()p Fu(x;)g Fw(1)p Fu(:)p Fw(0)p Fc(\))114 271 y Fu(pr)q(ed)204 278 y Fp(F)714 271 y Fc(NEAREST\()p Fu(x;)g Fv(\000)p Fw(1)p Fu(:)p Fw(0)p Fc(\))114 327 y Fu(ul)q(p)178 334 y Fp(F)714 327 y Fc(ULP\()p Fu(x)p Fc(\))754 b Fv(y)114 384 y Fu(tr)q(unc)225 391 y Fp(F)714 384 y Fc(TRUNC\()p Fu(x;)8 b(n)p Fc(\))658 b Fv(y)114 440 y Fu(r)q(ound)235 447 y Fp(F)714 440 y Fc(ROUND\()p Fu(x;)8 b(n)p Fc(\))658 b Fv(y)114 497 y Fu(intpar)q(t)258 504 y Fp(F)714 497 y Fc(AINT\()p Fu(x)p Fc(\))114 553 y Fr(fr)n(actp)n(art)286 564 y Fp(F)714 553 y Fu(x)23 b Fc(-)h(AINT\()p Fu(x)p Fc(\))114 610 y Fu(eq)155 617 y Fp(F)714 610 y Fu(x)f Fc(.EQ.)h Fu(y)47 b Fw(or)e Fu(x)24 b Fc(==)g Fu(y)114 666 y(neq)182 673 y Fp(F)714 666 y Fu(x)f Fc(.NE.)h Fu(y)47 b Fw(or)e Fu(x)24 b Fc(/=)g Fu(y)114 723 y(l)q(ss)171 730 y Fp(F)714 723 y Fu(x)f Fc(.LT.)h Fu(y)47 b Fw(or)e Fu(x)24 b Fc(<)g Fu(y)114 779 y(l)q(eq)170 786 y Fp(F)714 779 y Fu(x)f Fc(.LE.)h Fu(y)47 b Fw(or)e Fu(x)24 b Fc(<=)g Fu(y)114 835 y(g)r(tr)175 842 y Fp(F)714 835 y Fu(x)f Fc(.GT.)h Fu(y)47 b Fw(or)e Fu(x)24 b Fc(>)g Fu(y)114 892 y(g)r(eq)179 899 y Fp(F)714 892 y Fu(x)f Fc(.GE.)h Fu(y)47 b Fw(or)e Fu(x)24 b Fc(>=)g Fu(y)0 1008 y Fw(where)15 b Fu(x)h Fw(and)f Fu(y)i Fw(are)e(reals)g(of)g(the)g(same)g Fc(KIND)p Fw(,)g(and)g Fu(n)g Fw(is)h(of)f(in)o(teger)g(t)o(yp)q(e.)114 1128 y Fq(NOTE)f({)28 b(The)14 b(F)m(ortran)g(function)f Fg(SIGN\(1,)p Fl(x)p Fg(\))f Fq(is)i(di\013eren)o(t)h(from)d Fl(sig)q(n)1291 1134 y Fj(F)1334 1128 y Fq(b)q(ecause)j(it)f(returns)h(1)f(instead)114 1178 y(of)f(0)h(for)f Fl(x)e Fq(=)h(0.)114 1246 y(The)h(in)o(trinsic)h(function)f Fg(EXPONENT\()p Fl(x)p Fg(\))e Fq(di\013ers)j(from)e Fl(exponent)1165 1252 y Fj(F)1206 1246 y Fq(at)h Fl(x)e Fq(=)h(0)h(where)i(it)e(returns)i(0)e (instead)114 1295 y(of)g(a)h(noti\014cation.)114 1363 y(The)f(F)m(ortran)f (function)g Fg(SPACING)f Fq(di\013ers)i(from)e Fl(ul)q(p)950 1369 y Fj(F)990 1363 y Fq(in)h(that)g(it)g(do)q(es)h(not)g(raise)f(a)h (noti\014cation)e(on)h(either)114 1413 y(under\015o)o(w)i(or)g(an)g(input)f (of)g(0.)0 1539 y Fw(An)18 b(implemen)o(tation)h(that)e(wishes)h(to)f (conform)g(to)g(the)h(LIA-1)h(m)o(ust)e(pro)o(vide)h(the)g(LIA-1)g(op)q (erations)g(and)0 1596 y(parameters)c(for)h(an)o(y)g(additional)h Fc(INTEGER)f Fw(or)f Fc(REAL)h Fw(t)o(yp)q(es)g(pro)o(vided.)0 1680 y(T)o(yp)q(e)j(con)o(v)o(ersions)f(in)i(F)l(ortran)d(are)i(either)g (explicit)i(through)d(con)o(v)o(ersion)h(functions,)g(or)f(implicit)j (through)0 1737 y(assignmen)o(t)12 b(statemen)o(ts.)18 b(The)13 b(optional)g Fu(k)q(ind)f Fw(argumen)o(t)g(indicates)i(the)f Fc(KIND)f Fw(of)g(the)h(destination.)20 b(Con)o(v)o(er-)0 1793 y(sions)13 b(to)e(a)h Fc(REAL)g Fw(t)o(yp)q(e)h(are)f(required)h(b)o(y)f(the) h(LIA-1)g(to)e(use)i(round)g(to)e(nearest.)19 b(The)12 b(programmer)g(ma)o(y) f(select)0 1850 y(the)17 b(rounding)g(of)f(the)h Fc(REAL)f Fw(to)g Fc(INTEGER)g Fw(con)o(v)o(ersion)h(b)o(y)f(using)i(one)f(of)f(the)h (explicit)h(con)o(v)o(ersion)f(functions)0 1906 y(in)o(v)o(ok)o(ed)e(with)h (the)f(follo)o(wing)h(syn)o(tax:)114 2023 y Fu(cv)r(t)174 2030 y Fp(I)s Fm(!)p Fp(F)714 2023 y Fc(REAL\()p Fu(x)p Fc(\))430 b Fw(\(round)15 b(to)f(nearest\))114 2136 y Fu(cv)r(t)174 2143 y Fp(F)201 2134 y Fz(0)212 2143 y Fm(!)p Fp(F)714 2136 y Fc(REAL\()p Fu(x;)8 b(k)q(ind)p Fc(\))p Fw(,)28 b Fc(DBLE\()p Fu(x)p Fc(\))106 b Fw(\(round)15 b(to)f(nearest\))114 2248 y Fu(cv)r(t)174 2255 y Fp(F)5 b Fm(!)p Fp(I)714 2248 y Fc(INT\()p Fu(x)p Fc(\))p Fw(,)29 b Fc(INT\()p Fu(x;)8 b(k)q(ind)p Fc(\))153 b Fw(\(round)15 b(to)o(w)o(ard)e(zero\))714 2305 y Fc(NINT\()p Fu(x)p Fc(\))p Fw(,)29 b Fc(NINT\()p Fu(x;)8 b(k)q(ind)p Fc(\))105 b Fw(\(round)15 b(to)f(nearest\))714 2361 y Fc(CEILING\()p Fu(x)p Fc(\))358 b Fw(\(round)15 b(to)o(w)o(ard)e(plus)k(in\014nit)o(y\))714 2418 y Fc(FLOOR\()p Fu(x)p Fc(\))406 b Fw(\(round)15 b(to)o(w)o(ard)e(min)o (us)j(in\014nit)o(y\))114 2531 y Fu(cv)r(t)174 2538 y Fp(I)192 2529 y Fz(0)202 2538 y Fm(!)p Fp(I)714 2531 y Fc(INT\()p Fu(x)p Fc(\))p Fw(,)29 b Fc(INT\()p Fu(x;)8 b(k)q(ind)p Fc(\))0 2647 y Fw(An)15 b(implemen)o(tation)g(that)f(wishes)h(to)f(conform)g(to)g(the)g (LIA-1)i(m)o(ust)d(use)i(round)g(to)f(nearest)g(for)g(the)g(con)o(v)o(er-)0 2704 y(sions)i(to)e(\015oating)h(p)q(oin)o(t)h(t)o(yp)q(es.)0 2828 y(82)p eop %%Page: 83 91 bop -72 410 13 113 v -72 1067 13 57 v -72 1537 13 226 v -72 2076 13 200 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y Fw(An)12 b(implemen)o(tation)i (that)d(wishes)i(to)f(conform)f(to)h(the)g(LIA-1)h(m)o(ust)e(pro)o(vide)i (recording)g(of)e(indicators)i(as)f(one)0 102 y(metho)q(d)17 b(of)g(noti\014cation.)25 b(\(See)18 b(6.1.2.\))23 b(The)17 b(data)f(t)o(yp)q(e)h Fu(I)t(nd)f Fw(is)i(iden)o(ti\014ed)h(with)e(the)g (data)f(t)o(yp)q(e)h Fc(INTEGER)p Fw(.)0 158 y(The)g(v)m(alues)i(represen)o (ting)f(individual)i(indicators)e(are)f(distinct)h(non-negativ)o(e)g(p)q(o)o (w)o(ers)f(of)g(t)o(w)o(o)f(and)h(can)g(b)q(e)0 214 y(accessed)f(b)o(y)f(the) g(follo)o(wing)h(syn)o(tax:)114 337 y Fx(in)o(teger)p 275 337 16 2 v 18 w(o)o(v)o(er\015o)o(w)234 b Fc(INT)p 789 337 15 2 v 16 w(OVERFLOW)620 b Fv(y)114 393 y Fx(\015oating)p 286 393 16 2 v 20 w(o)o(v)o(er\015o)o(w)221 b Fc(FLT)p 789 393 15 2 v 16 w(OVERFLOW)620 b Fv(y)114 449 y Fx(under\015o)o(w)375 b Fc(UNDERFLOW)684 b Fv(y)114 506 y Fx(unde\014ned)378 b Fc(UNDEFINED)684 b Fv(y)0 628 y Fw(The)19 b(empt)o(y)f(set)h(can)f(b)q(e)i(denoted)f(b)o(y)g (0.)29 b(Other)19 b(indicator)h(subsets)f(can)f(b)q(e)i(named)f(b)o(y)f (adding)i(together)0 684 y(individual)e(indicators.)j(F)l(or)15 b(example,)g(the)h(indicator)g(subset)114 806 y Fv(f)p Fx(\015oating)p 309 806 16 2 v 20 w(o)o(v)o(er\015o)o(w)p Fw(,)c Fx(under\015o)o(w)p Fw(,)i Fx(in)o(teger)p 954 806 V 19 w(o)o(v)o(er\015o)o(w)p Fv(g)0 928 y Fw(w)o(ould)i(b)q(e)f(denoted)h(b)o(y)f(the)h(expression)114 1050 y Fc(FLT)p 189 1050 15 2 v 16 w(OVERFLOW)e Fw(+)i Fc(UNDERFLOW)e Fw(+)h Fc(INT)p 814 1050 V 17 w(OVERFLOW)0 1173 y Fw(The)j(indicator)h(in)o (terrogation)e(and)h(manipulation)i(op)q(erations)e(are)g(listed)h(b)q(elo)o (w,)g(along)e(with)i(the)f(syn)o(tax)0 1229 y(used)e(to)e(in)o(v)o(ok)o(e)h (them:)114 1351 y Fu(set)p 175 1351 14 2 v 17 w(indicator)q(s)317 b Fc(SET)p 789 1351 15 2 v 16 w(INDICATORS\()p Fu(i)p Fc(\))508 b Fv(y)114 1407 y Fu(cl)q(ear)p 219 1407 14 2 v 16 w(indicator)q(s)275 b Fc(CLR)p 789 1407 15 2 v 16 w(INDICATORS\()p Fu(i)p Fc(\))508 b Fv(y)114 1464 y Fu(test)p 191 1464 14 2 v 17 w(indicator)q(s)301 b Fc(TEST)p 813 1464 15 2 v 16 w(INDICATORS\()p Fu(i)p Fc(\))484 b Fv(y)114 1520 y Fu(sav)r(e)p 207 1520 14 2 v 16 w(indicator)q(s)286 b Fc(SAVE)p 813 1520 15 2 v 16 w(INDICATORS)548 b Fv(y)0 1642 y Fw(where)15 b Fu(i)g Fw(is)h(an)f(expression)h(of)f(t)o(yp)q(e)g Fc(INTEGER)f Fw(represen)o(ting)i(an)f(indicator)h(subset.)0 1727 y(In)h(addition,)h(an)e(implemen)o(tation)i(that)d(wishes)j(to)d (conform)h(to)g(the)h(LIA-1)g(shall)g(pro)o(vide)g(the)g(alternativ)o(e)0 1784 y(of)e(noti\014cation)h(through)f(termination)g(with)h(a)f(message)f(as) h(describ)q(ed)i(in)f(6.1.3.)114 1911 y Fq(NOTE)i({)36 b(Implemen)o(tations) 15 b(of)i(F)m(ortran)h(77)f(are)i(not)e(required)i(to)f(supp)q(ort)h(names)e (longer)h(than)g(six)114 1961 y(c)o(haracters.)h(Ho)o(w)o(ev)o(er,)14 b(they)g(ma)o(y)d(still)i(wish)g(to)h(pro)o(vide)f(the)h(parameters)g(and)f (functions)h(of)f(LIA-1.)k(T)m(o)114 2011 y(ac)o(hiev)o(e)f(consistency)m(,)h (it)f(is)g(suggested)h(that)g(the)f(names)g(giv)o(en)f(here)i(b)q(e)g(used)g (after)f(truncating)h(to)f(the)114 2061 y(\014rst)e(six)g(alphab)q(etic)g(c)o (haracters.)0 2211 y FB(E.7)55 b(Mo)r(dula-2)0 2325 y Fw(The)13 b(standard)g([14)o(])g(de\014ning)h(the)g(programming)e(language)h(Mo)q (dula-2)h(is)f(under)h(dev)o(elopmen)o(t)g(b)o(y)f(ISO/IEC)0 2381 y(JTC1/SC22/W)o(G13.)29 b(The)19 b(standard)g(will)h(b)q(e)g(based)f(on) g(the)h(de\014nition)g(in)g(Wirth)f([42)o(].)31 b(A)20 b(binding)h(for)0 2438 y(LIA-1)d(is)g(included)i(in)f(the)e(curren)o(t)g(draft)g([19)o(])g(of)g (the)h(standard.)26 b(Therefore)18 b(a)f(suggested)g(binding)i(is)f(not)0 2494 y(included)g(here.)1905 2828 y(83)p eop %%Page: 84 92 bop -72 1945 13 57 v -72 2613 V 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993) 1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y FB(E.8)55 b(P)n(ascal)21 b(and)e(Extended)e(P)n(ascal)0 159 y Fw(The)f(programming)g (language)g(Extended)h(P)o(ascal)f(is)h(de\014ned)h(in)f(ISO/IEC)g (10206:1991)c Fr(Information)k(te)n(ch-)0 216 y(nolo)n(gy)j({)h(Pr)n(o)n(gr)n (amming)f(languages)g({)h(Extende)n(d)f(Pasc)n(al,)h(First)g(Edition)e Fw([11)o(].)35 b(The)20 b(programming)f(lan-)0 272 y(guage)f(ISO)h(P)o(ascal) f(is)h(de\014ned)g(b)o(y)g(ISO/IEC)g(7185:1990,)d Fr(Information)i(te)n (chnolo)n(gy)h({)g(Pr)n(o)n(gr)n(amming)f(lan-)0 329 y(guages)f({)h(Pasc)n (al,)e(Se)n(c)n(ond)g(Edition)g Fw([5)o(].)23 b(The)16 b(programming)g (language)g(ANSI/IEEE)h(P)o(ascal)f(is)h(de\014ned)g(in)0 385 y(ANSI/IEEE)j(770/X3.97-1983)d([20)o(].)33 b(A)19 b(binding)j(for)d(Extended) h(P)o(ascal)g([12)o(])f(is)h(under)h(dev)o(elopmen)o(t)f(b)o(y)0 441 y(ISO/IEC)d(JTC1/SC22/W)o(G2.)i(In)e(addition,)f(this)h(binding)h(will)f (con)o(tain)f(bindings)i(for)d(b)q(oth)h(ANSI/IEEE)0 498 y(P)o(ascal)h(and)g (ISO)h(P)o(ascal)e(based)h(on)g(pro)o(vision)h(of)e(additional)i(functions.) 26 b(Therefore)17 b(a)f(suggested)h(binding)0 554 y(is)f(not)f(pro)o(vided)h (here.)0 704 y FB(E.9)55 b(PL/I)0 818 y Fw(The)12 b(programming)g(language)g (PL/I)h(is)f(de\014ned)i(b)o(y)e(ISO/IEC)h(6160:1979,)d Fr(Pr)n(o)n(gr)n (amming)i(languages)h({)h(PL/I)0 875 y Fw([4)o(].)0 959 y(An)j(implemen)o (tation)i(should)e(follo)o(w)h(all)f(the)h(requiremen)o(ts)f(of)g(LIA-1)g (unless)h(otherwise)g(sp)q(eci\014ed)h(b)o(y)e(this)0 1016 y(language)e(binding.)0 1101 y(The)i(op)q(erations)g(or)g(parameters)f(mark)o (ed)h(\\)p Fv(y)p Fw(")f(are)h(not)g(part)f(of)h(the)g(language)g(and)g(m)o (ust)g(b)q(e)g(pro)o(vided)h(b)o(y)0 1157 y(an)c(implemen)o(tation)h(that)f (wishes)g(to)g(conform)f(to)h(the)g(LIA-1.)20 b(F)l(or)14 b(eac)o(h)g(of)f (the)h(mark)o(ed)g(items)g(a)g(suggested)0 1213 y(iden)o(ti\014er)j(is)e(pro) o(vided.)0 1298 y(The)k(LIA-1)g(data)f(t)o(yp)q(e)h Fu(B)r(ool)q(ean)g Fw(is)h(implemen)o(ted)g(in)f(the)g(PL/I)g(data)f(t)o(yp)q(e)h Fc(FIXED)k(BINARY\()p Fu(N)r(;)8 b Fw(0)p Fc(\))17 b Fw(\(1)h(=)0 1355 y Fx(true)d Fw(and)g(0)g(=)h Fx(false)p Fw(\).)0 1439 y(An)i(implemen)o(tation)i(of)e(PL/I)g(pro)o(vides)h(one)f(in)o(teger)g(data) g(t)o(yp)q(e)g Fc(FIXED)23 b(BINARY\()p Fu(N)r(;)8 b Fw(0)p Fc(\))16 b Fw(where)j Fu(N)j Fw(is)d(the)0 1496 y(maxim)o(um)f(n)o(um)o(b)q (er)h(of)e(binary)i(digits)g(that)e(the)h(implemen)o(tation)i(pro)o(vides)e (for)g(the)g Fc(FIXED)23 b(BINARY)18 b Fw(data)0 1552 y(t)o(yp)q(e,)11 b(and)g(at)f(least)g(one)h(\015oating)f(p)q(oin)o(t)h(t)o(yp)q(e)g Fc(FLOAT)23 b(BINARY\()p Fu(k)q Fc(\))10 b Fw(where)g Fu(k)i Fw(correctly)f(describ)q(es)h(the)e(precision)0 1609 y(of)15 b(some)g(underlying)i(\015oating)e(p)q(oin)o(t)h(represen)o(tation.)0 1693 y(The)f(parameters)g(for)f(an)h(in)o(teger)h(data)e(t)o(yp)q(e)i(can)f (b)q(e)h(accessed)g(b)o(y)f(the)g(follo)o(wing)h(syn)o(tax:)114 1815 y Fu(maxint)451 b Fc(MAXINT)756 b Fv(y)114 1872 y Fu(minint)458 b Fc(MININT)756 b Fv(y)114 1928 y Fu(modul)q(o)451 b Fc(MODINT)756 b Fv(y)0 2050 y Fw(The)15 b(parameter)g Fr(b)n(ounde)n(d)20 b Fw(is)15 b(alw)o(a)o(ys)g Fx(true)p Fw(,)f(and)i(need)g(not)f(b)q(e)g(pro)o (vided.)0 2135 y(The)g(parameters)f(for)h Fc(FLOAT)23 b(BINARY\()p Fu(k)q Fc(\))14 b Fw(can)h(b)q(e)g(accessed)h(b)o(y)f(the)g(follo)o(wing)h (inquiry)g(functions,)g(for)e(eac)o(h)0 2191 y Fu(k)q Fw(:)114 2314 y Fu(r)579 b Fc(radix\()p Fu(k)q Fc(\))707 b Fv(y)114 2370 y Fu(p)577 b Fc(places\()p Fu(k)q Fc(\))683 b Fv(y)114 2426 y Fu(emax)489 b Fc(maxexp\()p Fu(k)q Fc(\))683 b Fv(y)114 2483 y Fu(emin)496 b Fc(minexp\()p Fu(k)q Fc(\))683 b Fv(y)114 2539 y Fu(denor)q(m)444 b Fc(denorm\()p Fu(k)q Fc(\))683 b Fv(y)114 2596 y Fr(ie)n(c)p 173 2596 14 2 v 18 w(559)459 b Fc(iec)p 789 2596 15 2 v 16 w(559\()p Fu(k)q Fc(\))667 b Fv(y)0 2828 y Fw(84)p eop %%Page: 85 93 bop -72 1519 13 226 v -110 2481 51 13 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y Fw(The)13 b(deriv)o(ed)h(constan)o(ts)e(for)g Fc(FLOAT)23 b(BINARY\()p Fu(k)q Fc(\))11 b Fw(can)i(b)q(e)h(accessed)f(b)o(y)g(the)g (follo)o(wing)g(inquiry)h(functions)g(and)0 102 y(parameter:)114 224 y Fr(fmax)505 b Fc(fmax\()p Fu(k)q Fc(\))731 b Fv(y)114 280 y Fr(fmin)203 287 y Fp(N)714 280 y Fc(fminn\()p Fu(k)q Fc(\))707 b Fv(y)114 337 y Fr(fmin)509 b Fc(fmin\()p Fu(k)q Fc(\))731 b Fv(y)114 393 y Fu(epsil)q(on)455 b Fc(epsilon\()p Fu(k)q Fc(\))659 b Fv(y)114 449 y Fu(r)q(nd)p 190 449 14 2 v 16 w(er)q(r)q(or)403 b Fc(rnderror\()p Fu(k)q Fc(\))635 b Fv(y)114 506 y Fu(r)q(nd)p 190 506 V 16 w(sty)r(l)q(e)414 b Fc(RNDSTYLE)708 b Fv(y)0 628 y Fw(The)22 b(allo)o(w)o(ed)g(v)m(alues)h(of)e (the)g(parameter)g Fc(RNDSTYLE)g Fw(are)g(of)g(t)o(yp)q(e)h Fc(FIXED)e Fw(and)i(can)g(b)q(e)g(accessed)g(b)o(y)g(the)0 684 y(follo)o(wing)16 b(syn)o(tax:)114 806 y Fu(near)q(est)448 b Fc(NEAREST)732 b Fv(y)114 863 y Fu(tr)q(uncate)428 b Fc(TRUNCATE)708 b Fv(y)114 919 y Fu(other)494 b Fc(OTHER)780 b Fv(y)0 1041 y Fw(The)15 b(in)o(teger)h(op)q(erations)f(are)g(listed)i(b)q(elo)o(w,)e (along)g(with)h(the)f(syn)o(tax)f(used)i(to)f(in)o(v)o(ok)o(e)g(them:)114 1163 y Fu(add)186 1170 y Fp(I)714 1163 y Fu(x)23 b Fc(+)h Fu(y)114 1220 y(sub)181 1227 y Fp(I)714 1220 y Fu(x)f Fc(-)h Fu(y)114 1276 y(mul)194 1283 y Fp(I)714 1276 y Fu(x)f Fc(*)h Fu(y)114 1333 y(div)178 1316 y Fn(1)176 1346 y Fp(I)714 1333 y Fw(no)15 b(binding)114 1389 y Fu(div)178 1373 y Fn(2)176 1402 y Fp(I)714 1389 y Fu(x)23 b Fc(/)h Fu(y)114 1446 y(r)q(em)197 1429 y Fn(1)197 1459 y Fp(I)714 1446 y Fw(no)15 b(binding)114 1502 y Fu(r)q(em)197 1486 y Fn(2)197 1515 y Fp(I)714 1502 y Fc(rem\()p Fu(x;)8 b(y)r Fc(\))709 b Fv(y)114 1559 y Fu(mod)200 1542 y Fn(1)200 1571 y Fp(I)714 1559 y Fc(modulo\()p Fu(x;)8 b(y)r Fc(\))637 b Fv(y)114 1615 y Fu(mod)200 1599 y Fn(2)200 1628 y Fp(I)714 1615 y Fw(no)15 b(binding)114 1672 y Fu(neg)184 1679 y Fp(I)714 1672 y Fc(-)23 b Fu(x)114 1728 y(abs)179 1735 y Fp(I)714 1728 y Fc(abs\()p Fu(x)p Fc(\))114 1784 y Fu(sig)r(n)202 1791 y Fp(I)714 1784 y Fc(sign\()p Fu(x)p Fc(\))114 1841 y Fu(eq)155 1848 y Fp(I)714 1841 y Fu(x)g Fc(=)h Fu(y)114 1897 y(neq)182 1904 y Fp(I)714 1897 y Fu(x)f Fv(:)p Fc(=)i Fu(y)114 1954 y(l)q(ss)171 1961 y Fp(I)714 1954 y Fu(x)e Fc(<)h Fu(y)114 2010 y(l)q(eq)170 2017 y Fp(I)714 2010 y Fu(x)f Fc(<=)h Fu(y)47 b Fw(or)e Fu(x)24 b Fv(:)p Fc(>)g Fu(y)114 2067 y(g)r(tr)175 2074 y Fp(I)714 2067 y Fu(x)f Fc(>)h Fu(y)114 2123 y(g)r(eq)179 2130 y Fp(I)714 2123 y Fu(x)f Fc(>=)h Fu(y)47 b Fw(or)e Fu(x)24 b Fv(:)p Fc(<)g Fu(y)0 2245 y Fw(where)15 b Fu(x)h Fw(and)f Fu(y)i Fw(are)e(expressions)h(of) f Fc(FIXED)f Fw(t)o(yp)q(e.)114 2373 y Fq(NOTE)g({)26 b(The)13 b(PL/I)h(builtin)e Fg(mod)g Fq(function)h(di\013ers)i(from)c Fl(mod)1156 2358 y Fa(1)1156 2384 y Fj(I)1189 2373 y Fq(when)i(the)h(second)h (op)q(erand)e(is)h(zero.)k(It)114 2423 y(returns)d(zero)g(instead)f(of)f (raising)g(a)h(noti\014cation.)0 2557 y Fw(The)h(\015oating)h(p)q(oin)o(t)f (op)q(erations)h(are)e(listed)j(b)q(elo)o(w,)e(along)h(with)f(the)g(syn)o (tax)g(used)h(to)e(in)o(v)o(ok)o(e)h(them.)1905 2828 y(85)p eop %%Page: 86 94 bop 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)114 45 y Fu(add)186 52 y Fp(F)714 45 y Fu(x)23 b Fc(+)h Fu(y)114 102 y(sub)181 109 y Fp(F)714 102 y Fu(x)f Fc(-)h Fu(y)114 158 y(mul)194 165 y Fp(F)714 158 y Fu(x)f Fc(*)h Fu(y)114 214 y(div)176 221 y Fp(F)714 214 y Fu(x)f Fc(/)h Fu(y)114 271 y(neg)184 278 y Fp(F)714 271 y Fc(-)f Fu(x)114 327 y(abs)179 334 y Fp(F)714 327 y Fc(abs\()p Fu(x)p Fc(\))114 384 y Fu(sig)r(n)202 391 y Fp(F)714 384 y Fc(sign\()p Fu(x)p Fc(\))114 440 y Fu(exponent)297 447 y Fp(F)714 440 y Fc(exponent\()p Fu(x)p Fc(\))634 b Fv(y)114 497 y Fr(fr)n(action)270 508 y Fp(F)714 497 y Fc(fraction\()p Fu(x)p Fc(\))g Fv(y)114 553 y Fu(scal)q(e)215 560 y Fp(F)714 553 y Fc(scale\()p Fu(x;)8 b(n)p Fc(\))658 b Fv(y)114 610 y Fu(succ)201 617 y Fp(F)714 610 y Fc(succ\()p Fu(x)p Fc(\))730 b Fv(y)114 666 y Fu(pr)q(ed)204 673 y Fp(F)714 666 y Fc(pred\()p Fu(x)p Fc(\))g Fv(y)114 723 y Fu(ul)q(p)178 730 y Fp(F)714 723 y Fc(ulp\()p Fu(x)p Fc(\))754 b Fv(y)114 779 y Fu(tr)q(unc)225 786 y Fp(F)714 779 y Fc(truncto\()p Fu(x;)8 b(n)p Fc(\))610 b Fv(y)114 835 y Fu(r)q(ound)235 842 y Fp(F)714 835 y Fc(round\()p Fu(x;)8 b(n)p Fc(\))114 892 y Fu(intpar)q(t)258 899 y Fp(F)714 892 y Fc(trunc\()p Fu(x)p Fc(\))114 948 y Fr(fr)n(actp)n(art)286 959 y Fp(F)714 948 y Fu(x)23 b Fc(-)h(trunc\()p Fu(x)p Fc(\))114 1005 y Fu(eq)155 1012 y Fp(F)714 1005 y Fu(x)f Fc(==)h Fu(y)114 1061 y(neq)182 1068 y Fp(F)714 1061 y Fu(x)f Fv(:)p Fc(=)i Fu(y)114 1118 y(l)q(ss)171 1125 y Fp(F)714 1118 y Fu(x)e Fc(<)h Fu(y)114 1174 y(l)q(eq)170 1181 y Fp(F)714 1174 y Fu(x)f Fc(<=)h Fu(y)47 b Fw(or)e Fu(x)24 b Fv(:)p Fc(>)g Fu(y)114 1231 y(g)r(tr)175 1238 y Fp(F)714 1231 y Fu(x)f Fc(>)h Fu(y)114 1287 y(g)r(eq)179 1294 y Fp(F)714 1287 y Fu(x)f Fc(>=)h Fu(y)47 b Fw(or)e Fu(x)24 b Fv(:)p Fc(<)g Fu(y)0 1409 y Fw(where)15 b Fu(x)h Fw(and)f Fu(y)i Fw(are)e(expressions)h(of) f(t)o(yp)q(e)g Fc(FLOAT)23 b(BINARY\()p Fu(k)q Fc(\))14 b Fw(and)i Fu(n)f Fw(is)h(an)f(in)o(teger.)0 1494 y(T)o(yp)q(e)22 b(con)o(v)o(ersions)g (in)g(PL/I)h(are)e(either)i(explicit)h(through)d(con)o(v)o(ersion)h (functions,)i(or)d(implicit)j(through)0 1550 y(assignmen)o(t)19 b(statemen)o(ts.)32 b(The)20 b(explicit)h(con)o(v)o(ersion)f(op)q(eration)g (to)f(a)g(target)f(t)o(yp)q(e)i Fc(FLOAT)j(BINARY\()p Fu(k)q Fc(\))18 b Fw(is)0 1607 y(in)o(v)o(ok)o(ed)d(with)h(the)f(follo)o(wing)h(syn) o(tax:)114 1729 y Fu(cv)r(t)174 1736 y Fp(I)s Fm(!)p Fp(F)256 1729 y Fw(,)f Fu(cv)r(t)344 1736 y Fp(F)371 1727 y Fz(0)382 1736 y Fm(!)p Fp(F)714 1729 y Fc(FLOAT\()p Fu(n;)8 b(k)q Fc(\))p Fw(,)28 b Fc(FLOAT\()p Fu(x;)8 b(k)q Fc(\))0 1851 y Fw(where)15 b Fu(n)h Fw(is)g(an)f(in)o(teger)g(and)g Fu(x)h Fw(is)f(a)g(\015oating)g(p)q (oin)o(t)h(expression)g(of)f(t)o(yp)q(e)g Fc(FLOAT)23 b(BINARY\()p Fu(k)1638 1834 y Fm(0)1649 1851 y Fc(\))p Fw(.)0 1936 y(The)15 b(syn)o(tax)g(for)f(the)i(t)o(yp)q(e)f(con)o(v)o(ersion)g(op)q(eration)h(to)e Fc(FIXED)23 b(BINARY\()p Fu(N)r(;)8 b Fw(0)p Fc(\))13 b Fw(is)114 2058 y Fu(cv)r(t)174 2065 y Fp(F)5 b Fm(!)p Fp(I)714 2058 y Fc(FIXED\()p Fu(x;)j(N)r(;)g Fw(0)p Fc(\))0 2180 y Fw(where)14 b Fu(x)g Fw(is)h(a)e(\015oating)h(p)q(oin)o(t)h(expression)f(of)g(t)o(yp)q(e) g Fc(FLOAT)23 b(BINARY\()p Fu(k)q Fc(\))13 b Fw(and)h Fu(N)19 b Fw(is)14 b(the)g(maxim)o(um)g(n)o(um)o(b)q(er)g(of)0 2236 y(binary)d(digits)g(that)f(the)g(implemen)o(tation)i(pro)o(vides)f(for)f(the) g Fc(FIXED)23 b(BINARY)10 b Fw(data)g(t)o(yp)q(e.)18 b(An)11 b(implemen)o(tation)0 2293 y(that)i(wishes)h(to)e(conform)h(to)f(the)i(LIA-1) g(m)o(ust)f(use)g(round)h(to)e(nearest)h(for)g(the)g(con)o(v)o(ersions)h(to)e (\015oating)h(p)q(oin)o(t)0 2349 y(t)o(yp)q(es.)0 2434 y(The)e (noti\014cation)h(metho)q(d)g(required)g(b)o(y)f(PL/I)h(is)g(through)f (alteration)g(of)g(con)o(trol)g(\015o)o(w.)18 b(A)11 b(condition)i(is)e (raised)0 2490 y(whic)o(h)17 b(leads)g(to)f(in)o(v)o(o)q(cation)g(of)g(an)g (in)o(terrupt)h(op)q(eration)f(through)g(an)h Fc(ON)p Fw(-unit.)23 b(The)17 b(conditions)g(raised)g(b)o(y)0 2547 y(PL/I)d(include)i(some)e (re\014nemen)o(ts)g(of)f(the)h(exceptional)h(v)m(alues)g(returned)f(b)o(y)g (LIA-1.)20 b(The)14 b(follo)o(wing)g(lists)h(the)0 2603 y(PL/I)h(conditions)g (along)f(with)h(the)f(corresp)q(onding)h(LIA-1)g(exceptional)h(v)m(alues.)0 2828 y(86)p eop %%Page: 87 95 bop 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)114 45 y Fr(PL/I)d(c)n(ondition)301 b(LIA-1)15 b(value)114 102 y Fc(FIXEDOVERFLOW)288 b Fx(in)o(teger)p 875 102 16 2 v 18 w(o)o(v)o(er\015o)o(w)114 158 y Fc(SIZE)504 b Fx(in)o(teger)p 875 158 V 18 w(o)o(v)o(er\015o)o(w)114 214 y Fc(OVERFLOW)408 b Fx(\015oating)p 887 214 V 21 w(o)o(v)o(er\015o)o(w)114 271 y Fc(UNDERFLOW)384 b Fx(under\015o)o(w)114 327 y Fc(ZERODIVIDE)360 b Fx(unde\014ned)114 384 y Fc(UNDEFINED)384 b Fx(unde\014ned)678 b Fv(y)0 506 y Fw(An)22 b(implemen)o(tation)h(that)e(wishes)i(to)e(conform)h (to)f(the)h(LIA-1)g(m)o(ust)g(raise)g(the)g(appropriate)g(condition)0 562 y(whenev)o(er)17 b(an)g(LIA-1)h(exceptional)g(v)m(alue)g(w)o(ould)g (result.)25 b(The)17 b Fc(SIZE)g Fw(condition)h(is)f(raised)h(only)f(in)h (the)f(case)0 619 y(of)h(o)o(v)o(er\015o)o(w)f(on)i(con)o(v)o(ersion)g(to)f (an)g(in)o(teger)h(t)o(yp)q(e;)h(otherwise)f Fc(FIXEDOVERFLOW)d Fw(is)j(raised.)31 b(The)19 b(condition)0 675 y Fc(ZERODIVIDE)12 b Fw(is)i(raised)g(in)g(the)f(case)h(of)f(division)i(b)o(y)e(zero.)20 b(All)14 b(other)f(cases)h(in)g(whic)o(h)g(the)f(LIA-1)i(exceptional)0 732 y(v)m(alue)i Fx(unde\014ned)f Fw(is)g(returned)h(shall)g(raise)f(the)g (condition)h Fc(UNDEFINED)p Fw(.)d(An)i(implemen)o(tation)h(that)e(wishes)0 788 y(to)20 b(conform)h(to)f(the)h(LIA-1)h(m)o(ust)f(pro)o(vide)g(a)g (default)g Fc(ON)p Fw(-unit)h(whic)o(h)g(terminates)f(the)g(program)f(with)h (a)0 845 y(message,)14 b(if)i(no)f Fc(ON)p Fw(-unit)h(for)f(the)g(condition)h (has)f(b)q(een)i(supplied)g(b)o(y)e(the)h(programmer.)0 929 y(In)h(addition,)h(an)e(implemen)o(tation)i(that)d(wishes)j(to)d(conform)h (to)g(the)h(LIA-1)g(shall)g(pro)o(vide)g(the)g(alternativ)o(e)0 986 y(of)e(noti\014cation)h(through)f(termination)g(with)h(a)f(message)f(as)h (describ)q(ed)i(in)f(6.1.3.)1905 2828 y(87)p eop %%Page: 88 96 bop -72 2303 13 89 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)844 45 y FC(Annex)23 b(F)803 120 y Ff(\(informativ)n(e\))434 269 y FC(Example)e(of)j(a)f (conformit)n(y)f(statemen)n(t)0 455 y Fw(This)d(annex)f(presen)o(ts)g(an)g (example)h(of)f(a)f(conformit)o(y)h(statemen)o(t)f(for)g(a)h(h)o(yp)q (othetical)h(implemen)o(tation)g(of)0 512 y(F)l(ortran.)29 b(The)19 b(underlying)h(hardw)o(are)e(is)h(assumed)g(to)f(pro)o(vide)h (32-bit)g(t)o(w)o(o's)d(complemen)o(t)k(in)o(tegers,)f(and)0 568 y(32-)h(and)g(64-bit)g(\015oating)g(p)q(oin)o(t)g(n)o(um)o(b)q(ers.)34 b(The)21 b(hardw)o(are)e(\015oating)h(p)q(oin)o(t)g(conforms)f(to)h(the)g (IEEE)g(754)0 625 y(standard.)0 709 y(The)15 b(sample)h(conformit)o(y)f (statemen)o(t)f(follo)o(ws.)p 0 766 1950 2 v 0 850 a(This)21 b(implemen)o(tation)g(of)f(F)l(ortran)e(conforms)i(to)f(ISO/IEC)i(1539:1991)d Fr(Information)i(te)n(chnolo)n(gy)g({)h(Pr)n(o-)0 907 y(gr)n(amming)i (languages)f({)h(F)o(OR)m(TRAN,)e(Se)n(c)n(ond)h(Edition)p Fw(,)h([3].)41 b(It)22 b(conforms)g(to)g(IEC)h(559:1989,)e Fr(Binary)0 963 y(\015o)n(ating-p)n(oint)14 b(arithmetic)i(for)f(micr)n(opr)n (o)n(c)n(essor)f(systems)f Fw([1)o(].)19 b(It)14 b(also)g(conforms)f(to)g (ISO/IEC)i(10967-1:1993)0 1020 y Fr(L)n(anguage)h(indep)n(endent)f (arithmetic)j({)f(Part:)22 b(1)17 b(Inte)n(ger)e(and)i(\015o)n(ating)f(p)n (oint)g(arithmetic)h Fw(\(LIA-1\),)e(and)h(the)0 1076 y(suggested)f(F)l (ortran)f(binding)j(standard)e(in)h(E.6.)0 1161 y(Only)22 b(implemen)o (tation)h(dep)q(enden)o(t)f(information)f(is)h(directly)h(pro)o(vided)e (here.)38 b(The)22 b(information)f(in)h(the)0 1217 y(suggested)14 b(language)g(binding)i(standard)d(for)h(F)l(ortran)e(\(see)i(E.6\))f(is)i (pro)o(vided)f(b)o(y)g(reference.)20 b(In)15 b(conjunction)0 1274 y(these)g(t)o(w)o(o)f(items)i(satisfy)f(the)g(LIA-1)h(do)q(cumen)o (tation)f(requiremen)o(t.)0 1424 y FB(F.1)56 b(T)n(yp)r(es)0 1538 y Fw(There)21 b(is)f(one)h(in)o(teger)f(t)o(yp)q(e,)i(called)f Fc(INTEGER)p Fw(.)e(There)i(are)f(t)o(w)o(o)f(\015oating)h(p)q(oin)o(t)h(t)o (yp)q(es,)g(called)h Fc(REAL)e Fw(and)0 1594 y Fc(DOUBLE)14 b(PRECISION)p Fw(.)0 1744 y FB(F.2)56 b(In)n(teger)18 b(parameters)0 1858 y Fw(The)d(follo)o(wing)h(table)g(giv)o(es)g(the)f(parameters)f(for)h Fc(INTEGER)p Fw(,)f(the)h(names)g(of)g(the)h(in)o(trinsic)g(inquiry)h (functions)0 1915 y(with)f(whic)o(h)g(they)f(can)g(b)q(e)h(accessed)g(at)e (run-time,)i(and)f(their)h(v)m(alues.)p 564 1995 823 2 v 563 2051 2 57 v 737 2034 a(P)o(arameters)e(for)g Fc(INTEGER)p 1386 2051 V 564 2053 823 2 v 563 2110 2 57 v 589 2093 a Fr(p)n(ar)n(ameters)p 829 2110 V 49 w(inquiry)j(function)p 1197 2110 V 58 w(values)p 1386 2110 V 564 2111 823 2 v 563 2168 2 57 v 622 2151 a Fu(maxint)p 829 2168 V 158 w Fc(HUGE\()p Fu(x)p Fc(\))p 1197 2168 V 124 w Fw(2)1246 2134 y Fn(31)1293 2151 y Fv(\000)11 b Fw(1)p 1386 2168 V 563 2224 V 625 2207 a Fu(minint)p 829 2224 V 138 w Fc(MININT\()p Fu(x)p Fc(\))p 1197 2224 V 122 w Fv(\000)p Fw(2)1303 2191 y Fn(31)p 1386 2224 V 563 2281 V 623 2264 a Fu(modul)q(o)p 829 2281 V 133 w Fc(MODINT\()p Fu(x)p Fc(\))p 1197 2281 V 119 w Fx(false)p 1386 2281 V 564 2282 823 2 v 0 2408 a Fw(where)k Fu(x)h Fw(is)f(an)g(expression)h(of)f(t)o(yp)q(e)h Fc(INTEGER)p Fw(.)0 2828 y(88)p eop %%Page: 89 97 bop -72 774 13 89 v -72 1634 V -72 2499 13 57 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y FB(F.3)56 b(Floating)20 b(p)r(oin)n(t)f(parameters)0 159 y Fw(The)12 b(follo)o(wing)g(table)h(giv)o(es)f(the)f(parameters)g(for)g Fc(REAL)h Fw(and)g Fc(DOUBLE)e(PRECISION)p Fw(,)h(the)g(names)h(of)f(the)h (in)o(trinsic)0 216 y(inquiry)17 b(functions)f(with)f(whic)o(h)h(they)g(can)f (b)q(e)h(accessed)g(at)e(run-time,)i(and)f(their)h(v)m(alues.)p 476 296 999 2 v 475 352 2 57 v 676 335 a(P)o(arameters)e(for)h(Floating)g(P)o (oin)o(t)p 1473 352 V 476 354 999 2 v 475 410 2 57 v 501 393 a Fr(p)n(ar)n(ameters)p 741 410 V 58 w(inquiry)i(function)p 1127 410 V 66 w Fc(REAL)p 1280 410 V 49 w(DOUBLE)p 1473 410 V 476 412 999 2 v 475 469 2 57 v 598 452 a Fu(r)p 741 469 V 219 w Fc(RADIX\()p Fu(x)p Fc(\))p 1127 469 V 201 w Fw(2)p 1280 469 V 170 w(2)p 1473 469 V 475 525 V 597 508 a Fu(p)p 741 525 V 206 w Fc(DIGITS\()p Fu(x)p Fc(\))p 1127 525 V 167 w Fw(24)p 1280 525 V 147 w(53)p 1473 525 V 475 581 V 553 564 a Fu(emax)p 741 581 V 103 w Fc(MAXEXPONENT\()p Fu(x)p Fc(\))p 1127 581 V 83 w Fw(128)p 1280 581 V 101 w(1024)p 1473 581 V 475 638 V 557 621 a Fu(emin)p 741 638 V 106 w Fc(MINEXPONENT\()p Fu(x)p Fc(\))p 1127 638 V 48 w Fv(\000)p Fw(125)p 1280 638 V 66 w Fv(\000)p Fw(1021)p 1473 638 V 475 694 V 531 677 a Fu(denor)q(m)p 741 694 V 139 w Fc(DENORM\()p Fu(x)p Fc(\))p 1127 694 V 117 w Fx(true)p 1280 694 V 98 w(true)p 1473 694 V 475 751 V 535 734 a Fr(ie)n(c)p 594 734 14 2 v 18 w(559)p 741 751 2 57 v 142 w Fc(IEC)p 893 734 15 2 v 17 w(559\()p Fu(x)p Fc(\))p 1127 751 2 57 v 108 w Fx(true)p 1280 751 V 98 w(true)p 1473 751 V 476 752 999 2 v 0 879 a Fw(where)e Fu(x)h Fw(is)f(an)g(expression)h(of)f (the)h(appropriate)f(\015oating)g(p)q(oin)o(t)h(t)o(yp)q(e.)0 963 y(The)e(third)f(table)h(giv)o(es)g(the)f(deriv)o(ed)h(constan)o(ts,)f (the)g(names)g(of)g(the)h(in)o(trinsic)h(inquiry)f(functions)g(with)g(whic)o (h)0 1020 y(they)i(can)g(b)q(e)h(accessed)g(at)e(run-time,)i(and)g(the)f (\(appro)o(ximate\))f(v)m(alues)i(for)f Fc(REAL)f Fw(and)h Fc(DOUBLE)g(PRECISION)p Fw(.)0 1076 y(The)f(inquiry)i(functions)f(return)f (exact)g(v)m(alues)i(for)d(the)h(deriv)o(ed)i(constan)o(ts.)p 238 1156 1474 2 v 237 1213 2 57 v 798 1196 a(Deriv)o(ed)e(constan)o(ts)p 1711 1213 V 238 1215 1474 2 v 237 1271 2 57 v 270 1254 a Fr(c)n(onstants)p 485 1271 V 56 w(inquiry)h(function)p 854 1271 V 180 w Fc(REAL)p 1259 1271 V 308 w(DOUBLE)p 1711 1271 V 238 1273 1474 2 v 237 1329 2 57 v 312 1312 a Fr(fmax)p 485 1329 V 179 w Fc(HUGE\()p Fu(x)p Fc(\))p 854 1329 V 123 w Fw(3.402823466)c(e+38)p 1259 1329 V 50 w(1.7976931349)g(e+308)p 1711 1329 V 237 1386 V 300 1369 a Fr(fmin)390 1376 y Fp(N)p 485 1386 V 586 1369 a Fc(TINY\()p Fu(x)p Fc(\))p 854 1386 V 123 w Fw(1.175494351)g(e)p Fv(\000)p Fw(38)p 1259 1386 V 50 w(2.2250738585)g(e)p Fv(\000)p Fw(308)p 1711 1386 V 237 1442 V 315 1425 a Fr(fmin)p 485 1442 V 144 w Fc(TINIEST\()p Fu(x)p Fc(\))p 854 1442 V 87 w Fw(1.401298464)g(e)p Fv(\000)p Fw(45)p 1259 1442 V 50 w(4.9406564584)g(e)p Fv(\000)p Fw(324)p 1711 1442 V 237 1499 V 290 1482 a Fu(epsil)q(on)p 485 1499 V 115 w Fc(EPSILON\()p Fu(x)p Fc(\))p 854 1499 V 87 w Fw(1.192092896)g(e)p Fv(\000)p Fw(07)p 1259 1499 V 50 w(2.2204460493)g(e)p Fv(\000)p Fw(016)p 1711 1499 V 237 1555 V 263 1538 a Fu(r)q(nd)p 339 1538 14 2 v 16 w(er)q(r)q(or)p 485 1555 2 57 v 69 w Fc(RND)p 604 1538 15 2 v 17 w(ERROR\()p Fu(x)p Fc(\))p 854 1555 2 57 v 216 w Fw(0.5)p 1259 1555 V 370 w(0.5)p 1711 1555 V 237 1611 V 269 1594 a Fu(r)q(nd)p 345 1594 14 2 v 16 w(sty)r(l)q(e)p 485 1611 2 57 v 111 w Fc(RND)p 641 1594 15 2 v 17 w(STYLE)p 854 1611 2 57 v 154 w(RND)p 1004 1594 15 2 v 17 w(NEAREST)p 1259 1611 2 57 v 172 w(RND)p 1433 1594 15 2 v 17 w(NEAREST)p 1711 1611 2 57 v 238 1613 1474 2 v 0 1739 a Fw(where)j Fu(x)h Fw(is)f(an)g(expression)h(of)f(t)o(yp)q(e)h Fc(REAL)e Fw(or)h Fc(DOUBLE)f(PRECISION)p Fw(.)0 1889 y FB(F.4)56 b(De\014nitions)0 2003 y Fw(The)15 b(appro)o(ximate)g(addition)h(function)h(is)e(de\014ned)i (to)d(b)q(e)i(true)f(addition:)114 2125 y Fu(add)186 2109 y Fm(\003)186 2138 y Fp(F)214 2125 y Fw(\()p Fu(x;)8 b(y)r Fw(\))j(=)i Fu(x)d Fw(+)h Fu(y)0 2247 y Fw(The)i(rounding)h(function)g Fu(r)q(nd)530 2254 y Fp(F)572 2247 y Fw(is)g(one)f(of)f(the)h(four)g (rounding)h(functions)g(de\014ned)g(in)g(IEEE)f(754-1985)e(\(clause)0 2304 y(4\))i(only)i(t)o(w)o(o)e(of)g(whic)o(h)i(conform)f(to)f(LIA-1.)20 b(In)15 b(this)g(implemen)o(tation)g(of)f(F)l(ortran,)e(the)i(programmer)f (selects)0 2360 y(among)h(the)i(rounding)g(functions)g(b)o(y)f(using)h(a)f (compiler)h(directiv)o(e,)g(a)f(commen)o(t)g(line)i(of)d(the)i(form)114 2482 y Fc(!LIA$)47 b Fr(dir)n(e)n(ctive)0 2604 y Fw(The)15 b(relev)m(an)o(t)h(directiv)o(es)h(\(and)e(the)g(rounding)h(functions)g(they) f(select\))h(are)1905 2828 y(89)p eop %%Page: 90 98 bop -72 231 13 226 v -72 1703 13 113 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)114 45 y Fc(!LIA$)47 b(SELECT)23 b(ROUND)g(TO)g(NEAREST)334 b Fw(\(default\))114 102 y Fc(!LIA$)47 b(SELECT)23 b(ROUND)g(TO)g(ZERO)114 158 y(!LIA$)47 b(SELECT)23 b(ROUND)g(TO)g(PLUS)h(INFINITY)190 b Fw(\(do)q(es)15 b(not)g(confrom)f(to)h(LIA-1\))114 214 y Fc(!LIA$)47 b(SELECT)23 b(ROUND)g(TO)g(MINUS)h(INFINITY)166 b Fw(\(do)q(es)15 b(not)g(confrom)f(to)h(LIA-1\))0 320 y(These)20 b(compiler)h(directiv)o(es)g(a\013ect)e(all)i(\015oating)f(p)q(oin)o(t)g(op)q (erations)g(that)f(o)q(ccur)h(\(textually\))g(b)q(et)o(w)o(een)g(the)0 376 y(directiv)o(e)d(itself)f(and)g(the)g(end)g(of)f(the)g(smallest)i (enclosing)g(blo)q(c)o(k)f(or)f(scoping)h(unit,)g(unless)h(sup)q(erseded)g(b) o(y)e(a)0 433 y(subsequen)o(t)h(directiv)o(e.)0 517 y(The)j(ab)q(o)o(v)o(e)g (directiv)o(es)i(select)f(the)f(rounding)h(function)g(for)f(b)q(oth)g Fc(REAL)g Fw(and)g Fc(DOUBLE)f(PRECISION)p Fw(.)g(In)i(the)0 574 y(absence)h(of)f(an)g(applicable)j(directiv)o(e,)g(the)d(default)h(is)g (round)g(to)f(nearest.)35 b(The)20 b(round)h(to)f(nearest)g(st)o(yle)0 630 y(rounds)15 b(halfw)o(a)o(y)g(cases)g(suc)o(h)h(that)e(the)h(last)h(bit)f (of)g(the)g(fraction)g(is)h(0.)0 715 y(The)21 b(result)g(function)g Fu(r)q(esul)q(t)535 722 y Fp(F)585 715 y Fw(is)g(de\014ned)g(to)f(use)h(the)g (selected)g(rounding)h(function)f Fu(r)q(nd)1654 722 y Fp(F)1683 715 y Fw(.)35 b(The)21 b(c)o(hoice)0 771 y(b)q(et)o(w)o(een)e Fu(r)q(nd)252 778 y Fp(F)281 771 y Fw(\()p Fu(x)p Fw(\))f(and)h Fx(under\015o)o(w)e Fw(for)h(the)h(denormalized)h(range)e(is)h(made)g(in)g (accordance)g(with)g(clause)0 828 y(7.4)13 b(of)h(the)h(IEEE)f(754)f (standard.)20 b(In)14 b(IEEE)h(terms,)e(this)i(implemen)o(tation)h(c)o(ho)q (oses)e(to)g(detect)g(tininess)i(after)0 884 y(rounding,)g(and)f(loss)g(of)g (accuracy)g(as)g(an)g(inexact)h(result.)0 1031 y FB(F.5)56 b(Expressions)0 1145 y Fw(Expressions)19 b(that)e(con)o(tain)i(more)f(than)g (one)g(LIA-1)h(arithmetic)g(op)q(eration)g(or)f(that)f(con)o(tain)i(op)q (erands)f(of)0 1202 y(mixed)e(precisions)h(or)d(t)o(yp)q(es)i(are)f(ev)m (aluated)h(strictly)g(according)f(to)g(the)g(rules)h(of)f(F)l(ortran.)0 1348 y FB(F.6)56 b(Noti\014cation)0 1462 y Fw(Noti\014cations)19 b(are)e(raised)i(under)g(all)g(circumstances)g(sp)q(eci\014ed)h(b)o(y)e(the)g (LIA-1.)29 b(The)18 b(programmer)f(selects)0 1519 y(the)e(metho)q(d)h(of)e (noti\014cation)i(b)o(y)f(using)h(a)f(compiler)i(directiv)o(e.)k(The)15 b(relev)m(an)o(t)h(directiv)o(es)h(are:)114 1630 y Fc(!LIA$)47 b(NOTIFICATION=RECORDING)355 b Fw(\(default\))114 1686 y Fc(!LIA$)47 b(NOTIFICATION=TERMINATE)0 1797 y Fw(If)16 b(an)f(exception)i(o)q(ccurs)e (when)h(termination)g(is)g(the)g(noti\014cation)g(metho)q(d,)f(execution)h (of)f(the)h(program)e(will)0 1854 y(b)q(e)i(stopp)q(ed)g(and)f(a)g (termination)g(message)g(written)g(on)h(the)f(standard)g(error)f(output.)0 1938 y(If)g(an)f(exception)i(o)q(ccurs)e(when)h(recording)g(of)f(indicators)h (is)g(the)g(selected)g(metho)q(d)g(of)f(noti\014cation,)h(the)g(v)m(alue)0 1995 y(sp)q(eci\014ed)21 b(b)o(y)e(IEEE)g(754)g([1)o(])g(is)g(used)h(as)e (the)h(v)m(alue)i(of)d(the)h(op)q(eration)h(and)f(execution)h(con)o(tin)o (ues.)32 b(If)19 b(an)o(y)0 2051 y(indicator)g(remains)f(set)g(when)h (execution)g(of)e(the)h(program)f(is)i(complete,)g(a)f(termination)g(message) g(will)h(b)q(e)0 2108 y(written)c(on)g(the)h(standard)e(error)h(output.)0 2192 y(A)g(termination)h(message)f(pro)o(vides)g(the)h(follo)o(wing)f (information:)51 2298 y(a\))22 b(name)c(of)g(the)g(exceptional)i(v)m(alue)g (\()p Fx(in)o(teger)p 916 2298 16 2 v 18 w(o)o(v)o(er\015o)o(w)p Fw(,)d Fx(\015oating)p 1323 2298 V 20 w(o)o(v)o(er\015o)o(w)p Fw(,)g Fx(under\015o)o(w)p Fw(,)h(or)f Fx(un-)114 2354 y(de\014ned)p Fw(\),)48 2441 y(b\))23 b(kind)16 b(of)f(op)q(eration)g(whose)g(execution)h (caused)g(the)f(noti\014cation,)53 2528 y(c\))23 b(v)m(alues)16 b(of)f(the)g(argumen)o(ts)f(to)h(that)f(op)q(eration,)h(and)48 2615 y(d\))23 b(p)q(oin)o(t)14 b(in)g(the)g(program)f(where)h(the)g(failing)h (op)q(eration)f(w)o(as)f(in)o(v)o(ok)o(ed)h(\(i.e.)19 b(the)14 b(name)g(of)f(the)h(source)g(\014le)114 2672 y(and)h(the)g(line)i(n)o(um)o(b) q(er)f(within)g(the)f(source)h(\014le\).)0 2828 y(90)p eop %%Page: 91 99 bop -72 2820 13 2856 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)838 45 y FC(Annex)24 b(G)803 120 y Ff(\(informativ)n(e\))682 269 y FC(Example)e(programs)0 455 y Fw(This)c(annex)g(presen)o(ts)g(a)f(few)h (examples)h(of)e(ho)o(w)g(v)m(arious)h(LIA-1)h(features)e(migh)o(t)h(b)q(e)g (used.)28 b(The)18 b(program)0 512 y(fragmen)o(ts)d(giv)o(en)i(here)g(are)f (all)h(written)f(in)i(F)l(ortran,)d(C,)g(or)h(Ada,)h(and)f(assume)g(the)h (bindings)h(suggested)e(in)0 568 y(E.6,)e(E.4,)g(or)h(E.2.)0 718 y FB(G.1)56 b(V)-5 b(erifying)19 b(platform)h(acceptabilit)n(y)0 832 y Fw(A)15 b(n)o(umeric)g(program)e(ma)o(y)h(not)g(b)q(e)h(able)g(to)f (function)i(if)e(the)h(\015oating)f(p)q(oin)o(t)h(t)o(yp)q(e)g(a)o(v)m (ailable)h(has)e(insu\016cien)o(t)0 889 y(accuracy)h(or)g(range.)k(Other)d (programs)e(ma)o(y)g(ha)o(v)o(e)h(other)g(constrain)o(ts.)0 973 y(Whenev)o(er)e(the)g(c)o(haracteristics)g(of)g(the)g(arithmetic)g(are)g (crucial)h(to)e(a)h(program,)f(that)g(program)g(should)i(c)o(hec)o(k)0 1030 y(those)h(c)o(haracteristics)g(early)h(on.)0 1114 y(Assume)f(that)f(an)h (algorithm)g(needs)h(a)f(represen)o(tation)g(precision)h(of)f(at)f(least)h(1) g(part)f(in)i(a)e(million.)22 b(Suc)o(h)16 b(an)0 1171 y(algorithm)f(should)h (b)q(e)g(protected)f(\(in)h(F)l(ortran\))e(b)o(y)114 1293 y Fc(if)23 b(\(1/EPSILON\(x\))f(<)i(1.0e6\))f(then)209 1349 y(print)g(\(3,)h ('This)f(platform)g(has)g(insufficient)f(precision.'\))209 1406 y(stop)209 1462 y(end)i(if)0 1584 y Fw(A)15 b(range)g(test)g(migh)o(t)g (lo)q(ok)g(lik)o(e)114 1706 y Fc(if)23 b(\(\(HUGE\(x\))g(<)h(1.0e30\))e(.or.) i(\(TINY\(x\))f(>)g(1.0e-10\)\))g(...)0 1828 y Fw(A)15 b(c)o(hec)o(k)h(for) 246 1810 y Fn(1)p 246 1817 18 2 v 246 1844 a(2)269 1828 y Fw(-ulp)g(rounding) g(w)o(ould)g(b)q(e)114 1950 y Fc(if)23 b(\(RND)p 284 1950 15 2 v 17 w(ERROR\(x\))g(/=)g(0.5\))h(...)0 2072 y Fw(A)15 b(program)f(that)h (only)h(ran)e(on)i(IEC)f(559)f(platforms)h(w)o(ould)h(test)114 2195 y Fc(if)23 b(\(.not.)g(IEC)p 427 2195 V 17 w(559\(x\)\))g(...)0 2344 y FB(G.2)56 b(Selecting)19 b(alternate)f(co)r(de)0 2459 y Fw(Sometimes)e(the)f(abilit)o(y)i(to)d(con)o(trol)h(rounding)h(b)q(eha)o (vior)g(is)g(v)o(ery)f(useful.)21 b(This)16 b(abilit)o(y)h(is)e(pro)o(vided)i (b)o(y)e(IEC)0 2515 y(559)f(platforms.)20 b(An)15 b(example)h(\(in)g(C\))f (is)1905 2828 y(91)p eop %%Page: 92 100 bop -72 2820 13 2820 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)114 45 y Fc(if)23 b(\(FLT)p 284 45 15 2 v 17 w(IEC)p 373 45 V 17 w(559\))g Fv(f)209 102 y Fc(fesetround)g(\(FE)p 547 102 V 16 w(UPWARD\);)209 158 y Fr(...)e(c)n(alculate)16 b(using)f(r)n(ound)i(towar)n(d)g(plus)f (in\014nity)f(...)209 214 y Fc(fesetround)23 b(\(FE)p 547 214 V 16 w(DOWNWARD\);)209 271 y Fr(...)e(c)n(alculate)16 b(using)f(r)n(ound)i (towar)n(d)g(minus)f(in\014nity)f(...)209 327 y Fc(fesetround)23 b(\(FE)p 547 327 V 16 w(NEAREST\);)209 384 y Fr(...)e(c)n(ombine)15 b(the)i(r)n(esults)e(...)209 440 y Fv(g)114 497 y Fc(else)23 b Fv(f)209 553 y Fr(...)e(p)n(erform)c(mor)n(e)f(c)n(ostly)f(\(or)i(less)e (ac)n(cur)n(ate\))h(c)n(alculations)f(...)209 610 y Fv(g)0 760 y FB(G.3)56 b(T)-5 b(erminating)19 b(a)g(lo)r(op)0 874 y Fw(Here's)d(an)g(example)h(of)f(an)g(iterativ)o(e)h(appro)o(ximation)f (algorithm.)23 b(W)l(e)16 b(c)o(ho)q(ose)h(to)e(terminate)h(the)h(iteration)0 930 y(when)f(t)o(w)o(o)e(successiv)o(e)i(appro)o(ximations)f(are)g(within)h (N)g(ulps)g(of)f(one)g(another.)k(In)d(Ada,)f(this)h(is)114 1052 y Fc(approx,)23 b(prev)p 404 1052 V 16 w(approx:)g(float;)114 1165 y(prev)p 213 1165 V 16 w(approx)g(=)h(first)p 564 1165 V 17 w(guess)f(\()p Fr(input)p Fc(\);)114 1221 y(approx)g(=)g(next)p 427 1221 V 17 w(guess)g(\()p Fr(input)p Fc(,)h(prev)p 857 1221 V 17 w(approx\);)114 1278 y(while)f(abs\(approx)f(-)i(prev)p 666 1278 V 17 w(approx\))f(>)g(N)h(*)g(LIA1.unit)p 1233 1278 V 16 w(last)p 1345 1278 V 16 w(place\(approx\))e(loop)209 1334 y(prev)p 308 1334 V 17 w(approx)h(=)g(approx;)209 1391 y(approx)g(=)h(next)p 523 1391 V 16 w(guess)g(\()p Fr(input)p Fc(,)f(prev)p 952 1391 V 17 w(approx\);)209 1447 y(end)h(loop;)0 1569 y Fw(This)16 b(example)g(ignores)f(exceptions)h(and)g(the)f(p)q(ossibilit)o(y)j(of)c (non-con)o(v)o(ergence.)0 1719 y FB(G.4)56 b(F)-5 b(ast)19 b(v)n(ersus)g(accurate)0 1833 y Fw(Consider)14 b(a)g(problem)h(whic)o(h)f (has)g(t)o(w)o(o)f(solutions.)20 b(The)14 b(\014rst)f(solution)i(is)f(a)g (fast)f(algorithm)h(that)f(w)o(orks)g(most)0 1890 y(of)20 b(the)g(time.)36 b(Ho)o(w)o(ev)o(er,)21 b(it)f(o)q(ccasionally)i(giv)o(es)f(incorrect)g(answ)o (ers)e(b)q(ecause)j(of)e(in)o(ternal)h(\015oating)f(p)q(oin)o(t)0 1946 y(o)o(v)o(er\015o)o(ws.)f(The)c(second)h(is)f(completely)i(reliable,)g (but)e(is)h(kno)o(wn)f(to)f(b)q(e)i(a)f(lot)g(slo)o(w)o(er.)0 2031 y(The)g(follo)o(wing)h(F)l(ortran)e(co)q(de)i(tries)f(the)g(fast)g (solution)g(\014rst,)g(and,)g(if)g(that)g(fails,)g(uses)h(the)f(slo)o(w)g (but)g(reliable)0 2087 y(one.)114 2209 y Fc(clr)p 189 2209 V 16 w(indicators)23 b(\(FLT)p 564 2209 V 17 w(OVERFLOW\))114 2266 y(result)g(=)g(FAST)p 427 2266 V 17 w(SOLUTION)g(\()p Fr(input)p Fc(\))114 2322 y(if)g(\(test)p 308 2322 V 17 w(indicators)f(\(FLT) p 683 2322 V 17 w(OVERFLOW\)\))g(then)209 2379 y(result)h(=)h(RELIABLE)p 619 2379 V 16 w(SOLUTION)f(\()p Fr(input)p Fc(\))209 2435 y(end)h(if)0 2557 y Fw(Demmel)16 b(and)f(Li)h(discuss)h(a)d(n)o(um)o(b)q(er)i(of)f (similar)h(algorithms)f(in)h([28)o(].)0 2828 y(92)p eop %%Page: 93 101 bop -72 2820 13 2820 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y FB(G.5)56 b(High-precision)19 b(m)n(ultiply)0 159 y Fw(In)c(general,)f(the)h (exact)e(pro)q(duct)i(of)f(t)o(w)o(o)f Fu(p)p Fw(-digit)i(n)o(um)o(b)q(ers)f (requires)h(ab)q(out)f(2)p Fu(p)g Fw(digits)h(to)e(represen)o(t.)20 b(V)l(arious)0 216 y(algorithms)11 b(are)g(designed)i(to)e(use)h(suc)o(h)g (an)f(exact)g(pro)q(duct)h(represen)o(ted)g(as)f(the)g(sum)h(of)f(t)o(w)o(o)f Fu(p)p Fw(-digit)i(n)o(um)o(b)q(ers.)0 272 y(That)j(is,)g(giv)o(en)h Fu(X)i Fw(and)d Fu(Y)c Fw(,)k(compute)g Fu(U)20 b Fw(and)c Fu(V)24 b Fw(suc)o(h)16 b(that)114 394 y Fc(U)23 b(+)h(V)g(=)g(X)f(*)h(Y)0 516 y Fw(using)16 b(only)g Fu(p)p Fw(-digit)g(op)q(erations.)0 601 y(Sorenson)f(and)h(T)l(ang)f([35)o(])f(presen)o(t)i(an)f(algorithm)g (that)f(starts)g(out)h(\(in)h(C\))114 723 y Fc(X1)23 b(=)h(\(double\))f (\(float\))g(X)g(;)114 779 y(X2)g(=)h(X)g(-)f(X1;)114 892 y(Y1)g(=)h (\(double\))f(\(float\))g(Y;)114 949 y(Y2)g(=)h(Y)g(-)f(Y1;)114 1062 y(A1)g(=)h(X1*Y1;)114 1118 y(A2)f(=)h(X1*Y2;)114 1174 y(A3)f(=)h(X2*Y1;)114 1231 y(A4)f(=)h(X2*Y2;)0 1353 y Fw(where)13 b(all)g(v)m(alues)h(and)f(op)q(erations)f(are)g(in)i(double)g(precision.)20 b(The)13 b(con)o(v)o(ersion)g(to)e(single)j(precision)g(and)f(bac)o(k)0 1409 y(to)k(double)h(is)g(in)o(tended)h(to)e(c)o(hop)g Fu(X)k Fw(and)d Fu(Y)27 b Fw(roughly)18 b(in)g(half.)27 b(Unfortunately)l(,)18 b(this)g(do)q(esn't)f(alw)o(a)o(ys)g(w)o(ork)0 1466 y(exactly)l(,)e(and)h (the)f(calculation)i(of)e(one)g(or)g(more)f(of)h(the)g Fu(A)p Fw(s)h(is)f(inexact.)0 1551 y(Using)d(LIA-1's)f Fu(r)q(ound)403 1558 y Fp(F)444 1551 y Fw(op)q(eration,)g(w)o(e)g(can)h(mak)o(e)f(all)h (these)f(calculations)i(exact.)18 b(This)12 b(is)g(done)f(b)o(y)h(replacing)0 1607 y(the)j(\014rst)g(four)g(lines)i(with)114 1729 y Fc(X1)23 b(=)h(round)f(\(X,)h(DBL)p 547 1729 15 2 v 16 w(MANT)p 659 1729 V 17 w(DIG/2\);)114 1786 y(X2)f(=)h(X)g(-)f(X1;)114 1898 y(Y1)g(=)h(round)f(\(X,)h(DBL)p 547 1898 V 16 w(MANT)p 659 1898 V 17 w(DIG/2\);)114 1955 y(Y2)f(=)h(Y)g(-)f(Y1;)0 2105 y FB(G.6)56 b(Estimating)19 b(error)0 2219 y Fw(The)c(follo)o(wing)h(is)g(a)f (F)l(ortran)f(algorithm)h(for)g(dot)g(pro)q(duct)g(that)g(mak)o(es)f(an)h (estimate)g(of)g(its)h(o)o(wn)e(accuracy)l(.)114 2341 y Fc(real)23 b(A\(100\),)g(B\(100\),)g(dot,)g(dotmax)114 2397 y(integer)g(I,)g(loss)114 2454 y(...)114 2510 y(dot)g(=)h(0.0)114 2567 y(dotmax)f(=)g(0.0)114 2623 y(do)g(I)h(=)g(1,)f(100)209 2680 y(dot)h(=)f(dot)h(+)f(A\(I\))h(*)f (B\(I\))1905 2828 y Fw(93)p eop %%Page: 94 102 bop -72 1539 13 1539 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)209 45 y Fc(dotmax)23 b(=)h(max)f(\(abs\(dot\),)g(abs\(dotmax\)\))209 102 y(end)h(do)114 214 y(loss)f(=)h(expon\(dotmax\))e(-)h(expon\(dot\))114 271 y(if)g(\(loss)g(>)h(digits\(dot\)/2\))e(then)209 327 y(write)h(\(3,)h('Half)f (the)g(precision)g(may)g(be)h(lost.'\))209 384 y(end)g(if)0 534 y FB(G.7)56 b(Sa)n(ving)19 b(exception)f(state)0 648 y Fw(Sometimes)13 b(a)g(section)h(of)e(co)q(de)i(needs)f(to)g(manipulate)h(the) f(noti\014cation)h(indicators)g(without)f(losing)g(noti\014ca-)0 704 y(tions)h(p)q(ertinen)o(t)h(to)e(the)g(surrounding)i(program.)j(The)c (follo)o(wing)h(co)q(de)f(\(in)g(C\))f(sa)o(v)o(es)g(and)h(restores)f (indicator)0 761 y(settings)i(around)g(suc)o(h)h(a)f(section)h(of)e(co)q(de.) 114 883 y Fc(#define)23 b(ALL)p 380 883 15 2 v 16 w(INDICATORS)47 b(\(~0\))118 b(/*)24 b(all)f(ones)h(*/)114 939 y(int)f(saved)p 332 939 V 17 w(flags;)114 1052 y(saved)p 237 1052 V 16 w(flags)g(=)h(save)p 540 1052 V 17 w(indicators)e(\(\);)114 1109 y(clear)p 237 1109 V 16 w(indicators)h(\(ALL)p 612 1109 V 16 w(INDICATORS\);)114 1165 y Fr(...)d(run)d(desir)n(e)n(d)e(c)n(o)n(de)h(...)114 1221 y(...)k(examine)c(indic)n(ators)g(and)h(take)f(appr)n(opriate)i(action)e (...)114 1278 y(...)k(cle)n(ar)c(any)g(indic)n(ators)g(that)h(wer)n(e)f(c)n (omp)n(ensate)n(d)g(for)g(...)114 1334 y Fc(set)p 189 1334 V 16 w(indicators)23 b(\(saved)p 612 1334 V 16 w(flags\);)119 b(/*)23 b(merge-in)g(previous)g(state)g(*/)0 1456 y Fw(The)14 b(net)h(e\013ect)e(of)h(this)h(is)f(that)g(the)g(nested)h(co)q(de)f(sets)g (only)h(those)f(indicators)h(that)e(denote)i(exceptions)g(that)0 1513 y(could)h(not)f(b)q(e)h(comp)q(ensated)g(for.)j(Previously)d(set)f (indicators)h(sta)o(y)e(set.)0 2828 y(94)p eop %%Page: 95 103 bop 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)839 45 y FC(Annex)23 b(H)803 120 y Ff(\(informativ)n(e\))772 269 y FC(Bibliograph)n(y)0 444 y Fw(This)14 b(annex)f(giv)o(es)h(references)f(to)g(publications)i(relev) m(an)o(t)f(to)e(the)i(annexes)f(of)g(this)g(part)g(of)g(this)g(In)o (ternational)0 500 y(Standard.)93 623 y FB(In)n(ternational)21 b(Do)r(cumen)n(ts)23 714 y Fw([1])g(IEC)13 b(559:1989,)e(Binary)j (\015oating-p)q(oin)o(t)f(arithmetic)h(for)e(micropro)q(cessor)h(systems)f (\(Also:)19 b(ANSI/IEEE)93 770 y(Std)d(754-1985,)d(IEEE)i(Standard)g(for)g (Binary)h(Floating-P)o(oin)o(t)f(Arithmetic\))23 861 y([2])21 b(ISO/IEC)c(Directiv)o(es,)e(P)o(art)f(3:)20 b(Drafting)14 b(and)i(presen)o(tation)f(of)g(In)o(ternational)g(Standards,)g(1989)23 951 y([3])21 b(ISO/IEC)i(1539:1991,)c(Information)j(tec)o(hnology)f({)g (Programming)f(languages)i({)e(F)o(OR)l(TRAN,)i(Sec-)93 1008 y(ond)15 b(Edition)h(\(Also:)k(ANSI)15 b(X3J3/S8.118,)e(American)i(National)h (Standard)e(Programming)g(Language)93 1064 y(F)l(ortran,)g(draft)h(of)f(Ma)o (y)h(1992\))23 1155 y([4])21 b(ISO/IEC)i(6160:1979,)e(Information)i(tec)o (hnology)f({)g(Programming)f(languages)h({)g(PL/I,)g(First)g(Edi-)93 1211 y(tion)13 b Fv(f)p Fw(Endorsemen)o(t)f(of)g(ANSI)h(X3.53-1976,)d (American)k(National)e(Standard)h(Programming)e(Language)93 1268 y(PL/I)p Fv(g)23 1358 y Fw([5])21 b(ISO/IEC)c(7185:1990,)12 b(Information)j(tec)o(hnology)g({)g(Programming)g(languages)g({)g(P)o(ascal,) g(Second)h(Edi-)93 1415 y(tion)23 1505 y([6])21 b(ISO/IEC)d(8652:1986,)c (Information)i(tec)o(hnology)h({)f(Programming)g(languages)h({)f(Ada)g Fv(f)p Fw(Endorsemen)o(t)93 1562 y(of)f(ANSI/MIL-STD-1815A-1983,)f(Reference) j(Man)o(ual)e(for)f(the)i(Ada)f(Programming)f(Language)p Fv(g)23 1652 y Fw([7])21 b(ISO/IEC)15 b(8825:1990,)c(Information)i(Pro)q(cessing)h (Systems)g({)f(Op)q(en)h(Systems)g(In)o(terconnection)g({)g(Sp)q(ec-)93 1709 y(i\014cation)j(of)d(Basic)i(Enco)q(ding)h(Rules)f(for)f(Abstract)f(Syn) o(tax)h(Notation)g(One)h(\(ASN.1\))23 1799 y([8])21 b(ISO/IEC)c(9001:1987,)c (Qualit)o(y)j(systems)f({)h(Mo)q(del)g(for)f(qualit)o(y)h(assurance)g(in)h (pro)q(duction)f(and)g(instal-)93 1856 y(lation)23 1946 y([9])21 b(ISO/IEC)j(9899:1990,)d(Information)h(tec)o(hnology)h({)f(Programming)f (languages)i({)f(C,)g(First)g(Edition)93 2003 y(\(Also:)d(ANSI)12 b(X3.159-1989,)e(American)j(national)f(standard)g(for)f(information)h (systems)g(-)g(programming)93 2059 y(languages)k(-)f(C\))0 2150 y([10])21 b(ISO/IEC)14 b(TR)e(10176:1990,)e(Information)j(tec)o(hnology) f({)g(Guidelines)j(for)d(the)g(preparation)h(of)f(program-)93 2206 y(ming)k(language)f(standards)0 2297 y([11])21 b(ISO/IEC)e(10206:1991,)d (Information)i(tec)o(hnology)g({)g(Programming)f(languages)i({)f(Extended)g (P)o(ascal,)93 2353 y(First)g(Edition)h(\(Also:)25 b(ANSI/IEEE)18 b(770/X3.160-1989,)d(Standard)j(for)f(the)h(programming)f(language)93 2410 y(Extended)f(P)o(ascal\))0 2500 y([12])21 b(ISO/IEC)c(JTC1/SC22/W)o(G2) 12 b(N318,)i(Extended)i(P)o(ascal)f(binding)i(to)e(LIA-1)h(\(draft)e(of)h(7)g (June)h(1992\))0 2591 y([13])21 b(ISO/IEC)15 b(10279:1991,)c(Information)j(T) l(ec)o(hnology)g({)g(Programming)f(Languages)g({)h(F)l(ull)h(BASIC,)f(First) 93 2647 y(Edition)j(\(Also:)k(ANSI)16 b(X3.113-1987)d(American)j(national)h (standard)e(for)g(information)g(systems)g(-)h(pro-)93 2704 y(gramming)f(languages)h(-)f(F)l(ull)h(BASIC\))1905 2828 y(95)p eop %%Page: 96 104 bop -72 2569 13 273 v 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y([14])21 b(ISO/IEC)e(10514,)e(Information)h(tec)o(hnology)g({)g(Programming)f (languages)h({)g(Mo)q(dula-2)g(\(not)f(y)o(et)h(ap-)93 102 y(pro)o(v)o(ed\))0 195 y([15])j(ISO/IEC)13 b(10967-2,)e(Information)h(tec)o (hnology)f({)h(Language)g(indep)q(enden)o(t)i(arithmetic)e({)g(P)o(art)f(2:) 18 b(Math-)93 252 y(ematical)e(pro)q(cedures)g(\(no)f(draft)g(a)o(v)m (ailable\))0 346 y([16])21 b(ISO/IEC)16 b(10967-3)d(Information)h(tec)o (hnology)g({)h(Language)f(indep)q(enden)o(t)j(arithmetic)e({)f(P)o(art)f(3:) 19 b(Com-)93 402 y(plex)e(arithmetic)e(and)h(pro)q(cedures)g(\(no)f(draft)f (a)o(v)m(ailable\))0 496 y([17])21 b(ISO/IEC)e(JTC1/SC22/W)o(G9)d(N102,)h (Prop)q(osed)h(Standard)g(for)f(a)g(Generic)i(P)o(ac)o(k)m(age)f(of)f(Elemen) o(tary)93 552 y(F)l(unctions)f(for)f(Ada,)g(Draft)f(1.2,)g(12)g(Dec)i(1990)0 646 y([18])21 b(ISO/IEC)i(JCT1/SC22/W)o(G9)d(N103,)j(Prop)q(osed)f(Standard)g (for)f(a)h(Generic)h(P)o(ac)o(k)m(age)e(of)h(Primitiv)o(e)93 703 y(F)l(unctions)16 b(for)f(Ada,)g(Draft)f(1.0,)g(13)g(Dec)i(1990)0 796 y([19])21 b(ISO/IEC)15 b(JTC1/SC22/W)o(G13/N738)o(,)c(Mo)q(dula-2)j (Standard,)f(Third)i(W)l(orking)e(Draft,)g(BSI,)h(29)f(Octo-)93 853 y(b)q(er)j(1989)93 1003 y FB(National)k(and)g(Other)e(Do)r(cumen)n(ts)0 1097 y Fw([20])j(ANSI/IEEE)c(770/X3.97-1983,)d(American)j(National)f (Standard)h(IEEE)f(Standard)g(P)o(ascal)g(Computer)93 1153 y(Programming)f(Language)0 1247 y([21])21 b(ANSI/IEEE)16 b(Std)g(854-1987,)d (A)i(Radix-Indep)q(end)q(en)o(t)j(Standard)d(for)f(Floating-P)o(oin)o(t)h (Arithmetic)0 1341 y([22])21 b(ANSI)13 b(X3.226,)e(American)i(National)f (Standard)g(for)g(Information)g(Systems{Programming)e(Language{)93 1398 y(Common)15 b(Lisp)h(\(Draft)e(12.24\))0 1491 y([23])21 b(UNIX)16 b(Programmer's)d(Man)o(ual,)i(V)l(ol.)h(2,)e(System)h(Calls)h(and)g (Library)f(Routines,)h(A)l(T&T,)f(1986)93 1642 y FB(Bo)r(oks)j(and)h (Articles)0 1735 y Fw([24])i(W)13 b(S)g(Bro)o(wn,)f(A)h(Simple)i(but)d (Realistic)j(Mo)q(del)f(of)e(Floating-P)o(oin)o(t)h(Computation,)f(A)o(CM)g (T)l(ransactions)93 1792 y(on)k(Mathematical)f(Soft)o(w)o(are,)e(V)l(ol.)j (7,)e(1981,)g(pp.445-480)0 1886 y([25])21 b(J)13 b(T)f(Co)q(onen,)g(An)h (Implemen)o(tation)g(Guide)g(to)f(a)g(Prop)q(osed)g(Standard)g(for)f (Floating-P)o(oin)o(t)h(Arithmetic,)93 1942 y(Computer,)j(Jan)o(uary)g(1980)0 2036 y([26])21 b(W)e(J)g(Co)q(dy)g(Jr)g(and)g(W)g(W)l(aite,)g(Soft)o(w)o(are) f(Man)o(ual)g(for)h(the)g(Elemen)o(tary)f(F)l(unctions,)j(Pren)o(tice-Hall,) 93 2092 y(1980)0 2186 y([27])g(J)i(Du)g(Croz)f(and)h(M)f(P)o(on)o(t,)h(The)g (Dev)o(elopmen)o(t)f(of)g(a)h(Floating-P)o(oin)o(t)f(V)l(alidation)i(P)o(ac)o (k)m(age,)f(NA)o(G)93 2243 y(Newsletter)16 b(No.)e(3,)h(1984)0 2337 y([28])21 b(J)c(W)g(Demmel)g(and)g(X)f(Li,)i(F)l(aster)e(Numerical)h (Algorithms)g(via)g(Exception)h(Handling,)g(11th)e(In)o(terna-)93 2393 y(tional)g(Symp)q(osium)g(on)g(Computer)e(Arithmetic,)i(Winsor,)f(On)o (tario,)g(June)h(29)e(-)i(July)g(2,)f(1993)0 2487 y([29])21 b(J)14 b(E)g(Holm,)g(Floating)f(P)o(oin)o(t)g(Arithmetic)i(and)f(Program)e (Correctness)h(Pro)q(ofs,)g(Cornell)h(Univ)o(ersit)o(y)h(TR)93 2543 y(80-436,)f(1980)0 2637 y([30])21 b(C)15 b(B)h(Jones,)f(Systematic)g (Soft)o(w)o(are)f(Dev)o(elopmen)o(t)h(Using)h(VDM,)e(Pren)o(tice-Hall,)j (1986)0 2828 y(96)p eop %%Page: 97 105 bop -72 728 13 179 v -72 813 13 57 v 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y Fw([31])j(W)16 b(Kahan)h(and)g(J)f(P)o(almer,)h(On)f(a)g(Prop)q(osed)h (Floating-P)o(oin)o(t)f(Standard,)g(SIGNUM)h(Newsletter,)f(Oc-)93 102 y(tob)q(er)g(1979,)d(pp.13-21)0 195 y([32])21 b(D)15 b(E)g(Kn)o(uth,)h (Semi-Numerical)h(Algorithms,)e(Addison-W)l(esley)l(,)j(1969,)13 b(Section)j(4.4)0 289 y([33])21 b(U)d(Kulish)i(and)f(W)e(L)h(Mirank)o(er,)g (A)g(New)g(Approac)o(h)g(to)g(Scien)o(ti\014c)i(Computation,)d(Academic)j (Press,)93 346 y(1983)0 439 y([34])h(N)13 b(L)g(Sc)o(hry)o(er,)g(A)g(T)l(est) f(of)h(a)f(Computer's)g(Floating-P)o(oin)o(t)h(Unit,)g(Computer)f(Science)j (T)l(ec)o(hnical)g(Rep)q(ort)93 496 y(No.)g(89,)f(A)l(T&T)i(Bell)h(Lab)q (oratories,)d(Murra)o(y)g(Hill,)j(N.J.,)e(1981)0 590 y([35])21 b(D)15 b(C)g(Sorenson)g(and)g(Ping)h(T)l(ak)f(P)o(eter)f(T)l(ang,)h(On)g(the) h(Orthogonalit)o(y)f(of)f(Eigen)o(v)o(ectors)h(Computed)g(b)o(y)93 646 y(Divide-and-Conquer)h(T)l(ec)o(hniques,)g(SIAM)e(Journal)h(of)f (Numerical)h(Analysis,)g(V)l(ol.)f(28,)g(No.)f(6,)h(p.1760,)93 703 y(algorithm)i(5.3)0 796 y([36])21 b(Guy)15 b(L)h(Steele)g(Jr,)f(Common)g (Lisp)h(the)f(Language,)g(Digital)h(Press,)f(1984)0 890 y([37])21 b(B)15 b(A)g(Wic)o(hmann,)g(Floating-P)o(oin)o(t)f(In)o(terv)m(al)h (Arithmetic)h(for)e(V)l(alidation,)i(NPL)f(Rep)q(ort)f(DITC)h(76/86,)93 947 y(1986)0 1041 y([38])21 b(B)16 b(A)f(Wic)o(hmann,)g(Getting)g(the)h (Correct)e(Answ)o(ers,)h(NPL)g(Rep)q(ort)h(DITC)f(167/90,)e(June)j(1990)0 1134 y([39])21 b(B)13 b(A)g(Wic)o(hmann,)g(The)g(Language)f(Compatible)h (Arithmetic)h(Standard)e(and)h(Ada,)g(NPL)f(Rep)q(ort)h(DITC)93 1191 y(173/91,)h(1991)0 1285 y([40])21 b(B)c(A)g(Wic)o(hmann,)g(T)l(o)o(w)o (ards)f(a)g(F)l(ormal)h(De\014nition)h(of)e(Floating)h(P)o(oin)o(t,)f (Computer)g(Journal,)i(V)l(ol.)f(32,)93 1341 y(Octob)q(er)f(1989,)e (pp.432-436)0 1435 y([41])21 b(J)16 b(H)f(Wilkinson,)i(Rounding)f(Errors)f (in)h(Algebraic)g(Pro)q(cesses,)f(Pren)o(tice-Hall,)i(1963)0 1529 y([42])k(Niklaus)c(Wirth,)e(Programming)f(in)i(Mo)q(dula-2,)f(Springer)h (V)l(erlag,)f(1988)1905 2828 y(97)p eop %%Page: 98 106 bop 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)852 45 y FC(Annex)23 b(I)803 120 y Ff(\(informativ)n(e\))835 269 y FC(Glossary)0 455 y Fw(This)15 b(annex)f(is)h(pro)o(vided)g(as)f(an)g(aid)h(to)e(the)h (reader)h(who)f(ma)o(y)f(not)h(b)q(e)h(familiar)g(with)f(the)g(terms)g(used)h (in)g(the)0 512 y(other)g(annexes.)20 b(All)d(de\014nitions)g(from)d(4.2)g (are)h(rep)q(eated)h(v)o(erbatim.)0 646 y Fx(accuracy:)23 b Fw(This)15 b(term)f(applies)i(to)d(\015oating)i(p)q(oin)o(t)f(only)h(and)g (giv)o(es)f(a)g(measure)h(of)f(the)g(agreemen)o(t)g(b)q(et)o(w)o(een)114 703 y(a)h(computed)g(result)h(and)f(the)g(corresp)q(onding)i(true)e (mathematical)g(result.)0 796 y Fx(arithmetic)k(data)f(t)o(yp)q(e:)23 b Fw(A)15 b(data)f(t)o(yp)q(e)i(whose)f(v)m(alues)h(are)f(mem)o(b)q(ers)g(of) g Fv(Z)t Fw(,)f Fv(R)p Fw(,)h(or)f Fv(C)s Fw(.)214 884 y Fq(NOTE)j({)33 b(This)16 b(standard)h(sp)q(eci\014es)h(requiremen)o(ts)f(for)f(in)o(teger)h (and)g(\015oating)e(p)q(oin)o(t)h(data)h(t)o(yp)q(es.)214 933 y(Complex)c(n)o(um)o(b)q(ers)i(are)h(not)f(co)o(v)o(ered)h(b)o(y)g(this)f (standard,)h(but)f(will)f(b)q(e)i(included)f(in)g(a)g(subsequen)o(t)214 983 y(part)f(of)f(this)h(standard)g([16)o(].)0 1077 y Fx(axiom:)22 b Fw(A)g(general)g(rule)h(satis\014ed)f(b)o(y)f(an)h(op)q(eration)g(and)g (all)g(v)m(alues)h(of)e(the)h(data)f(t)o(yp)q(e)g(to)g(whic)o(h)i(the)114 1134 y(op)q(eration)15 b(b)q(elongs.)21 b(As)15 b(used)h(in)g(the)f(sp)q (eci\014cations)i(of)e(op)q(erations,)g(axioms)g(are)g(requiremen)o(ts.)0 1227 y Fx(b)q(o)q(olean:)24 b Fw(A)16 b(logical)g(or)f(truth)g(v)m(alue:)21 b Fx(true)15 b Fw(or)f Fx(false)p Fw(.)0 1321 y Fx(complex)j(n)o(um)o(b)q (er:)k Fw(Num)o(b)q(ers)16 b(whic)o(h)h(include)h(the)e(real)g(n)o(um)o(b)q (ers)g(as)f(a)h(sp)q(ecial)h(case)f(and)g(are)f(often)h(rep-)114 1378 y(resen)o(ted)h(as)g Fu(x)12 b Fw(+)g Fu(iy)19 b Fw(where)f Fu(i)e Fw(=)711 1342 y Fv(p)p 749 1342 59 2 v 36 x(\000)p Fw(1.)27 b(Complex)18 b(n)o(um)o(b)q(ers)g(are)f(not)g(co)o(v)o(ered,)g(b)o(y)h(this)g (part)e(of)i(this)114 1434 y(In)o(ternational)d(Standard,)g(but)h(will)g(b)q (e)g(included)i(in)e(P)o(art)e(3)h(of)g(this)g(In)o(ternational)h(Standard.)0 1528 y Fx(con)o(tin)o(uation)j(v)m(alue:)k Fw(A)17 b(computational)h(v)m (alue)g(used)g(as)e(the)h(result)h(of)f(an)g(arithmetic)g(op)q(eration)g (when)114 1584 y(an)g(exception)h(o)q(ccurs.)26 b(Con)o(tin)o(uation)17 b(v)m(alues)i(are)e(in)o(tended)h(to)f(b)q(e)h(used)f(in)i(subsequen)o(t)e (arithmetic)114 1641 y(pro)q(cessing.)j(\(Con)o(trast)14 b(with)h Fr(exc)n(eptional)h(value)p Fw(.)k(See)15 b(6.1.2.\))214 1728 y Fq(NOTE)e({)26 b(The)13 b(in\014nities)g(and)g(NaNs)g(pro)q(duced)i(b)o(y)d (an)h(IEC)g(559)g(system)f(are)i(examples)e(of)g(con)o(tin-)214 1778 y(uation)h(v)n(alues.)0 1872 y Fx(data)19 b(t)o(yp)q(e:)j Fw(A)15 b(set)g(of)g(v)m(alues)h(and)f(a)g(set)g(of)g(op)q(erations)g(that)g (manipulate)h(those)f(v)m(alues.)0 1965 y Fx(denormalization)20 b(loss:)i Fw(A)12 b(larger)g(than)g(normal)g(rounding)h(error)e(caused)i(b)o (y)f(the)g(fact)g(that)f(denormalized)114 2022 y(v)m(alues)16 b(ha)o(v)o(e)f(less)h(than)f(full)h(precision.)22 b(\(See)15 b(5.2.5)f(for)g(a)h(full)i(de\014nition.\))0 2116 y Fx(denormalized:)23 b Fw(Those)18 b(v)m(alues)g(of)f(a)g(\015oating)h(p)q(oin)o(t)g(t)o(yp)q(e)f Fu(F)24 b Fw(that)17 b(pro)o(vide)h(less)g(than)f(the)h(full)g(precision)114 2172 y(allo)o(w)o(ed)d(b)o(y)g(that)g(t)o(yp)q(e.)20 b(\(See)15 b Fu(F)684 2179 y Fp(D)732 2172 y Fw(in)h(5.2)e(for)h(a)f(full)j (de\014nition.\))0 2266 y Fx(elemen)o(tary)g(function:)23 b Fw(A)11 b(function)g(suc)o(h)f(as)g Fu(sin)p Fw(.)19 b(These)10 b(functions)h(are)f(usually)i(ev)m(aluated)f(as)f(a)g(sequence)114 2322 y(of)k(op)q(erations)i(and)f(therefore)g(ma)o(y)g(ha)o(v)o(e)f(lo)o(w)o (er)h(accuracy)g(than)g(the)h(basic)g(op)q(erations.)214 2410 y Fq(NOTE)c({)23 b(This)11 b(standard)h(do)q(es)h(not)e(include)h(sp)q (eci\014cations)h(for)e(elemen)o(tary)g(functions,)h(whic)o(h)f(will)214 2459 y(b)q(e)j(included)g(in)g(a)f(subsequen)o(t)j(part)e(of)f(this)h (standard,)g(presen)o(tly)h(under)g(dev)o(elopmen)o(t.)i([15)o(])0 2553 y Fx(error:)k Fw(\(1\))15 b(The)i(di\013erence)h(b)q(et)o(w)o(een)f(a)f (computed)h(v)m(alue)g(and)g(the)f(correct)h(v)m(alue.)24 b(\(Used)17 b(in)g(phrases)g(lik)o(e)114 2610 y(\\rounding)e(error")g(or)f(\\error)h(b)q (ound."\))114 2685 y(\(2\))f(A)h(synon)o(ym)g(for)g Fr(exc)n(eption)f Fw(in)i(phrases)g(lik)o(e)g(\\error)e(message")h(or)f(\\error)g(output.")0 2828 y(98)p eop %%Page: 99 107 bop 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y(exception:)23 b Fw(A)d(fault)f(in)i (arithmetic)f(pro)q(cessing.)34 b(The)20 b(inabilit)o(y)h(of)f(an)f(op)q (eration)h(to)f(return)g(a)h(desired)114 102 y(result.)0 195 y Fx(exceptional)f(v)m(alue:)k Fw(A)13 b(non-n)o(umeric)i(v)m(alue)f(pro)q (duced)h(b)o(y)e(an)g(arithmetic)h(op)q(eration)g(to)e(indicate)j(the)f(o)q (c-)114 252 y(currence)d(of)g(an)g(exception.)19 b(Exceptional)12 b(v)m(alues)g(are)f(not)f(used)i(in)f(subsequen)o(t)h(arithmetic)f(pro)q (cessing.)114 308 y(\(See)k(clause)h(5.\))214 395 y Fq(NOTE)10 b({)19 b(Exceptional)10 b(v)n(alues)f(are)i(used)f(as)g(part)g(of)f(the)i (de\014ning)f(formalism)5 b(only)m(.)16 b(With)9 b(resp)q(ect)j(to)214 445 y(this)e(In)o(ternational)h(Standard,)g(they)g(do)f(not)h(represen)o(t)i (v)n(alues)e(of)f(an)o(y)g(of)g(the)i(data)e(t)o(yp)q(es)i(describ)q(ed.)214 495 y(There)j(is)e(no)h(requiremen)o(t)g(that)g(they)g(b)q(e)h(represen)o (ted)h(or)e(stored)h(in)f(the)g(computing)e(system.)0 589 y Fx(exp)q(onen)o(t:)22 b Fw(The)15 b(in)o(teger)f(p)q(o)o(w)o(er)f(to)h(whic)o (h)h(the)f(radix)g(is)h(raised)f(in)h(the)f(represen)o(tation)g(of)g(a)f (\015oating)h(p)q(oin)o(t)114 645 y(n)o(um)o(b)q(er.)20 b(See)c(the)f (de\014nition)i(of)e Fr(\015o)n(ating)g(p)n(oint)h(numb)n(er)f Fw(b)q(elo)o(w.)0 739 y Fx(exp)q(onen)o(t)j(bias:)k Fw(A)13 b(n)o(um)o(b)q(er)f(added)h(to)f(the)g(exp)q(onen)o(t)h(of)f(a)g(\015oating)g (p)q(oin)o(t)h(n)o(um)o(b)q(er,)g(usually)h(to)d(transform)114 796 y(the)k(exp)q(onen)o(t)h(to)e(an)h(unsigned)i(in)o(teger.)0 889 y Fx(\015oating)i(p)q(oin)o(t:)k Fw(The)16 b(arithmetic)f(data)g(t)o(yp)q (e)g(used)g(in)h(this)g(standard)e(to)h(appro)o(ximate)f(the)h(real)h(n)o(um) o(b)q(ers)114 946 y Fv(R)p Fw(.)0 1040 y Fx(\015oating)j(p)q(oin)o(t)g(n)o (um)o(b)q(er:)h Fw(A)d(mem)o(b)q(er)f(of)g(a)g(subset)g(of)g Fv(R)p Fw(,)g(whose)g(v)m(alue)i(is)e(either)h(zero)f(or)g(can)h(b)q(e)f(giv) o(en)114 1096 y(in)g(the)f(form)214 1190 y Fv(\006)p Fw(0)p Fu(:f)307 1197 y Fn(1)326 1190 y Fu(f)348 1197 y Fn(2)368 1190 y Fu(:::f)429 1197 y Fp(p)458 1190 y Fv(\003)10 b Fu(r)513 1173 y Fp(e)114 1284 y Fw(where)20 b(the)h(radix)g Fu(r)g Fw(is)g(the)f(base) h(asso)q(ciated)g(with)f(its)h(data)f(t)o(yp)q(e,)h(the)g(exp)q(onen)o(t)g Fu(e)f Fw(is)h(an)g(in)o(teger)114 1340 y(b)q(et)o(w)o(een)15 b Fu(emin)g Fw(and)h Fu(emax)p Fw(,)f(and)g Fu(f)746 1347 y Fn(1)766 1340 y Fw(,)g Fu(f)816 1347 y Fn(2)836 1340 y Fw(,)f(...)20 b Fu(f)944 1347 y Fp(p)979 1340 y Fw(are)15 b(radix)g Fu(r)h Fw(digits.)0 1434 y Fx(fraction:)23 b Fw(The)16 b(fractional)f(part)g(0)p Fu(:f)667 1441 y Fn(1)686 1434 y Fu(f)708 1441 y Fn(2)728 1434 y Fu(:::f)789 1441 y Fp(p)823 1434 y Fw(of)g(a)g(\015oating)g(p)q(oin)o(t)h (n)o(um)o(b)q(er.)0 1528 y Fx(gradual)j(under\015o)o(w:)i Fw(The)c(use)h(of)f (denormalized)i(\015oating)e(p)q(oin)o(t)h(format)e(to)h(decrease)g(the)h(c)o (hance)g(that)114 1584 y(\015oating)d(p)q(oin)o(t)g(calculations)i(will)g (under\015o)o(w.)0 1678 y Fx(help)q(er)h(function:)23 b Fw(A)11 b(function)g(used)g(solely)g(to)f(aid)g(in)i(the)e(expression)h(of)f(a)g (requiremen)o(t.)19 b(Help)q(er)11 b(functions)114 1735 y(are)18 b(not)h(visible)i(to)e(the)g(programmer,)f(and)h(are)g(not)g(required)h(to)e (b)q(e)i(part)e(of)h(an)g(implemen)o(tation.)114 1791 y(Ho)o(w)o(ev)o(er,)13 b(some)i(implemen)o(tation)i(de\014ned)f(help)q(er)h(functions)f(are)f (required)h(to)f(b)q(e)h(do)q(cumen)o(ted.)0 1885 y Fx(ill-conditi)q(oned:)25 b Fw(A)17 b(problem)g(is)g(ill-condi)q(tioned)j(if)d(the)g(results)g(to)f(b)q (e)h(pro)q(duced)h(are)e(sensitiv)o(e)i(to)e(small)114 1941 y(v)m(ariations)h(in)h(the)g(input)g(parameters.)25 b(T)o(ypical)18 b(metho)q(ds)g(to)e(o)o(v)o(ercome)h(the)g(problem)h(are)f(to)g(use)g(a)114 1998 y(higher)g(lev)o(el)h(of)e(precision)i(or)e(to)g(reform)o(ulate)g(the)h (problem)g(in)h(a)e(w)o(a)o(y)f(whic)o(h)j(a)o(v)o(oids)e(the)h(n)o(umerical) 114 2054 y(instabilit)o(y)l(.)0 2148 y Fx(iden)o(tit)o(y:)23 b Fw(A)d(relation)h(among)f(t)o(w)o(o)g(or)g(more)g(op)q(erations)h(of)f(the) g(same)h(data)f(t)o(yp)q(e)g(whic)o(h)i(holds)f(for)f(all)114 2205 y(v)m(alues)c(of)f(the)h(data)f(t)o(yp)q(e.)21 b(An)15 b(iden)o(tit)o(y)i(is)f(deriv)m(able)h(from)e(the)g(axioms)h(satis\014ed)g(b) o(y)f(the)h(op)q(erations)114 2261 y(in)o(v)o(olv)o(ed.)0 2355 y Fx(implemen)o(tation)j Fw(\(of)14 b(this)i(standard\))p Fx(:)22 b Fw(The)d(total)f(arithmetic)h(en)o(vironmen)o(t)h(presen)o(ted)f(to)f(a)h (program-)114 2411 y(mer,)j(including)i(hardw)o(are,)d(language)g(pro)q (cessors,)h(exception)g(handling)h(facilities,)i(subroutine)d(li-)114 2468 y(braries,)15 b(other)g(soft)o(w)o(are,)e(and)i(all)h(p)q(ertinen)o(t)g (do)q(cumen)o(tation.)0 2561 y Fx(in)o(teger:)22 b Fw(An)16 b(elemen)o(t)g(of)e Fv(Z)t Fw(.)0 2655 y Fx(LIA-1:)23 b Fw(A)15 b(reference)h(to)e(this)i(part)f(of)f(this)i(In)o(ternational)g(Standard.) 1905 2828 y(99)p eop %%Page: 100 108 bop 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)0 45 y Fx(man)o(tissa:)22 b Fw(See)16 b(the)f(de\014nition)i(of)e Fr(fr)n(action)g Fw(ab)q(o)o(v)o(e,)f (whic)o(h)j(is)e(the)h(term)e(used)i(in)g(this)g(standard.)0 139 y Fx(NaN:)22 b Fw(\\Not)d(a)f(Num)o(b)q(er,")i(a)e(non-n)o(umeric)j(v)m (alue)f(used)f(in)h(some)f(systems)f(to)g(represen)o(t)h(the)g(result)h(of)e (a)114 195 y(n)o(umeric)e(op)q(eration)f(whic)o(h)h(has)f(no)g(result)h (represen)o(table)g(in)g(the)f(n)o(umeric)h(data)f(t)o(yp)q(e.)0 289 y Fx(normalized:)23 b Fw(Those)c(v)m(alues)h(of)e(a)g(\015oating)h(p)q (oin)o(t)g(t)o(yp)q(e)g Fu(F)25 b Fw(that)18 b(pro)o(vide)i(the)e(full)j (precision)f(allo)o(w)o(ed)f(b)o(y)114 346 y(that)14 b(t)o(yp)q(e.)20 b(\(See)c Fu(F)460 353 y Fp(N)509 346 y Fw(in)g(5.2)e(for)g(a)h(full)i (de\014nition.\))0 439 y Fx(noti\014cation:)25 b Fw(The)14 b(pro)q(cess)g(b)o(y)g(whic)o(h)h(a)f(program)e(\(or)h(that)h(program's)e (user\))i(is)g(informed)h(that)e(an)h(arith-)114 496 y(metic)19 b(exception)g(has)g(o)q(ccurred.)31 b(F)l(or)18 b(example,)h(dividing)i(2)e (b)o(y)f(0)g(results)h(in)h(a)e(noti\014cation.)31 b(\(See)114 552 y(clause)16 b(6)f(for)f(details.\))0 646 y Fx(op)q(eration:)24 b Fw(A)12 b(function)g(directly)h(a)o(v)m(ailable)h(to)d(the)h(user,)g(as)f (opp)q(osed)i(to)e(in)o(ternal)h(functions)h(or)e(theoretical)114 703 y(mathematical)k(functions.)0 796 y Fx(o)o(v)o(er\015o)o(w:)20 b Fw(In)o(teger)i(o)o(v)o(er\015o)o(w)e(o)q(ccurs)i(for)f(b)q(ounded)i(in)o (tegers)f(if)g(the)g(in)o(teger)g(result)g(of)f(an)h(op)q(eration)f(is)114 853 y(greater)14 b(than)h Fu(maxint)g Fw(or)g(is)h(less)g(than)f Fu(minint)p Fw(.)114 928 y(Floating)d(o)o(v)o(er\015o)o(w)e(o)q(ccurs)i(if)h (the)f(magnitude)g(of)g(the)g(\015oating)f(p)q(oin)o(t)i(result)f(of)g(an)f (op)q(eration)h(is)h(greater)114 984 y(than)i Fr(fmax)5 b Fw(,)15 b(the)h(maxim)o(um)f(\015oating)g(p)q(oin)o(t)h(n)o(um)o(b)q(er)f(in)h(the)f (sp)q(eci\014ed)j(data)c(t)o(yp)q(e.)0 1078 y Fx(precision:)23 b Fw(The)15 b(n)o(um)o(b)q(er)h(of)f(digits)h(in)g(the)f(fraction)g(of)g(a)g (\015oating)g(p)q(oin)o(t)g(n)o(um)o(b)q(er.)21 b(\(See)15 b(5.2.\))0 1172 y Fx(predicate:)23 b Fw(A)13 b(function)g(giving)h(a)e(Bo)q (olean)h(result.)20 b(Examples)13 b(are)f(the)h(relational)g(op)q(erations.) 19 b(Predicates)114 1229 y(nev)o(er)c(cause)g(noti\014cation)h(in)g(this)g (standard.)0 1322 y Fx(radix:)22 b Fw(The)16 b(base)g(asso)q(ciated)g(with)g (a)f(\015oating)h(p)q(oin)o(t)g(data)f(t)o(yp)q(e.)22 b(In)16 b(curren)o(t)f(practice,)i(the)e(radix)h(is)h(2,)e(8,)114 1379 y(10)f(or)h(16.)0 1473 y Fx(represen)o(table:)22 b Fw(A)16 b(term)f(used)h(to)f(describ)q(e)j(a)d(real)h(n)o(um)o(b)q(er)g(whic)o(h)h (is)f(exactly)h(equal)f(to)f(a)h(\015oating)f(p)q(oin)o(t)114 1529 y(n)o(um)o(b)q(er.)0 1623 y Fx(rounding:)23 b Fw(The)14 b(act)f(of)g(computing)h(a)g(represen)o(table)g(\014nal)h(result)f(\(for)e (an)i(op)q(eration\))f(that)g(is)i(close)f(to)f(the)114 1679 y(exact)i(\(but)g(unrepresen)o(table\))h(result)f(for)g(that)f(op)q(eration.) 21 b(\(See)15 b(A.5.2.5)e(for)i(some)g(examples.\))0 1773 y Fx(rounding)j(function:)23 b Fw(An)o(y)17 b(function)h Fu(r)q(nd)d Fw(:)g Fv(R)g(!)h Fu(X)k Fw(\(where)d Fu(X)j Fw(is)d(a)g(discrete)h(subset)f (of)f Fv(R)p Fw(\))g(that)g(maps)114 1830 y(eac)o(h)f(elemen)o(t)h(of)f Fu(X)j Fw(to)d(itself,)g(and)h(is)f(monotonic)h(non-decreasing.)21 b(F)l(ormally)l(,)15 b(if)h Fu(x)f Fw(and)g Fu(y)i Fw(are)e(in)h Fv(R)p Fw(,)214 1923 y Fu(x)c Fv(2)h Fu(X)j Fv(\))d Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))f(=)h Fu(x)214 1980 y(x)f(<)h(y)i Fv(\))e Fu(r)q(nd)p Fw(\()p Fu(x)p Fw(\))f Fv(\024)g Fu(r)q(nd)p Fw(\()p Fu(y)r Fw(\))114 2074 y(Note)i(that)g(if)h Fu(u)e Fv(2)g(R)h Fw(is)h(b)q(et)o(w)o(een)g(t)o(w)o(o)f(adjacen)o(t)g(v)m(alues)i(in)g Fu(X)t Fw(,)d Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))h(selects)i(one)f(of)f(those)g (adjacen)o(t)114 2130 y(v)m(alues.)0 2224 y Fx(round)j(to)h(nearest:)k Fw(The)e(prop)q(ert)o(y)e(of)h(a)g(rounding)h(function)g Fu(r)q(nd)f Fw(that)f(when)i Fu(u)f Fv(2)h(R)e Fw(is)i(b)q(et)o(w)o(een)f(t)o(w)o(o)114 2280 y(adjacen)o(t)14 b(v)m(alues)i(in)f Fu(X)t Fw(,)f Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))f(selects)j(the)e(one)h(nearest)f Fu(u)p Fw(.)20 b(If)15 b(the)g(adjacen)o(t)f(v)m(alues)i(are)e(equidistan)o(t)114 2337 y(from)g Fu(u)p Fw(,)h(either)h(ma)o(y)e(b)q(e)i(c)o(hosen.)0 2431 y Fx(round)h(to)o(w)o(ard)g(min)o(us)g(in\014nit)o(y:)23 b Fw(The)d(prop)q(ert)o(y)f(of)g(a)h(rounding)g(function)h Fu(r)q(nd)e Fw(that)g(when)i Fu(u)f Fv(2)g(R)f Fw(is)114 2487 y(b)q(et)o(w)o(een)c(t)o(w)o(o)f(adjacen)o(t)h(v)m(alues)h(in)g Fu(X)t Fw(,)e Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))g(selects)i(the)g(one)f(less)h (than)f Fu(u)p Fw(.)0 2581 y Fx(round)i(to)o(w)o(ard)g(zero:)22 b Fw(The)17 b(prop)q(ert)o(y)f(of)g(a)g(rounding)h(function)h Fu(r)q(nd)e Fw(that)g(when)h Fu(u)d Fv(2)i(R)g Fw(is)g(b)q(et)o(w)o(een)h(t)o (w)o(o)114 2637 y(adjacen)o(t)d(v)m(alues)j(in)f Fu(X)t Fw(,)e Fu(r)q(nd)p Fw(\()p Fu(u)p Fw(\))g(selects)i(the)f(one)h(nearest)f(0.)0 2828 y(100)p eop %%Page: 101 109 bop -110 909 51 13 v -110 1473 V 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)0 45 y(shall:)23 b Fw(A)17 b(v)o(erbal)g(form)f(used)h(to)f(indicate)i(requiremen) o(ts)f(strictly)g(to)f(b)q(e)i(follo)o(w)o(ed)f(in)g(order)g(to)f(conform)g (to)114 102 y(the)f(standard)g(and)g(from)g(whic)o(h)h(no)f(deviation)h(is)g (p)q(ermitted.)k(\(Quoted)c(from)e([2)o(].\))0 195 y Fx(should:)23 b Fw(A)18 b(v)o(erbal)h(form)f(used)h(to)f(indicate)i(that)e(among)g(sev)o (eral)g(p)q(ossibiliti)q(es)j(one)e(is)g(recommended)g(as)114 252 y(particularly)d(suitable,)g(without)g(men)o(tioning)g(or)f(excluding)i (others;)e(or)g(that)f(\(in)i(the)g(negativ)o(e)f(form\))114 308 y(a)g(certain)g(p)q(ossibilit)o(y)j(is)d(deprecated)h(but)g(not)e (prohibited.)22 b(\(Quoted)15 b(from)g([2)o(].\))0 402 y Fx(signature)j Fw(\(of)c(a)h(function)h(or)f(op)q(eration\))p Fx(:)22 b Fw(The)13 b(name)f(of)f(a)h(function)h(or)f(op)q(eration,)g(a)g(list)h(of)e(its)i (argumen)o(t)114 459 y(t)o(yp)q(es,)h(and)i(the)f(result)h(t)o(yp)q(e)f (\(including)j(exceptional)e(v)m(alues)h(if)e(an)o(y\).)20 b(F)l(or)14 b(example,)i(the)f(signature)214 552 y Fu(add)286 559 y Fp(I)318 552 y Fw(:)d Fu(I)h Fv(\002)e Fu(I)16 b Fv(!)d Fu(I)h Fv([)c(f)p Fx(in)o(teger)p 774 552 16 2 v 19 w(o)o(v)o(er\015o)o(w)n Fv(g)114 646 y Fw(states)18 b(that)h(the)h(op)q(eration)f Fu(add)712 653 y Fp(I)751 646 y Fw(tak)o(es)g(t)o(w)o(o)f(in)o(teger)i(argumen)o(ts)f (\()p Fu(I)d Fv(\002)d Fu(I)t Fw(\))19 b(and)h(pro)q(duces)g(either)g(a)114 703 y(single)c(in)o(teger)g(result)f(\()p Fu(I)t Fw(\))f(or)h(the)g (exceptional)i(v)m(alue)f Fx(in)o(teger)p 1242 703 V 19 w(o)o(v)o(er\015o)o (w)p Fw(.)0 796 y Fx(signi\014cand:)24 b Fw(A)11 b(term)g(used)h(in)g(the)f (IEEE)h(standards)f(754)f(and)i(854)e(to)h(denote)g(the)h(coun)o(terpart)e (of)h(the)h(w)o(ord)114 853 y Fr(fr)n(action)17 b Fw(used)h(in)g(this)f (standard.)26 b(It)18 b(has)f(the)g(v)m(alue)i Fu(f)1106 860 y Fn(0)1126 853 y Fu(:f)1161 860 y Fn(1)1180 853 y Fu(f)1202 860 y Fn(2)1222 853 y Fu(:::f)1283 860 y Fp(p)p Fm(\000)p Fn(1)1347 853 y Fw(,)f(where)f Fu(f)1533 860 y Fn(0)1569 853 y Fv(6)p Fw(=)g(0)g(for)g(normalized)114 909 y(n)o(um)o(b)q(ers)e(and)g Fu(f)407 916 y Fn(0)440 909 y Fw(=)e(0)i(for)g(denormalized)h(n)o(um)o(b)q (ers.)0 1003 y Fx(under\015o)o(w:)21 b Fw(Under\015o)o(w)16 b(o)q(ccurs)f(if)h(a)f(\015oating)h(p)q(oin)o(t)f(result)h(has)f(a)g(v)m (alue)i(less)f(in)g(magnitude)g(than)f Fr(fmin)1904 1010 y Fp(N)1937 1003 y Fw(,)114 1060 y(the)g(minim)o(um)h(normalized)h(\015oating)e (p)q(oin)o(t)g(n)o(um)o(b)q(er)h(in)g(the)f(sp)q(eci\014ed)j(data)c(t)o(yp)q (e.)0 1153 y Fx(unnormalized:)23 b Fw(A)18 b(non-zero)g(\015oating)f(p)q(oin) o(t)h(v)m(alue)h(for)d(whic)o(h)j Fu(f)1218 1160 y Fn(1)1254 1153 y Fw(=)e(0)g(in)h(its)g(fraction)f(part)g(0)p Fu(:f)1796 1160 y Fn(1)1815 1153 y Fu(f)1837 1160 y Fn(2)1857 1153 y Fu(:::f)1918 1160 y Fp(p)1937 1153 y Fw(.)114 1210 y(This)c(standard)e(do)q(es)i(not)f(sp) q(ecify)h(the)g(prop)q(erties)g(of)f(unnormalized)i(n)o(um)o(b)q(ers,)e (except)h(for)f(the)g(sp)q(ecial)114 1266 y(case)j(of)g(denormalized)i(n)o (um)o(b)q(ers.)0 1360 y Fx(ulp:)23 b Fw(The)16 b(v)m(alue)i(of)d(one)i (\\unit)f(in)h(the)g(last)f(place")h(of)e(a)h(\015oating)g(p)q(oin)o(t)h(n)o (um)o(b)q(er.)23 b(This)17 b(v)m(alue)g(dep)q(ends)h(on)114 1417 y(the)g(exp)q(onen)o(t,)i(the)e(radix,)h(and)g(the)f(precision)i(used)f (in)h(represen)o(ting)f(the)f(n)o(um)o(b)q(er.)30 b(Th)o(us)18 b(the)h(ulp)114 1473 y(v)m(alue)d(for)f Fu(x)p Fw(,)f(with)i(exp)q(onen)o(t)g Fu(e)p Fw(,)f(precision)h Fu(p)p Fw(,)f(and)g(radix)h Fu(r)q Fw(,)e(is)i Fu(r)1266 1457 y Fp(e)p Fm(\000)p Fp(p)1330 1473 y Fw(.)1882 2828 y(101)p eop %%Page: 102 110 bop 0 -100 a Fx(ISO/IEC)18 b(DIS)f(10967-1:1993)1722 -101 y Fw(c)1709 -100 y Fv(\015)f Fw(ISO/IEC)848 45 y FC(Annex)23 b(J)803 120 y Ff(\(informativ)n(e\))515 269 y FC(T)n(ypical)e(\015oating)j(p) r(oin)n(t)e(formats)0 432 y Fw(This)15 b(annex)g(is)g(not)g(part)f(of)g(the)g (Draft)g(In)o(ternational)h(Standard.)20 b(It)14 b(is)h(included)j(only)d (for)f(the)g(con)o(v)o(enience)0 488 y(of)h(review)o(ers,)g(and)g(will)i(b)q (e)f(remo)o(v)o(ed.)0 573 y(The)j(follo)o(wing)h(table)f(lists)h(the)f (\015oating)g(p)q(oin)o(t)g(parameters)f(for)g(a)h(sampling)h(of)e(mac)o (hine)i(formats.)29 b(This)0 629 y(information)15 b(is)g(pro)o(vided)g(to)f (illustrate)i(the)e(wide)i(range)e(of)g(parameter)g(v)m(alues)i(for)e(arc)o (hitectures)g(curren)o(tly)0 686 y(in)i(use.)0 770 y(Of)i(course,)f(the)h (actual)g(t)o(yp)q(es)f(visible)j(to)c(programmers)h(\(and)g(whether)h(they)f (conform)g(to)g(this)h(standard\))0 827 y(dep)q(end)e(on)f(the)g(soft)o(w)o (are)e(in)j(use.)k(The)15 b(presence)h(of)e(a)h(format)e(in)j(this)f(table)g (is)h(not)e(in)o(tended)j(to)d(guaran)o(tee)0 883 y(that)g(all)j(implemen)o (tations)f(with)g(this)f(format)f(conform)h(to)f(the)i(LIA-1.)0 968 y(The)f(table)h(is)g(not)f(complete,)g(and)h(the)f(authors)f(solicit)j (data)d(for)h(other)g(mac)o(hines.)p 299 1037 1352 2 v 298 1094 2 57 v 324 1077 a Fr(format)p 889 1094 V 484 w Fu(r)p 984 1094 V 95 w(p)p 1102 1094 V 75 w(emin)p 1281 1094 V 52 w(emax)p 1444 1094 V 50 w(denor)q(m)p 1650 1094 V 299 1095 1352 2 v 298 1152 2 57 v 324 1135 a Fw(Bull)i(DPS)e(8000)f(single)p 889 1152 V 194 w(2)p 984 1152 V 72 w(27)p 1102 1152 V 95 w(-128)p 1281 1152 V 94 w(127)p 1444 1152 V 83 w(false)p 1650 1152 V 298 1208 V 324 1191 a(Bull)j(DPS)e(8000)f(double)p 889 1208 V 174 w(2)p 984 1208 V 72 w(63)p 1102 1208 V 95 w(-128)p 1281 1208 V 94 w(127)p 1444 1208 V 83 w(false)p 1650 1208 V 298 1265 V 324 1248 a(CDC)h(Cyb)q(er)g(170)p 889 1265 V 293 w(2)p 984 1265 V 72 w(48)p 1102 1265 V 95 w(-974)p 1281 1265 V 71 w(1070)p 1444 1265 V 83 w(false)p 1650 1265 V 298 1321 V 324 1304 a(Con)o(v)o(ex)g(\\nativ)o(e")f(single)p 889 1321 V 161 w(2)p 984 1321 V 72 w(24)p 1102 1321 V 95 w(-127)p 1281 1321 V 94 w(127)p 1444 1321 V 83 w(false)p 1650 1321 V 298 1377 V 324 1361 a(Con)o(v)o(ex)h(\\nativ)o(e")f(double)p 889 1377 V 141 w(2)p 984 1377 V 72 w(53)p 1102 1377 V 72 w(-1023)p 1281 1377 V 71 w(1023)p 1444 1377 V 83 w(false)p 1650 1377 V 298 1434 V 324 1417 a(Cra)o(y)g(Y-MP)p 889 1434 V 381 w(2)p 984 1434 V 72 w(48)p 1102 1434 V 72 w(-8192)p 1281 1434 V 71 w(8191)p 1444 1434 V 83 w(false)p 1650 1434 V 298 1490 V 324 1473 a(IBM)h(370)g(Short) p 889 1490 V 293 w(16)p 984 1490 V 95 w(6)p 1102 1490 V 117 w(-64)p 1281 1490 V 118 w(63)p 1444 1490 V 83 w(false)p 1650 1490 V 298 1547 V 324 1530 a(IBM)g(370)g(Long)p 889 1547 V 303 w(16)p 984 1547 V 72 w(14)p 1102 1547 V 117 w(-64)p 1281 1547 V 118 w(63)p 1444 1547 V 83 w(false)p 1650 1547 V 298 1603 V 324 1586 a(IBM)g(370)g(Extended)p 889 1603 V 214 w(16)p 984 1603 V 72 w(28)p 1102 1603 V 117 w(-64)p 1281 1603 V 118 w(63)p 1444 1603 V 83 w(false)p 1650 1603 V 298 1660 V 324 1643 a(IEEE)g(Single)p 889 1660 V 373 w(2)p 984 1660 V 72 w(24)p 1102 1660 V 95 w(-125)p 1281 1660 V 94 w(128)p 1444 1660 V 87 w(true)p 1650 1660 V 298 1716 V 324 1699 a(IEEE)g(Double)p 889 1716 V 350 w(2)p 984 1716 V 72 w(53)p 1102 1716 V 72 w(-1021)p 1281 1716 V 71 w(1024)p 1444 1716 V 87 w(true)p 1650 1716 V 298 1773 V 324 1756 a(IEEE)g(Extended)h(\(t)o(ypical\))p 889 1773 V 117 w(2)p 984 1773 V 72 w(64)p 1102 1773 V 49 w(-16381)p 1281 1773 V 49 w(16384)p 1444 1773 V 86 w(true)p 1650 1773 V 298 1829 V 324 1812 a(IEEE)f(Extended)h(\(HP)f(quad\))p 889 1829 V 73 w(2)p 984 1829 V 49 w(113)p 1102 1829 V 49 w(-16381)p 1281 1829 V 49 w(16384)p 1444 1829 V 86 w(true)p 1650 1829 V 298 1886 V 324 1869 a(Prime)h(50)e(Series)i(single)p 889 1886 V 180 w(2)p 984 1886 V 72 w(23)p 1102 1886 V 95 w(-128)p 1281 1886 V 94 w(127)p 1444 1886 V 83 w(false)p 1650 1886 V 298 1942 V 324 1925 a(Prime)g(50)e(Series)i(double)p 889 1942 V 160 w(2)p 984 1942 V 72 w(47)p 1102 1942 V 49 w(-32896)p 1281 1942 V 49 w(32639)p 1444 1942 V 82 w(false)p 1650 1942 V 298 1998 V 324 1982 a(Prime)g(50)e(Series)i(quad)p 889 1998 V 193 w(2)p 984 1998 V 72 w(95)p 1102 1998 V 49 w(-32896)p 1281 1998 V 49 w(32639)p 1444 1998 V 82 w(false)p 1650 1998 V 298 2055 V 324 2038 a(Unisys)g(\\A)f(Series")h(Single)p 889 2055 V 126 w(8)p 984 2055 V 72 w(13)p 1102 2055 V 117 w(-50)p 1281 2055 V 118 w(76)p 1444 2055 V 87 w(true)p 1650 2055 V 298 2111 V 324 2094 a(Unisys)g(\\A)f(Series")h(Double)p 889 2111 V 103 w(8)p 984 2111 V 72 w(26)p 1102 2111 V 49 w(-32754)p 1281 2111 V 49 w(32780)p 1444 2111 V 86 w(true)p 1650 2111 V 298 2168 V 324 2151 a(Unisys)g(2200)e(Single)p 889 2168 V 244 w(2)p 984 2168 V 72 w(27)p 1102 2168 V 95 w(-128)p 1281 2168 V 94 w(127)p 1444 2168 V 83 w(false)p 1650 2168 V 298 2224 V 324 2207 a(V)-5 b(AX)15 b(D-format)p 889 2224 V 318 w(2)p 984 2224 V 72 w(56)p 1102 2224 V 95 w(-127)p 1281 2224 V 94 w(127)p 1444 2224 V 83 w(false)p 1650 2224 V 298 2281 V 324 2264 a(V)-5 b(AX)15 b(F-format)p 889 2281 V 323 w(2)p 984 2281 V 72 w(24)p 1102 2281 V 95 w(-127)p 1281 2281 V 94 w(127)p 1444 2281 V 83 w(false)p 1650 2281 V 298 2337 V 324 2320 a(V)-5 b(AX)15 b(G-format)p 889 2337 V 317 w(2)p 984 2337 V 72 w(53)p 1102 2337 V 72 w(-1023)p 1281 2337 V 71 w(1023)p 1444 2337 V 83 w(false)p 1650 2337 V 298 2394 V 324 2377 a(V)-5 b(AX)15 b(H-format)p 889 2394 V 319 w(2)p 984 2394 V 49 w(113)p 1102 2394 V 49 w(-16383)p 1281 2394 V 49 w(16383)p 1444 2394 V 82 w(false)p 1650 2394 V 299 2395 1352 2 v 0 2485 a(Notes)g(on)g(this)h (table:)65 2591 y Fx({)23 b Fw(Although)11 b(it)g(is)h(not)e(their)h(default) h(b)q(eha)o(vior,)g(a)e(n)o(um)o(b)q(er)h(of)g(non-IEEE)g(implemen)o(tations) h(can)f(sim)o(ulate)114 2647 y(denormalized)j(n)o(um)o(b)q(ers)f(b)o(y)g (using)g(handlers)h(for)e(trapp)q(ed)h(under\015o)o(w)h(and)e(b)o(y)h(p)q (erforming)g(arithmetic)114 2704 y(on)i(unnormalized)i(n)o(um)o(b)q(ers)e (\(unnormalized)i(n)o(um)o(b)q(ers)e(are)g(not)g(treated)g(in)h(the)f (LIA-1\).)0 2828 y(102)p eop %%Page: 103 111 bop 13 -101 a Fw(c)0 -100 y Fv(\015)16 b Fw(ISO/IEC)1087 b Fx(ISO/IEC)17 b(DIS)h(10967-1:1993)65 45 y({)23 b Fw(A)11 b(n)o(um)o(b)q(er)g (of)g(computer)g(v)o(endors)g(\(e.g.)18 b(W)l(ang,)11 b(Data)f(General,)i (Amdahl,)g(F)l(ujitsu\))g(pro)o(vide)f(a)g(\015oating)114 102 y(p)q(oin)o(t)k(implemen)o(tation)i(using)f(the)f(IBM)g(370)g(format)f (\(single)i(and)f(double)i(precision\).)65 195 y Fx({)23 b Fw(A)11 b(n)o(um)o(b)q(er)h(of)f(computer)h(v)o(endors)f(\(e.g.)18 b(Sun,)12 b(Apple,)i(HP\))d(pro)o(vide)h(a)f(\015oating)h(p)q(oin)o(t)g (implemen)o(tation)114 252 y(using)21 b(the)g(IEEE)g(754)f(format.)36 b(Some)20 b(use)i(commercial)f(IEEE)g(754)f(pro)q(cessors)h(\(e.g.)36 b(In)o(tel)22 b(486i,)114 308 y(Motorola)13 b(68000,)h(MIPS)h(R2000,)f(SP)l (AR)o(C,)i(W)l(eitek,)f(Sky)l(,)g(...\).)65 402 y Fx({)23 b Fw(The)11 b(IEEE)g(754)e(standard)i(sp)q(eci\014es)h(the)f(format)f(for)g (single)i(and)f(double)h(precision,)h(but)e(only)g(minim)o(um)114 459 y(b)q(ounds)j(are)f(giv)o(en)h(for)f(extended)h(precision.)21 b(Sev)o(eral)14 b(di\013eren)o(t)f(mo)q(dels)h(for)f(extended)i(precision)g (exist)114 515 y(in)e(commercial)h(implemen)o(tations,)g(e.g.)19 b(In)o(tel)14 b(486i)e(\(\\t)o(ypical"\))h(and)g(the)g(Hewlett)g(P)o(ac)o(k)m (ard)g(Precision)114 571 y(\(\\HP)h(quad"\).)65 665 y Fx({)23 b Fw(A)17 b(few)h(computer)g(v)o(endors)g(\(e.g.)26 b(Bull)20 b(DPS)d(8000,)g(Prime)i(50)e(series,)h(suppliers)i(of)d(MilStd)i(1750A\))114 722 y(pro)o(vide)c(a)g(\015oating)g(p)q(oin)o(t)h(implemen)o(tation)h(in)f(t) o(w)o(o's)d(complemen)o(t)j(format.)65 816 y Fx({)23 b Fw(A)16 b(few)h(computer)g(v)o(endors)g(\(e.g.)23 b(CDC)17 b(Cyb)q(er)g(170,)f (Unisys)h(\\A)g(Series"\))g(pro)o(vide)g(a)g(\015oating)f(p)q(oin)o(t)114 872 y(implemen)o(tation)j(with)f(the)h(radix)f(p)q(oin)o(t)h(in)f(the)h (middle)g(or)f(at)f(the)i(lo)o(w)f(end)g(of)g(the)g(fraction.)28 b(This)114 928 y(leads)16 b(to)e(an)h(apparen)o(t)g(asymmetry)f(b)q(et)o(w)o (een)i Fu(emin)f Fw(and)g Fu(emax)p Fw(.)1882 2828 y(103)p eop %%Trailer end userdict /end-hook known{end-hook}if %%EOF