cmath_testcases.txt 141 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511
  1. -- Testcases for functions in cmath.
  2. --
  3. -- Each line takes the form:
  4. --
  5. -- <testid> <function> <input_value> -> <output_value> <flags>
  6. --
  7. -- where:
  8. --
  9. -- <testid> is a short name identifying the test,
  10. --
  11. -- <function> is the function to be tested (exp, cos, asinh, ...),
  12. --
  13. -- <input_value> is a pair of floats separated by whitespace
  14. -- representing real and imaginary parts of a complex number, and
  15. --
  16. -- <output_value> is the expected (ideal) output value, again
  17. -- represented as a pair of floats.
  18. --
  19. -- <flags> is a list of the floating-point flags required by C99
  20. --
  21. -- The possible flags are:
  22. --
  23. -- divide-by-zero : raised when a finite input gives a
  24. -- mathematically infinite result.
  25. --
  26. -- overflow : raised when a finite input gives a finite result whose
  27. -- real or imaginary part is too large to fit in the usual range
  28. -- of an IEEE 754 double.
  29. --
  30. -- invalid : raised for invalid inputs.
  31. --
  32. -- ignore-real-sign : indicates that the sign of the real part of
  33. -- the result is unspecified; if the real part of the result is
  34. -- given as inf, then both -inf and inf should be accepted as
  35. -- correct.
  36. --
  37. -- ignore-imag-sign : indicates that the sign of the imaginary part
  38. -- of the result is unspecified.
  39. --
  40. -- Flags may appear in any order.
  41. --
  42. -- Lines beginning with '--' (like this one) start a comment, and are
  43. -- ignored. Blank lines, or lines containing only whitespace, are also
  44. -- ignored.
  45. -- The majority of the values below were computed with the help of
  46. -- version 2.3 of the MPFR library for multiple-precision
  47. -- floating-point computations with correct rounding. All output
  48. -- values in this file are (modulo yet-to-be-discovered bugs)
  49. -- correctly rounded, provided that each input and output decimal
  50. -- floating-point value below is interpreted as a representation of
  51. -- the corresponding nearest IEEE 754 double-precision value. See the
  52. -- MPFR homepage at http://www.mpfr.org for more information about the
  53. -- MPFR project.
  54. -- A minority of the test cases were generated with the help of
  55. -- mpmath 0.19 at 100 bit accuracy (http://mpmath.org) to improve
  56. -- coverage of real functions with real-valued arguments. These are
  57. -- used in test.test_math.MathTests.test_testfile, as well as in
  58. -- test_cmath.
  59. --------------------------
  60. -- acos: Inverse cosine --
  61. --------------------------
  62. -- zeros
  63. acos0000 acos 0.0 0.0 -> 1.5707963267948966 -0.0
  64. acos0001 acos 0.0 -0.0 -> 1.5707963267948966 0.0
  65. acos0002 acos -0.0 0.0 -> 1.5707963267948966 -0.0
  66. acos0003 acos -0.0 -0.0 -> 1.5707963267948966 0.0
  67. -- branch points: +/-1
  68. acos0010 acos 1.0 0.0 -> 0.0 -0.0
  69. acos0011 acos 1.0 -0.0 -> 0.0 0.0
  70. acos0012 acos -1.0 0.0 -> 3.1415926535897931 -0.0
  71. acos0013 acos -1.0 -0.0 -> 3.1415926535897931 0.0
  72. -- values along both sides of real axis
  73. acos0020 acos -9.8813129168249309e-324 0.0 -> 1.5707963267948966 -0.0
  74. acos0021 acos -9.8813129168249309e-324 -0.0 -> 1.5707963267948966 0.0
  75. acos0022 acos -1e-305 0.0 -> 1.5707963267948966 -0.0
  76. acos0023 acos -1e-305 -0.0 -> 1.5707963267948966 0.0
  77. acos0024 acos -1e-150 0.0 -> 1.5707963267948966 -0.0
  78. acos0025 acos -1e-150 -0.0 -> 1.5707963267948966 0.0
  79. acos0026 acos -9.9999999999999998e-17 0.0 -> 1.5707963267948968 -0.0
  80. acos0027 acos -9.9999999999999998e-17 -0.0 -> 1.5707963267948968 0.0
  81. acos0028 acos -0.001 0.0 -> 1.5717963269615634 -0.0
  82. acos0029 acos -0.001 -0.0 -> 1.5717963269615634 0.0
  83. acos0030 acos -0.57899999999999996 0.0 -> 2.1882979816120667 -0.0
  84. acos0031 acos -0.57899999999999996 -0.0 -> 2.1882979816120667 0.0
  85. acos0032 acos -0.99999999999999989 0.0 -> 3.1415926386886319 -0.0
  86. acos0033 acos -0.99999999999999989 -0.0 -> 3.1415926386886319 0.0
  87. acos0034 acos -1.0000000000000002 0.0 -> 3.1415926535897931 -2.1073424255447014e-08
  88. acos0035 acos -1.0000000000000002 -0.0 -> 3.1415926535897931 2.1073424255447014e-08
  89. acos0036 acos -1.0009999999999999 0.0 -> 3.1415926535897931 -0.044717633608306849
  90. acos0037 acos -1.0009999999999999 -0.0 -> 3.1415926535897931 0.044717633608306849
  91. acos0038 acos -2.0 0.0 -> 3.1415926535897931 -1.3169578969248168
  92. acos0039 acos -2.0 -0.0 -> 3.1415926535897931 1.3169578969248168
  93. acos0040 acos -23.0 0.0 -> 3.1415926535897931 -3.8281684713331012
  94. acos0041 acos -23.0 -0.0 -> 3.1415926535897931 3.8281684713331012
  95. acos0042 acos -10000000000000000.0 0.0 -> 3.1415926535897931 -37.534508668464674
  96. acos0043 acos -10000000000000000.0 -0.0 -> 3.1415926535897931 37.534508668464674
  97. acos0044 acos -9.9999999999999998e+149 0.0 -> 3.1415926535897931 -346.08091112966679
  98. acos0045 acos -9.9999999999999998e+149 -0.0 -> 3.1415926535897931 346.08091112966679
  99. acos0046 acos -1.0000000000000001e+299 0.0 -> 3.1415926535897931 -689.16608998577965
  100. acos0047 acos -1.0000000000000001e+299 -0.0 -> 3.1415926535897931 689.16608998577965
  101. acos0048 acos 9.8813129168249309e-324 0.0 -> 1.5707963267948966 -0.0
  102. acos0049 acos 9.8813129168249309e-324 -0.0 -> 1.5707963267948966 0.0
  103. acos0050 acos 1e-305 0.0 -> 1.5707963267948966 -0.0
  104. acos0051 acos 1e-305 -0.0 -> 1.5707963267948966 0.0
  105. acos0052 acos 1e-150 0.0 -> 1.5707963267948966 -0.0
  106. acos0053 acos 1e-150 -0.0 -> 1.5707963267948966 0.0
  107. acos0054 acos 9.9999999999999998e-17 0.0 -> 1.5707963267948966 -0.0
  108. acos0055 acos 9.9999999999999998e-17 -0.0 -> 1.5707963267948966 0.0
  109. acos0056 acos 0.001 0.0 -> 1.56979632662823 -0.0
  110. acos0057 acos 0.001 -0.0 -> 1.56979632662823 0.0
  111. acos0058 acos 0.57899999999999996 0.0 -> 0.95329467197772655 -0.0
  112. acos0059 acos 0.57899999999999996 -0.0 -> 0.95329467197772655 0.0
  113. acos0060 acos 0.99999999999999989 0.0 -> 1.4901161193847656e-08 -0.0
  114. acos0061 acos 0.99999999999999989 -0.0 -> 1.4901161193847656e-08 0.0
  115. acos0062 acos 1.0000000000000002 0.0 -> 0.0 -2.1073424255447014e-08
  116. acos0063 acos 1.0000000000000002 -0.0 -> 0.0 2.1073424255447014e-08
  117. acos0064 acos 1.0009999999999999 0.0 -> 0.0 -0.044717633608306849
  118. acos0065 acos 1.0009999999999999 -0.0 -> 0.0 0.044717633608306849
  119. acos0066 acos 2.0 0.0 -> 0.0 -1.3169578969248168
  120. acos0067 acos 2.0 -0.0 -> 0.0 1.3169578969248168
  121. acos0068 acos 23.0 0.0 -> 0.0 -3.8281684713331012
  122. acos0069 acos 23.0 -0.0 -> 0.0 3.8281684713331012
  123. acos0070 acos 10000000000000000.0 0.0 -> 0.0 -37.534508668464674
  124. acos0071 acos 10000000000000000.0 -0.0 -> 0.0 37.534508668464674
  125. acos0072 acos 9.9999999999999998e+149 0.0 -> 0.0 -346.08091112966679
  126. acos0073 acos 9.9999999999999998e+149 -0.0 -> 0.0 346.08091112966679
  127. acos0074 acos 1.0000000000000001e+299 0.0 -> 0.0 -689.16608998577965
  128. acos0075 acos 1.0000000000000001e+299 -0.0 -> 0.0 689.16608998577965
  129. -- random inputs
  130. acos0100 acos -3.3307113324596682 -10.732007530863266 -> 1.8706085694482339 3.113986806554613
  131. acos0101 acos -2863.952991743291 -2681013315.2571239 -> 1.5707973950301699 22.402607843274758
  132. acos0102 acos -0.33072639793220088 -0.85055464658253055 -> 1.8219426895922601 0.79250166729311966
  133. acos0103 acos -2.5722325842097802 -12.703940809821574 -> 1.7699942413107408 3.2565170156527325
  134. acos0104 acos -42.495233785459583 -0.54039320751337161 -> 3.1288732573153304 4.4424815519735601
  135. acos0105 acos -1.1363818625856401 9641.1325498630376 -> 1.5709141948820049 -9.8669410553254284
  136. acos0106 acos -2.4398426824157866e-11 0.33002051890266165 -> 1.570796326818066 -0.32430578041578667
  137. acos0107 acos -1.3521340428186552 2.9369737912076772 -> 1.9849059192339338 -1.8822893674117942
  138. acos0108 acos -1.827364706477915 1.0355459232147557 -> 2.5732246307960032 -1.4090688267854969
  139. acos0109 acos -0.25978373706403546 10.09712669185833 -> 1.5963940386378306 -3.0081673050196063
  140. acos0110 acos 0.33561778471072551 -4587350.6823999118 -> 1.5707962536333251 16.031960402579539
  141. acos0111 acos 0.49133444610998445 -0.8071422362990015 -> 1.1908761712801788 0.78573345813187867
  142. acos0112 acos 0.42196734507823974 -2.4812965431745115 -> 1.414091186100692 1.651707260988172
  143. acos0113 acos 2.961426210100655 -219.03295695248664 -> 1.5572768319822778 6.0824659885827304
  144. acos0114 acos 2.886209063652641 -20.38011207220606 -> 1.4302765252297889 3.718201853147642
  145. acos0115 acos 0.4180568075276509 1.4833433990823484 -> 1.3393834558303042 -1.2079847758301576
  146. acos0116 acos 52.376111405924718 0.013930429001941001 -> 0.00026601761804024188 -4.6515066691204714
  147. acos0117 acos 41637948387.625969 1.563418292894041 -> 3.7547918507883548e-11 -25.145424989809381
  148. acos0118 acos 0.061226659122249526 0.8447234394615154 -> 1.5240280306367315 -0.76791798971140812
  149. acos0119 acos 2.4480466420442959e+26 0.18002339201384662 -> 7.353756620564798e-28 -61.455650015996376
  150. -- values near infinity
  151. acos0200 acos 1.6206860518683021e+308 1.0308426226285283e+308 -> 0.56650826093826223 -710.54206874241561
  152. acos0201 acos 1.2067735875070062e+308 -1.3429173724390276e+308 -> 0.83874369390864889 710.48017794027498
  153. acos0202 acos -7.4130145132549047e+307 1.1759130543927645e+308 -> 2.1332729346478536 -710.21871115698752
  154. acos0203 acos -8.6329426442257249e+307 -1.2316282952184133e+308 -> 2.1821511032444838 710.29752145697148
  155. acos0204 acos 0.0 1.4289713855849746e+308 -> 1.5707963267948966 -710.24631069738996
  156. acos0205 acos -0.0 1.3153524545987432e+308 -> 1.5707963267948966 -710.1634604787539
  157. acos0206 acos 0.0 -9.6229037669269321e+307 -> 1.5707963267948966 709.85091679573691
  158. acos0207 acos -0.0 -4.9783616421107088e+307 -> 1.5707963267948966 709.19187157911233
  159. acos0208 acos 1.3937541925739389e+308 0.0 -> 0.0 -710.22135678707264
  160. acos0209 acos 9.1362388967371536e+307 -0.0 -> 0.0 709.79901953124613
  161. acos0210 acos -1.3457361220697436e+308 0.0 -> 3.1415926535897931 -710.18629698871848
  162. acos0211 acos -5.4699090056144284e+307 -0.0 -> 3.1415926535897931 709.28603271085649
  163. acos0212 acos 1.5880716932358901e+308 5.5638401252339929 -> 3.503519487773873e-308 -710.35187633140583
  164. acos0213 acos 1.2497211663463164e+308 -3.0456477717911024 -> 2.4370618453197486e-308 710.11227628223412
  165. acos0214 acos -9.9016224006029528e+307 4.9570427340789056 -> 3.1415926535897931 -709.87946935229468
  166. acos0215 acos -1.5854071066874139e+308 -4.4233577741497783 -> 3.1415926535897931 710.35019704672004
  167. acos0216 acos 9.3674623083647628 1.5209559051877979e+308 -> 1.5707963267948966 -710.30869484491086
  168. acos0217 acos 8.1773832021784383 -6.6093445795000056e+307 -> 1.5707963267948966 709.4752552227792
  169. acos0218 acos -3.1845935000665104 1.5768856396650893e+308 -> 1.5707963267948966 -710.34480761042687
  170. acos0219 acos -1.0577303880953903 -6.4574626815735613e+307 -> 1.5707963267948966 709.45200719662046
  171. -- values near 0
  172. acos0220 acos 1.8566986970714045e-320 3.1867234156760402e-321 -> 1.5707963267948966 -3.1867234156760402e-321
  173. acos0221 acos 7.9050503334599447e-323 -8.8931816251424378e-323 -> 1.5707963267948966 8.8931816251424378e-323
  174. acos0222 acos -4.4465908125712189e-323 2.4654065097222727e-311 -> 1.5707963267948966 -2.4654065097222727e-311
  175. acos0223 acos -6.1016916408192619e-311 -2.4703282292062327e-323 -> 1.5707963267948966 2.4703282292062327e-323
  176. acos0224 acos 0.0 3.4305783621842729e-311 -> 1.5707963267948966 -3.4305783621842729e-311
  177. acos0225 acos -0.0 1.6117409498633145e-319 -> 1.5707963267948966 -1.6117409498633145e-319
  178. acos0226 acos 0.0 -4.9900630229965901e-322 -> 1.5707963267948966 4.9900630229965901e-322
  179. acos0227 acos -0.0 -4.4889279210592818e-311 -> 1.5707963267948966 4.4889279210592818e-311
  180. acos0228 acos 5.3297678681477214e-312 0.0 -> 1.5707963267948966 -0.0
  181. acos0229 acos 6.2073425897211614e-313 -0.0 -> 1.5707963267948966 0.0
  182. acos0230 acos -4.9406564584124654e-324 0.0 -> 1.5707963267948966 -0.0
  183. acos0231 acos -1.7107517052899003e-318 -0.0 -> 1.5707963267948966 0.0
  184. -- special values
  185. acos1000 acos 0.0 0.0 -> 1.5707963267948966 -0.0
  186. acos1001 acos 0.0 -0.0 -> 1.5707963267948966 0.0
  187. acos1002 acos -0.0 0.0 -> 1.5707963267948966 -0.0
  188. acos1003 acos -0.0 -0.0 -> 1.5707963267948966 0.0
  189. acos1004 acos 0.0 nan -> 1.5707963267948966 nan
  190. acos1005 acos -0.0 nan -> 1.5707963267948966 nan
  191. acos1006 acos -2.3 inf -> 1.5707963267948966 -inf
  192. acos1007 acos -0.0 inf -> 1.5707963267948966 -inf
  193. acos1008 acos 0.0 inf -> 1.5707963267948966 -inf
  194. acos1009 acos 2.3 inf -> 1.5707963267948966 -inf
  195. acos1010 acos -2.3 nan -> nan nan
  196. acos1011 acos 2.3 nan -> nan nan
  197. acos1012 acos -inf 2.3 -> 3.1415926535897931 -inf
  198. acos1013 acos -inf 0.0 -> 3.1415926535897931 -inf
  199. acos1014 acos inf 2.3 -> 0.0 -inf
  200. acos1015 acos inf 0.0 -> 0.0 -inf
  201. acos1016 acos -inf inf -> 2.3561944901923448 -inf
  202. acos1017 acos inf inf -> 0.78539816339744828 -inf
  203. acos1018 acos inf nan -> nan inf ignore-imag-sign
  204. acos1019 acos -inf nan -> nan inf ignore-imag-sign
  205. acos1020 acos nan 0.0 -> nan nan
  206. acos1021 acos nan 2.3 -> nan nan
  207. acos1022 acos nan inf -> nan -inf
  208. acos1023 acos nan nan -> nan nan
  209. acos1024 acos -2.3 -inf -> 1.5707963267948966 inf
  210. acos1025 acos -0.0 -inf -> 1.5707963267948966 inf
  211. acos1026 acos 0.0 -inf -> 1.5707963267948966 inf
  212. acos1027 acos 2.3 -inf -> 1.5707963267948966 inf
  213. acos1028 acos -inf -2.3 -> 3.1415926535897931 inf
  214. acos1029 acos -inf -0.0 -> 3.1415926535897931 inf
  215. acos1030 acos inf -2.3 -> 0.0 inf
  216. acos1031 acos inf -0.0 -> 0.0 inf
  217. acos1032 acos -inf -inf -> 2.3561944901923448 inf
  218. acos1033 acos inf -inf -> 0.78539816339744828 inf
  219. acos1034 acos nan -0.0 -> nan nan
  220. acos1035 acos nan -2.3 -> nan nan
  221. acos1036 acos nan -inf -> nan inf
  222. --------------------------------------
  223. -- acosh: Inverse hyperbolic cosine --
  224. --------------------------------------
  225. -- zeros
  226. acosh0000 acosh 0.0 0.0 -> 0.0 1.5707963267948966
  227. acosh0001 acosh 0.0 -0.0 -> 0.0 -1.5707963267948966
  228. acosh0002 acosh -0.0 0.0 -> 0.0 1.5707963267948966
  229. acosh0003 acosh -0.0 -0.0 -> 0.0 -1.5707963267948966
  230. -- branch points: +/-1
  231. acosh0010 acosh 1.0 0.0 -> 0.0 0.0
  232. acosh0011 acosh 1.0 -0.0 -> 0.0 -0.0
  233. acosh0012 acosh -1.0 0.0 -> 0.0 3.1415926535897931
  234. acosh0013 acosh -1.0 -0.0 -> 0.0 -3.1415926535897931
  235. -- values along both sides of real axis
  236. acosh0020 acosh -9.8813129168249309e-324 0.0 -> 0.0 1.5707963267948966
  237. acosh0021 acosh -9.8813129168249309e-324 -0.0 -> 0.0 -1.5707963267948966
  238. acosh0022 acosh -1e-305 0.0 -> 0.0 1.5707963267948966
  239. acosh0023 acosh -1e-305 -0.0 -> 0.0 -1.5707963267948966
  240. acosh0024 acosh -1e-150 0.0 -> 0.0 1.5707963267948966
  241. acosh0025 acosh -1e-150 -0.0 -> 0.0 -1.5707963267948966
  242. acosh0026 acosh -9.9999999999999998e-17 0.0 -> 0.0 1.5707963267948968
  243. acosh0027 acosh -9.9999999999999998e-17 -0.0 -> 0.0 -1.5707963267948968
  244. acosh0028 acosh -0.001 0.0 -> 0.0 1.5717963269615634
  245. acosh0029 acosh -0.001 -0.0 -> 0.0 -1.5717963269615634
  246. acosh0030 acosh -0.57899999999999996 0.0 -> 0.0 2.1882979816120667
  247. acosh0031 acosh -0.57899999999999996 -0.0 -> 0.0 -2.1882979816120667
  248. acosh0032 acosh -0.99999999999999989 0.0 -> 0.0 3.1415926386886319
  249. acosh0033 acosh -0.99999999999999989 -0.0 -> 0.0 -3.1415926386886319
  250. acosh0034 acosh -1.0000000000000002 0.0 -> 2.1073424255447014e-08 3.1415926535897931
  251. acosh0035 acosh -1.0000000000000002 -0.0 -> 2.1073424255447014e-08 -3.1415926535897931
  252. acosh0036 acosh -1.0009999999999999 0.0 -> 0.044717633608306849 3.1415926535897931
  253. acosh0037 acosh -1.0009999999999999 -0.0 -> 0.044717633608306849 -3.1415926535897931
  254. acosh0038 acosh -2.0 0.0 -> 1.3169578969248168 3.1415926535897931
  255. acosh0039 acosh -2.0 -0.0 -> 1.3169578969248168 -3.1415926535897931
  256. acosh0040 acosh -23.0 0.0 -> 3.8281684713331012 3.1415926535897931
  257. acosh0041 acosh -23.0 -0.0 -> 3.8281684713331012 -3.1415926535897931
  258. acosh0042 acosh -10000000000000000.0 0.0 -> 37.534508668464674 3.1415926535897931
  259. acosh0043 acosh -10000000000000000.0 -0.0 -> 37.534508668464674 -3.1415926535897931
  260. acosh0044 acosh -9.9999999999999998e+149 0.0 -> 346.08091112966679 3.1415926535897931
  261. acosh0045 acosh -9.9999999999999998e+149 -0.0 -> 346.08091112966679 -3.1415926535897931
  262. acosh0046 acosh -1.0000000000000001e+299 0.0 -> 689.16608998577965 3.1415926535897931
  263. acosh0047 acosh -1.0000000000000001e+299 -0.0 -> 689.16608998577965 -3.1415926535897931
  264. acosh0048 acosh 9.8813129168249309e-324 0.0 -> 0.0 1.5707963267948966
  265. acosh0049 acosh 9.8813129168249309e-324 -0.0 -> 0.0 -1.5707963267948966
  266. acosh0050 acosh 1e-305 0.0 -> 0.0 1.5707963267948966
  267. acosh0051 acosh 1e-305 -0.0 -> 0.0 -1.5707963267948966
  268. acosh0052 acosh 1e-150 0.0 -> 0.0 1.5707963267948966
  269. acosh0053 acosh 1e-150 -0.0 -> 0.0 -1.5707963267948966
  270. acosh0054 acosh 9.9999999999999998e-17 0.0 -> 0.0 1.5707963267948966
  271. acosh0055 acosh 9.9999999999999998e-17 -0.0 -> 0.0 -1.5707963267948966
  272. acosh0056 acosh 0.001 0.0 -> 0.0 1.56979632662823
  273. acosh0057 acosh 0.001 -0.0 -> 0.0 -1.56979632662823
  274. acosh0058 acosh 0.57899999999999996 0.0 -> 0.0 0.95329467197772655
  275. acosh0059 acosh 0.57899999999999996 -0.0 -> 0.0 -0.95329467197772655
  276. acosh0060 acosh 0.99999999999999989 0.0 -> 0.0 1.4901161193847656e-08
  277. acosh0061 acosh 0.99999999999999989 -0.0 -> 0.0 -1.4901161193847656e-08
  278. acosh0062 acosh 1.0000000000000002 0.0 -> 2.1073424255447014e-08 0.0
  279. acosh0063 acosh 1.0000000000000002 -0.0 -> 2.1073424255447014e-08 -0.0
  280. acosh0064 acosh 1.0009999999999999 0.0 -> 0.044717633608306849 0.0
  281. acosh0065 acosh 1.0009999999999999 -0.0 -> 0.044717633608306849 -0.0
  282. acosh0066 acosh 2.0 0.0 -> 1.3169578969248168 0.0
  283. acosh0067 acosh 2.0 -0.0 -> 1.3169578969248168 -0.0
  284. acosh0068 acosh 23.0 0.0 -> 3.8281684713331012 0.0
  285. acosh0069 acosh 23.0 -0.0 -> 3.8281684713331012 -0.0
  286. acosh0070 acosh 10000000000000000.0 0.0 -> 37.534508668464674 0.0
  287. acosh0071 acosh 10000000000000000.0 -0.0 -> 37.534508668464674 -0.0
  288. acosh0072 acosh 9.9999999999999998e+149 0.0 -> 346.08091112966679 0.0
  289. acosh0073 acosh 9.9999999999999998e+149 -0.0 -> 346.08091112966679 -0.0
  290. acosh0074 acosh 1.0000000000000001e+299 0.0 -> 689.16608998577965 0.0
  291. acosh0075 acosh 1.0000000000000001e+299 -0.0 -> 689.16608998577965 -0.0
  292. -- random inputs
  293. acosh0100 acosh -1.4328589581250843 -1.8370347775558309 -> 1.5526962646549587 -2.190250168435786
  294. acosh0101 acosh -0.31075819156220957 -1.0772555786839297 -> 0.95139168286193709 -1.7812228089636479
  295. acosh0102 acosh -1.9044776578070453 -20.485370158932124 -> 3.7177411088932359 -1.6633888745861227
  296. acosh0103 acosh -0.075642506000858742 -21965976320.873051 -> 24.505907742881991 -1.5707963267983402
  297. acosh0104 acosh -1.6162271181056307 -3.0369343458696099 -> 1.9407057262861227 -2.0429549461750209
  298. acosh0105 acosh -0.3103780280298063 0.00018054880018078987 -> 0.00018992877058761416 1.886386995096728
  299. acosh0106 acosh -9159468751.5897655 5.8014747664273649 -> 23.631201197959193 3.1415926529564078
  300. acosh0107 acosh -0.037739157550933884 0.21841357493510705 -> 0.21685844960602488 1.6076735133449402
  301. acosh0108 acosh -8225991.0508394297 0.28318543008913644 -> 16.615956520420287 3.1415926191641019
  302. acosh0109 acosh -35.620070502302639 0.31303237005015 -> 4.2658980006943965 3.1328013255541873
  303. acosh0110 acosh 96.729939906820917 -0.029345228372365334 -> 5.2650434775863548 -0.00030338895866972843
  304. acosh0111 acosh 0.59656024007966491 -2.0412294654163978 -> 1.4923002024287835 -1.312568421900338
  305. acosh0112 acosh 109.29384112677828 -0.00015454863061533812 -> 5.3871662961545477 -1.4141245154061214e-06
  306. acosh0113 acosh 8.6705651969361597 -3.6723631649787465 -> 2.9336180958363545 -0.40267362031872861
  307. acosh0114 acosh 1.8101646445052686 -0.012345132721855478 -> 1.1997148566285769 -0.0081813912760150265
  308. acosh0115 acosh 52.56897195025288 0.001113916065985443 -> 4.6551827622264135 2.1193445872040307e-05
  309. acosh0116 acosh 0.28336786164214739 355643992457.40485 -> 27.290343226816528 1.5707963267940999
  310. acosh0117 acosh 0.73876621291911437 2.8828594541104322e-20 -> 4.2774820978159067e-20 0.73955845836827927
  311. acosh0118 acosh 0.025865471781718878 37125746064318.492 -> 31.938478989418012 1.5707963267948959
  312. acosh0119 acosh 2.2047353511780132 0.074712248143489271 -> 1.4286403248698021 0.037997904971626598
  313. -- values near infinity
  314. acosh0200 acosh 8.1548592876467785e+307 9.0943779335951128e+307 -> 710.08944620800605 0.83981165425478954
  315. acosh0201 acosh 1.4237229680972531e+308 -1.0336966617874858e+308 -> 710.4543331094759 -0.6279972876348755
  316. acosh0202 acosh -1.5014526899738939e+308 1.5670700378448792e+308 -> 710.66420706795464 2.3348137299106697
  317. acosh0203 acosh -1.0939040375213928e+308 -1.0416960351127978e+308 -> 710.30182863115886 -2.380636147787027
  318. acosh0204 acosh 0.0 1.476062433559588e+308 -> 710.27873384716929 1.5707963267948966
  319. acosh0205 acosh -0.0 6.2077210326221094e+307 -> 709.41256457484769 1.5707963267948966
  320. acosh0206 acosh 0.0 -1.5621899909968308e+308 -> 710.33544449990734 -1.5707963267948966
  321. acosh0207 acosh -0.0 -8.3556624833839122e+307 -> 709.70971018048317 -1.5707963267948966
  322. acosh0208 acosh 1.3067079752499342e+308 0.0 -> 710.15686680107228 0.0
  323. acosh0209 acosh 1.5653640340214026e+308 -0.0 -> 710.33747422926706 -0.0
  324. acosh0210 acosh -6.9011375992290636e+307 0.0 -> 709.51845699719922 3.1415926535897931
  325. acosh0211 acosh -9.9539576809926973e+307 -0.0 -> 709.88474095870185 -3.1415926535897931
  326. acosh0212 acosh 7.6449598518914925e+307 9.5706540768268358 -> 709.62081731754802 1.2518906916769345e-307
  327. acosh0213 acosh 5.4325410972602197e+307 -7.8064807816522706 -> 709.279177727925 -1.4369851312471974e-307
  328. acosh0214 acosh -1.1523626112360465e+308 7.0617510038869336 -> 710.03117010216909 3.1415926535897931
  329. acosh0215 acosh -1.1685027786862599e+308 -5.1568558357925625 -> 710.04507907571417 -3.1415926535897931
  330. acosh0216 acosh 3.0236370339788721 1.7503248720096417e+308 -> 710.44915723458064 1.5707963267948966
  331. acosh0217 acosh 6.6108007926031149 -9.1469968225806149e+307 -> 709.80019633903328 -1.5707963267948966
  332. acosh0218 acosh -5.1096262905623959 6.4484926785412395e+307 -> 709.45061713997973 1.5707963267948966
  333. acosh0219 acosh -2.8080920608735846 -1.7716118836519368e+308 -> 710.46124562363445 -1.5707963267948966
  334. -- values near 0
  335. acosh0220 acosh 4.5560530326699304e-317 7.3048989121436657e-318 -> 7.3048989121436657e-318 1.5707963267948966
  336. acosh0221 acosh 4.8754274133585331e-314 -9.8469794897684199e-315 -> 9.8469794897684199e-315 -1.5707963267948966
  337. acosh0222 acosh -4.6748876009960097e-312 9.7900342887557606e-318 -> 9.7900342887557606e-318 1.5707963267948966
  338. acosh0223 acosh -4.3136871538399236e-320 -4.9406564584124654e-323 -> 4.9406564584124654e-323 -1.5707963267948966
  339. acosh0224 acosh 0.0 4.3431013866496774e-314 -> 4.3431013866496774e-314 1.5707963267948966
  340. acosh0225 acosh -0.0 6.0147334335829184e-317 -> 6.0147334335829184e-317 1.5707963267948966
  341. acosh0226 acosh 0.0 -1.2880291387081297e-320 -> 1.2880291387081297e-320 -1.5707963267948966
  342. acosh0227 acosh -0.0 -1.4401563976534621e-317 -> 1.4401563976534621e-317 -1.5707963267948966
  343. acosh0228 acosh 1.3689680570863091e-313 0.0 -> 0.0 1.5707963267948966
  344. acosh0229 acosh 1.5304346893494371e-312 -0.0 -> 0.0 -1.5707963267948966
  345. acosh0230 acosh -3.7450175954766488e-320 0.0 -> 0.0 1.5707963267948966
  346. acosh0231 acosh -8.4250563080885801e-311 -0.0 -> 0.0 -1.5707963267948966
  347. -- special values
  348. acosh1000 acosh 0.0 0.0 -> 0.0 1.5707963267948966
  349. acosh1001 acosh -0.0 0.0 -> 0.0 1.5707963267948966
  350. acosh1002 acosh 0.0 inf -> inf 1.5707963267948966
  351. acosh1003 acosh 2.3 inf -> inf 1.5707963267948966
  352. acosh1004 acosh -0.0 inf -> inf 1.5707963267948966
  353. acosh1005 acosh -2.3 inf -> inf 1.5707963267948966
  354. acosh1006 acosh 0.0 nan -> nan nan
  355. acosh1007 acosh 2.3 nan -> nan nan
  356. acosh1008 acosh -0.0 nan -> nan nan
  357. acosh1009 acosh -2.3 nan -> nan nan
  358. acosh1010 acosh -inf 0.0 -> inf 3.1415926535897931
  359. acosh1011 acosh -inf 2.3 -> inf 3.1415926535897931
  360. acosh1012 acosh inf 0.0 -> inf 0.0
  361. acosh1013 acosh inf 2.3 -> inf 0.0
  362. acosh1014 acosh -inf inf -> inf 2.3561944901923448
  363. acosh1015 acosh inf inf -> inf 0.78539816339744828
  364. acosh1016 acosh inf nan -> inf nan
  365. acosh1017 acosh -inf nan -> inf nan
  366. acosh1018 acosh nan 0.0 -> nan nan
  367. acosh1019 acosh nan 2.3 -> nan nan
  368. acosh1020 acosh nan inf -> inf nan
  369. acosh1021 acosh nan nan -> nan nan
  370. acosh1022 acosh 0.0 -0.0 -> 0.0 -1.5707963267948966
  371. acosh1023 acosh -0.0 -0.0 -> 0.0 -1.5707963267948966
  372. acosh1024 acosh 0.0 -inf -> inf -1.5707963267948966
  373. acosh1025 acosh 2.3 -inf -> inf -1.5707963267948966
  374. acosh1026 acosh -0.0 -inf -> inf -1.5707963267948966
  375. acosh1027 acosh -2.3 -inf -> inf -1.5707963267948966
  376. acosh1028 acosh -inf -0.0 -> inf -3.1415926535897931
  377. acosh1029 acosh -inf -2.3 -> inf -3.1415926535897931
  378. acosh1030 acosh inf -0.0 -> inf -0.0
  379. acosh1031 acosh inf -2.3 -> inf -0.0
  380. acosh1032 acosh -inf -inf -> inf -2.3561944901923448
  381. acosh1033 acosh inf -inf -> inf -0.78539816339744828
  382. acosh1034 acosh nan -0.0 -> nan nan
  383. acosh1035 acosh nan -2.3 -> nan nan
  384. acosh1036 acosh nan -inf -> inf nan
  385. ------------------------
  386. -- asin: Inverse sine --
  387. ------------------------
  388. -- zeros
  389. asin0000 asin 0.0 0.0 -> 0.0 0.0
  390. asin0001 asin 0.0 -0.0 -> 0.0 -0.0
  391. asin0002 asin -0.0 0.0 -> -0.0 0.0
  392. asin0003 asin -0.0 -0.0 -> -0.0 -0.0
  393. -- branch points: +/-1
  394. asin0010 asin 1.0 0.0 -> 1.5707963267948966 0.0
  395. asin0011 asin 1.0 -0.0 -> 1.5707963267948966 -0.0
  396. asin0012 asin -1.0 0.0 -> -1.5707963267948966 0.0
  397. asin0013 asin -1.0 -0.0 -> -1.5707963267948966 -0.0
  398. -- values along both sides of real axis
  399. asin0020 asin -9.8813129168249309e-324 0.0 -> -9.8813129168249309e-324 0.0
  400. asin0021 asin -9.8813129168249309e-324 -0.0 -> -9.8813129168249309e-324 -0.0
  401. asin0022 asin -1e-305 0.0 -> -1e-305 0.0
  402. asin0023 asin -1e-305 -0.0 -> -1e-305 -0.0
  403. asin0024 asin -1e-150 0.0 -> -1e-150 0.0
  404. asin0025 asin -1e-150 -0.0 -> -1e-150 -0.0
  405. asin0026 asin -9.9999999999999998e-17 0.0 -> -9.9999999999999998e-17 0.0
  406. asin0027 asin -9.9999999999999998e-17 -0.0 -> -9.9999999999999998e-17 -0.0
  407. asin0028 asin -0.001 0.0 -> -0.0010000001666667416 0.0
  408. asin0029 asin -0.001 -0.0 -> -0.0010000001666667416 -0.0
  409. asin0030 asin -0.57899999999999996 0.0 -> -0.61750165481717001 0.0
  410. asin0031 asin -0.57899999999999996 -0.0 -> -0.61750165481717001 -0.0
  411. asin0032 asin -0.99999999999999989 0.0 -> -1.5707963118937354 0.0
  412. asin0033 asin -0.99999999999999989 -0.0 -> -1.5707963118937354 -0.0
  413. asin0034 asin -1.0000000000000002 0.0 -> -1.5707963267948966 2.1073424255447014e-08
  414. asin0035 asin -1.0000000000000002 -0.0 -> -1.5707963267948966 -2.1073424255447014e-08
  415. asin0036 asin -1.0009999999999999 0.0 -> -1.5707963267948966 0.044717633608306849
  416. asin0037 asin -1.0009999999999999 -0.0 -> -1.5707963267948966 -0.044717633608306849
  417. asin0038 asin -2.0 0.0 -> -1.5707963267948966 1.3169578969248168
  418. asin0039 asin -2.0 -0.0 -> -1.5707963267948966 -1.3169578969248168
  419. asin0040 asin -23.0 0.0 -> -1.5707963267948966 3.8281684713331012
  420. asin0041 asin -23.0 -0.0 -> -1.5707963267948966 -3.8281684713331012
  421. asin0042 asin -10000000000000000.0 0.0 -> -1.5707963267948966 37.534508668464674
  422. asin0043 asin -10000000000000000.0 -0.0 -> -1.5707963267948966 -37.534508668464674
  423. asin0044 asin -9.9999999999999998e+149 0.0 -> -1.5707963267948966 346.08091112966679
  424. asin0045 asin -9.9999999999999998e+149 -0.0 -> -1.5707963267948966 -346.08091112966679
  425. asin0046 asin -1.0000000000000001e+299 0.0 -> -1.5707963267948966 689.16608998577965
  426. asin0047 asin -1.0000000000000001e+299 -0.0 -> -1.5707963267948966 -689.16608998577965
  427. asin0048 asin 9.8813129168249309e-324 0.0 -> 9.8813129168249309e-324 0.0
  428. asin0049 asin 9.8813129168249309e-324 -0.0 -> 9.8813129168249309e-324 -0.0
  429. asin0050 asin 1e-305 0.0 -> 1e-305 0.0
  430. asin0051 asin 1e-305 -0.0 -> 1e-305 -0.0
  431. asin0052 asin 1e-150 0.0 -> 1e-150 0.0
  432. asin0053 asin 1e-150 -0.0 -> 1e-150 -0.0
  433. asin0054 asin 9.9999999999999998e-17 0.0 -> 9.9999999999999998e-17 0.0
  434. asin0055 asin 9.9999999999999998e-17 -0.0 -> 9.9999999999999998e-17 -0.0
  435. asin0056 asin 0.001 0.0 -> 0.0010000001666667416 0.0
  436. asin0057 asin 0.001 -0.0 -> 0.0010000001666667416 -0.0
  437. asin0058 asin 0.57899999999999996 0.0 -> 0.61750165481717001 0.0
  438. asin0059 asin 0.57899999999999996 -0.0 -> 0.61750165481717001 -0.0
  439. asin0060 asin 0.99999999999999989 0.0 -> 1.5707963118937354 0.0
  440. asin0061 asin 0.99999999999999989 -0.0 -> 1.5707963118937354 -0.0
  441. asin0062 asin 1.0000000000000002 0.0 -> 1.5707963267948966 2.1073424255447014e-08
  442. asin0063 asin 1.0000000000000002 -0.0 -> 1.5707963267948966 -2.1073424255447014e-08
  443. asin0064 asin 1.0009999999999999 0.0 -> 1.5707963267948966 0.044717633608306849
  444. asin0065 asin 1.0009999999999999 -0.0 -> 1.5707963267948966 -0.044717633608306849
  445. asin0066 asin 2.0 0.0 -> 1.5707963267948966 1.3169578969248168
  446. asin0067 asin 2.0 -0.0 -> 1.5707963267948966 -1.3169578969248168
  447. asin0068 asin 23.0 0.0 -> 1.5707963267948966 3.8281684713331012
  448. asin0069 asin 23.0 -0.0 -> 1.5707963267948966 -3.8281684713331012
  449. asin0070 asin 10000000000000000.0 0.0 -> 1.5707963267948966 37.534508668464674
  450. asin0071 asin 10000000000000000.0 -0.0 -> 1.5707963267948966 -37.534508668464674
  451. asin0072 asin 9.9999999999999998e+149 0.0 -> 1.5707963267948966 346.08091112966679
  452. asin0073 asin 9.9999999999999998e+149 -0.0 -> 1.5707963267948966 -346.08091112966679
  453. asin0074 asin 1.0000000000000001e+299 0.0 -> 1.5707963267948966 689.16608998577965
  454. asin0075 asin 1.0000000000000001e+299 -0.0 -> 1.5707963267948966 -689.16608998577965
  455. -- random inputs
  456. asin0100 asin -1.5979555835086083 -0.15003009814595247 -> -1.4515369557405788 -1.0544476399790823
  457. asin0101 asin -0.57488225895317679 -9.6080397838952743e-13 -> -0.61246024460412851 -1.174238005400403e-12
  458. asin0102 asin -3.6508087930516249 -0.36027527093220152 -> -1.4685890605305874 -1.9742273007152038
  459. asin0103 asin -1.5238659792326819 -1.1360813516996364 -> -0.86080051691147275 -1.3223742205689195
  460. asin0104 asin -1592.0639045555306 -0.72362427935018236 -> -1.5703418071175179 -8.0659336918729228
  461. asin0105 asin -0.19835471371312019 4.2131508416697709 -> -0.045777831019935149 2.1461732751933171
  462. asin0106 asin -1.918471054430213 0.40603305079779234 -> -1.3301396585791556 1.30263642314981
  463. asin0107 asin -254495.01623373642 0.71084414434470822 -> -1.5707935336394359 13.140183712762321
  464. asin0108 asin -0.31315882715691157 3.9647994288429866 -> -0.076450403840916004 2.0889762138713457
  465. asin0109 asin -0.90017064284720816 1.2530659485907105 -> -0.53466509741943447 1.1702811557577
  466. asin0110 asin 2.1615181696571075 -0.14058647488229523 -> 1.4976166323896871 -1.4085811039334604
  467. asin0111 asin 1.2104749210707795 -0.85732484485298999 -> 0.83913071588343924 -1.0681719250525901
  468. asin0112 asin 1.7059733185128891 -0.84032966373156581 -> 1.0510900815816229 -1.2967979791361652
  469. asin0113 asin 9.9137085017290687 -1.4608383970250893 -> 1.4237704820128891 -2.995414677560686
  470. asin0114 asin 117.12344751041495 -5453908091.5334015 -> 2.1475141411392012e-08 -23.112745450217066
  471. asin0115 asin 0.081041187798029227 0.067054349860173196 -> 0.080946786856771813 0.067223991060639698
  472. asin0116 asin 46.635472322049949 2.3835190718056678 -> 1.5197194940010779 4.5366989600972083
  473. asin0117 asin 3907.0687961127105 19.144021886390181 -> 1.5658965233083235 8.9637018715924217
  474. asin0118 asin 1.0889312322308273 509.01577883554768 -> 0.0021392803817829316 6.9256294494524706
  475. asin0119 asin 0.10851518277509224 1.5612510908217476 -> 0.058491014243902621 1.2297075725621327
  476. -- values near infinity
  477. asin0200 asin 1.5230241998821499e+308 5.5707228994084525e+307 -> 1.2201446370892068 710.37283486535966
  478. asin0201 asin 8.1334317698672204e+307 -9.2249425197872451e+307 -> 0.72259991284020042 -710.0962453049026
  479. asin0202 asin -9.9138506659241768e+307 6.701544526434995e+307 -> -0.97637511742194594 710.06887486671371
  480. asin0203 asin -1.4141298868173842e+308 -5.401505134514191e+307 -> -1.2059319055160587 -710.30396478954628
  481. asin0204 asin 0.0 9.1618092977897431e+307 -> 0.0 709.80181441050593
  482. asin0205 asin -0.0 6.8064342551939755e+307 -> -0.0 709.50463910853489
  483. asin0206 asin 0.0 -6.4997516454798215e+307 -> 0.0 -709.45853469751592
  484. asin0207 asin -0.0 -1.6767449053345242e+308 -> -0.0 -710.4062101803022
  485. asin0208 asin 5.4242749957378916e+307 0.0 -> 1.5707963267948966 709.27765497888902
  486. asin0209 asin 9.5342145121164749e+307 -0.0 -> 1.5707963267948966 -709.84165758595907
  487. asin0210 asin -7.0445698006201847e+307 0.0 -> -1.5707963267948966 709.53902780872136
  488. asin0211 asin -1.0016025569769706e+308 -0.0 -> -1.5707963267948966 -709.89095709697881
  489. asin0212 asin 1.6552203778877204e+308 0.48761543336249491 -> 1.5707963267948966 710.39328998153474
  490. asin0213 asin 1.2485712830384869e+308 -4.3489311161278899 -> 1.5707963267948966 -710.1113557467786
  491. asin0214 asin -1.5117842813353125e+308 5.123452666102434 -> -1.5707963267948966 710.30264641923031
  492. asin0215 asin -1.3167634313008016e+308 -0.52939679793528982 -> -1.5707963267948966 -710.16453260239768
  493. asin0216 asin 0.80843929176985907 1.0150851827767876e+308 -> 7.9642507396113875e-309 709.90432835561637
  494. asin0217 asin 8.2544809829680901 -1.7423548140539474e+308 -> 4.7375430746865733e-308 -710.44459336242164
  495. asin0218 asin -5.2499000118824295 4.6655578977512214e+307 -> -1.1252459249113292e-307 709.1269781491103
  496. asin0219 asin -5.9904782760833433 -4.7315689314781163e+307 -> -1.2660659419394637e-307 -709.14102757522312
  497. -- special values
  498. asin1000 asin -0.0 0.0 -> -0.0 0.0
  499. asin1001 asin 0.0 0.0 -> 0.0 0.0
  500. asin1002 asin -0.0 -0.0 -> -0.0 -0.0
  501. asin1003 asin 0.0 -0.0 -> 0.0 -0.0
  502. asin1004 asin -inf 0.0 -> -1.5707963267948966 inf
  503. asin1005 asin -inf 2.2999999999999998 -> -1.5707963267948966 inf
  504. asin1006 asin nan 0.0 -> nan nan
  505. asin1007 asin nan 2.2999999999999998 -> nan nan
  506. asin1008 asin -0.0 inf -> -0.0 inf
  507. asin1009 asin -2.2999999999999998 inf -> -0.0 inf
  508. asin1010 asin -inf inf -> -0.78539816339744828 inf
  509. asin1011 asin nan inf -> nan inf
  510. asin1012 asin -0.0 nan -> -0.0 nan
  511. asin1013 asin -2.2999999999999998 nan -> nan nan
  512. asin1014 asin -inf nan -> nan inf ignore-imag-sign
  513. asin1015 asin nan nan -> nan nan
  514. asin1016 asin inf 0.0 -> 1.5707963267948966 inf
  515. asin1017 asin inf 2.2999999999999998 -> 1.5707963267948966 inf
  516. asin1018 asin 0.0 inf -> 0.0 inf
  517. asin1019 asin 2.2999999999999998 inf -> 0.0 inf
  518. asin1020 asin inf inf -> 0.78539816339744828 inf
  519. asin1021 asin 0.0 nan -> 0.0 nan
  520. asin1022 asin 2.2999999999999998 nan -> nan nan
  521. asin1023 asin inf nan -> nan inf ignore-imag-sign
  522. asin1024 asin inf -0.0 -> 1.5707963267948966 -inf
  523. asin1025 asin inf -2.2999999999999998 -> 1.5707963267948966 -inf
  524. asin1026 asin nan -0.0 -> nan nan
  525. asin1027 asin nan -2.2999999999999998 -> nan nan
  526. asin1028 asin 0.0 -inf -> 0.0 -inf
  527. asin1029 asin 2.2999999999999998 -inf -> 0.0 -inf
  528. asin1030 asin inf -inf -> 0.78539816339744828 -inf
  529. asin1031 asin nan -inf -> nan -inf
  530. asin1032 asin -inf -0.0 -> -1.5707963267948966 -inf
  531. asin1033 asin -inf -2.2999999999999998 -> -1.5707963267948966 -inf
  532. asin1034 asin -0.0 -inf -> -0.0 -inf
  533. asin1035 asin -2.2999999999999998 -inf -> -0.0 -inf
  534. asin1036 asin -inf -inf -> -0.78539816339744828 -inf
  535. ------------------------------------
  536. -- asinh: Inverse hyperbolic sine --
  537. ------------------------------------
  538. -- zeros
  539. asinh0000 asinh 0.0 0.0 -> 0.0 0.0
  540. asinh0001 asinh 0.0 -0.0 -> 0.0 -0.0
  541. asinh0002 asinh -0.0 0.0 -> -0.0 0.0
  542. asinh0003 asinh -0.0 -0.0 -> -0.0 -0.0
  543. -- branch points: +/-i
  544. asinh0010 asinh 0.0 1.0 -> 0.0 1.5707963267948966
  545. asinh0011 asinh 0.0 -1.0 -> 0.0 -1.5707963267948966
  546. asinh0012 asinh -0.0 1.0 -> -0.0 1.5707963267948966
  547. asinh0013 asinh -0.0 -1.0 -> -0.0 -1.5707963267948966
  548. -- values along both sides of imaginary axis
  549. asinh0020 asinh 0.0 -9.8813129168249309e-324 -> 0.0 -9.8813129168249309e-324
  550. asinh0021 asinh -0.0 -9.8813129168249309e-324 -> -0.0 -9.8813129168249309e-324
  551. asinh0022 asinh 0.0 -1e-305 -> 0.0 -1e-305
  552. asinh0023 asinh -0.0 -1e-305 -> -0.0 -1e-305
  553. asinh0024 asinh 0.0 -1e-150 -> 0.0 -1e-150
  554. asinh0025 asinh -0.0 -1e-150 -> -0.0 -1e-150
  555. asinh0026 asinh 0.0 -9.9999999999999998e-17 -> 0.0 -9.9999999999999998e-17
  556. asinh0027 asinh -0.0 -9.9999999999999998e-17 -> -0.0 -9.9999999999999998e-17
  557. asinh0028 asinh 0.0 -0.001 -> 0.0 -0.0010000001666667416
  558. asinh0029 asinh -0.0 -0.001 -> -0.0 -0.0010000001666667416
  559. asinh0030 asinh 0.0 -0.57899999999999996 -> 0.0 -0.61750165481717001
  560. asinh0031 asinh -0.0 -0.57899999999999996 -> -0.0 -0.61750165481717001
  561. asinh0032 asinh 0.0 -0.99999999999999989 -> 0.0 -1.5707963118937354
  562. asinh0033 asinh -0.0 -0.99999999999999989 -> -0.0 -1.5707963118937354
  563. asinh0034 asinh 0.0 -1.0000000000000002 -> 2.1073424255447014e-08 -1.5707963267948966
  564. asinh0035 asinh -0.0 -1.0000000000000002 -> -2.1073424255447014e-08 -1.5707963267948966
  565. asinh0036 asinh 0.0 -1.0009999999999999 -> 0.044717633608306849 -1.5707963267948966
  566. asinh0037 asinh -0.0 -1.0009999999999999 -> -0.044717633608306849 -1.5707963267948966
  567. asinh0038 asinh 0.0 -2.0 -> 1.3169578969248168 -1.5707963267948966
  568. asinh0039 asinh -0.0 -2.0 -> -1.3169578969248168 -1.5707963267948966
  569. asinh0040 asinh 0.0 -20.0 -> 3.6882538673612966 -1.5707963267948966
  570. asinh0041 asinh -0.0 -20.0 -> -3.6882538673612966 -1.5707963267948966
  571. asinh0042 asinh 0.0 -10000000000000000.0 -> 37.534508668464674 -1.5707963267948966
  572. asinh0043 asinh -0.0 -10000000000000000.0 -> -37.534508668464674 -1.5707963267948966
  573. asinh0044 asinh 0.0 -9.9999999999999998e+149 -> 346.08091112966679 -1.5707963267948966
  574. asinh0045 asinh -0.0 -9.9999999999999998e+149 -> -346.08091112966679 -1.5707963267948966
  575. asinh0046 asinh 0.0 -1.0000000000000001e+299 -> 689.16608998577965 -1.5707963267948966
  576. asinh0047 asinh -0.0 -1.0000000000000001e+299 -> -689.16608998577965 -1.5707963267948966
  577. asinh0048 asinh 0.0 9.8813129168249309e-324 -> 0.0 9.8813129168249309e-324
  578. asinh0049 asinh -0.0 9.8813129168249309e-324 -> -0.0 9.8813129168249309e-324
  579. asinh0050 asinh 0.0 1e-305 -> 0.0 1e-305
  580. asinh0051 asinh -0.0 1e-305 -> -0.0 1e-305
  581. asinh0052 asinh 0.0 1e-150 -> 0.0 1e-150
  582. asinh0053 asinh -0.0 1e-150 -> -0.0 1e-150
  583. asinh0054 asinh 0.0 9.9999999999999998e-17 -> 0.0 9.9999999999999998e-17
  584. asinh0055 asinh -0.0 9.9999999999999998e-17 -> -0.0 9.9999999999999998e-17
  585. asinh0056 asinh 0.0 0.001 -> 0.0 0.0010000001666667416
  586. asinh0057 asinh -0.0 0.001 -> -0.0 0.0010000001666667416
  587. asinh0058 asinh 0.0 0.57899999999999996 -> 0.0 0.61750165481717001
  588. asinh0059 asinh -0.0 0.57899999999999996 -> -0.0 0.61750165481717001
  589. asinh0060 asinh 0.0 0.99999999999999989 -> 0.0 1.5707963118937354
  590. asinh0061 asinh -0.0 0.99999999999999989 -> -0.0 1.5707963118937354
  591. asinh0062 asinh 0.0 1.0000000000000002 -> 2.1073424255447014e-08 1.5707963267948966
  592. asinh0063 asinh -0.0 1.0000000000000002 -> -2.1073424255447014e-08 1.5707963267948966
  593. asinh0064 asinh 0.0 1.0009999999999999 -> 0.044717633608306849 1.5707963267948966
  594. asinh0065 asinh -0.0 1.0009999999999999 -> -0.044717633608306849 1.5707963267948966
  595. asinh0066 asinh 0.0 2.0 -> 1.3169578969248168 1.5707963267948966
  596. asinh0067 asinh -0.0 2.0 -> -1.3169578969248168 1.5707963267948966
  597. asinh0068 asinh 0.0 20.0 -> 3.6882538673612966 1.5707963267948966
  598. asinh0069 asinh -0.0 20.0 -> -3.6882538673612966 1.5707963267948966
  599. asinh0070 asinh 0.0 10000000000000000.0 -> 37.534508668464674 1.5707963267948966
  600. asinh0071 asinh -0.0 10000000000000000.0 -> -37.534508668464674 1.5707963267948966
  601. asinh0072 asinh 0.0 9.9999999999999998e+149 -> 346.08091112966679 1.5707963267948966
  602. asinh0073 asinh -0.0 9.9999999999999998e+149 -> -346.08091112966679 1.5707963267948966
  603. asinh0074 asinh 0.0 1.0000000000000001e+299 -> 689.16608998577965 1.5707963267948966
  604. asinh0075 asinh -0.0 1.0000000000000001e+299 -> -689.16608998577965 1.5707963267948966
  605. -- random inputs
  606. asinh0100 asinh -0.5946402853710423 -0.044506548910000145 -> -0.56459775392653022 -0.038256221441536356
  607. asinh0101 asinh -0.19353958046180916 -0.017489624793193454 -> -0.19237926804196651 -0.017171741895336792
  608. asinh0102 asinh -0.033117585138955893 -8.5256414015933757 -> -2.8327758348650969 -1.5668848791092411
  609. asinh0103 asinh -1.5184043184035716 -0.73491245339073275 -> -1.2715891419764005 -0.39204624408542355
  610. asinh0104 asinh -0.60716120271208818 -0.28900743958436542 -> -0.59119299421187232 -0.24745931678118135
  611. asinh0105 asinh -0.0237177865112429 2.8832601052166313 -> -1.7205820772413236 1.5620261702963094
  612. asinh0106 asinh -2.3906812342743979 2.6349216848574013 -> -1.9609636249445124 0.8142142660574706
  613. asinh0107 asinh -0.0027605019787620517 183.85588476550555 -> -5.9072920005445066 1.5707813120847871
  614. asinh0108 asinh -0.99083661164404713 0.028006797051617648 -> -0.8750185251283995 0.019894099615994653
  615. asinh0109 asinh -3.0362951937986393 0.86377266758504867 -> -1.8636030714685221 0.26475058859950168
  616. asinh0110 asinh 0.34438464536152769 -0.71603790174885029 -> 0.43985415690734164 -0.71015037409294324
  617. asinh0111 asinh 4.4925124413876256 -60604595352.871613 -> 25.520783738612078 -1.5707963267207683
  618. asinh0112 asinh 2.3213991428170337 -7.5459667007307258 -> 2.7560464993451643 -1.270073210856117
  619. asinh0113 asinh 0.21291939741682028 -1.2720428814784408 -> 0.77275088137338266 -1.3182099250896895
  620. asinh0114 asinh 6.6447359379455957 -0.97196191666946996 -> 2.602830695139672 -0.14368247412319965
  621. asinh0115 asinh 7.1326256655083746 2.1516360452706857 -> 2.7051146374367212 0.29051701669727581
  622. asinh0116 asinh 0.18846550905063442 3.4705348585339832 -> 1.917697875799296 1.514155593347924
  623. asinh0117 asinh 0.19065075303281598 0.26216814548222012 -> 0.19603050785932474 0.26013422809614117
  624. asinh0118 asinh 2.0242004665739719 0.70510281647495787 -> 1.4970366212896002 0.30526007200481453
  625. asinh0119 asinh 37.336596461576057 717.29157391678234 -> 7.269981997945294 1.5187910219576033
  626. -- values near infinity
  627. asinh0200 asinh 1.0760517500874541e+308 1.1497786241240167e+308 -> 710.34346055651815 0.81850936961793475
  628. asinh0201 asinh 1.1784839328845529e+308 -1.6478429586716638e+308 -> 710.59536255783678 -0.94996311735607697
  629. asinh0202 asinh -4.8777682248909193e+307 1.4103736217538474e+308 -> -710.28970147376992 1.2378239519096443
  630. asinh0203 asinh -1.2832478903233108e+308 -1.5732392613155698e+308 -> -710.59750164290745 -0.88657181439322452
  631. asinh0204 asinh 0.0 6.8431383856345372e+307 -> 709.51001718444604 1.5707963267948966
  632. asinh0205 asinh -0.0 8.601822432238051e+307 -> -709.73874482126689 1.5707963267948966
  633. asinh0206 asinh 0.0 -5.5698396067303782e+307 -> 709.30413698733742 -1.5707963267948966
  634. asinh0207 asinh -0.0 -7.1507777734621804e+307 -> -709.55399186002705 -1.5707963267948966
  635. asinh0208 asinh 1.6025136110019349e+308 0.0 -> 710.3609292261076 0.0
  636. asinh0209 asinh 1.3927819858239114e+308 -0.0 -> 710.22065899832899 -0.0
  637. asinh0210 asinh -6.0442994056210995e+307 0.0 -> -709.38588631057621 0.0
  638. asinh0211 asinh -1.2775271979042634e+308 -0.0 -> -710.13428215553972 -0.0
  639. asinh0212 asinh 1.0687496260268489e+308 1.0255615699476961 -> 709.95584521407841 9.5959010882679093e-309
  640. asinh0213 asinh 1.0050967333370962e+308 -0.87668970117333433 -> 709.89443961168183 -8.7224410556242882e-309
  641. asinh0214 asinh -5.7161452814862392e+307 8.2377808413450122 -> -709.33006540611166 1.4411426644501116e-307
  642. asinh0215 asinh -8.2009040727653315e+307 -6.407409526654976 -> -709.69101513070109 -7.8130526461510088e-308
  643. asinh0216 asinh 6.4239368496483982 1.6365990821551427e+308 -> 710.38197618101287 1.5707963267948966
  644. asinh0217 asinh 5.4729111423315882 -1.1227237438144211e+308 -> 710.00511346983546 -1.5707963267948966
  645. asinh0218 asinh -8.3455818297412723 1.443172020182019e+308 -> -710.25619930551818 1.5707963267948966
  646. asinh0219 asinh -2.6049726230372441 -1.7952291144022702e+308 -> -710.47448847685644 -1.5707963267948966
  647. -- values near 0
  648. asinh0220 asinh 1.2940113339664088e-314 6.9169190417774516e-323 -> 1.2940113339664088e-314 6.9169190417774516e-323
  649. asinh0221 asinh 2.3848478863874649e-315 -3.1907655025717717e-310 -> 2.3848478863874649e-315 -3.1907655025717717e-310
  650. asinh0222 asinh -3.0097643679641622e-316 4.6936236354918422e-322 -> -3.0097643679641622e-316 4.6936236354918422e-322
  651. asinh0223 asinh -1.787997087755751e-308 -8.5619622834902341e-310 -> -1.787997087755751e-308 -8.5619622834902341e-310
  652. asinh0224 asinh 0.0 1.2491433448427325e-314 -> 0.0 1.2491433448427325e-314
  653. asinh0225 asinh -0.0 2.5024072154538062e-308 -> -0.0 2.5024072154538062e-308
  654. asinh0226 asinh 0.0 -2.9643938750474793e-323 -> 0.0 -2.9643938750474793e-323
  655. asinh0227 asinh -0.0 -2.9396905927554169e-320 -> -0.0 -2.9396905927554169e-320
  656. asinh0228 asinh 5.64042930029359e-317 0.0 -> 5.64042930029359e-317 0.0
  657. asinh0229 asinh 3.3833911866596068e-318 -0.0 -> 3.3833911866596068e-318 -0.0
  658. asinh0230 asinh -4.9406564584124654e-324 0.0 -> -4.9406564584124654e-324 0.0
  659. asinh0231 asinh -2.2211379227994845e-308 -0.0 -> -2.2211379227994845e-308 -0.0
  660. -- special values
  661. asinh1000 asinh 0.0 0.0 -> 0.0 0.0
  662. asinh1001 asinh 0.0 -0.0 -> 0.0 -0.0
  663. asinh1002 asinh -0.0 0.0 -> -0.0 0.0
  664. asinh1003 asinh -0.0 -0.0 -> -0.0 -0.0
  665. asinh1004 asinh 0.0 inf -> inf 1.5707963267948966
  666. asinh1005 asinh 2.3 inf -> inf 1.5707963267948966
  667. asinh1006 asinh 0.0 nan -> nan nan
  668. asinh1007 asinh 2.3 nan -> nan nan
  669. asinh1008 asinh inf 0.0 -> inf 0.0
  670. asinh1009 asinh inf 2.3 -> inf 0.0
  671. asinh1010 asinh inf inf -> inf 0.78539816339744828
  672. asinh1011 asinh inf nan -> inf nan
  673. asinh1012 asinh nan 0.0 -> nan 0.0
  674. asinh1013 asinh nan 2.3 -> nan nan
  675. asinh1014 asinh nan inf -> inf nan ignore-real-sign
  676. asinh1015 asinh nan nan -> nan nan
  677. asinh1016 asinh 0.0 -inf -> inf -1.5707963267948966
  678. asinh1017 asinh 2.3 -inf -> inf -1.5707963267948966
  679. asinh1018 asinh inf -0.0 -> inf -0.0
  680. asinh1019 asinh inf -2.3 -> inf -0.0
  681. asinh1020 asinh inf -inf -> inf -0.78539816339744828
  682. asinh1021 asinh nan -0.0 -> nan -0.0
  683. asinh1022 asinh nan -2.3 -> nan nan
  684. asinh1023 asinh nan -inf -> inf nan ignore-real-sign
  685. asinh1024 asinh -0.0 -inf -> -inf -1.5707963267948966
  686. asinh1025 asinh -2.3 -inf -> -inf -1.5707963267948966
  687. asinh1026 asinh -0.0 nan -> nan nan
  688. asinh1027 asinh -2.3 nan -> nan nan
  689. asinh1028 asinh -inf -0.0 -> -inf -0.0
  690. asinh1029 asinh -inf -2.3 -> -inf -0.0
  691. asinh1030 asinh -inf -inf -> -inf -0.78539816339744828
  692. asinh1031 asinh -inf nan -> -inf nan
  693. asinh1032 asinh -0.0 inf -> -inf 1.5707963267948966
  694. asinh1033 asinh -2.3 inf -> -inf 1.5707963267948966
  695. asinh1034 asinh -inf 0.0 -> -inf 0.0
  696. asinh1035 asinh -inf 2.3 -> -inf 0.0
  697. asinh1036 asinh -inf inf -> -inf 0.78539816339744828
  698. ---------------------------
  699. -- atan: Inverse tangent --
  700. ---------------------------
  701. -- zeros
  702. -- These are tested in testAtanSign in test_cmath.py
  703. -- atan0000 atan 0.0 0.0 -> 0.0 0.0
  704. -- atan0001 atan 0.0 -0.0 -> 0.0 -0.0
  705. -- atan0002 atan -0.0 0.0 -> -0.0 0.0
  706. -- atan0003 atan -0.0 -0.0 -> -0.0 -0.0
  707. -- values along both sides of imaginary axis
  708. atan0010 atan 0.0 -9.8813129168249309e-324 -> 0.0 -9.8813129168249309e-324
  709. atan0011 atan -0.0 -9.8813129168249309e-324 -> -0.0 -9.8813129168249309e-324
  710. atan0012 atan 0.0 -1e-305 -> 0.0 -1e-305
  711. atan0013 atan -0.0 -1e-305 -> -0.0 -1e-305
  712. atan0014 atan 0.0 -1e-150 -> 0.0 -1e-150
  713. atan0015 atan -0.0 -1e-150 -> -0.0 -1e-150
  714. atan0016 atan 0.0 -9.9999999999999998e-17 -> 0.0 -9.9999999999999998e-17
  715. atan0017 atan -0.0 -9.9999999999999998e-17 -> -0.0 -9.9999999999999998e-17
  716. atan0018 atan 0.0 -0.001 -> 0.0 -0.0010000003333335333
  717. atan0019 atan -0.0 -0.001 -> -0.0 -0.0010000003333335333
  718. atan0020 atan 0.0 -0.57899999999999996 -> 0.0 -0.6609570902866303
  719. atan0021 atan -0.0 -0.57899999999999996 -> -0.0 -0.6609570902866303
  720. atan0022 atan 0.0 -0.99999999999999989 -> 0.0 -18.714973875118524
  721. atan0023 atan -0.0 -0.99999999999999989 -> -0.0 -18.714973875118524
  722. atan0024 atan 0.0 -1.0000000000000002 -> 1.5707963267948966 -18.36840028483855
  723. atan0025 atan -0.0 -1.0000000000000002 -> -1.5707963267948966 -18.36840028483855
  724. atan0026 atan 0.0 -1.0009999999999999 -> 1.5707963267948966 -3.8007011672919218
  725. atan0027 atan -0.0 -1.0009999999999999 -> -1.5707963267948966 -3.8007011672919218
  726. atan0028 atan 0.0 -2.0 -> 1.5707963267948966 -0.54930614433405489
  727. atan0029 atan -0.0 -2.0 -> -1.5707963267948966 -0.54930614433405489
  728. atan0030 atan 0.0 -20.0 -> 1.5707963267948966 -0.050041729278491265
  729. atan0031 atan -0.0 -20.0 -> -1.5707963267948966 -0.050041729278491265
  730. atan0032 atan 0.0 -10000000000000000.0 -> 1.5707963267948966 -9.9999999999999998e-17
  731. atan0033 atan -0.0 -10000000000000000.0 -> -1.5707963267948966 -9.9999999999999998e-17
  732. atan0034 atan 0.0 -9.9999999999999998e+149 -> 1.5707963267948966 -1e-150
  733. atan0035 atan -0.0 -9.9999999999999998e+149 -> -1.5707963267948966 -1e-150
  734. atan0036 atan 0.0 -1.0000000000000001e+299 -> 1.5707963267948966 -9.9999999999999999e-300
  735. atan0037 atan -0.0 -1.0000000000000001e+299 -> -1.5707963267948966 -9.9999999999999999e-300
  736. atan0038 atan 0.0 9.8813129168249309e-324 -> 0.0 9.8813129168249309e-324
  737. atan0039 atan -0.0 9.8813129168249309e-324 -> -0.0 9.8813129168249309e-324
  738. atan0040 atan 0.0 1e-305 -> 0.0 1e-305
  739. atan0041 atan -0.0 1e-305 -> -0.0 1e-305
  740. atan0042 atan 0.0 1e-150 -> 0.0 1e-150
  741. atan0043 atan -0.0 1e-150 -> -0.0 1e-150
  742. atan0044 atan 0.0 9.9999999999999998e-17 -> 0.0 9.9999999999999998e-17
  743. atan0045 atan -0.0 9.9999999999999998e-17 -> -0.0 9.9999999999999998e-17
  744. atan0046 atan 0.0 0.001 -> 0.0 0.0010000003333335333
  745. atan0047 atan -0.0 0.001 -> -0.0 0.0010000003333335333
  746. atan0048 atan 0.0 0.57899999999999996 -> 0.0 0.6609570902866303
  747. atan0049 atan -0.0 0.57899999999999996 -> -0.0 0.6609570902866303
  748. atan0050 atan 0.0 0.99999999999999989 -> 0.0 18.714973875118524
  749. atan0051 atan -0.0 0.99999999999999989 -> -0.0 18.714973875118524
  750. atan0052 atan 0.0 1.0000000000000002 -> 1.5707963267948966 18.36840028483855
  751. atan0053 atan -0.0 1.0000000000000002 -> -1.5707963267948966 18.36840028483855
  752. atan0054 atan 0.0 1.0009999999999999 -> 1.5707963267948966 3.8007011672919218
  753. atan0055 atan -0.0 1.0009999999999999 -> -1.5707963267948966 3.8007011672919218
  754. atan0056 atan 0.0 2.0 -> 1.5707963267948966 0.54930614433405489
  755. atan0057 atan -0.0 2.0 -> -1.5707963267948966 0.54930614433405489
  756. atan0058 atan 0.0 20.0 -> 1.5707963267948966 0.050041729278491265
  757. atan0059 atan -0.0 20.0 -> -1.5707963267948966 0.050041729278491265
  758. atan0060 atan 0.0 10000000000000000.0 -> 1.5707963267948966 9.9999999999999998e-17
  759. atan0061 atan -0.0 10000000000000000.0 -> -1.5707963267948966 9.9999999999999998e-17
  760. atan0062 atan 0.0 9.9999999999999998e+149 -> 1.5707963267948966 1e-150
  761. atan0063 atan -0.0 9.9999999999999998e+149 -> -1.5707963267948966 1e-150
  762. atan0064 atan 0.0 1.0000000000000001e+299 -> 1.5707963267948966 9.9999999999999999e-300
  763. atan0065 atan -0.0 1.0000000000000001e+299 -> -1.5707963267948966 9.9999999999999999e-300
  764. -- random inputs
  765. atan0100 atan -0.32538873661060214 -1.5530461550412578 -> -1.3682728427554227 -0.69451401598762041
  766. atan0101 atan -0.45863393495197929 -4799.1747094903594 -> -1.5707963068820623 -0.00020836916050636145
  767. atan0102 atan -8.3006999685976162 -2.6788890251790938 -> -1.4619862771810199 -0.034811669653327826
  768. atan0103 atan -1.8836307682985314 -1.1441976638861771 -> -1.1839984370871612 -0.20630956157312796
  769. atan0104 atan -0.00063230482407491669 -4.9312520961829485 -> -1.5707692093223147 -0.20563867743008304
  770. atan0105 atan -0.84278137150065946 179012.37493146997 -> -1.5707963267685969 5.5862059836425272e-06
  771. atan0106 atan -0.95487853984049287 14.311334539886177 -> -1.5661322859434561 0.069676024526232005
  772. atan0107 atan -1.3513252539663239 6.0500727021632198e-08 -> -0.93371676315220975 2.140800269742656e-08
  773. atan0108 atan -0.20566254458595795 0.11933771944159823 -> -0.20556463711174916 0.11493405387141732
  774. atan0109 atan -0.58563718795408559 0.64438965423212868 -> -0.68361089300233124 0.46759762751800249
  775. atan0110 atan 48.479267751948292 -78.386382460112543 -> 1.5650888770910523 -0.0092276811373297584
  776. atan0111 atan 1.0575373914056061 -0.75988012377296987 -> 0.94430886722043594 -0.31915698126703118
  777. atan0112 atan 4444810.4314677203 -0.56553404593942558 -> 1.5707961018134231 -2.8625446437701909e-14
  778. atan0113 atan 0.010101405082520009 -0.032932668550282478 -> 0.01011202676646334 -0.032941214776834996
  779. atan0114 atan 1.5353585300154911 -2.1947099346796519 -> 1.3400310739206394 -0.29996003607449045
  780. atan0115 atan 0.21869457055670882 9.9915684254007093 -> 1.5685846078876444 0.1003716881759439
  781. atan0116 atan 0.17783290150246836 0.064334689863650957 -> 0.17668728064286277 0.062435808728873846
  782. atan0117 atan 15.757474087615918 383.57262142534 -> 1.5706894060369621 0.0026026817278826603
  783. atan0118 atan 10.587017408533317 0.21720238081843438 -> 1.4766594681336236 0.0019199097383010061
  784. atan0119 atan 0.86026078678781204 0.1230148609359502 -> 0.7147259322534929 0.070551221954286605
  785. -- values near infinity
  786. atan0200 atan 7.8764397011195798e+307 8.1647921137746308e+307 -> 1.5707963267948966 6.3439446939604493e-309
  787. atan0201 atan 1.5873698696131487e+308 -1.0780367422960641e+308 -> 1.5707963267948966 -2.9279309368530781e-309
  788. atan0202 atan -1.5844551864825834e+308 1.0290657809098675e+308 -> -1.5707963267948966 2.8829614736961417e-309
  789. atan0203 atan -1.3168792562524032e+308 -9.088432341614825e+307 -> -1.5707963267948966 -3.5499373057390056e-309
  790. atan0204 atan 0.0 1.0360465742258337e+308 -> 1.5707963267948966 9.6520757355646018e-309
  791. atan0205 atan -0.0 1.0045063210373196e+308 -> -1.5707963267948966 9.955138947929503e-309
  792. atan0206 atan 0.0 -9.5155296715763696e+307 -> 1.5707963267948966 -1.050913648020118e-308
  793. atan0207 atan -0.0 -1.5565700490496501e+308 -> -1.5707963267948966 -6.4243816114189071e-309
  794. atan0208 atan 1.2956339389525244e+308 0.0 -> 1.5707963267948966 0.0
  795. atan0209 atan 1.4408126243772151e+308 -0.0 -> 1.5707963267948966 -0.0
  796. atan0210 atan -1.0631786461936417e+308 0.0 -> -1.5707963267948966 0.0
  797. atan0211 atan -1.0516056964171069e+308 -0.0 -> -1.5707963267948966 -0.0
  798. atan0212 atan 1.236162319603838e+308 4.6827953496242936 -> 1.5707963267948966 0.0
  799. atan0213 atan 7.000516472897218e+307 -5.8631608017844163 -> 1.5707963267948966 -0.0
  800. atan0214 atan -1.5053444003338508e+308 5.1199197268420313 -> -1.5707963267948966 0.0
  801. atan0215 atan -1.399172518147259e+308 -3.5687766472913673 -> -1.5707963267948966 -0.0
  802. atan0216 atan 8.1252833070803021 6.2782953917343822e+307 -> 1.5707963267948966 1.5927890256908564e-308
  803. atan0217 atan 2.8034285947515167 -1.3378049775753878e+308 -> 1.5707963267948966 -7.4749310756219562e-309
  804. atan0218 atan -1.4073509988974953 1.6776381785968355e+308 -> -1.5707963267948966 5.9607608646364569e-309
  805. atan0219 atan -2.7135551527592119 -1.281567445525738e+308 -> -1.5707963267948966 -7.8029447727565326e-309
  806. -- imaginary part = +/-1, real part tiny
  807. atan0300 atan -1e-150 -1.0 -> -0.78539816339744828 -173.04045556483339
  808. atan0301 atan 1e-155 1.0 -> 0.78539816339744828 178.79691829731851
  809. atan0302 atan 9.9999999999999999e-161 -1.0 -> 0.78539816339744828 -184.55338102980363
  810. atan0303 atan -1e-165 1.0 -> -0.78539816339744828 190.30984376228875
  811. atan0304 atan -9.9998886718268301e-321 -1.0 -> -0.78539816339744828 -368.76019403576692
  812. -- Additional real values (mpmath)
  813. atan0400 atan 1.7976931348623157e+308 0.0 -> 1.5707963267948966192 0.0
  814. atan0401 atan -1.7976931348623157e+308 0.0 -> -1.5707963267948966192 0.0
  815. atan0402 atan 1e-17 0.0 -> 1.0000000000000000715e-17 0.0
  816. atan0403 atan -1e-17 0.0 -> -1.0000000000000000715e-17 0.0
  817. atan0404 atan 0.0001 0.0 -> 0.000099999999666666673459 0.0
  818. atan0405 atan -0.0001 0.0 -> -0.000099999999666666673459 0.0
  819. atan0406 atan 0.999999999999999 0.0 -> 0.78539816339744781002 0.0
  820. atan0407 atan 1.000000000000001 0.0 -> 0.78539816339744886473 0.0
  821. atan0408 atan 14.101419947171719 0.0 -> 1.4999999999999999969 0.0
  822. atan0409 atan 1255.7655915007897 0.0 -> 1.5700000000000000622 0.0
  823. -- special values
  824. atan1000 atan -0.0 0.0 -> -0.0 0.0
  825. atan1001 atan nan 0.0 -> nan 0.0
  826. atan1002 atan -0.0 1.0 -> -0.0 inf divide-by-zero
  827. atan1003 atan -inf 0.0 -> -1.5707963267948966 0.0
  828. atan1004 atan -inf 2.2999999999999998 -> -1.5707963267948966 0.0
  829. atan1005 atan nan 2.2999999999999998 -> nan nan
  830. atan1006 atan -0.0 inf -> -1.5707963267948966 0.0
  831. atan1007 atan -2.2999999999999998 inf -> -1.5707963267948966 0.0
  832. atan1008 atan -inf inf -> -1.5707963267948966 0.0
  833. atan1009 atan nan inf -> nan 0.0
  834. atan1010 atan -0.0 nan -> nan nan
  835. atan1011 atan -2.2999999999999998 nan -> nan nan
  836. atan1012 atan -inf nan -> -1.5707963267948966 0.0 ignore-imag-sign
  837. atan1013 atan nan nan -> nan nan
  838. atan1014 atan 0.0 0.0 -> 0.0 0.0
  839. atan1015 atan 0.0 1.0 -> 0.0 inf divide-by-zero
  840. atan1016 atan inf 0.0 -> 1.5707963267948966 0.0
  841. atan1017 atan inf 2.2999999999999998 -> 1.5707963267948966 0.0
  842. atan1018 atan 0.0 inf -> 1.5707963267948966 0.0
  843. atan1019 atan 2.2999999999999998 inf -> 1.5707963267948966 0.0
  844. atan1020 atan inf inf -> 1.5707963267948966 0.0
  845. atan1021 atan 0.0 nan -> nan nan
  846. atan1022 atan 2.2999999999999998 nan -> nan nan
  847. atan1023 atan inf nan -> 1.5707963267948966 0.0 ignore-imag-sign
  848. atan1024 atan 0.0 -0.0 -> 0.0 -0.0
  849. atan1025 atan nan -0.0 -> nan -0.0
  850. atan1026 atan 0.0 -1.0 -> 0.0 -inf divide-by-zero
  851. atan1027 atan inf -0.0 -> 1.5707963267948966 -0.0
  852. atan1028 atan inf -2.2999999999999998 -> 1.5707963267948966 -0.0
  853. atan1029 atan nan -2.2999999999999998 -> nan nan
  854. atan1030 atan 0.0 -inf -> 1.5707963267948966 -0.0
  855. atan1031 atan 2.2999999999999998 -inf -> 1.5707963267948966 -0.0
  856. atan1032 atan inf -inf -> 1.5707963267948966 -0.0
  857. atan1033 atan nan -inf -> nan -0.0
  858. atan1034 atan -0.0 -0.0 -> -0.0 -0.0
  859. atan1035 atan -0.0 -1.0 -> -0.0 -inf divide-by-zero
  860. atan1036 atan -inf -0.0 -> -1.5707963267948966 -0.0
  861. atan1037 atan -inf -2.2999999999999998 -> -1.5707963267948966 -0.0
  862. atan1038 atan -0.0 -inf -> -1.5707963267948966 -0.0
  863. atan1039 atan -2.2999999999999998 -inf -> -1.5707963267948966 -0.0
  864. atan1040 atan -inf -inf -> -1.5707963267948966 -0.0
  865. ---------------------------------------
  866. -- atanh: Inverse hyperbolic tangent --
  867. ---------------------------------------
  868. -- zeros
  869. -- These are tested in testAtanhSign in test_cmath.py
  870. -- atanh0000 atanh 0.0 0.0 -> 0.0 0.0
  871. -- atanh0001 atanh 0.0 -0.0 -> 0.0 -0.0
  872. -- atanh0002 atanh -0.0 0.0 -> -0.0 0.0
  873. -- atanh0003 atanh -0.0 -0.0 -> -0.0 -0.0
  874. -- values along both sides of real axis
  875. atanh0010 atanh -9.8813129168249309e-324 0.0 -> -9.8813129168249309e-324 0.0
  876. atanh0011 atanh -9.8813129168249309e-324 -0.0 -> -9.8813129168249309e-324 -0.0
  877. atanh0012 atanh -1e-305 0.0 -> -1e-305 0.0
  878. atanh0013 atanh -1e-305 -0.0 -> -1e-305 -0.0
  879. atanh0014 atanh -1e-150 0.0 -> -1e-150 0.0
  880. atanh0015 atanh -1e-150 -0.0 -> -1e-150 -0.0
  881. atanh0016 atanh -9.9999999999999998e-17 0.0 -> -9.9999999999999998e-17 0.0
  882. atanh0017 atanh -9.9999999999999998e-17 -0.0 -> -9.9999999999999998e-17 -0.0
  883. atanh0018 atanh -0.001 0.0 -> -0.0010000003333335333 0.0
  884. atanh0019 atanh -0.001 -0.0 -> -0.0010000003333335333 -0.0
  885. atanh0020 atanh -0.57899999999999996 0.0 -> -0.6609570902866303 0.0
  886. atanh0021 atanh -0.57899999999999996 -0.0 -> -0.6609570902866303 -0.0
  887. atanh0022 atanh -0.99999999999999989 0.0 -> -18.714973875118524 0.0
  888. atanh0023 atanh -0.99999999999999989 -0.0 -> -18.714973875118524 -0.0
  889. atanh0024 atanh -1.0000000000000002 0.0 -> -18.36840028483855 1.5707963267948966
  890. atanh0025 atanh -1.0000000000000002 -0.0 -> -18.36840028483855 -1.5707963267948966
  891. atanh0026 atanh -1.0009999999999999 0.0 -> -3.8007011672919218 1.5707963267948966
  892. atanh0027 atanh -1.0009999999999999 -0.0 -> -3.8007011672919218 -1.5707963267948966
  893. atanh0028 atanh -2.0 0.0 -> -0.54930614433405489 1.5707963267948966
  894. atanh0029 atanh -2.0 -0.0 -> -0.54930614433405489 -1.5707963267948966
  895. atanh0030 atanh -23.0 0.0 -> -0.043505688494814884 1.5707963267948966
  896. atanh0031 atanh -23.0 -0.0 -> -0.043505688494814884 -1.5707963267948966
  897. atanh0032 atanh -10000000000000000.0 0.0 -> -9.9999999999999998e-17 1.5707963267948966
  898. atanh0033 atanh -10000000000000000.0 -0.0 -> -9.9999999999999998e-17 -1.5707963267948966
  899. atanh0034 atanh -9.9999999999999998e+149 0.0 -> -1e-150 1.5707963267948966
  900. atanh0035 atanh -9.9999999999999998e+149 -0.0 -> -1e-150 -1.5707963267948966
  901. atanh0036 atanh -1.0000000000000001e+299 0.0 -> -9.9999999999999999e-300 1.5707963267948966
  902. atanh0037 atanh -1.0000000000000001e+299 -0.0 -> -9.9999999999999999e-300 -1.5707963267948966
  903. atanh0038 atanh 9.8813129168249309e-324 0.0 -> 9.8813129168249309e-324 0.0
  904. atanh0039 atanh 9.8813129168249309e-324 -0.0 -> 9.8813129168249309e-324 -0.0
  905. atanh0040 atanh 1e-305 0.0 -> 1e-305 0.0
  906. atanh0041 atanh 1e-305 -0.0 -> 1e-305 -0.0
  907. atanh0042 atanh 1e-150 0.0 -> 1e-150 0.0
  908. atanh0043 atanh 1e-150 -0.0 -> 1e-150 -0.0
  909. atanh0044 atanh 9.9999999999999998e-17 0.0 -> 9.9999999999999998e-17 0.0
  910. atanh0045 atanh 9.9999999999999998e-17 -0.0 -> 9.9999999999999998e-17 -0.0
  911. atanh0046 atanh 0.001 0.0 -> 0.0010000003333335333 0.0
  912. atanh0047 atanh 0.001 -0.0 -> 0.0010000003333335333 -0.0
  913. atanh0048 atanh 0.57899999999999996 0.0 -> 0.6609570902866303 0.0
  914. atanh0049 atanh 0.57899999999999996 -0.0 -> 0.6609570902866303 -0.0
  915. atanh0050 atanh 0.99999999999999989 0.0 -> 18.714973875118524 0.0
  916. atanh0051 atanh 0.99999999999999989 -0.0 -> 18.714973875118524 -0.0
  917. atanh0052 atanh 1.0000000000000002 0.0 -> 18.36840028483855 1.5707963267948966
  918. atanh0053 atanh 1.0000000000000002 -0.0 -> 18.36840028483855 -1.5707963267948966
  919. atanh0054 atanh 1.0009999999999999 0.0 -> 3.8007011672919218 1.5707963267948966
  920. atanh0055 atanh 1.0009999999999999 -0.0 -> 3.8007011672919218 -1.5707963267948966
  921. atanh0056 atanh 2.0 0.0 -> 0.54930614433405489 1.5707963267948966
  922. atanh0057 atanh 2.0 -0.0 -> 0.54930614433405489 -1.5707963267948966
  923. atanh0058 atanh 23.0 0.0 -> 0.043505688494814884 1.5707963267948966
  924. atanh0059 atanh 23.0 -0.0 -> 0.043505688494814884 -1.5707963267948966
  925. atanh0060 atanh 10000000000000000.0 0.0 -> 9.9999999999999998e-17 1.5707963267948966
  926. atanh0061 atanh 10000000000000000.0 -0.0 -> 9.9999999999999998e-17 -1.5707963267948966
  927. atanh0062 atanh 9.9999999999999998e+149 0.0 -> 1e-150 1.5707963267948966
  928. atanh0063 atanh 9.9999999999999998e+149 -0.0 -> 1e-150 -1.5707963267948966
  929. atanh0064 atanh 1.0000000000000001e+299 0.0 -> 9.9999999999999999e-300 1.5707963267948966
  930. atanh0065 atanh 1.0000000000000001e+299 -0.0 -> 9.9999999999999999e-300 -1.5707963267948966
  931. -- random inputs
  932. atanh0100 atanh -0.54460925980633501 -0.54038050126721027 -> -0.41984265808446974 -0.60354153938352828
  933. atanh0101 atanh -1.6934614269829051 -0.48807386108113621 -> -0.58592769102243281 -1.3537837470975898
  934. atanh0102 atanh -1.3467293985501207 -0.47868354895395876 -> -0.69961624370709985 -1.1994450156570076
  935. atanh0103 atanh -5.6142232418984888 -544551613.39307702 -> -1.8932657550925744e-17 -1.5707963249585235
  936. atanh0104 atanh -0.011841460381263651 -3.259978899823385 -> -0.0010183936547405188 -1.2731614020743838
  937. atanh0105 atanh -0.0073345736950029532 0.35821949670922248 -> -0.0065004869024682466 0.34399359971920895
  938. atanh0106 atanh -13.866782244320014 0.9541129545860273 -> -0.071896852055058899 1.5658322704631409
  939. atanh0107 atanh -708.59964982780775 21.984802159266675 -> -0.0014098779074189741 1.5707525842838959
  940. atanh0108 atanh -30.916832076030602 1.3691897138829843 -> -0.032292682045743676 1.5693652094847115
  941. atanh0109 atanh -0.57461806339861754 0.29534797443913063 -> -0.56467464472482765 0.39615612824172625
  942. atanh0110 atanh 0.40089246737415685 -1.632285984300659 -> 0.1063832707890608 -1.0402821335326482
  943. atanh0111 atanh 2119.6167688262176 -1.5383653437377242e+17 -> 8.9565008518382049e-32 -1.5707963267948966
  944. atanh0112 atanh 756.86017850941641 -6.6064087133223817 -> 0.0013211481136820046 -1.5707847948702234
  945. atanh0113 atanh 4.0490617718041602 -2.5784456791040652e-12 -> 0.25218425538553618 -1.5707963267947291
  946. atanh0114 atanh 10.589254957173523 -0.13956391149624509 -> 0.094700890282197664 -1.5695407140217623
  947. atanh0115 atanh 1.0171187553160499 0.70766113465354019 -> 0.55260251975367791 0.96619711116641682
  948. atanh0116 atanh 0.031645502527750849 0.067319983726544394 -> 0.031513018344086742 0.067285437670549036
  949. atanh0117 atanh 0.13670177624994517 0.43240089361857947 -> 0.11538933151017253 0.41392008145336212
  950. atanh0118 atanh 0.64173899243596688 2.9008577686695256 -> 0.065680142424134405 1.2518535724053921
  951. atanh0119 atanh 0.19313813528025942 38.799619150741869 -> 0.00012820765917366644 1.5450292202823612
  952. -- values near infinity
  953. atanh0200 atanh 5.3242646831347954e+307 1.3740396080084153e+308 -> 2.4519253616695576e-309 1.5707963267948966
  954. atanh0201 atanh 1.158701641241358e+308 -6.5579268873375853e+307 -> 6.5365375267795098e-309 -1.5707963267948966
  955. atanh0202 atanh -1.3435325735762247e+308 9.8947369259601547e+307 -> -4.8256680906589956e-309 1.5707963267948966
  956. atanh0203 atanh -1.4359857522598942e+308 -9.4701204702391004e+307 -> -4.8531282262872645e-309 -1.5707963267948966
  957. atanh0204 atanh 0.0 5.6614181068098497e+307 -> 0.0 1.5707963267948966
  958. atanh0205 atanh -0.0 6.9813212721450139e+307 -> -0.0 1.5707963267948966
  959. atanh0206 atanh 0.0 -7.4970613060311453e+307 -> 0.0 -1.5707963267948966
  960. atanh0207 atanh -0.0 -1.5280601880314068e+308 -> -0.0 -1.5707963267948966
  961. atanh0208 atanh 8.2219472336000745e+307 0.0 -> 1.2162568933954813e-308 1.5707963267948966
  962. atanh0209 atanh 1.4811519617280899e+308 -0.0 -> 6.7515017083951325e-309 -1.5707963267948966
  963. atanh0210 atanh -1.2282016263598785e+308 0.0 -> -8.1419856360537615e-309 1.5707963267948966
  964. atanh0211 atanh -1.0616427760154426e+308 -0.0 -> -9.4193642399489563e-309 -1.5707963267948966
  965. atanh0212 atanh 1.2971536510180682e+308 5.2847948452333293 -> 7.7091869510998328e-309 1.5707963267948966
  966. atanh0213 atanh 1.1849860977411851e+308 -7.9781906447459949 -> 8.4389175696339014e-309 -1.5707963267948966
  967. atanh0214 atanh -1.4029969422586635e+308 0.93891986543663375 -> -7.127599283218073e-309 1.5707963267948966
  968. atanh0215 atanh -4.7508098912248211e+307 -8.2702421247039908 -> -2.1049042645278043e-308 -1.5707963267948966
  969. atanh0216 atanh 8.2680742115769998 8.1153898410918065e+307 -> 0.0 1.5707963267948966
  970. atanh0217 atanh 1.2575325146218885 -1.4746679147661649e+308 -> 0.0 -1.5707963267948966
  971. atanh0218 atanh -2.4618803682310899 1.3781522717005568e+308 -> -0.0 1.5707963267948966
  972. atanh0219 atanh -4.0952386694788112 -1.231083376353703e+308 -> -0.0 -1.5707963267948966
  973. -- values near 0
  974. atanh0220 atanh 3.8017563659811628e-314 2.6635484239074319e-312 -> 3.8017563659811628e-314 2.6635484239074319e-312
  975. atanh0221 atanh 1.7391110733611878e-321 -4.3547800672541419e-313 -> 1.7391110733611878e-321 -4.3547800672541419e-313
  976. atanh0222 atanh -5.9656816081325078e-317 9.9692253555416263e-313 -> -5.9656816081325078e-317 9.9692253555416263e-313
  977. atanh0223 atanh -6.5606671178400239e-313 -2.1680936406357335e-309 -> -6.5606671178400239e-313 -2.1680936406357335e-309
  978. atanh0224 atanh 0.0 2.5230944401820779e-319 -> 0.0 2.5230944401820779e-319
  979. atanh0225 atanh -0.0 5.6066569490064658e-320 -> -0.0 5.6066569490064658e-320
  980. atanh0226 atanh 0.0 -2.4222487249468377e-317 -> 0.0 -2.4222487249468377e-317
  981. atanh0227 atanh -0.0 -3.0861101089206037e-316 -> -0.0 -3.0861101089206037e-316
  982. atanh0228 atanh 3.1219222884393986e-310 0.0 -> 3.1219222884393986e-310 0.0
  983. atanh0229 atanh 9.8926337564976196e-309 -0.0 -> 9.8926337564976196e-309 -0.0
  984. atanh0230 atanh -1.5462535092918154e-312 0.0 -> -1.5462535092918154e-312 0.0
  985. atanh0231 atanh -9.8813129168249309e-324 -0.0 -> -9.8813129168249309e-324 -0.0
  986. -- real part = +/-1, imaginary part tiny
  987. atanh0300 atanh 1.0 1e-153 -> 176.49433320432448 0.78539816339744828
  988. atanh0301 atanh 1.0 9.9999999999999997e-155 -> 177.64562575082149 0.78539816339744828
  989. atanh0302 atanh -1.0 1e-161 -> -185.70467357630065 0.78539816339744828
  990. atanh0303 atanh 1.0 -1e-165 -> 190.30984376228875 -0.78539816339744828
  991. atanh0304 atanh -1.0 -9.8813129168249309e-324 -> -372.22003596069061 -0.78539816339744828
  992. -- special values
  993. atanh1000 atanh 0.0 0.0 -> 0.0 0.0
  994. atanh1001 atanh 0.0 nan -> 0.0 nan
  995. atanh1002 atanh 1.0 0.0 -> inf 0.0 divide-by-zero
  996. atanh1003 atanh 0.0 inf -> 0.0 1.5707963267948966
  997. atanh1004 atanh 2.3 inf -> 0.0 1.5707963267948966
  998. atanh1005 atanh 2.3 nan -> nan nan
  999. atanh1006 atanh inf 0.0 -> 0.0 1.5707963267948966
  1000. atanh1007 atanh inf 2.3 -> 0.0 1.5707963267948966
  1001. atanh1008 atanh inf inf -> 0.0 1.5707963267948966
  1002. atanh1009 atanh inf nan -> 0.0 nan
  1003. atanh1010 atanh nan 0.0 -> nan nan
  1004. atanh1011 atanh nan 2.3 -> nan nan
  1005. atanh1012 atanh nan inf -> 0.0 1.5707963267948966 ignore-real-sign
  1006. atanh1013 atanh nan nan -> nan nan
  1007. atanh1014 atanh 0.0 -0.0 -> 0.0 -0.0
  1008. atanh1015 atanh 1.0 -0.0 -> inf -0.0 divide-by-zero
  1009. atanh1016 atanh 0.0 -inf -> 0.0 -1.5707963267948966
  1010. atanh1017 atanh 2.3 -inf -> 0.0 -1.5707963267948966
  1011. atanh1018 atanh inf -0.0 -> 0.0 -1.5707963267948966
  1012. atanh1019 atanh inf -2.3 -> 0.0 -1.5707963267948966
  1013. atanh1020 atanh inf -inf -> 0.0 -1.5707963267948966
  1014. atanh1021 atanh nan -0.0 -> nan nan
  1015. atanh1022 atanh nan -2.3 -> nan nan
  1016. atanh1023 atanh nan -inf -> 0.0 -1.5707963267948966 ignore-real-sign
  1017. atanh1024 atanh -0.0 -0.0 -> -0.0 -0.0
  1018. atanh1025 atanh -0.0 nan -> -0.0 nan
  1019. atanh1026 atanh -1.0 -0.0 -> -inf -0.0 divide-by-zero
  1020. atanh1027 atanh -0.0 -inf -> -0.0 -1.5707963267948966
  1021. atanh1028 atanh -2.3 -inf -> -0.0 -1.5707963267948966
  1022. atanh1029 atanh -2.3 nan -> nan nan
  1023. atanh1030 atanh -inf -0.0 -> -0.0 -1.5707963267948966
  1024. atanh1031 atanh -inf -2.3 -> -0.0 -1.5707963267948966
  1025. atanh1032 atanh -inf -inf -> -0.0 -1.5707963267948966
  1026. atanh1033 atanh -inf nan -> -0.0 nan
  1027. atanh1034 atanh -0.0 0.0 -> -0.0 0.0
  1028. atanh1035 atanh -1.0 0.0 -> -inf 0.0 divide-by-zero
  1029. atanh1036 atanh -0.0 inf -> -0.0 1.5707963267948966
  1030. atanh1037 atanh -2.3 inf -> -0.0 1.5707963267948966
  1031. atanh1038 atanh -inf 0.0 -> -0.0 1.5707963267948966
  1032. atanh1039 atanh -inf 2.3 -> -0.0 1.5707963267948966
  1033. atanh1040 atanh -inf inf -> -0.0 1.5707963267948966
  1034. ----------------------------
  1035. -- log: Natural logarithm --
  1036. ----------------------------
  1037. log0000 log 1.0 0.0 -> 0.0 0.0
  1038. log0001 log 1.0 -0.0 -> 0.0 -0.0
  1039. log0002 log -1.0 0.0 -> 0.0 3.1415926535897931
  1040. log0003 log -1.0 -0.0 -> 0.0 -3.1415926535897931
  1041. -- values along both sides of real axis
  1042. log0010 log -9.8813129168249309e-324 0.0 -> -743.74692474082133 3.1415926535897931
  1043. log0011 log -9.8813129168249309e-324 -0.0 -> -743.74692474082133 -3.1415926535897931
  1044. log0012 log -1e-305 0.0 -> -702.28845336318398 3.1415926535897931
  1045. log0013 log -1e-305 -0.0 -> -702.28845336318398 -3.1415926535897931
  1046. log0014 log -1e-150 0.0 -> -345.38776394910684 3.1415926535897931
  1047. log0015 log -1e-150 -0.0 -> -345.38776394910684 -3.1415926535897931
  1048. log0016 log -9.9999999999999998e-17 0.0 -> -36.841361487904734 3.1415926535897931
  1049. log0017 log -9.9999999999999998e-17 -0.0 -> -36.841361487904734 -3.1415926535897931
  1050. log0018 log -0.001 0.0 -> -6.9077552789821368 3.1415926535897931
  1051. log0019 log -0.001 -0.0 -> -6.9077552789821368 -3.1415926535897931
  1052. log0020 log -0.57899999999999996 0.0 -> -0.54645280140914188 3.1415926535897931
  1053. log0021 log -0.57899999999999996 -0.0 -> -0.54645280140914188 -3.1415926535897931
  1054. log0022 log -0.99999999999999989 0.0 -> -1.1102230246251565e-16 3.1415926535897931
  1055. log0023 log -0.99999999999999989 -0.0 -> -1.1102230246251565e-16 -3.1415926535897931
  1056. log0024 log -1.0000000000000002 0.0 -> 2.2204460492503128e-16 3.1415926535897931
  1057. log0025 log -1.0000000000000002 -0.0 -> 2.2204460492503128e-16 -3.1415926535897931
  1058. log0026 log -1.0009999999999999 0.0 -> 0.00099950033308342321 3.1415926535897931
  1059. log0027 log -1.0009999999999999 -0.0 -> 0.00099950033308342321 -3.1415926535897931
  1060. log0028 log -2.0 0.0 -> 0.69314718055994529 3.1415926535897931
  1061. log0029 log -2.0 -0.0 -> 0.69314718055994529 -3.1415926535897931
  1062. log0030 log -23.0 0.0 -> 3.1354942159291497 3.1415926535897931
  1063. log0031 log -23.0 -0.0 -> 3.1354942159291497 -3.1415926535897931
  1064. log0032 log -10000000000000000.0 0.0 -> 36.841361487904734 3.1415926535897931
  1065. log0033 log -10000000000000000.0 -0.0 -> 36.841361487904734 -3.1415926535897931
  1066. log0034 log -9.9999999999999998e+149 0.0 -> 345.38776394910684 3.1415926535897931
  1067. log0035 log -9.9999999999999998e+149 -0.0 -> 345.38776394910684 -3.1415926535897931
  1068. log0036 log -1.0000000000000001e+299 0.0 -> 688.47294280521965 3.1415926535897931
  1069. log0037 log -1.0000000000000001e+299 -0.0 -> 688.47294280521965 -3.1415926535897931
  1070. log0038 log 9.8813129168249309e-324 0.0 -> -743.74692474082133 0.0
  1071. log0039 log 9.8813129168249309e-324 -0.0 -> -743.74692474082133 -0.0
  1072. log0040 log 1e-305 0.0 -> -702.28845336318398 0.0
  1073. log0041 log 1e-305 -0.0 -> -702.28845336318398 -0.0
  1074. log0042 log 1e-150 0.0 -> -345.38776394910684 0.0
  1075. log0043 log 1e-150 -0.0 -> -345.38776394910684 -0.0
  1076. log0044 log 9.9999999999999998e-17 0.0 -> -36.841361487904734 0.0
  1077. log0045 log 9.9999999999999998e-17 -0.0 -> -36.841361487904734 -0.0
  1078. log0046 log 0.001 0.0 -> -6.9077552789821368 0.0
  1079. log0047 log 0.001 -0.0 -> -6.9077552789821368 -0.0
  1080. log0048 log 0.57899999999999996 0.0 -> -0.54645280140914188 0.0
  1081. log0049 log 0.57899999999999996 -0.0 -> -0.54645280140914188 -0.0
  1082. log0050 log 0.99999999999999989 0.0 -> -1.1102230246251565e-16 0.0
  1083. log0051 log 0.99999999999999989 -0.0 -> -1.1102230246251565e-16 -0.0
  1084. log0052 log 1.0000000000000002 0.0 -> 2.2204460492503128e-16 0.0
  1085. log0053 log 1.0000000000000002 -0.0 -> 2.2204460492503128e-16 -0.0
  1086. log0054 log 1.0009999999999999 0.0 -> 0.00099950033308342321 0.0
  1087. log0055 log 1.0009999999999999 -0.0 -> 0.00099950033308342321 -0.0
  1088. log0056 log 2.0 0.0 -> 0.69314718055994529 0.0
  1089. log0057 log 2.0 -0.0 -> 0.69314718055994529 -0.0
  1090. log0058 log 23.0 0.0 -> 3.1354942159291497 0.0
  1091. log0059 log 23.0 -0.0 -> 3.1354942159291497 -0.0
  1092. log0060 log 10000000000000000.0 0.0 -> 36.841361487904734 0.0
  1093. log0061 log 10000000000000000.0 -0.0 -> 36.841361487904734 -0.0
  1094. log0062 log 9.9999999999999998e+149 0.0 -> 345.38776394910684 0.0
  1095. log0063 log 9.9999999999999998e+149 -0.0 -> 345.38776394910684 -0.0
  1096. log0064 log 1.0000000000000001e+299 0.0 -> 688.47294280521965 0.0
  1097. log0065 log 1.0000000000000001e+299 -0.0 -> 688.47294280521965 -0.0
  1098. -- random inputs
  1099. log0066 log -1.9830454945186191e-16 -2.0334448025673346 -> 0.70973130194329803 -1.5707963267948968
  1100. log0067 log -0.96745853024741857 -0.84995816228299692 -> 0.25292811398722387 -2.4207570438536905
  1101. log0068 log -0.1603644313948418 -0.2929942111041835 -> -1.0965857872427374 -2.0715870859971419
  1102. log0069 log -0.15917913168438699 -0.25238799251132177 -> -1.2093477313249901 -2.1334784232033863
  1103. log0070 log -0.68907818535078802 -3.0693105853476346 -> 1.1460398629184565 -1.7916403813913211
  1104. log0071 log -17.268133447565589 6.8165120014604756 -> 2.9212694465974836 2.7656245081603164
  1105. log0072 log -1.7153894479690328 26.434055372802636 -> 3.2767542953718003 1.6355986276341734
  1106. log0073 log -8.0456794648936578e-06 0.19722758057570208 -> -1.6233969848296075 1.5708371206810101
  1107. log0074 log -2.4306442691323173 0.6846919750700996 -> 0.92633592001969589 2.8670160576718331
  1108. log0075 log -3.5488049250888194 0.45324040643185254 -> 1.2747008374256426 3.0145640007885111
  1109. log0076 log 0.18418516851510189 -0.26062518836212617 -> -1.1421287121940344 -0.95558440841183434
  1110. log0077 log 2.7124837795638399 -13.148769067133387 -> 2.5971659975706802 -1.3673583045209439
  1111. log0078 log 3.6521275476169149e-13 -3.7820543023170673e-05 -> -10.182658136741569 -1.5707963171384316
  1112. log0079 log 5.0877545813862239 -1.2834978326786852 -> 1.6576856213076328 -0.24711583497738485
  1113. log0080 log 0.26477986808461512 -0.67659001194187429 -> -0.31944085207999973 -1.197773671987121
  1114. log0081 log 0.0014754261398071962 5.3514691608205442 -> 1.6773711707153829 1.5705206219261802
  1115. log0082 log 0.29667334462157885 0.00020056045042584795 -> -1.2151233667079588 0.00067603114168689204
  1116. log0083 log 0.82104233671099425 3.9005387130133102 -> 1.3827918965299593 1.3633304701848363
  1117. log0084 log 0.27268135358180667 124.42088110945804 -> 4.8236724223559229 1.5686047258789015
  1118. log0085 log 0.0026286959168267485 0.47795808180573013 -> -0.73821712137809126 1.5652965360960087
  1119. -- values near infinity
  1120. log0100 log 1.0512025744003172e+308 7.2621669750664611e+307 -> 709.44123967814494 0.60455434048332968
  1121. log0101 log 5.5344249034372126e+307 -1.2155859158431275e+308 -> 709.48562300345679 -1.143553056717973
  1122. log0102 log -1.3155575403469408e+308 1.1610793541663864e+308 -> 709.75847809546428 2.41848796504974
  1123. log0103 log -1.632366720973235e+308 -1.54299446211448e+308 -> 710.00545236515586 -2.3843326028455087
  1124. log0104 log 0.0 5.9449276692327712e+307 -> 708.67616191258526 1.5707963267948966
  1125. log0105 log -0.0 1.1201850459025692e+308 -> 709.30970253338171 1.5707963267948966
  1126. log0106 log 0.0 -1.6214225933466528e+308 -> 709.6795125501086 -1.5707963267948966
  1127. log0107 log -0.0 -1.7453269791591058e+308 -> 709.75315056087379 -1.5707963267948966
  1128. log0108 log 1.440860577601428e+308 0.0 -> 709.56144920058262 0.0
  1129. log0109 log 1.391515176148282e+308 -0.0 -> 709.52660185041327 -0.0
  1130. log0110 log -1.201354401295296e+308 0.0 -> 709.37965823023956 3.1415926535897931
  1131. log0111 log -1.6704337825976804e+308 -0.0 -> 709.70929198492399 -3.1415926535897931
  1132. log0112 log 7.2276974655190223e+307 7.94879711369164 -> 708.87154406512104 1.0997689307850458e-307
  1133. log0113 log 1.1207859593716076e+308 -6.1956200868221147 -> 709.31023883080104 -5.5279244310803286e-308
  1134. log0114 log -4.6678933874471045e+307 9.947107893220382 -> 708.43433142431388 3.1415926535897931
  1135. log0115 log -1.5108012453950142e+308 -5.3117197179375619 -> 709.60884877835008 -3.1415926535897931
  1136. log0116 log 7.4903750871504435 1.5320703776626352e+308 -> 709.62282865085137 1.5707963267948966
  1137. log0117 log 5.9760325525654778 -8.0149473997349123e+307 -> 708.97493177248396 -1.5707963267948966
  1138. log0118 log -7.880194206386629 1.7861845814767441e+308 -> 709.77629046837137 1.5707963267948966
  1139. log0119 log -9.886438993852865 -6.19235781080747e+307 -> 708.71693946977302 -1.5707963267948966
  1140. -- values near 0
  1141. log0120 log 2.2996867579227779e-308 6.7861840770939125e-312 -> -708.36343567717392 0.00029509166223339815
  1142. log0121 log 6.9169190417774516e-323 -9.0414013188948118e-322 -> -739.22766796468386 -1.4944423210001669
  1143. log0122 log -1.5378064962914011e-316 1.8243628389354635e-310 -> -713.20014803142965 1.5707971697228842
  1144. log0123 log -2.3319898483706837e-321 -2.2358763941866371e-313 -> -719.9045008332522 -1.570796337224766
  1145. log0124 log 0.0 3.872770101081121e-315 -> -723.96033425374401 1.5707963267948966
  1146. log0125 log -0.0 9.6342800939043076e-322 -> -739.16707236281752 1.5707963267948966
  1147. log0126 log 0.0 -2.266099393427834e-308 -> -708.37814861757965 -1.5707963267948966
  1148. log0127 log -0.0 -2.1184695673766626e-315 -> -724.56361036731812 -1.5707963267948966
  1149. log0128 log 1.1363509854348671e-322 0.0 -> -741.30457770545206 0.0
  1150. log0129 log 3.5572726500569751e-322 -0.0 -> -740.16340580236522 -0.0
  1151. log0130 log -2.3696071074040593e-310 0.0 -> -712.93865466421641 3.1415926535897931
  1152. log0131 log -2.813283897266934e-317 -0.0 -> -728.88512203138862 -3.1415926535897931
  1153. -- values near the unit circle
  1154. log0200 log -0.59999999999999998 0.80000000000000004 -> 2.2204460492503132e-17 2.2142974355881808
  1155. log0201 log 0.79999999999999993 0.60000000000000009 -> 6.1629758220391547e-33 0.64350110879328448
  1156. -- special values
  1157. log1000 log -0.0 0.0 -> -inf 3.1415926535897931 divide-by-zero
  1158. log1001 log 0.0 0.0 -> -inf 0.0 divide-by-zero
  1159. log1002 log 0.0 inf -> inf 1.5707963267948966
  1160. log1003 log 2.3 inf -> inf 1.5707963267948966
  1161. log1004 log -0.0 inf -> inf 1.5707963267948966
  1162. log1005 log -2.3 inf -> inf 1.5707963267948966
  1163. log1006 log 0.0 nan -> nan nan
  1164. log1007 log 2.3 nan -> nan nan
  1165. log1008 log -0.0 nan -> nan nan
  1166. log1009 log -2.3 nan -> nan nan
  1167. log1010 log -inf 0.0 -> inf 3.1415926535897931
  1168. log1011 log -inf 2.3 -> inf 3.1415926535897931
  1169. log1012 log inf 0.0 -> inf 0.0
  1170. log1013 log inf 2.3 -> inf 0.0
  1171. log1014 log -inf inf -> inf 2.3561944901923448
  1172. log1015 log inf inf -> inf 0.78539816339744828
  1173. log1016 log inf nan -> inf nan
  1174. log1017 log -inf nan -> inf nan
  1175. log1018 log nan 0.0 -> nan nan
  1176. log1019 log nan 2.3 -> nan nan
  1177. log1020 log nan inf -> inf nan
  1178. log1021 log nan nan -> nan nan
  1179. log1022 log -0.0 -0.0 -> -inf -3.1415926535897931 divide-by-zero
  1180. log1023 log 0.0 -0.0 -> -inf -0.0 divide-by-zero
  1181. log1024 log 0.0 -inf -> inf -1.5707963267948966
  1182. log1025 log 2.3 -inf -> inf -1.5707963267948966
  1183. log1026 log -0.0 -inf -> inf -1.5707963267948966
  1184. log1027 log -2.3 -inf -> inf -1.5707963267948966
  1185. log1028 log -inf -0.0 -> inf -3.1415926535897931
  1186. log1029 log -inf -2.3 -> inf -3.1415926535897931
  1187. log1030 log inf -0.0 -> inf -0.0
  1188. log1031 log inf -2.3 -> inf -0.0
  1189. log1032 log -inf -inf -> inf -2.3561944901923448
  1190. log1033 log inf -inf -> inf -0.78539816339744828
  1191. log1034 log nan -0.0 -> nan nan
  1192. log1035 log nan -2.3 -> nan nan
  1193. log1036 log nan -inf -> inf nan
  1194. ------------------------------
  1195. -- log10: Logarithm base 10 --
  1196. ------------------------------
  1197. logt0000 log10 1.0 0.0 -> 0.0 0.0
  1198. logt0001 log10 1.0 -0.0 -> 0.0 -0.0
  1199. logt0002 log10 -1.0 0.0 -> 0.0 1.3643763538418414
  1200. logt0003 log10 -1.0 -0.0 -> 0.0 -1.3643763538418414
  1201. -- values along both sides of real axis
  1202. logt0010 log10 -9.8813129168249309e-324 0.0 -> -323.0051853474518 1.3643763538418414
  1203. logt0011 log10 -9.8813129168249309e-324 -0.0 -> -323.0051853474518 -1.3643763538418414
  1204. logt0012 log10 -1e-305 0.0 -> -305.0 1.3643763538418414
  1205. logt0013 log10 -1e-305 -0.0 -> -305.0 -1.3643763538418414
  1206. logt0014 log10 -1e-150 0.0 -> -150.0 1.3643763538418414
  1207. logt0015 log10 -1e-150 -0.0 -> -150.0 -1.3643763538418414
  1208. logt0016 log10 -9.9999999999999998e-17 0.0 -> -16.0 1.3643763538418414
  1209. logt0017 log10 -9.9999999999999998e-17 -0.0 -> -16.0 -1.3643763538418414
  1210. logt0018 log10 -0.001 0.0 -> -3.0 1.3643763538418414
  1211. logt0019 log10 -0.001 -0.0 -> -3.0 -1.3643763538418414
  1212. logt0020 log10 -0.57899999999999996 0.0 -> -0.23732143627256383 1.3643763538418414
  1213. logt0021 log10 -0.57899999999999996 -0.0 -> -0.23732143627256383 -1.3643763538418414
  1214. logt0022 log10 -0.99999999999999989 0.0 -> -4.821637332766436e-17 1.3643763538418414
  1215. logt0023 log10 -0.99999999999999989 -0.0 -> -4.821637332766436e-17 -1.3643763538418414
  1216. logt0024 log10 -1.0000000000000002 0.0 -> 9.6432746655328696e-17 1.3643763538418414
  1217. logt0025 log10 -1.0000000000000002 -0.0 -> 9.6432746655328696e-17 -1.3643763538418414
  1218. logt0026 log10 -1.0009999999999999 0.0 -> 0.0004340774793185929 1.3643763538418414
  1219. logt0027 log10 -1.0009999999999999 -0.0 -> 0.0004340774793185929 -1.3643763538418414
  1220. logt0028 log10 -2.0 0.0 -> 0.3010299956639812 1.3643763538418414
  1221. logt0029 log10 -2.0 -0.0 -> 0.3010299956639812 -1.3643763538418414
  1222. logt0030 log10 -23.0 0.0 -> 1.3617278360175928 1.3643763538418414
  1223. logt0031 log10 -23.0 -0.0 -> 1.3617278360175928 -1.3643763538418414
  1224. logt0032 log10 -10000000000000000.0 0.0 -> 16.0 1.3643763538418414
  1225. logt0033 log10 -10000000000000000.0 -0.0 -> 16.0 -1.3643763538418414
  1226. logt0034 log10 -9.9999999999999998e+149 0.0 -> 150.0 1.3643763538418414
  1227. logt0035 log10 -9.9999999999999998e+149 -0.0 -> 150.0 -1.3643763538418414
  1228. logt0036 log10 -1.0000000000000001e+299 0.0 -> 299.0 1.3643763538418414
  1229. logt0037 log10 -1.0000000000000001e+299 -0.0 -> 299.0 -1.3643763538418414
  1230. logt0038 log10 9.8813129168249309e-324 0.0 -> -323.0051853474518 0.0
  1231. logt0039 log10 9.8813129168249309e-324 -0.0 -> -323.0051853474518 -0.0
  1232. logt0040 log10 1e-305 0.0 -> -305.0 0.0
  1233. logt0041 log10 1e-305 -0.0 -> -305.0 -0.0
  1234. logt0042 log10 1e-150 0.0 -> -150.0 0.0
  1235. logt0043 log10 1e-150 -0.0 -> -150.0 -0.0
  1236. logt0044 log10 9.9999999999999998e-17 0.0 -> -16.0 0.0
  1237. logt0045 log10 9.9999999999999998e-17 -0.0 -> -16.0 -0.0
  1238. logt0046 log10 0.001 0.0 -> -3.0 0.0
  1239. logt0047 log10 0.001 -0.0 -> -3.0 -0.0
  1240. logt0048 log10 0.57899999999999996 0.0 -> -0.23732143627256383 0.0
  1241. logt0049 log10 0.57899999999999996 -0.0 -> -0.23732143627256383 -0.0
  1242. logt0050 log10 0.99999999999999989 0.0 -> -4.821637332766436e-17 0.0
  1243. logt0051 log10 0.99999999999999989 -0.0 -> -4.821637332766436e-17 -0.0
  1244. logt0052 log10 1.0000000000000002 0.0 -> 9.6432746655328696e-17 0.0
  1245. logt0053 log10 1.0000000000000002 -0.0 -> 9.6432746655328696e-17 -0.0
  1246. logt0054 log10 1.0009999999999999 0.0 -> 0.0004340774793185929 0.0
  1247. logt0055 log10 1.0009999999999999 -0.0 -> 0.0004340774793185929 -0.0
  1248. logt0056 log10 2.0 0.0 -> 0.3010299956639812 0.0
  1249. logt0057 log10 2.0 -0.0 -> 0.3010299956639812 -0.0
  1250. logt0058 log10 23.0 0.0 -> 1.3617278360175928 0.0
  1251. logt0059 log10 23.0 -0.0 -> 1.3617278360175928 -0.0
  1252. logt0060 log10 10000000000000000.0 0.0 -> 16.0 0.0
  1253. logt0061 log10 10000000000000000.0 -0.0 -> 16.0 -0.0
  1254. logt0062 log10 9.9999999999999998e+149 0.0 -> 150.0 0.0
  1255. logt0063 log10 9.9999999999999998e+149 -0.0 -> 150.0 -0.0
  1256. logt0064 log10 1.0000000000000001e+299 0.0 -> 299.0 0.0
  1257. logt0065 log10 1.0000000000000001e+299 -0.0 -> 299.0 -0.0
  1258. -- random inputs
  1259. logt0066 log10 -1.9830454945186191e-16 -2.0334448025673346 -> 0.30823238806798503 -0.68218817692092071
  1260. logt0067 log10 -0.96745853024741857 -0.84995816228299692 -> 0.10984528422284802 -1.051321426174086
  1261. logt0068 log10 -0.1603644313948418 -0.2929942111041835 -> -0.47624115633305419 -0.89967884023059597
  1262. logt0069 log10 -0.15917913168438699 -0.25238799251132177 -> -0.52521304641665956 -0.92655790645688119
  1263. logt0070 log10 -0.68907818535078802 -3.0693105853476346 -> 0.4977187885066448 -0.77809953119328823
  1264. logt0071 log10 -17.268133447565589 6.8165120014604756 -> 1.2686912008098534 1.2010954629104202
  1265. logt0072 log10 -1.7153894479690328 26.434055372802636 -> 1.423076309032751 0.71033145859005309
  1266. logt0073 log10 -8.0456794648936578e-06 0.19722758057570208 -> -0.70503235244987561 0.68220589348055516
  1267. logt0074 log10 -2.4306442691323173 0.6846919750700996 -> 0.40230257845332595 1.2451292533748923
  1268. logt0075 log10 -3.5488049250888194 0.45324040643185254 -> 0.55359553977141063 1.3092085108866405
  1269. logt0076 log10 0.18418516851510189 -0.26062518836212617 -> -0.49602019732913638 -0.41500503556604301
  1270. logt0077 log10 2.7124837795638399 -13.148769067133387 -> 1.1279348613317008 -0.59383616643803216
  1271. logt0078 log10 3.6521275476169149e-13 -3.7820543023170673e-05 -> -4.4222722398941112 -0.68218817272717114
  1272. logt0079 log10 5.0877545813862239 -1.2834978326786852 -> 0.71992371806426847 -0.10732104352159283
  1273. logt0080 log10 0.26477986808461512 -0.67659001194187429 -> -0.13873139935281681 -0.52018649631300229
  1274. logt0081 log10 0.0014754261398071962 5.3514691608205442 -> 0.72847304354528819 0.6820684398178033
  1275. logt0082 log10 0.29667334462157885 0.00020056045042584795 -> -0.52772137299296806 0.00029359659442937261
  1276. logt0083 log10 0.82104233671099425 3.9005387130133102 -> 0.60053889028349361 0.59208690021184018
  1277. logt0084 log10 0.27268135358180667 124.42088110945804 -> 2.094894315538069 0.68123637673656989
  1278. logt0085 log10 0.0026286959168267485 0.47795808180573013 -> -0.32060362226100814 0.67979964816877081
  1279. -- values near infinity
  1280. logt0100 log10 1.0512025744003172e+308 7.2621669750664611e+307 -> 308.10641562682065 0.26255461408256975
  1281. logt0101 log10 5.5344249034372126e+307 -1.2155859158431275e+308 -> 308.12569106009209 -0.496638782296212
  1282. logt0102 log10 -1.3155575403469408e+308 1.1610793541663864e+308 -> 308.24419052091019 1.0503359777705266
  1283. logt0103 log10 -1.632366720973235e+308 -1.54299446211448e+308 -> 308.3514500834093 -1.0355024924378222
  1284. logt0104 log10 0.0 5.9449276692327712e+307 -> 307.77414657501117 0.68218817692092071
  1285. logt0105 log10 -0.0 1.1201850459025692e+308 -> 308.04928977068465 0.68218817692092071
  1286. logt0106 log10 0.0 -1.6214225933466528e+308 -> 308.20989622030174 -0.68218817692092071
  1287. logt0107 log10 -0.0 -1.7453269791591058e+308 -> 308.24187680203539 -0.68218817692092071
  1288. logt0108 log10 1.440860577601428e+308 0.0 -> 308.15862195908755 0.0
  1289. logt0109 log10 1.391515176148282e+308 -0.0 -> 308.14348794720007 -0.0
  1290. logt0110 log10 -1.201354401295296e+308 0.0 -> 308.07967114380773 1.3643763538418414
  1291. logt0111 log10 -1.6704337825976804e+308 -0.0 -> 308.22282926451624 -1.3643763538418414
  1292. logt0112 log10 7.2276974655190223e+307 7.94879711369164 -> 307.85899996571993 4.7762357800858463e-308
  1293. logt0113 log10 1.1207859593716076e+308 -6.1956200868221147 -> 308.04952268169455 -2.4007470767963597e-308
  1294. logt0114 log10 -4.6678933874471045e+307 9.947107893220382 -> 307.66912092839902 1.3643763538418414
  1295. logt0115 log10 -1.5108012453950142e+308 -5.3117197179375619 -> 308.1792073341565 -1.3643763538418414
  1296. logt0116 log10 7.4903750871504435 1.5320703776626352e+308 -> 308.18527871564157 0.68218817692092071
  1297. logt0117 log10 5.9760325525654778 -8.0149473997349123e+307 -> 307.90390067652424 -0.68218817692092071
  1298. logt0118 log10 -7.880194206386629 1.7861845814767441e+308 -> 308.25192633617331 0.68218817692092071
  1299. logt0119 log10 -9.886438993852865 -6.19235781080747e+307 -> 307.79185604308338 -0.68218817692092071
  1300. -- values near 0
  1301. logt0120 log10 2.2996867579227779e-308 6.7861840770939125e-312 -> -307.63833129662572 0.00012815668056362305
  1302. logt0121 log10 6.9169190417774516e-323 -9.0414013188948118e-322 -> -321.04249706727148 -0.64902805353306059
  1303. logt0122 log10 -1.5378064962914011e-316 1.8243628389354635e-310 -> -309.73888878263222 0.68218854299989429
  1304. logt0123 log10 -2.3319898483706837e-321 -2.2358763941866371e-313 -> -312.65055220919641 -0.68218818145055538
  1305. logt0124 log10 0.0 3.872770101081121e-315 -> -314.41197828323476 0.68218817692092071
  1306. logt0125 log10 -0.0 9.6342800939043076e-322 -> -321.01618073175331 0.68218817692092071
  1307. logt0126 log10 0.0 -2.266099393427834e-308 -> -307.64472104545649 -0.68218817692092071
  1308. logt0127 log10 -0.0 -2.1184695673766626e-315 -> -314.67397777042407 -0.68218817692092071
  1309. logt0128 log10 1.1363509854348671e-322 0.0 -> -321.94448750709819 0.0
  1310. logt0129 log10 3.5572726500569751e-322 -0.0 -> -321.44888284668451 -0.0
  1311. logt0130 log10 -2.3696071074040593e-310 0.0 -> -309.62532365619722 1.3643763538418414
  1312. logt0131 log10 -2.813283897266934e-317 -0.0 -> -316.55078643961042 -1.3643763538418414
  1313. -- values near the unit circle
  1314. logt0200 log10 -0.59999999999999998 0.80000000000000004 -> 9.6432746655328709e-18 0.96165715756846815
  1315. logt0201 log10 0.79999999999999993 0.60000000000000009 -> 2.6765463916147622e-33 0.2794689806475476
  1316. -- special values
  1317. logt1000 log10 -0.0 0.0 -> -inf 1.3643763538418414 divide-by-zero
  1318. logt1001 log10 0.0 0.0 -> -inf 0.0 divide-by-zero
  1319. logt1002 log10 0.0 inf -> inf 0.68218817692092071
  1320. logt1003 log10 2.3 inf -> inf 0.68218817692092071
  1321. logt1004 log10 -0.0 inf -> inf 0.68218817692092071
  1322. logt1005 log10 -2.3 inf -> inf 0.68218817692092071
  1323. logt1006 log10 0.0 nan -> nan nan
  1324. logt1007 log10 2.3 nan -> nan nan
  1325. logt1008 log10 -0.0 nan -> nan nan
  1326. logt1009 log10 -2.3 nan -> nan nan
  1327. logt1010 log10 -inf 0.0 -> inf 1.3643763538418414
  1328. logt1011 log10 -inf 2.3 -> inf 1.3643763538418414
  1329. logt1012 log10 inf 0.0 -> inf 0.0
  1330. logt1013 log10 inf 2.3 -> inf 0.0
  1331. logt1014 log10 -inf inf -> inf 1.0232822653813811
  1332. logt1015 log10 inf inf -> inf 0.34109408846046035
  1333. logt1016 log10 inf nan -> inf nan
  1334. logt1017 log10 -inf nan -> inf nan
  1335. logt1018 log10 nan 0.0 -> nan nan
  1336. logt1019 log10 nan 2.3 -> nan nan
  1337. logt1020 log10 nan inf -> inf nan
  1338. logt1021 log10 nan nan -> nan nan
  1339. logt1022 log10 -0.0 -0.0 -> -inf -1.3643763538418414 divide-by-zero
  1340. logt1023 log10 0.0 -0.0 -> -inf -0.0 divide-by-zero
  1341. logt1024 log10 0.0 -inf -> inf -0.68218817692092071
  1342. logt1025 log10 2.3 -inf -> inf -0.68218817692092071
  1343. logt1026 log10 -0.0 -inf -> inf -0.68218817692092071
  1344. logt1027 log10 -2.3 -inf -> inf -0.68218817692092071
  1345. logt1028 log10 -inf -0.0 -> inf -1.3643763538418414
  1346. logt1029 log10 -inf -2.3 -> inf -1.3643763538418414
  1347. logt1030 log10 inf -0.0 -> inf -0.0
  1348. logt1031 log10 inf -2.3 -> inf -0.0
  1349. logt1032 log10 -inf -inf -> inf -1.0232822653813811
  1350. logt1033 log10 inf -inf -> inf -0.34109408846046035
  1351. logt1034 log10 nan -0.0 -> nan nan
  1352. logt1035 log10 nan -2.3 -> nan nan
  1353. logt1036 log10 nan -inf -> inf nan
  1354. -----------------------
  1355. -- sqrt: Square root --
  1356. -----------------------
  1357. -- zeros
  1358. sqrt0000 sqrt 0.0 0.0 -> 0.0 0.0
  1359. sqrt0001 sqrt 0.0 -0.0 -> 0.0 -0.0
  1360. sqrt0002 sqrt -0.0 0.0 -> 0.0 0.0
  1361. sqrt0003 sqrt -0.0 -0.0 -> 0.0 -0.0
  1362. -- values along both sides of real axis
  1363. sqrt0010 sqrt -9.8813129168249309e-324 0.0 -> 0.0 3.1434555694052576e-162
  1364. sqrt0011 sqrt -9.8813129168249309e-324 -0.0 -> 0.0 -3.1434555694052576e-162
  1365. sqrt0012 sqrt -1e-305 0.0 -> 0.0 3.1622776601683791e-153
  1366. sqrt0013 sqrt -1e-305 -0.0 -> 0.0 -3.1622776601683791e-153
  1367. sqrt0014 sqrt -1e-150 0.0 -> 0.0 9.9999999999999996e-76
  1368. sqrt0015 sqrt -1e-150 -0.0 -> 0.0 -9.9999999999999996e-76
  1369. sqrt0016 sqrt -9.9999999999999998e-17 0.0 -> 0.0 1e-08
  1370. sqrt0017 sqrt -9.9999999999999998e-17 -0.0 -> 0.0 -1e-08
  1371. sqrt0018 sqrt -0.001 0.0 -> 0.0 0.031622776601683791
  1372. sqrt0019 sqrt -0.001 -0.0 -> 0.0 -0.031622776601683791
  1373. sqrt0020 sqrt -0.57899999999999996 0.0 -> 0.0 0.76092049518987193
  1374. sqrt0021 sqrt -0.57899999999999996 -0.0 -> 0.0 -0.76092049518987193
  1375. sqrt0022 sqrt -0.99999999999999989 0.0 -> 0.0 0.99999999999999989
  1376. sqrt0023 sqrt -0.99999999999999989 -0.0 -> 0.0 -0.99999999999999989
  1377. sqrt0024 sqrt -1.0000000000000002 0.0 -> 0.0 1.0
  1378. sqrt0025 sqrt -1.0000000000000002 -0.0 -> 0.0 -1.0
  1379. sqrt0026 sqrt -1.0009999999999999 0.0 -> 0.0 1.000499875062461
  1380. sqrt0027 sqrt -1.0009999999999999 -0.0 -> 0.0 -1.000499875062461
  1381. sqrt0028 sqrt -2.0 0.0 -> 0.0 1.4142135623730951
  1382. sqrt0029 sqrt -2.0 -0.0 -> 0.0 -1.4142135623730951
  1383. sqrt0030 sqrt -23.0 0.0 -> 0.0 4.7958315233127191
  1384. sqrt0031 sqrt -23.0 -0.0 -> 0.0 -4.7958315233127191
  1385. sqrt0032 sqrt -10000000000000000.0 0.0 -> 0.0 100000000.0
  1386. sqrt0033 sqrt -10000000000000000.0 -0.0 -> 0.0 -100000000.0
  1387. sqrt0034 sqrt -9.9999999999999998e+149 0.0 -> 0.0 9.9999999999999993e+74
  1388. sqrt0035 sqrt -9.9999999999999998e+149 -0.0 -> 0.0 -9.9999999999999993e+74
  1389. sqrt0036 sqrt -1.0000000000000001e+299 0.0 -> 0.0 3.1622776601683796e+149
  1390. sqrt0037 sqrt -1.0000000000000001e+299 -0.0 -> 0.0 -3.1622776601683796e+149
  1391. sqrt0038 sqrt 9.8813129168249309e-324 0.0 -> 3.1434555694052576e-162 0.0
  1392. sqrt0039 sqrt 9.8813129168249309e-324 -0.0 -> 3.1434555694052576e-162 -0.0
  1393. sqrt0040 sqrt 1e-305 0.0 -> 3.1622776601683791e-153 0.0
  1394. sqrt0041 sqrt 1e-305 -0.0 -> 3.1622776601683791e-153 -0.0
  1395. sqrt0042 sqrt 1e-150 0.0 -> 9.9999999999999996e-76 0.0
  1396. sqrt0043 sqrt 1e-150 -0.0 -> 9.9999999999999996e-76 -0.0
  1397. sqrt0044 sqrt 9.9999999999999998e-17 0.0 -> 1e-08 0.0
  1398. sqrt0045 sqrt 9.9999999999999998e-17 -0.0 -> 1e-08 -0.0
  1399. sqrt0046 sqrt 0.001 0.0 -> 0.031622776601683791 0.0
  1400. sqrt0047 sqrt 0.001 -0.0 -> 0.031622776601683791 -0.0
  1401. sqrt0048 sqrt 0.57899999999999996 0.0 -> 0.76092049518987193 0.0
  1402. sqrt0049 sqrt 0.57899999999999996 -0.0 -> 0.76092049518987193 -0.0
  1403. sqrt0050 sqrt 0.99999999999999989 0.0 -> 0.99999999999999989 0.0
  1404. sqrt0051 sqrt 0.99999999999999989 -0.0 -> 0.99999999999999989 -0.0
  1405. sqrt0052 sqrt 1.0000000000000002 0.0 -> 1.0 0.0
  1406. sqrt0053 sqrt 1.0000000000000002 -0.0 -> 1.0 -0.0
  1407. sqrt0054 sqrt 1.0009999999999999 0.0 -> 1.000499875062461 0.0
  1408. sqrt0055 sqrt 1.0009999999999999 -0.0 -> 1.000499875062461 -0.0
  1409. sqrt0056 sqrt 2.0 0.0 -> 1.4142135623730951 0.0
  1410. sqrt0057 sqrt 2.0 -0.0 -> 1.4142135623730951 -0.0
  1411. sqrt0058 sqrt 23.0 0.0 -> 4.7958315233127191 0.0
  1412. sqrt0059 sqrt 23.0 -0.0 -> 4.7958315233127191 -0.0
  1413. sqrt0060 sqrt 10000000000000000.0 0.0 -> 100000000.0 0.0
  1414. sqrt0061 sqrt 10000000000000000.0 -0.0 -> 100000000.0 -0.0
  1415. sqrt0062 sqrt 9.9999999999999998e+149 0.0 -> 9.9999999999999993e+74 0.0
  1416. sqrt0063 sqrt 9.9999999999999998e+149 -0.0 -> 9.9999999999999993e+74 -0.0
  1417. sqrt0064 sqrt 1.0000000000000001e+299 0.0 -> 3.1622776601683796e+149 0.0
  1418. sqrt0065 sqrt 1.0000000000000001e+299 -0.0 -> 3.1622776601683796e+149 -0.0
  1419. -- random inputs
  1420. sqrt0100 sqrt -0.34252542541549913 -223039880.15076211 -> 10560.300180587592 -10560.300196805192
  1421. sqrt0101 sqrt -0.88790791393018909 -5.3307751730827402 -> 1.5027154613689004 -1.7737140896343291
  1422. sqrt0102 sqrt -113916.89291310767 -0.018143374626153858 -> 2.6877817875351178e-05 -337.51576691038952
  1423. sqrt0103 sqrt -0.63187172386197121 -0.26293913366617694 -> 0.16205707495266153 -0.81125471918761971
  1424. sqrt0104 sqrt -0.058185169308906215 -2.3548312990430991 -> 1.0717660342420072 -1.0985752598086966
  1425. sqrt0105 sqrt -1.0580584765935896 0.14400319259151736 -> 0.069837489270111242 1.030987755262468
  1426. sqrt0106 sqrt -1.1667595947504932 0.11159711473953678 -> 0.051598531319315251 1.0813981705111229
  1427. sqrt0107 sqrt -0.5123728411449906 0.026175433648339085 -> 0.018278026262418718 0.71603556293597614
  1428. sqrt0108 sqrt -3.7453400060067228 1.0946500314809635 -> 0.27990088541692498 1.9554243814742367
  1429. sqrt0109 sqrt -0.0027736121575097673 1.0367943000839817 -> 0.71903560338719175 0.72096172651250545
  1430. sqrt0110 sqrt 1501.2559699453188 -1.1997325207283589 -> 38.746047664730959 -0.015481998720355024
  1431. sqrt0111 sqrt 1.4830075326850578 -0.64100878436755349 -> 1.244712815741096 -0.25749264258434584
  1432. sqrt0112 sqrt 0.095395618499734602 -0.48226565701639595 -> 0.54175904053472879 -0.44509239434231551
  1433. sqrt0113 sqrt 0.50109185681863277 -0.54054037379892561 -> 0.7868179858332387 -0.34349772344520979
  1434. sqrt0114 sqrt 0.98779807595367897 -0.00019848758437225191 -> 0.99388031770665153 -9.9854872279921968e-05
  1435. sqrt0115 sqrt 11.845472380792259 0.0010051104581506761 -> 3.4417252072345397 0.00014601840612346451
  1436. sqrt0116 sqrt 2.3558249686735975 0.25605157371744403 -> 1.5371278477386647 0.083288964575761404
  1437. sqrt0117 sqrt 0.77584894123159098 1.0496420627016076 -> 1.0200744386390885 0.51449287568756552
  1438. sqrt0118 sqrt 1.8961715669604893 0.34940793467158854 -> 1.3827991781411615 0.12634080935066902
  1439. sqrt0119 sqrt 0.96025378316565801 0.69573224860140515 -> 1.0358710342209998 0.33581991658093457
  1440. -- values near 0
  1441. sqrt0120 sqrt 7.3577938365086866e-313 8.1181408465112743e-319 -> 8.5777583531543516e-157 4.732087634251168e-163
  1442. sqrt0121 sqrt 1.2406883874892108e-310 -5.1210133324269776e-312 -> 1.1140990057468052e-155 -2.2982756945349973e-157
  1443. sqrt0122 sqrt -7.1145453001139502e-322 2.9561379244703735e-314 -> 1.2157585807480286e-157 1.2157586100077242e-157
  1444. sqrt0123 sqrt -4.9963244206801218e-314 -8.4718424423690227e-319 -> 1.8950582312540437e-162 -2.2352459419578971e-157
  1445. sqrt0124 sqrt 0.0 7.699553609385195e-318 -> 1.9620848107797476e-159 1.9620848107797476e-159
  1446. sqrt0125 sqrt -0.0 3.3900826606499415e-309 -> 4.1170879639922327e-155 4.1170879639922327e-155
  1447. sqrt0126 sqrt 0.0 -9.8907989772250828e-319 -> 7.032353438652342e-160 -7.032353438652342e-160
  1448. sqrt0127 sqrt -0.0 -1.3722939367590908e-315 -> 2.6194407196566702e-158 -2.6194407196566702e-158
  1449. sqrt0128 sqrt 7.9050503334599447e-323 0.0 -> 8.8910349979403099e-162 0.0
  1450. sqrt0129 sqrt 1.8623241768349486e-309 -0.0 -> 4.3154654173506579e-155 -0.0
  1451. sqrt0130 sqrt -2.665971134499887e-308 0.0 -> 0.0 1.6327801856036491e-154
  1452. sqrt0131 sqrt -1.5477066694467245e-310 -0.0 -> 0.0 -1.2440685951533077e-155
  1453. -- inputs whose absolute value overflows
  1454. sqrt0140 sqrt 1.6999999999999999e+308 -1.6999999999999999e+308 -> 1.4325088230154573e+154 -5.9336458271212207e+153
  1455. sqrt0141 sqrt -1.797e+308 -9.9999999999999999e+306 -> 3.7284476432057307e+152 -1.3410406899802901e+154
  1456. -- Additional real values (mpmath)
  1457. sqrt0150 sqrt 1.7976931348623157e+308 0.0 -> 1.3407807929942596355e+154 0.0
  1458. sqrt0151 sqrt 2.2250738585072014e-308 0.0 -> 1.4916681462400413487e-154 0.0
  1459. sqrt0152 sqrt 5e-324 0.0 -> 2.2227587494850774834e-162 0.0
  1460. -- special values
  1461. sqrt1000 sqrt 0.0 0.0 -> 0.0 0.0
  1462. sqrt1001 sqrt -0.0 0.0 -> 0.0 0.0
  1463. sqrt1002 sqrt 0.0 inf -> inf inf
  1464. sqrt1003 sqrt 2.3 inf -> inf inf
  1465. sqrt1004 sqrt inf inf -> inf inf
  1466. sqrt1005 sqrt -0.0 inf -> inf inf
  1467. sqrt1006 sqrt -2.3 inf -> inf inf
  1468. sqrt1007 sqrt -inf inf -> inf inf
  1469. sqrt1008 sqrt nan inf -> inf inf
  1470. sqrt1009 sqrt 0.0 nan -> nan nan
  1471. sqrt1010 sqrt 2.3 nan -> nan nan
  1472. sqrt1011 sqrt -0.0 nan -> nan nan
  1473. sqrt1012 sqrt -2.3 nan -> nan nan
  1474. sqrt1013 sqrt -inf 0.0 -> 0.0 inf
  1475. sqrt1014 sqrt -inf 2.3 -> 0.0 inf
  1476. sqrt1015 sqrt inf 0.0 -> inf 0.0
  1477. sqrt1016 sqrt inf 2.3 -> inf 0.0
  1478. sqrt1017 sqrt -inf nan -> nan inf ignore-imag-sign
  1479. sqrt1018 sqrt inf nan -> inf nan
  1480. sqrt1019 sqrt nan 0.0 -> nan nan
  1481. sqrt1020 sqrt nan 2.3 -> nan nan
  1482. sqrt1021 sqrt nan nan -> nan nan
  1483. sqrt1022 sqrt 0.0 -0.0 -> 0.0 -0.0
  1484. sqrt1023 sqrt -0.0 -0.0 -> 0.0 -0.0
  1485. sqrt1024 sqrt 0.0 -inf -> inf -inf
  1486. sqrt1025 sqrt 2.3 -inf -> inf -inf
  1487. sqrt1026 sqrt inf -inf -> inf -inf
  1488. sqrt1027 sqrt -0.0 -inf -> inf -inf
  1489. sqrt1028 sqrt -2.3 -inf -> inf -inf
  1490. sqrt1029 sqrt -inf -inf -> inf -inf
  1491. sqrt1030 sqrt nan -inf -> inf -inf
  1492. sqrt1031 sqrt -inf -0.0 -> 0.0 -inf
  1493. sqrt1032 sqrt -inf -2.3 -> 0.0 -inf
  1494. sqrt1033 sqrt inf -0.0 -> inf -0.0
  1495. sqrt1034 sqrt inf -2.3 -> inf -0.0
  1496. sqrt1035 sqrt nan -0.0 -> nan nan
  1497. sqrt1036 sqrt nan -2.3 -> nan nan
  1498. -- For exp, cosh, sinh, tanh we limit tests to arguments whose
  1499. -- imaginary part is less than 10 in absolute value: most math
  1500. -- libraries have poor accuracy for (real) sine and cosine for
  1501. -- large arguments, and the accuracy of these complex functions
  1502. -- suffer correspondingly.
  1503. --
  1504. -- Similarly, for cos, sin and tan we limit tests to arguments
  1505. -- with relatively small real part.
  1506. -------------------------------
  1507. -- exp: Exponential function --
  1508. -------------------------------
  1509. -- zeros
  1510. exp0000 exp 0.0 0.0 -> 1.0 0.0
  1511. exp0001 exp 0.0 -0.0 -> 1.0 -0.0
  1512. exp0002 exp -0.0 0.0 -> 1.0 0.0
  1513. exp0003 exp -0.0 -0.0 -> 1.0 -0.0
  1514. -- random inputs
  1515. exp0004 exp -17.957359009564684 -1.108613895795274 -> 7.0869292576226611e-09 -1.4225929202377833e-08
  1516. exp0005 exp -1.4456149663368642e-15 -0.75359817331772239 -> 0.72923148323917997 -0.68426708517419033
  1517. exp0006 exp -0.76008654883512661 -0.46657235480105019 -> 0.41764393109928666 -0.21035108396792854
  1518. exp0007 exp -5.7071614697735731 -2.3744161818115816e-11 -> 0.0033220890242068356 -7.8880219364953578e-14
  1519. exp0008 exp -0.4653981327927097 -5.2236706667445587e-21 -> 0.62788507378216663 -3.2798648420026468e-21
  1520. exp0009 exp -3.2444565242295518 1.1535625304243959 -> 0.015799936931457641 0.035644950380024749
  1521. exp0010 exp -3.0651456337977727 0.87765086532391878 -> 0.029805595629855953 0.035882775180855669
  1522. exp0011 exp -0.11080823753233926 0.96486386300873106 -> 0.50979112534376314 0.73575512419561562
  1523. exp0012 exp -2.5629722598928648 0.019636235754708079 -> 0.077060452853917397 0.0015133717341137684
  1524. exp0013 exp -3.3201709957983357e-10 1.2684017344487268 -> 0.29780699855434889 0.95462610007689186
  1525. exp0014 exp 0.88767276057993272 -0.18953422986895557 -> 2.3859624049858095 -0.45771559132044426
  1526. exp0015 exp 1.5738333486794742 -2.2576803075544328e-11 -> 4.8251091132458654 -1.0893553826776623e-10
  1527. exp0016 exp 1.6408702341813795 -1.438879484380837 -> 0.6786733590689048 -5.1148284173168825
  1528. exp0017 exp 1.820279424202033 -0.020812040370785722 -> 6.1722462896420902 -0.1284755888435051
  1529. exp0018 exp 1.7273965735945873 -0.61140621328954947 -> 4.6067931898799976 -3.2294267694441308
  1530. exp0019 exp 2.5606034306862995 0.098153136008435504 -> 12.881325889966629 1.2684184812864494
  1531. exp0020 exp 10.280368619483029 3.4564622559748535 -> -27721.283321551502 -9028.9663215568835
  1532. exp0021 exp 1.104007405129741e-155 0.21258803067317278 -> 0.97748813933531764 0.21099037290544478
  1533. exp0022 exp 0.027364777809295172 0.00059226603500623363 -> 1.0277424518451876 0.0006086970181346579
  1534. exp0023 exp 0.94356313429255245 3.418530463518592 -> -2.4712285695346194 -0.70242654900218349
  1535. -- cases where exp(z) representable, exp(z.real) not
  1536. exp0030 exp 710.0 0.78500000000000003 -> 1.5803016909637158e+308 1.5790437551806911e+308
  1537. exp0031 exp 710.0 -0.78500000000000003 -> 1.5803016909637158e+308 -1.5790437551806911e+308
  1538. -- values for which exp(x) is subnormal, or underflows to 0
  1539. exp0040 exp -735.0 0.78500000000000003 -> 4.3976783136329355e-320 4.3942198541120468e-320
  1540. exp0041 exp -735.0 -2.3559999999999999 -> -4.3952079854037293e-320 -4.396690182341253e-320
  1541. exp0042 exp -745.0 0.0 -> 4.9406564584124654e-324 0.0
  1542. exp0043 exp -745.0 0.7 -> 0.0 0.0
  1543. exp0044 exp -745.0 2.1 -> -0.0 0.0
  1544. exp0045 exp -745.0 3.7 -> -0.0 -0.0
  1545. exp0046 exp -745.0 5.3 -> 0.0 -0.0
  1546. -- values for which exp(z) overflows
  1547. exp0050 exp 710.0 0.0 -> inf 0.0 overflow
  1548. exp0051 exp 711.0 0.7 -> inf inf overflow
  1549. exp0052 exp 710.0 1.5 -> 1.5802653829857376e+307 inf overflow
  1550. exp0053 exp 710.0 1.6 -> -6.5231579995501372e+306 inf overflow
  1551. exp0054 exp 710.0 2.8 -> -inf 7.4836177417448528e+307 overflow
  1552. -- Additional real values (mpmath)
  1553. exp0070 exp 1e-08 0.0 -> 1.00000001000000005 0.0
  1554. exp0071 exp 0.0003 0.0 -> 1.0003000450045003375 0.0
  1555. exp0072 exp 0.2 0.0 -> 1.2214027581601698475 0.0
  1556. exp0073 exp 1.0 0.0 -> 2.7182818284590452354 0.0
  1557. exp0074 exp -1e-08 0.0 -> 0.99999999000000005 0.0
  1558. exp0075 exp -0.0003 0.0 -> 0.99970004499550033751 0.0
  1559. exp0076 exp -1.0 0.0 -> 0.3678794411714423216 0.0
  1560. exp0077 exp 2.220446049250313e-16 0.0 -> 1.000000000000000222 0.0
  1561. exp0078 exp -1.1102230246251565e-16 0.0 -> 0.99999999999999988898 0.0
  1562. exp0079 exp 2.302585092994046 0.0 -> 10.000000000000002171 0.0
  1563. exp0080 exp -2.302585092994046 0.0 -> 0.099999999999999978292 0.0
  1564. exp0081 exp 709.7827 0.0 -> 1.7976699566638014654e+308 0.0
  1565. -- special values
  1566. exp1000 exp 0.0 0.0 -> 1.0 0.0
  1567. exp1001 exp -0.0 0.0 -> 1.0 0.0
  1568. exp1002 exp 0.0 inf -> nan nan invalid
  1569. exp1003 exp 2.3 inf -> nan nan invalid
  1570. exp1004 exp -0.0 inf -> nan nan invalid
  1571. exp1005 exp -2.3 inf -> nan nan invalid
  1572. exp1006 exp 0.0 nan -> nan nan
  1573. exp1007 exp 2.3 nan -> nan nan
  1574. exp1008 exp -0.0 nan -> nan nan
  1575. exp1009 exp -2.3 nan -> nan nan
  1576. exp1010 exp -inf 0.0 -> 0.0 0.0
  1577. exp1011 exp -inf 1.4 -> 0.0 0.0
  1578. exp1012 exp -inf 2.8 -> -0.0 0.0
  1579. exp1013 exp -inf 4.2 -> -0.0 -0.0
  1580. exp1014 exp -inf 5.6 -> 0.0 -0.0
  1581. exp1015 exp -inf 7.0 -> 0.0 0.0
  1582. exp1016 exp inf 0.0 -> inf 0.0
  1583. exp1017 exp inf 1.4 -> inf inf
  1584. exp1018 exp inf 2.8 -> -inf inf
  1585. exp1019 exp inf 4.2 -> -inf -inf
  1586. exp1020 exp inf 5.6 -> inf -inf
  1587. exp1021 exp inf 7.0 -> inf inf
  1588. exp1022 exp -inf inf -> 0.0 0.0 ignore-real-sign ignore-imag-sign
  1589. exp1023 exp inf inf -> inf nan invalid ignore-real-sign
  1590. exp1024 exp -inf nan -> 0.0 0.0 ignore-real-sign ignore-imag-sign
  1591. exp1025 exp inf nan -> inf nan ignore-real-sign
  1592. exp1026 exp nan 0.0 -> nan 0.0
  1593. exp1027 exp nan 2.3 -> nan nan
  1594. exp1028 exp nan inf -> nan nan
  1595. exp1029 exp nan nan -> nan nan
  1596. exp1030 exp 0.0 -0.0 -> 1.0 -0.0
  1597. exp1031 exp -0.0 -0.0 -> 1.0 -0.0
  1598. exp1032 exp 0.0 -inf -> nan nan invalid
  1599. exp1033 exp 2.3 -inf -> nan nan invalid
  1600. exp1034 exp -0.0 -inf -> nan nan invalid
  1601. exp1035 exp -2.3 -inf -> nan nan invalid
  1602. exp1036 exp -inf -0.0 -> 0.0 -0.0
  1603. exp1037 exp -inf -1.4 -> 0.0 -0.0
  1604. exp1038 exp -inf -2.8 -> -0.0 -0.0
  1605. exp1039 exp -inf -4.2 -> -0.0 0.0
  1606. exp1040 exp -inf -5.6 -> 0.0 0.0
  1607. exp1041 exp -inf -7.0 -> 0.0 -0.0
  1608. exp1042 exp inf -0.0 -> inf -0.0
  1609. exp1043 exp inf -1.4 -> inf -inf
  1610. exp1044 exp inf -2.8 -> -inf -inf
  1611. exp1045 exp inf -4.2 -> -inf inf
  1612. exp1046 exp inf -5.6 -> inf inf
  1613. exp1047 exp inf -7.0 -> inf -inf
  1614. exp1048 exp -inf -inf -> 0.0 0.0 ignore-real-sign ignore-imag-sign
  1615. exp1049 exp inf -inf -> inf nan invalid ignore-real-sign
  1616. exp1050 exp nan -0.0 -> nan -0.0
  1617. exp1051 exp nan -2.3 -> nan nan
  1618. exp1052 exp nan -inf -> nan nan
  1619. -----------------------------
  1620. -- cosh: Hyperbolic Cosine --
  1621. -----------------------------
  1622. -- zeros
  1623. cosh0000 cosh 0.0 0.0 -> 1.0 0.0
  1624. cosh0001 cosh 0.0 -0.0 -> 1.0 -0.0
  1625. cosh0002 cosh -0.0 0.0 -> 1.0 -0.0
  1626. cosh0003 cosh -0.0 -0.0 -> 1.0 0.0
  1627. -- random inputs
  1628. cosh0004 cosh -0.85395264297414253 -8.8553756148671958 -> -1.1684340348021185 0.51842195359787435
  1629. cosh0005 cosh -19.584904237211223 -0.066582627994906177 -> 159816812.23336992 10656776.050406246
  1630. cosh0006 cosh -0.11072618401130772 -1.484820215073247 -> 0.086397164744949503 0.11054275637717284
  1631. cosh0007 cosh -3.4764840250681752 -0.48440348288275276 -> 14.325931955190844 7.5242053548737955
  1632. cosh0008 cosh -0.52047063604524602 -0.3603805382775585 -> 1.0653940354683802 0.19193293606252473
  1633. cosh0009 cosh -1.39518962975995 0.0074738604700702906 -> 2.1417031027235969 -0.01415518712296308
  1634. cosh0010 cosh -0.37107064757653541 0.14728085307856609 -> 1.0580601496776991 -0.055712531964568587
  1635. cosh0011 cosh -5.8470200958739653 4.0021722388336292 -> -112.86220667618285 131.24734033545013
  1636. cosh0012 cosh -0.1700261444851883 0.97167540135354513 -> 0.57208748253577946 -0.1410904820240203
  1637. cosh0013 cosh -0.44042397902648783 1.0904791964139742 -> 0.50760322393058133 -0.40333966652010816
  1638. cosh0014 cosh 0.052267552491867299 -3.8889011430644174 -> -0.73452303414639297 0.035540704833537134
  1639. cosh0015 cosh 0.98000764177127453 -1.2548829247784097 -> 0.47220747341416142 -1.0879421432180316
  1640. cosh0016 cosh 0.083594701222644008 -0.88847899930181284 -> 0.63279782419312613 -0.064954566816002285
  1641. cosh0017 cosh 1.38173531783776 -0.43185040816732229 -> 1.9221663374671647 -0.78073830858849347
  1642. cosh0018 cosh 0.57315681120148465 -0.22255760951027942 -> 1.1399733125173004 -0.1335512343605956
  1643. cosh0019 cosh 1.8882512333062347 4.5024932182383797 -> -0.7041602065362691 -3.1573822131964615
  1644. cosh0020 cosh 0.5618219206858317 0.92620452129575348 -> 0.69822380405378381 0.47309067471054522
  1645. cosh0021 cosh 0.54361442847062591 0.64176483583018462 -> 0.92234462074193491 0.34167906495845501
  1646. cosh0022 cosh 0.0014777403107920331 1.3682028122677661 -> 0.2012106963899549 0.001447518137863219
  1647. cosh0023 cosh 2.218885944363501 2.0015727395883687 -> -1.94294321081968 4.1290269176083196
  1648. -- large real part
  1649. cosh0030 cosh 710.5 2.3519999999999999 -> -1.2967465239355998e+308 1.3076707908857333e+308
  1650. cosh0031 cosh -710.5 0.69999999999999996 -> 1.4085466381392499e+308 -1.1864024666450239e+308
  1651. -- Additional real values (mpmath)
  1652. cosh0050 cosh 1e-150 0.0 -> 1.0 0.0
  1653. cosh0051 cosh 1e-18 0.0 -> 1.0 0.0
  1654. cosh0052 cosh 1e-09 0.0 -> 1.0000000000000000005 0.0
  1655. cosh0053 cosh 0.0003 0.0 -> 1.0000000450000003375 0.0
  1656. cosh0054 cosh 0.2 0.0 -> 1.0200667556190758485 0.0
  1657. cosh0055 cosh 1.0 0.0 -> 1.5430806348152437785 0.0
  1658. cosh0056 cosh -1e-18 0.0 -> 1.0 -0.0
  1659. cosh0057 cosh -0.0003 0.0 -> 1.0000000450000003375 -0.0
  1660. cosh0058 cosh -1.0 0.0 -> 1.5430806348152437785 -0.0
  1661. cosh0059 cosh 1.3169578969248168 0.0 -> 2.0000000000000001504 0.0
  1662. cosh0060 cosh -1.3169578969248168 0.0 -> 2.0000000000000001504 -0.0
  1663. cosh0061 cosh 17.328679513998633 0.0 -> 16777216.000000021938 0.0
  1664. cosh0062 cosh 18.714973875118524 0.0 -> 67108864.000000043662 0.0
  1665. cosh0063 cosh 709.7827 0.0 -> 8.9883497833190073272e+307 0.0
  1666. cosh0064 cosh -709.7827 0.0 -> 8.9883497833190073272e+307 -0.0
  1667. -- special values
  1668. cosh1000 cosh 0.0 0.0 -> 1.0 0.0
  1669. cosh1001 cosh 0.0 inf -> nan 0.0 invalid ignore-imag-sign
  1670. cosh1002 cosh 0.0 nan -> nan 0.0 ignore-imag-sign
  1671. cosh1003 cosh 2.3 inf -> nan nan invalid
  1672. cosh1004 cosh 2.3 nan -> nan nan
  1673. cosh1005 cosh inf 0.0 -> inf 0.0
  1674. cosh1006 cosh inf 1.4 -> inf inf
  1675. cosh1007 cosh inf 2.8 -> -inf inf
  1676. cosh1008 cosh inf 4.2 -> -inf -inf
  1677. cosh1009 cosh inf 5.6 -> inf -inf
  1678. cosh1010 cosh inf 7.0 -> inf inf
  1679. cosh1011 cosh inf inf -> inf nan invalid ignore-real-sign
  1680. cosh1012 cosh inf nan -> inf nan
  1681. cosh1013 cosh nan 0.0 -> nan 0.0 ignore-imag-sign
  1682. cosh1014 cosh nan 2.3 -> nan nan
  1683. cosh1015 cosh nan inf -> nan nan
  1684. cosh1016 cosh nan nan -> nan nan
  1685. cosh1017 cosh 0.0 -0.0 -> 1.0 -0.0
  1686. cosh1018 cosh 0.0 -inf -> nan 0.0 invalid ignore-imag-sign
  1687. cosh1019 cosh 2.3 -inf -> nan nan invalid
  1688. cosh1020 cosh inf -0.0 -> inf -0.0
  1689. cosh1021 cosh inf -1.4 -> inf -inf
  1690. cosh1022 cosh inf -2.8 -> -inf -inf
  1691. cosh1023 cosh inf -4.2 -> -inf inf
  1692. cosh1024 cosh inf -5.6 -> inf inf
  1693. cosh1025 cosh inf -7.0 -> inf -inf
  1694. cosh1026 cosh inf -inf -> inf nan invalid ignore-real-sign
  1695. cosh1027 cosh nan -0.0 -> nan 0.0 ignore-imag-sign
  1696. cosh1028 cosh nan -2.3 -> nan nan
  1697. cosh1029 cosh nan -inf -> nan nan
  1698. cosh1030 cosh -0.0 -0.0 -> 1.0 0.0
  1699. cosh1031 cosh -0.0 -inf -> nan 0.0 invalid ignore-imag-sign
  1700. cosh1032 cosh -0.0 nan -> nan 0.0 ignore-imag-sign
  1701. cosh1033 cosh -2.3 -inf -> nan nan invalid
  1702. cosh1034 cosh -2.3 nan -> nan nan
  1703. cosh1035 cosh -inf -0.0 -> inf 0.0
  1704. cosh1036 cosh -inf -1.4 -> inf inf
  1705. cosh1037 cosh -inf -2.8 -> -inf inf
  1706. cosh1038 cosh -inf -4.2 -> -inf -inf
  1707. cosh1039 cosh -inf -5.6 -> inf -inf
  1708. cosh1040 cosh -inf -7.0 -> inf inf
  1709. cosh1041 cosh -inf -inf -> inf nan invalid ignore-real-sign
  1710. cosh1042 cosh -inf nan -> inf nan
  1711. cosh1043 cosh -0.0 0.0 -> 1.0 -0.0
  1712. cosh1044 cosh -0.0 inf -> nan 0.0 invalid ignore-imag-sign
  1713. cosh1045 cosh -2.3 inf -> nan nan invalid
  1714. cosh1046 cosh -inf 0.0 -> inf -0.0
  1715. cosh1047 cosh -inf 1.4 -> inf -inf
  1716. cosh1048 cosh -inf 2.8 -> -inf -inf
  1717. cosh1049 cosh -inf 4.2 -> -inf inf
  1718. cosh1050 cosh -inf 5.6 -> inf inf
  1719. cosh1051 cosh -inf 7.0 -> inf -inf
  1720. cosh1052 cosh -inf inf -> inf nan invalid ignore-real-sign
  1721. ---------------------------
  1722. -- sinh: Hyperbolic Sine --
  1723. ---------------------------
  1724. -- zeros
  1725. sinh0000 sinh 0.0 0.0 -> 0.0 0.0
  1726. sinh0001 sinh 0.0 -0.0 -> 0.0 -0.0
  1727. sinh0002 sinh -0.0 0.0 -> -0.0 0.0
  1728. sinh0003 sinh -0.0 -0.0 -> -0.0 -0.0
  1729. -- random inputs
  1730. sinh0004 sinh -17.282588091462742 -0.38187948694103546 -> -14867386.857248396 -5970648.6553516639
  1731. sinh0005 sinh -343.91971203143208 -5.0172868877771525e-22 -> -1.1518691776521735e+149 -5.7792581214689021e+127
  1732. sinh0006 sinh -14.178122253300922 -1.9387157579351293 -> 258440.37909034826 -670452.58500946441
  1733. sinh0007 sinh -1.0343810581686239 -1.0970235266369905 -> -0.56070858278092739 -1.4098883258046697
  1734. sinh0008 sinh -0.066126561416368204 -0.070461584169961872 -> -0.066010558700938124 -0.070557276738637542
  1735. sinh0009 sinh -0.37630149150308484 3.3621734692162173 -> 0.37591118119332617 -0.23447115926369383
  1736. sinh0010 sinh -0.049941960978670055 0.40323767020414625 -> -0.045955482136329009 0.3928878494430646
  1737. sinh0011 sinh -16.647852603903715 0.0026852219129082098 -> -8492566.5739382561 22804.480671133562
  1738. sinh0012 sinh -1.476625314303694 0.89473773116683386 -> -1.2982943334382224 1.7966593367791204
  1739. sinh0013 sinh -422.36429577556913 0.10366634502307912 -> -1.3400321008920044e+183 1.3941600948045599e+182
  1740. sinh0014 sinh 0.09108340745641981 -0.40408227416070353 -> 0.083863724802237902 -0.39480716553935602
  1741. sinh0015 sinh 2.036064132067386 -2.6831729961386239 -> -3.37621124363175 -1.723868330002817
  1742. sinh0016 sinh 2.5616717223063317 -0.0078978498622717767 -> 6.4399415853815869 -0.051472264400722133
  1743. sinh0017 sinh 0.336804011985188 -6.5654622971649337 -> 0.32962499307574578 -0.29449170159995197
  1744. sinh0018 sinh 0.23774603755649693 -0.92467195799232049 -> 0.14449839490603389 -0.82109449053556793
  1745. sinh0019 sinh 0.0011388273541465494 1.9676196882949855 -> -0.00044014605389634999 0.92229398407098806
  1746. sinh0020 sinh 3.2443870105663759 0.8054287559616895 -> 8.8702890778527426 9.2610748597042196
  1747. sinh0021 sinh 0.040628908857054738 0.098206391190944958 -> 0.04044426841671233 0.098129544739707392
  1748. sinh0022 sinh 4.7252283918217696e-30 9.1198155642656697 -> -4.5071980561644404e-30 0.30025730701661713
  1749. sinh0023 sinh 0.043713693678420068 0.22512549887532657 -> 0.042624198673416713 0.22344201231217961
  1750. -- large real part
  1751. sinh0030 sinh 710.5 -2.3999999999999999 -> -1.3579970564885919e+308 -1.24394470907798e+308
  1752. sinh0031 sinh -710.5 0.80000000000000004 -> -1.2830671601735164e+308 1.3210954193997678e+308
  1753. -- Additional real values (mpmath)
  1754. sinh0050 sinh 1e-100 0.0 -> 1.00000000000000002e-100 0.0
  1755. sinh0051 sinh 5e-17 0.0 -> 4.9999999999999998955e-17 0.0
  1756. sinh0052 sinh 1e-16 0.0 -> 9.999999999999999791e-17 0.0
  1757. sinh0053 sinh 3.7e-08 0.0 -> 3.7000000000000008885e-8 0.0
  1758. sinh0054 sinh 0.001 0.0 -> 0.0010000001666666750208 0.0
  1759. sinh0055 sinh 0.2 0.0 -> 0.20133600254109399895 0.0
  1760. sinh0056 sinh 1.0 0.0 -> 1.1752011936438014569 0.0
  1761. sinh0057 sinh -3.7e-08 0.0 -> -3.7000000000000008885e-8 0.0
  1762. sinh0058 sinh -0.001 0.0 -> -0.0010000001666666750208 0.0
  1763. sinh0059 sinh -1.0 0.0 -> -1.1752011936438014569 0.0
  1764. sinh0060 sinh 1.4436354751788103 0.0 -> 1.9999999999999999078 0.0
  1765. sinh0061 sinh -1.4436354751788103 0.0 -> -1.9999999999999999078 0.0
  1766. sinh0062 sinh 17.328679513998633 0.0 -> 16777215.999999992136 0.0
  1767. sinh0063 sinh 18.714973875118524 0.0 -> 67108864.000000036211 0.0
  1768. sinh0064 sinh 709.7827 0.0 -> 8.9883497833190073272e+307 0.0
  1769. sinh0065 sinh -709.7827 0.0 -> -8.9883497833190073272e+307 0.0
  1770. -- special values
  1771. sinh1000 sinh 0.0 0.0 -> 0.0 0.0
  1772. sinh1001 sinh 0.0 inf -> 0.0 nan invalid ignore-real-sign
  1773. sinh1002 sinh 0.0 nan -> 0.0 nan ignore-real-sign
  1774. sinh1003 sinh 2.3 inf -> nan nan invalid
  1775. sinh1004 sinh 2.3 nan -> nan nan
  1776. sinh1005 sinh inf 0.0 -> inf 0.0
  1777. sinh1006 sinh inf 1.4 -> inf inf
  1778. sinh1007 sinh inf 2.8 -> -inf inf
  1779. sinh1008 sinh inf 4.2 -> -inf -inf
  1780. sinh1009 sinh inf 5.6 -> inf -inf
  1781. sinh1010 sinh inf 7.0 -> inf inf
  1782. sinh1011 sinh inf inf -> inf nan invalid ignore-real-sign
  1783. sinh1012 sinh inf nan -> inf nan ignore-real-sign
  1784. sinh1013 sinh nan 0.0 -> nan 0.0
  1785. sinh1014 sinh nan 2.3 -> nan nan
  1786. sinh1015 sinh nan inf -> nan nan
  1787. sinh1016 sinh nan nan -> nan nan
  1788. sinh1017 sinh 0.0 -0.0 -> 0.0 -0.0
  1789. sinh1018 sinh 0.0 -inf -> 0.0 nan invalid ignore-real-sign
  1790. sinh1019 sinh 2.3 -inf -> nan nan invalid
  1791. sinh1020 sinh inf -0.0 -> inf -0.0
  1792. sinh1021 sinh inf -1.4 -> inf -inf
  1793. sinh1022 sinh inf -2.8 -> -inf -inf
  1794. sinh1023 sinh inf -4.2 -> -inf inf
  1795. sinh1024 sinh inf -5.6 -> inf inf
  1796. sinh1025 sinh inf -7.0 -> inf -inf
  1797. sinh1026 sinh inf -inf -> inf nan invalid ignore-real-sign
  1798. sinh1027 sinh nan -0.0 -> nan -0.0
  1799. sinh1028 sinh nan -2.3 -> nan nan
  1800. sinh1029 sinh nan -inf -> nan nan
  1801. sinh1030 sinh -0.0 -0.0 -> -0.0 -0.0
  1802. sinh1031 sinh -0.0 -inf -> 0.0 nan invalid ignore-real-sign
  1803. sinh1032 sinh -0.0 nan -> 0.0 nan ignore-real-sign
  1804. sinh1033 sinh -2.3 -inf -> nan nan invalid
  1805. sinh1034 sinh -2.3 nan -> nan nan
  1806. sinh1035 sinh -inf -0.0 -> -inf -0.0
  1807. sinh1036 sinh -inf -1.4 -> -inf -inf
  1808. sinh1037 sinh -inf -2.8 -> inf -inf
  1809. sinh1038 sinh -inf -4.2 -> inf inf
  1810. sinh1039 sinh -inf -5.6 -> -inf inf
  1811. sinh1040 sinh -inf -7.0 -> -inf -inf
  1812. sinh1041 sinh -inf -inf -> inf nan invalid ignore-real-sign
  1813. sinh1042 sinh -inf nan -> inf nan ignore-real-sign
  1814. sinh1043 sinh -0.0 0.0 -> -0.0 0.0
  1815. sinh1044 sinh -0.0 inf -> 0.0 nan invalid ignore-real-sign
  1816. sinh1045 sinh -2.3 inf -> nan nan invalid
  1817. sinh1046 sinh -inf 0.0 -> -inf 0.0
  1818. sinh1047 sinh -inf 1.4 -> -inf inf
  1819. sinh1048 sinh -inf 2.8 -> inf inf
  1820. sinh1049 sinh -inf 4.2 -> inf -inf
  1821. sinh1050 sinh -inf 5.6 -> -inf -inf
  1822. sinh1051 sinh -inf 7.0 -> -inf inf
  1823. sinh1052 sinh -inf inf -> inf nan invalid ignore-real-sign
  1824. ------------------------------
  1825. -- tanh: Hyperbolic Tangent --
  1826. ------------------------------
  1827. -- Disabled test: replaced by test_math.testTanhSign()
  1828. -- and test_cmath.testTanhSign()
  1829. -- -- zeros
  1830. -- tanh0000 tanh 0.0 0.0 -> 0.0 0.0
  1831. -- tanh0001 tanh 0.0 -0.0 -> 0.0 -0.0
  1832. -- tanh0002 tanh -0.0 0.0 -> -0.0 0.0
  1833. -- tanh0003 tanh -0.0 -0.0 -> -0.0 -0.0
  1834. -- random inputs
  1835. tanh0004 tanh -21.200500450664993 -1.6970729480342996 -> -1.0 1.9241352344849399e-19
  1836. tanh0005 tanh -0.34158771504251928 -8.0848504951747131 -> -2.123711225855613 1.2827526782026006
  1837. tanh0006 tanh -15.454144725193689 -0.23619582288265617 -> -0.99999999999993283 -3.4336684248260036e-14
  1838. tanh0007 tanh -7.6103163119661952 -0.7802748320307008 -> -0.99999999497219438 -4.9064845343755437e-07
  1839. tanh0008 tanh -0.15374717235792129 -0.6351086327306138 -> -0.23246081703561869 -0.71083467433910219
  1840. tanh0009 tanh -0.49101115474392465 0.09723001264886301 -> -0.45844445715492133 0.077191158541805888
  1841. tanh0010 tanh -0.10690612157664491 2.861612800856395 -> -0.11519761626257358 -0.28400488355647507
  1842. tanh0011 tanh -0.91505774192066702 1.5431174597727007 -> -1.381109893068114 0.025160819663709356
  1843. tanh0012 tanh -0.057433367093792223 0.35491159541246459 -> -0.065220499046696953 0.36921788332369498
  1844. tanh0013 tanh -1.3540418621233514 0.18969415642242535 -> -0.88235642861151387 0.043764069984411721
  1845. tanh0014 tanh 0.94864783961003529 -0.11333689578867717 -> 0.74348401861861368 -0.051271042543855221
  1846. tanh0015 tanh 1.9591698133845488 -0.0029654444904578339 -> 0.9610270776968135 -0.00022664240049212933
  1847. tanh0016 tanh 1.0949715796669197 -0.24706642853984456 -> 0.81636574501369386 -0.087767436914149954
  1848. tanh0017 tanh 5770428.2113731047 -3.7160580339833165 -> 1.0 -0.0
  1849. tanh0018 tanh 1.5576782321399629 -1.0357943787966468 -> 1.0403002384895388 -0.081126347894671463
  1850. tanh0019 tanh 0.62378536230552961 2.3471393579560216 -> 0.85582499238960363 -0.53569473646842869
  1851. tanh0020 tanh 17.400628602508025 9.3987059533841979 -> 0.99999999999999845 -8.0175867720530832e-17
  1852. tanh0021 tanh 0.15026177509871896 0.50630349159505472 -> 0.19367536571827768 0.53849847858853661
  1853. tanh0022 tanh 0.57433977530711167 1.0071604546265627 -> 1.0857848159262844 0.69139213955872214
  1854. tanh0023 tanh 0.16291181500449456 0.006972810241567544 -> 0.16149335907551157 0.0067910772903467817
  1855. -- large real part
  1856. tanh0030 tanh 710 0.13 -> 1.0 0.0
  1857. tanh0031 tanh -711 7.4000000000000004 -> -1.0 0.0
  1858. tanh0032 tanh 1000 -2.3199999999999998 -> 1.0 0.0
  1859. tanh0033 tanh -1.0000000000000001e+300 -9.6699999999999999 -> -1.0 -0.0
  1860. -- Additional real values (mpmath)
  1861. tanh0050 tanh 1e-100 0.0 -> 1.00000000000000002e-100 0.0
  1862. tanh0051 tanh 5e-17 0.0 -> 4.9999999999999998955e-17 0.0
  1863. tanh0052 tanh 1e-16 0.0 -> 9.999999999999999791e-17 0.0
  1864. tanh0053 tanh 3.7e-08 0.0 -> 3.6999999999999983559e-8 0.0
  1865. tanh0054 tanh 0.001 0.0 -> 0.00099999966666680002076 0.0
  1866. tanh0055 tanh 0.2 0.0 -> 0.19737532022490401141 0.0
  1867. tanh0056 tanh 1.0 0.0 -> 0.76159415595576488812 0.0
  1868. tanh0057 tanh -3.7e-08 0.0 -> -3.6999999999999983559e-8 0.0
  1869. tanh0058 tanh -0.001 0.0 -> -0.00099999966666680002076 0.0
  1870. tanh0059 tanh -1.0 0.0 -> -0.76159415595576488812 0.0
  1871. tanh0060 tanh 0.5493061443340549 0.0 -> 0.50000000000000003402 0.0
  1872. tanh0061 tanh -0.5493061443340549 0.0 -> -0.50000000000000003402 0.0
  1873. tanh0062 tanh 17.328679513998633 0.0 -> 0.99999999999999822364 0.0
  1874. tanh0063 tanh 18.714973875118524 0.0 -> 0.99999999999999988898 0.0
  1875. tanh0064 tanh 711 0.0 -> 1.0 0.0
  1876. tanh0065 tanh 1.797e+308 0.0 -> 1.0 0.0
  1877. --special values
  1878. tanh1000 tanh 0.0 0.0 -> 0.0 0.0
  1879. tanh1001 tanh 0.0 inf -> nan nan invalid
  1880. tanh1002 tanh 2.3 inf -> nan nan invalid
  1881. tanh1003 tanh 0.0 nan -> nan nan
  1882. tanh1004 tanh 2.3 nan -> nan nan
  1883. tanh1005 tanh inf 0.0 -> 1.0 0.0
  1884. tanh1006 tanh inf 0.7 -> 1.0 0.0
  1885. tanh1007 tanh inf 1.4 -> 1.0 0.0
  1886. tanh1008 tanh inf 2.1 -> 1.0 -0.0
  1887. tanh1009 tanh inf 2.8 -> 1.0 -0.0
  1888. tanh1010 tanh inf 3.5 -> 1.0 0.0
  1889. tanh1011 tanh inf inf -> 1.0 0.0 ignore-imag-sign
  1890. tanh1012 tanh inf nan -> 1.0 0.0 ignore-imag-sign
  1891. tanh1013 tanh nan 0.0 -> nan 0.0
  1892. tanh1014 tanh nan 2.3 -> nan nan
  1893. tanh1015 tanh nan inf -> nan nan
  1894. tanh1016 tanh nan nan -> nan nan
  1895. tanh1017 tanh 0.0 -0.0 -> 0.0 -0.0
  1896. tanh1018 tanh 0.0 -inf -> nan nan invalid
  1897. tanh1019 tanh 2.3 -inf -> nan nan invalid
  1898. tanh1020 tanh inf -0.0 -> 1.0 -0.0
  1899. tanh1021 tanh inf -0.7 -> 1.0 -0.0
  1900. tanh1022 tanh inf -1.4 -> 1.0 -0.0
  1901. tanh1023 tanh inf -2.1 -> 1.0 0.0
  1902. tanh1024 tanh inf -2.8 -> 1.0 0.0
  1903. tanh1025 tanh inf -3.5 -> 1.0 -0.0
  1904. tanh1026 tanh inf -inf -> 1.0 0.0 ignore-imag-sign
  1905. tanh1027 tanh nan -0.0 -> nan -0.0
  1906. tanh1028 tanh nan -2.3 -> nan nan
  1907. tanh1029 tanh nan -inf -> nan nan
  1908. tanh1030 tanh -0.0 -0.0 -> -0.0 -0.0
  1909. tanh1031 tanh -0.0 -inf -> nan nan invalid
  1910. tanh1032 tanh -2.3 -inf -> nan nan invalid
  1911. tanh1033 tanh -0.0 nan -> nan nan
  1912. tanh1034 tanh -2.3 nan -> nan nan
  1913. tanh1035 tanh -inf -0.0 -> -1.0 -0.0
  1914. tanh1036 tanh -inf -0.7 -> -1.0 -0.0
  1915. tanh1037 tanh -inf -1.4 -> -1.0 -0.0
  1916. tanh1038 tanh -inf -2.1 -> -1.0 0.0
  1917. tanh1039 tanh -inf -2.8 -> -1.0 0.0
  1918. tanh1040 tanh -inf -3.5 -> -1.0 -0.0
  1919. tanh1041 tanh -inf -inf -> -1.0 0.0 ignore-imag-sign
  1920. tanh1042 tanh -inf nan -> -1.0 0.0 ignore-imag-sign
  1921. tanh1043 tanh -0.0 0.0 -> -0.0 0.0
  1922. tanh1044 tanh -0.0 inf -> nan nan invalid
  1923. tanh1045 tanh -2.3 inf -> nan nan invalid
  1924. tanh1046 tanh -inf 0.0 -> -1.0 0.0
  1925. tanh1047 tanh -inf 0.7 -> -1.0 0.0
  1926. tanh1048 tanh -inf 1.4 -> -1.0 0.0
  1927. tanh1049 tanh -inf 2.1 -> -1.0 -0.0
  1928. tanh1050 tanh -inf 2.8 -> -1.0 -0.0
  1929. tanh1051 tanh -inf 3.5 -> -1.0 0.0
  1930. tanh1052 tanh -inf inf -> -1.0 0.0 ignore-imag-sign
  1931. -----------------
  1932. -- cos: Cosine --
  1933. -----------------
  1934. -- zeros
  1935. cos0000 cos 0.0 0.0 -> 1.0 -0.0
  1936. cos0001 cos 0.0 -0.0 -> 1.0 0.0
  1937. cos0002 cos -0.0 0.0 -> 1.0 0.0
  1938. cos0003 cos -0.0 -0.0 -> 1.0 -0.0
  1939. -- random inputs
  1940. cos0004 cos -2.0689194692073034 -0.0016802181751734313 -> -0.47777827208561469 -0.0014760401501695971
  1941. cos0005 cos -0.4209627318177977 -1.8238516774258027 -> 2.9010402201444108 -1.2329207042329617
  1942. cos0006 cos -1.9402181630694557 -2.9751857392891217 -> -3.5465459297970985 -9.1119163586282248
  1943. cos0007 cos -3.3118320290191616 -0.87871302909286142 -> -1.3911528636565498 0.16878141517391701
  1944. cos0008 cos -4.9540404623376872 -0.57949232239026827 -> 0.28062445586552065 0.59467861308508008
  1945. cos0009 cos -0.45374584316245026 1.3950283448373935 -> 1.9247665574290578 0.83004572204761107
  1946. cos0010 cos -0.42578172040176843 1.2715881615413049 -> 1.7517161459489148 0.67863902697363332
  1947. cos0011 cos -0.13862985354300136 0.43587635877670328 -> 1.0859880290361912 0.062157548146672272
  1948. cos0012 cos -0.11073221308966584 9.9384082307326475e-15 -> 0.99387545040722947 1.0982543264065479e-15
  1949. cos0013 cos -1.5027633662054623e-07 0.0069668060249955498 -> 1.0000242682912412 1.0469545565660995e-09
  1950. cos0014 cos 4.9728645490503052 -0.00027479808860952822 -> 0.25754011731975501 -0.00026552849549083186
  1951. cos0015 cos 7.81969303486719 -0.79621523445878783 -> 0.045734882501585063 0.88253139933082991
  1952. cos0016 cos 0.13272421880766716 -0.74668445308718201 -> 1.2806012244432847 0.10825373267437005
  1953. cos0017 cos 4.2396521985973274 -2.2178848380884881 -> -2.1165117057056855 -4.0416492444641401
  1954. cos0018 cos 1.1622206624927296 -0.50400115461197081 -> 0.44884072613370379 0.4823469915034318
  1955. cos0019 cos 1.628772864620884e-08 0.58205705428979282 -> 1.1742319995791435 -1.0024839481956604e-08
  1956. cos0020 cos 2.6385212606111241 2.9886107100937296 -> -8.7209475927161417 -4.7748352107199796
  1957. cos0021 cos 4.8048375263775256 0.0062248852898515658 -> 0.092318702015846243 0.0061983430422306142
  1958. cos0022 cos 7.9914515433858515 0.71659966615501436 -> -0.17375439906936566 -0.77217043527294582
  1959. cos0023 cos 0.45124351152540226 1.6992693993812158 -> 2.543477948972237 -1.1528193694875477
  1960. -- Additional real values (mpmath)
  1961. cos0050 cos 1e-150 0.0 -> 1.0 -0.0
  1962. cos0051 cos 1e-18 0.0 -> 1.0 -0.0
  1963. cos0052 cos 1e-09 0.0 -> 0.9999999999999999995 -0.0
  1964. cos0053 cos 0.0003 0.0 -> 0.9999999550000003375 -0.0
  1965. cos0054 cos 0.2 0.0 -> 0.98006657784124162892 -0.0
  1966. cos0055 cos 1.0 0.0 -> 0.5403023058681397174 -0.0
  1967. cos0056 cos -1e-18 0.0 -> 1.0 0.0
  1968. cos0057 cos -0.0003 0.0 -> 0.9999999550000003375 0.0
  1969. cos0058 cos -1.0 0.0 -> 0.5403023058681397174 0.0
  1970. cos0059 cos 1.0471975511965976 0.0 -> 0.50000000000000009945 -0.0
  1971. cos0060 cos 2.5707963267948966 0.0 -> -0.84147098480789647357 -0.0
  1972. cos0061 cos -2.5707963267948966 0.0 -> -0.84147098480789647357 0.0
  1973. cos0062 cos 7.225663103256523 0.0 -> 0.58778525229247407559 -0.0
  1974. cos0063 cos -8.79645943005142 0.0 -> -0.80901699437494722255 0.0
  1975. -- special values
  1976. cos1000 cos -0.0 0.0 -> 1.0 0.0
  1977. cos1001 cos -inf 0.0 -> nan 0.0 invalid ignore-imag-sign
  1978. cos1002 cos nan 0.0 -> nan 0.0 ignore-imag-sign
  1979. cos1003 cos -inf 2.2999999999999998 -> nan nan invalid
  1980. cos1004 cos nan 2.2999999999999998 -> nan nan
  1981. cos1005 cos -0.0 inf -> inf 0.0
  1982. cos1006 cos -1.3999999999999999 inf -> inf inf
  1983. cos1007 cos -2.7999999999999998 inf -> -inf inf
  1984. cos1008 cos -4.2000000000000002 inf -> -inf -inf
  1985. cos1009 cos -5.5999999999999996 inf -> inf -inf
  1986. cos1010 cos -7.0 inf -> inf inf
  1987. cos1011 cos -inf inf -> inf nan invalid ignore-real-sign
  1988. cos1012 cos nan inf -> inf nan
  1989. cos1013 cos -0.0 nan -> nan 0.0 ignore-imag-sign
  1990. cos1014 cos -2.2999999999999998 nan -> nan nan
  1991. cos1015 cos -inf nan -> nan nan
  1992. cos1016 cos nan nan -> nan nan
  1993. cos1017 cos 0.0 0.0 -> 1.0 -0.0
  1994. cos1018 cos inf 0.0 -> nan 0.0 invalid ignore-imag-sign
  1995. cos1019 cos inf 2.2999999999999998 -> nan nan invalid
  1996. cos1020 cos 0.0 inf -> inf -0.0
  1997. cos1021 cos 1.3999999999999999 inf -> inf -inf
  1998. cos1022 cos 2.7999999999999998 inf -> -inf -inf
  1999. cos1023 cos 4.2000000000000002 inf -> -inf inf
  2000. cos1024 cos 5.5999999999999996 inf -> inf inf
  2001. cos1025 cos 7.0 inf -> inf -inf
  2002. cos1026 cos inf inf -> inf nan invalid ignore-real-sign
  2003. cos1027 cos 0.0 nan -> nan 0.0 ignore-imag-sign
  2004. cos1028 cos 2.2999999999999998 nan -> nan nan
  2005. cos1029 cos inf nan -> nan nan
  2006. cos1030 cos 0.0 -0.0 -> 1.0 0.0
  2007. cos1031 cos inf -0.0 -> nan 0.0 invalid ignore-imag-sign
  2008. cos1032 cos nan -0.0 -> nan 0.0 ignore-imag-sign
  2009. cos1033 cos inf -2.2999999999999998 -> nan nan invalid
  2010. cos1034 cos nan -2.2999999999999998 -> nan nan
  2011. cos1035 cos 0.0 -inf -> inf 0.0
  2012. cos1036 cos 1.3999999999999999 -inf -> inf inf
  2013. cos1037 cos 2.7999999999999998 -inf -> -inf inf
  2014. cos1038 cos 4.2000000000000002 -inf -> -inf -inf
  2015. cos1039 cos 5.5999999999999996 -inf -> inf -inf
  2016. cos1040 cos 7.0 -inf -> inf inf
  2017. cos1041 cos inf -inf -> inf nan invalid ignore-real-sign
  2018. cos1042 cos nan -inf -> inf nan
  2019. cos1043 cos -0.0 -0.0 -> 1.0 -0.0
  2020. cos1044 cos -inf -0.0 -> nan 0.0 invalid ignore-imag-sign
  2021. cos1045 cos -inf -2.2999999999999998 -> nan nan invalid
  2022. cos1046 cos -0.0 -inf -> inf -0.0
  2023. cos1047 cos -1.3999999999999999 -inf -> inf -inf
  2024. cos1048 cos -2.7999999999999998 -inf -> -inf -inf
  2025. cos1049 cos -4.2000000000000002 -inf -> -inf inf
  2026. cos1050 cos -5.5999999999999996 -inf -> inf inf
  2027. cos1051 cos -7.0 -inf -> inf -inf
  2028. cos1052 cos -inf -inf -> inf nan invalid ignore-real-sign
  2029. ---------------
  2030. -- sin: Sine --
  2031. ---------------
  2032. -- zeros
  2033. sin0000 sin 0.0 0.0 -> 0.0 0.0
  2034. sin0001 sin 0.0 -0.0 -> 0.0 -0.0
  2035. sin0002 sin -0.0 0.0 -> -0.0 0.0
  2036. sin0003 sin -0.0 -0.0 -> -0.0 -0.0
  2037. -- random inputs
  2038. sin0004 sin -0.18691829163163759 -0.74388741985507034 -> -0.2396636733773444 -0.80023231101856751
  2039. sin0005 sin -0.45127453702459158 -461.81339920716164 -> -7.9722299331077877e+199 -1.6450205811004628e+200
  2040. sin0006 sin -0.47669228345768921 -2.7369936564987514 -> -3.557238022267124 -6.8308030771226615
  2041. sin0007 sin -0.31024285525950857 -1.4869219939188296 -> -0.70972676047175209 -1.9985029635426839
  2042. sin0008 sin -4.4194573407025608 -1.405999210989288 -> 2.0702480800802685 0.55362250792180601
  2043. sin0009 sin -1.7810832046434898e-05 0.0016439555384379083 -> -1.7810856113185261e-05 0.0016439562786668375
  2044. sin0010 sin -0.8200017874897666 0.61724876887771929 -> -0.8749078195948865 0.44835295550987758
  2045. sin0011 sin -1.4536502806107114 0.63998575534150415 -> -1.2035709929437679 0.080012187489163708
  2046. sin0012 sin -2.2653412155506079 0.13172760685583729 -> -0.77502093809190431 -0.084554426868229532
  2047. sin0013 sin -0.02613983069491858 0.18404766597776073 -> -0.026580778863127943 0.18502525396735642
  2048. sin0014 sin 1.5743065001054617 -0.53125574272642029 -> 1.1444596332092725 0.0019537598099352077
  2049. sin0015 sin 7.3833101791283289e-20 -0.16453221324236217 -> 7.4834720674379429e-20 -0.16527555646466915
  2050. sin0016 sin 0.34763834641254038 -2.8377416421089565 -> 2.918883541504663 -8.0002718053250224
  2051. sin0017 sin 0.077105785180421563 -0.090056027316200674 -> 0.077341973814471304 -0.089909869380524587
  2052. sin0018 sin 3.9063227798142329e-17 -0.05954098654295524 -> 3.9132490348956512e-17 -0.059576172859837351
  2053. sin0019 sin 0.57333917932544598 8.7785221430594696e-06 -> 0.54244029338302935 7.3747869125301368e-06
  2054. sin0020 sin 0.024861722816513169 0.33044620756118515 -> 0.026228801369651 0.3363889671570689
  2055. sin0021 sin 1.4342727387492671 0.81361889790284347 -> 1.3370960060947923 0.12336137961387163
  2056. sin0022 sin 1.1518087354403725 4.8597235966150558 -> 58.919141989603041 26.237003403758852
  2057. sin0023 sin 0.00087773078406649192 34.792379211312095 -> 565548145569.38245 644329685822700.62
  2058. -- Additional real values (mpmath)
  2059. sin0050 sin 1e-100 0.0 -> 1.00000000000000002e-100 0.0
  2060. sin0051 sin 3.7e-08 0.0 -> 3.6999999999999992001e-8 0.0
  2061. sin0052 sin 0.001 0.0 -> 0.00099999983333334168748 0.0
  2062. sin0053 sin 0.2 0.0 -> 0.19866933079506122634 0.0
  2063. sin0054 sin 1.0 0.0 -> 0.84147098480789650665 0.0
  2064. sin0055 sin -3.7e-08 0.0 -> -3.6999999999999992001e-8 0.0
  2065. sin0056 sin -0.001 0.0 -> -0.00099999983333334168748 0.0
  2066. sin0057 sin -1.0 0.0 -> -0.84147098480789650665 0.0
  2067. sin0058 sin 0.5235987755982989 0.0 -> 0.50000000000000004642 0.0
  2068. sin0059 sin -0.5235987755982989 0.0 -> -0.50000000000000004642 0.0
  2069. sin0060 sin 2.6179938779914944 0.0 -> 0.49999999999999996018 -0.0
  2070. sin0061 sin -2.6179938779914944 0.0 -> -0.49999999999999996018 -0.0
  2071. sin0062 sin 7.225663103256523 0.0 -> 0.80901699437494673648 0.0
  2072. sin0063 sin -8.79645943005142 0.0 -> -0.58778525229247340658 -0.0
  2073. -- special values
  2074. sin1000 sin -0.0 0.0 -> -0.0 0.0
  2075. sin1001 sin -inf 0.0 -> nan 0.0 invalid ignore-imag-sign
  2076. sin1002 sin nan 0.0 -> nan 0.0 ignore-imag-sign
  2077. sin1003 sin -inf 2.2999999999999998 -> nan nan invalid
  2078. sin1004 sin nan 2.2999999999999998 -> nan nan
  2079. sin1005 sin -0.0 inf -> -0.0 inf
  2080. sin1006 sin -1.3999999999999999 inf -> -inf inf
  2081. sin1007 sin -2.7999999999999998 inf -> -inf -inf
  2082. sin1008 sin -4.2000000000000002 inf -> inf -inf
  2083. sin1009 sin -5.5999999999999996 inf -> inf inf
  2084. sin1010 sin -7.0 inf -> -inf inf
  2085. sin1011 sin -inf inf -> nan inf invalid ignore-imag-sign
  2086. sin1012 sin nan inf -> nan inf ignore-imag-sign
  2087. sin1013 sin -0.0 nan -> -0.0 nan
  2088. sin1014 sin -2.2999999999999998 nan -> nan nan
  2089. sin1015 sin -inf nan -> nan nan
  2090. sin1016 sin nan nan -> nan nan
  2091. sin1017 sin 0.0 0.0 -> 0.0 0.0
  2092. sin1018 sin inf 0.0 -> nan 0.0 invalid ignore-imag-sign
  2093. sin1019 sin inf 2.2999999999999998 -> nan nan invalid
  2094. sin1020 sin 0.0 inf -> 0.0 inf
  2095. sin1021 sin 1.3999999999999999 inf -> inf inf
  2096. sin1022 sin 2.7999999999999998 inf -> inf -inf
  2097. sin1023 sin 4.2000000000000002 inf -> -inf -inf
  2098. sin1024 sin 5.5999999999999996 inf -> -inf inf
  2099. sin1025 sin 7.0 inf -> inf inf
  2100. sin1026 sin inf inf -> nan inf invalid ignore-imag-sign
  2101. sin1027 sin 0.0 nan -> 0.0 nan
  2102. sin1028 sin 2.2999999999999998 nan -> nan nan
  2103. sin1029 sin inf nan -> nan nan
  2104. sin1030 sin 0.0 -0.0 -> 0.0 -0.0
  2105. sin1031 sin inf -0.0 -> nan 0.0 invalid ignore-imag-sign
  2106. sin1032 sin nan -0.0 -> nan 0.0 ignore-imag-sign
  2107. sin1033 sin inf -2.2999999999999998 -> nan nan invalid
  2108. sin1034 sin nan -2.2999999999999998 -> nan nan
  2109. sin1035 sin 0.0 -inf -> 0.0 -inf
  2110. sin1036 sin 1.3999999999999999 -inf -> inf -inf
  2111. sin1037 sin 2.7999999999999998 -inf -> inf inf
  2112. sin1038 sin 4.2000000000000002 -inf -> -inf inf
  2113. sin1039 sin 5.5999999999999996 -inf -> -inf -inf
  2114. sin1040 sin 7.0 -inf -> inf -inf
  2115. sin1041 sin inf -inf -> nan inf invalid ignore-imag-sign
  2116. sin1042 sin nan -inf -> nan inf ignore-imag-sign
  2117. sin1043 sin -0.0 -0.0 -> -0.0 -0.0
  2118. sin1044 sin -inf -0.0 -> nan 0.0 invalid ignore-imag-sign
  2119. sin1045 sin -inf -2.2999999999999998 -> nan nan invalid
  2120. sin1046 sin -0.0 -inf -> -0.0 -inf
  2121. sin1047 sin -1.3999999999999999 -inf -> -inf -inf
  2122. sin1048 sin -2.7999999999999998 -inf -> -inf inf
  2123. sin1049 sin -4.2000000000000002 -inf -> inf inf
  2124. sin1050 sin -5.5999999999999996 -inf -> inf -inf
  2125. sin1051 sin -7.0 -inf -> -inf -inf
  2126. sin1052 sin -inf -inf -> nan inf invalid ignore-imag-sign
  2127. ------------------
  2128. -- tan: Tangent --
  2129. ------------------
  2130. -- zeros
  2131. tan0000 tan 0.0 0.0 -> 0.0 0.0
  2132. tan0001 tan 0.0 -0.0 -> 0.0 -0.0
  2133. tan0002 tan -0.0 0.0 -> -0.0 0.0
  2134. tan0003 tan -0.0 -0.0 -> -0.0 -0.0
  2135. -- random inputs
  2136. tan0004 tan -0.56378561833861074 -1.7110276237187664e+73 -> -0.0 -1.0
  2137. tan0005 tan -3.5451633993471915e-12 -2.855471863564059 -> -4.6622441304889575e-14 -0.99340273843093951
  2138. tan0006 tan -2.502442719638696 -0.26742234390504221 -> 0.66735215252994995 -0.39078997935420956
  2139. tan0007 tan -0.87639597720371365 -55.586225523280206 -> -1.0285264565948176e-48 -1.0
  2140. tan0008 tan -0.015783869596427243 -520.05944436039272 -> -0.0 -1.0
  2141. tan0009 tan -0.84643549990725164 2.0749097935396343 -> -0.031412661676959573 1.0033548479526764
  2142. tan0010 tan -0.43613792248559646 8.1082741629458059 -> -1.3879848444644593e-07 0.99999988344224011
  2143. tan0011 tan -1.0820906367833114 0.28571868992480248 -> -1.3622485737936536 0.99089269377971245
  2144. tan0012 tan -1.1477859580220084 1.9021637002708041 -> -0.034348450042071196 1.0293954097901687
  2145. tan0013 tan -0.12465543176953409 3.0606851016344815e-05 -> -0.12530514290387343 3.1087420769945479e-05
  2146. tan0014 tan 3.7582848717525343 -692787020.44038939 -> 0.0 -1.0
  2147. tan0015 tan 2.2321967655142176e-06 -10.090069423008169 -> 1.5369846120622643e-14 -0.99999999655723759
  2148. tan0016 tan 0.88371172390245012 -1.1635053630132823 -> 0.19705017118625889 -1.0196452280843129
  2149. tan0017 tan 2.1347414231849267 -1.9311339960416831 -> -0.038663576915982524 -1.0174399993980778
  2150. tan0018 tan 5.9027945255899974 -2.1574195684607135e-183 -> -0.39986591539281496 -2.5023753167976915e-183
  2151. tan0019 tan 0.44811489490805362 683216075670.07556 -> 0.0 1.0
  2152. tan0020 tan 4.1459766396068325 12.523017205605756 -> 2.4022514758988068e-11 1.0000000000112499
  2153. tan0021 tan 1.7809617968443272 1.5052381702853379 -> -0.044066222118946903 1.0932684517702778
  2154. tan0022 tan 1.1615313900880577 1.7956298728647107 -> 0.041793186826390362 1.0375339546034792
  2155. tan0023 tan 0.067014779477908945 5.8517361577457097 -> 2.2088639754800034e-06 0.9999836182420061
  2156. -- Additional real values (mpmath)
  2157. tan0050 tan 1e-100 0.0 -> 1.00000000000000002e-100 0.0
  2158. tan0051 tan 3.7e-08 0.0 -> 3.7000000000000017328e-8 0.0
  2159. tan0052 tan 0.001 0.0 -> 0.0010000003333334666875 0.0
  2160. tan0053 tan 0.2 0.0 -> 0.20271003550867249488 0.0
  2161. tan0054 tan 1.0 0.0 -> 1.5574077246549022305 0.0
  2162. tan0055 tan -3.7e-08 0.0 -> -3.7000000000000017328e-8 0.0
  2163. tan0056 tan -0.001 0.0 -> -0.0010000003333334666875 0.0
  2164. tan0057 tan -1.0 0.0 -> -1.5574077246549022305 0.0
  2165. tan0058 tan 0.4636476090008061 0.0 -> 0.49999999999999997163 0.0
  2166. tan0059 tan -0.4636476090008061 0.0 -> -0.49999999999999997163 0.0
  2167. tan0060 tan 1.1071487177940904 0.0 -> 1.9999999999999995298 0.0
  2168. tan0061 tan -1.1071487177940904 0.0 -> -1.9999999999999995298 0.0
  2169. tan0062 tan 1.5 0.0 -> 14.101419947171719388 0.0
  2170. tan0063 tan 1.57 0.0 -> 1255.7655915007896475 0.0
  2171. tan0064 tan 1.5707963267948961 0.0 -> 1978937966095219.0538 0.0
  2172. tan0065 tan 7.225663103256523 0.0 -> 1.3763819204711701522 0.0
  2173. tan0066 tan -8.79645943005142 0.0 -> 0.7265425280053614098 0.0
  2174. -- special values
  2175. tan1000 tan -0.0 0.0 -> -0.0 0.0
  2176. tan1001 tan -inf 0.0 -> nan nan invalid
  2177. tan1002 tan -inf 2.2999999999999998 -> nan nan invalid
  2178. tan1003 tan nan 0.0 -> nan nan
  2179. tan1004 tan nan 2.2999999999999998 -> nan nan
  2180. tan1005 tan -0.0 inf -> -0.0 1.0
  2181. tan1006 tan -0.69999999999999996 inf -> -0.0 1.0
  2182. tan1007 tan -1.3999999999999999 inf -> -0.0 1.0
  2183. tan1008 tan -2.1000000000000001 inf -> 0.0 1.0
  2184. tan1009 tan -2.7999999999999998 inf -> 0.0 1.0
  2185. tan1010 tan -3.5 inf -> -0.0 1.0
  2186. tan1011 tan -inf inf -> -0.0 1.0 ignore-real-sign
  2187. tan1012 tan nan inf -> -0.0 1.0 ignore-real-sign
  2188. tan1013 tan -0.0 nan -> -0.0 nan
  2189. tan1014 tan -2.2999999999999998 nan -> nan nan
  2190. tan1015 tan -inf nan -> nan nan
  2191. tan1016 tan nan nan -> nan nan
  2192. tan1017 tan 0.0 0.0 -> 0.0 0.0
  2193. tan1018 tan inf 0.0 -> nan nan invalid
  2194. tan1019 tan inf 2.2999999999999998 -> nan nan invalid
  2195. tan1020 tan 0.0 inf -> 0.0 1.0
  2196. tan1021 tan 0.69999999999999996 inf -> 0.0 1.0
  2197. tan1022 tan 1.3999999999999999 inf -> 0.0 1.0
  2198. tan1023 tan 2.1000000000000001 inf -> -0.0 1.0
  2199. tan1024 tan 2.7999999999999998 inf -> -0.0 1.0
  2200. tan1025 tan 3.5 inf -> 0.0 1.0
  2201. tan1026 tan inf inf -> -0.0 1.0 ignore-real-sign
  2202. tan1027 tan 0.0 nan -> 0.0 nan
  2203. tan1028 tan 2.2999999999999998 nan -> nan nan
  2204. tan1029 tan inf nan -> nan nan
  2205. tan1030 tan 0.0 -0.0 -> 0.0 -0.0
  2206. tan1031 tan inf -0.0 -> nan nan invalid
  2207. tan1032 tan inf -2.2999999999999998 -> nan nan invalid
  2208. tan1033 tan nan -0.0 -> nan nan
  2209. tan1034 tan nan -2.2999999999999998 -> nan nan
  2210. tan1035 tan 0.0 -inf -> 0.0 -1.0
  2211. tan1036 tan 0.69999999999999996 -inf -> 0.0 -1.0
  2212. tan1037 tan 1.3999999999999999 -inf -> 0.0 -1.0
  2213. tan1038 tan 2.1000000000000001 -inf -> -0.0 -1.0
  2214. tan1039 tan 2.7999999999999998 -inf -> -0.0 -1.0
  2215. tan1040 tan 3.5 -inf -> 0.0 -1.0
  2216. tan1041 tan inf -inf -> -0.0 -1.0 ignore-real-sign
  2217. tan1042 tan nan -inf -> -0.0 -1.0 ignore-real-sign
  2218. tan1043 tan -0.0 -0.0 -> -0.0 -0.0
  2219. tan1044 tan -inf -0.0 -> nan nan invalid
  2220. tan1045 tan -inf -2.2999999999999998 -> nan nan invalid
  2221. tan1046 tan -0.0 -inf -> -0.0 -1.0
  2222. tan1047 tan -0.69999999999999996 -inf -> -0.0 -1.0
  2223. tan1048 tan -1.3999999999999999 -inf -> -0.0 -1.0
  2224. tan1049 tan -2.1000000000000001 -inf -> 0.0 -1.0
  2225. tan1050 tan -2.7999999999999998 -inf -> 0.0 -1.0
  2226. tan1051 tan -3.5 -inf -> -0.0 -1.0
  2227. tan1052 tan -inf -inf -> -0.0 -1.0 ignore-real-sign
  2228. ------------------------------------------------------------------------
  2229. -- rect: Conversion from polar coordinates to rectangular coordinates --
  2230. ------------------------------------------------------------------------
  2231. --
  2232. -- For cmath.rect, we can use the same testcase syntax as for the
  2233. -- complex -> complex functions above, but here the input arguments
  2234. -- should be interpreted as a pair of floating-point numbers rather
  2235. -- than the real and imaginary parts of a complex number.
  2236. --
  2237. -- Here are the 'spirit of C99' rules for rect. First, the short
  2238. -- version:
  2239. --
  2240. -- rect(x, t) = exp(log(x)+it) for positive-signed x
  2241. -- rect(x, t) = -exp(log(-x)+it) for negative-signed x
  2242. -- rect(nan, t) = exp(nan + it), except that in rect(nan, +-0) the
  2243. -- sign of the imaginary part is unspecified.
  2244. --
  2245. -- and now the long version:
  2246. --
  2247. -- rect(x, -t) = conj(rect(x, t)) for all x and t
  2248. -- rect(-x, t) = -rect(x, t) for all x and t
  2249. -- rect(+0, +0) returns +0 + i0
  2250. -- rect(+0, inf) returns +- 0 +- i0, where the signs of the real and
  2251. -- imaginary parts are unspecified.
  2252. -- rect(x, inf) returns NaN + i NaN and raises the "invalid"
  2253. -- floating-point exception, for finite nonzero x.
  2254. -- rect(inf, inf) returns +-inf + i NaN and raises the "invalid"
  2255. -- floating-point exception (where the sign of the real part of the
  2256. -- result is unspecified).
  2257. -- rect(inf, +0) returns inf+i0
  2258. -- rect(inf, x) returns inf*cis(x), for finite nonzero x
  2259. -- rect(inf, NaN) returns +-inf+i NaN, where the sign of the real part
  2260. -- of the result is unspecified.
  2261. -- rect(NaN, x) returns NaN + i NaN for all nonzero numbers (including
  2262. -- infinities) x
  2263. -- rect(NaN, 0) returns NaN +- i0, where the sign of the imaginary
  2264. -- part is unspecified
  2265. -- rect(NaN, NaN) returns NaN + i NaN
  2266. -- rect(x, NaN) returns NaN + i NaN for finite nonzero x
  2267. -- rect(+0, NaN) return +-0 +- i0, where the signs of the real and
  2268. -- imaginary parts are unspecified.
  2269. -- special values
  2270. rect1000 rect 0.0 0.0 -> 0.0 0.0
  2271. rect1001 rect 0.0 inf -> 0.0 0.0 ignore-real-sign ignore-imag-sign
  2272. rect1002 rect 2.3 inf -> nan nan invalid
  2273. rect1003 rect inf inf -> inf nan invalid ignore-real-sign
  2274. rect1004 rect inf 0.0 -> inf 0.0
  2275. rect1005 rect inf 1.4 -> inf inf
  2276. rect1006 rect inf 2.8 -> -inf inf
  2277. rect1007 rect inf 4.2 -> -inf -inf
  2278. rect1008 rect inf 5.6 -> inf -inf
  2279. rect1009 rect inf 7.0 -> inf inf
  2280. rect1010 rect nan 0.0 -> nan 0.0 ignore-imag-sign
  2281. rect1011 rect nan 2.3 -> nan nan
  2282. rect1012 rect nan inf -> nan nan
  2283. rect1013 rect nan nan -> nan nan
  2284. rect1014 rect inf nan -> inf nan ignore-real-sign
  2285. rect1015 rect 2.3 nan -> nan nan
  2286. rect1016 rect 0.0 nan -> 0.0 0.0 ignore-real-sign ignore-imag-sign
  2287. rect1017 rect 0.0 -0.0 -> 0.0 -0.0
  2288. rect1018 rect 0.0 -inf -> 0.0 0.0 ignore-real-sign ignore-imag-sign
  2289. rect1019 rect 2.3 -inf -> nan nan invalid
  2290. rect1020 rect inf -inf -> inf nan invalid ignore-real-sign
  2291. rect1021 rect inf -0.0 -> inf -0.0
  2292. rect1022 rect inf -1.4 -> inf -inf
  2293. rect1023 rect inf -2.8 -> -inf -inf
  2294. rect1024 rect inf -4.2 -> -inf inf
  2295. rect1025 rect inf -5.6 -> inf inf
  2296. rect1026 rect inf -7.0 -> inf -inf
  2297. rect1027 rect nan -0.0 -> nan 0.0 ignore-imag-sign
  2298. rect1028 rect nan -2.3 -> nan nan
  2299. rect1029 rect nan -inf -> nan nan
  2300. rect1030 rect -0.0 0.0 -> -0.0 -0.0
  2301. rect1031 rect -0.0 inf -> 0.0 0.0 ignore-real-sign ignore-imag-sign
  2302. rect1032 rect -2.3 inf -> nan nan invalid
  2303. rect1033 rect -inf inf -> -inf nan invalid ignore-real-sign
  2304. rect1034 rect -inf 0.0 -> -inf -0.0
  2305. rect1035 rect -inf 1.4 -> -inf -inf
  2306. rect1036 rect -inf 2.8 -> inf -inf
  2307. rect1037 rect -inf 4.2 -> inf inf
  2308. rect1038 rect -inf 5.6 -> -inf inf
  2309. rect1039 rect -inf 7.0 -> -inf -inf
  2310. rect1040 rect -inf nan -> inf nan ignore-real-sign
  2311. rect1041 rect -2.3 nan -> nan nan
  2312. rect1042 rect -0.0 nan -> 0.0 0.0 ignore-real-sign ignore-imag-sign
  2313. rect1043 rect -0.0 -0.0 -> -0.0 0.0
  2314. rect1044 rect -0.0 -inf -> 0.0 0.0 ignore-real-sign ignore-imag-sign
  2315. rect1045 rect -2.3 -inf -> nan nan invalid
  2316. rect1046 rect -inf -inf -> -inf nan invalid ignore-real-sign
  2317. rect1047 rect -inf -0.0 -> -inf 0.0
  2318. rect1048 rect -inf -1.4 -> -inf inf
  2319. rect1049 rect -inf -2.8 -> inf inf
  2320. rect1050 rect -inf -4.2 -> inf -inf
  2321. rect1051 rect -inf -5.6 -> -inf -inf
  2322. rect1052 rect -inf -7.0 -> -inf inf
  2323. -------------------------------------------------------------------------
  2324. -- polar: Conversion from rectangular coordinates to polar coordinates --
  2325. -------------------------------------------------------------------------
  2326. --
  2327. -- For cmath.polar, we can use the same testcase syntax as for the
  2328. -- complex -> complex functions above, but here the output arguments
  2329. -- should be interpreted as a pair of floating-point numbers rather
  2330. -- than the real and imaginary parts of a complex number.
  2331. --
  2332. -- Annex G of the C99 standard describes fully both the real and
  2333. -- imaginary parts of polar (as cabs and carg, respectively, which in turn
  2334. -- are defined in terms of the functions hypot and atan2).
  2335. -- overflow
  2336. polar0100 polar 1.4e308 1.4e308 -> inf 0.78539816339744828 overflow
  2337. -- special values
  2338. polar1000 polar 0.0 0.0 -> 0.0 0.0
  2339. polar1001 polar 0.0 -0.0 -> 0.0 -0.0
  2340. polar1002 polar -0.0 0.0 -> 0.0 3.1415926535897931
  2341. polar1003 polar -0.0 -0.0 -> 0.0 -3.1415926535897931
  2342. polar1004 polar inf 0.0 -> inf 0.0
  2343. polar1005 polar inf 2.3 -> inf 0.0
  2344. polar1006 polar inf inf -> inf 0.78539816339744828
  2345. polar1007 polar 2.3 inf -> inf 1.5707963267948966
  2346. polar1008 polar 0.0 inf -> inf 1.5707963267948966
  2347. polar1009 polar -0.0 inf -> inf 1.5707963267948966
  2348. polar1010 polar -2.3 inf -> inf 1.5707963267948966
  2349. polar1011 polar -inf inf -> inf 2.3561944901923448
  2350. polar1012 polar -inf 2.3 -> inf 3.1415926535897931
  2351. polar1013 polar -inf 0.0 -> inf 3.1415926535897931
  2352. polar1014 polar -inf -0.0 -> inf -3.1415926535897931
  2353. polar1015 polar -inf -2.3 -> inf -3.1415926535897931
  2354. polar1016 polar -inf -inf -> inf -2.3561944901923448
  2355. polar1017 polar -2.3 -inf -> inf -1.5707963267948966
  2356. polar1018 polar -0.0 -inf -> inf -1.5707963267948966
  2357. polar1019 polar 0.0 -inf -> inf -1.5707963267948966
  2358. polar1020 polar 2.3 -inf -> inf -1.5707963267948966
  2359. polar1021 polar inf -inf -> inf -0.78539816339744828
  2360. polar1022 polar inf -2.3 -> inf -0.0
  2361. polar1023 polar inf -0.0 -> inf -0.0
  2362. polar1024 polar nan -inf -> inf nan
  2363. polar1025 polar nan -2.3 -> nan nan
  2364. polar1026 polar nan -0.0 -> nan nan
  2365. polar1027 polar nan 0.0 -> nan nan
  2366. polar1028 polar nan 2.3 -> nan nan
  2367. polar1029 polar nan inf -> inf nan
  2368. polar1030 polar nan nan -> nan nan
  2369. polar1031 polar inf nan -> inf nan
  2370. polar1032 polar 2.3 nan -> nan nan
  2371. polar1033 polar 0.0 nan -> nan nan
  2372. polar1034 polar -0.0 nan -> nan nan
  2373. polar1035 polar -2.3 nan -> nan nan
  2374. polar1036 polar -inf nan -> inf nan