tzh
2024-08-22 c7d0944258c7d0943aa7b2211498fd612971ce27
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
Q\¬Qc@s«ddlmZmZddlZddlZddlZddlZddlZddlZdZ    e
dƒZ e
dƒZ e
dƒZ eje
jdƒjdƒd    ƒZd
d f\ZZeed
d kZed krîejdZneZejjeƒp ejZejjedƒZejjedƒZd„Z dd„Z!ddd„Z"d„Z#d„Z$dej%fd„ƒYZ&d„Z'ed kr§e'ƒndS(iÿÿÿÿ(t run_unittesttverboseNgñh㈵øä>tnantinfs-inftdoubletIEEEstest requires IEEE 754 doublesg€à7yÃACgÇ):’Ëÿ@it__main__ismath_testcases.txtscmath_testcases.txtcCs@tjdtjd|ƒƒd}|dkr<|d}n|S(sVConvert a non-NaN float x to an integer, in such a way that
    adjacent floats are converted to adjacent integers.  Then
    abs(ulps(x) - ulps(y)) gives the difference in ulps between two
    floats.
 
    The results from this function will only make sense on platforms
    where C doubles are represented in IEEE 754 binary64 format.
 
    s<qs<diii?l(tstructtunpacktpack(txtn((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pytto_ulps$s
" icCs<t|ƒt|ƒ}t|ƒ|kr,dSdj||ƒS(s©Given non-NaN floats `expected` and `got`,
    check that they're equal to within the given number of ulps.
 
    Returns None on success and an error message on failure.s*error = {} ulps; permitted error = {} ulpsN(R tabstNonetformat(texpectedtgottulpst
ulps_error((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt
ulps_check3s
    gV瞯â<g
cCshtj|ƒr||krdS||}t||t|ƒƒ}t|ƒ|krXdSdj||ƒS(sDetermine whether non-NaN floats a and b are equal to within a
    (small) rounding error.  The default values for rel_err and
    abs_err are chosen to be suitable for platforms where a float is
    represented by an IEEE 754 double.  They allow an error of between
    9 and 19 ulps.s error = {}; permitted error = {}N(tmathtisinfRtmaxR R(RRtrel_errtabs_errterrortpermitted_error((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt    acc_check?s
    c
csÈt|ƒ¶}x¬|D]¤}d|kr>||jdƒ }n|jƒsPqn|jdƒ\}}|jƒ\}}}|jƒ}|d}    |d}
||t|ƒt|    ƒ|
fVqWWdQXdS(sÏParse a file with test values
 
    -- starts a comment
    blank lines, or lines containing only a comment, are ignored
    other lines are expected to have the form
      id fn arg -> expected [flag]*
 
    s--s->iiN(topentindextstriptsplittfloat( tfnametfptlinetlhstrhstidtfntargt
rhs_piecestexptflags((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pytparse_mtestfileRs        
 
c csÖt|ƒÄ}xº|D]²}|jdƒs|jƒ r>qn|jdƒ\}}|jƒ\}}}}|jƒ}    |    d|    d}
} |    d} ||t|ƒt|ƒt|
ƒt| ƒ| fVqWWdQXdS(s“Parse a file with test values
 
    Empty lines or lines starting with -- are ignored
    yields id, fn, arg_real, arg_imag, exp_real, exp_imag
    s--s->iiiN(Rt
startswithRR R!( R"R#R$R%R&R'R(targ_realtarg_imagR*texp_realtexp_imagR,((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pytparse_testfileks  
t    MathTestscBsÁeZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z    d„Z
d    „Z e d
„ƒZ d „Zd „Zd „Zd„Zd„Zd„Zd„Zd„Zd„Ze ejedƒd„ƒƒZd„Zd„Zd„Zd„Zd„Zd„Z d„Z!d„Z"d„Z#d„Z$d „Z%d!„Z&d"„Z'd#„Z(d$„Z)d%„Z*e+rƒd&„Z,ne d'„ƒZ-ej.e/j0d(ƒj1d)ƒd*ƒd+„ƒZ2RS(,cCs7t||ƒtkr3|jd|||fƒndS(Ns%s returned %r, expected %r(R tepstfail(tselftnametvalueR((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pytftest…s    cCs0|jdtjdƒ|jdtjdƒdS(NtpigJØMû!    @tegB‡
¿@(R:RR;R<(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt testConstantsŽscCsÀ|jttjƒ|jdtjdƒtjƒ|jdtjdƒtjdƒ|jdtjdƒdƒ|jttjtƒ|jttjtƒ|j    tj
tjt ƒƒƒdS(Nsacos(-1)iÿÿÿÿsacos(0)iisacos(1)i( t assertRaisest    TypeErrorRtacosR:R;t
ValueErrortINFtNINFt
assertTruetisnantNAN(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestAcos’s#cCsÉ|jttjƒ|jdtjdƒdƒ|jdtjdƒdƒ|jttjdƒ|jttjdƒ|jtjtƒtƒ|jttjtƒ|j    tj
tjt ƒƒƒdS(Nsacosh(1)iisacosh(2)ig5˜qBõ?iÿÿÿÿ( R>R?RtacoshR:RAt assertEqualRBRCRDRERF(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt    testAcosh›scCsÅ|jttjƒ|jdtjdƒtj dƒ|jdtjdƒdƒ|jdtjdƒtjdƒ|jttjtƒ|jttjtƒ|j    tj
tjt ƒƒƒdS(Nsasin(-1)iÿÿÿÿisasin(0)isasin(1)i( R>R?RtasinR:R;RARBRCRDRERF(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestAsin¥s$#cCs¼|jttjƒ|jdtjdƒdƒ|jdtjdƒdƒ|jdtjdƒdƒ|jtjtƒtƒ|jtjtƒtƒ|jtj    tjt
ƒƒƒdS(    Nsasinh(0)isasinh(1)ig'Ôya64ì?s    asinh(-1)iÿÿÿÿg'Ôya64ì¿( R>R?RtasinhR:RIRBRCRDRERF(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt    testAsinh®scCsà|jttjƒ|jdtjdƒtj dƒ|jdtjdƒdƒ|jdtjdƒtjdƒ|jdtjtƒtjd    ƒ|jd
tjtƒtj d    ƒ|jtj    tjt
ƒƒƒdS( Nsatan(-1)iÿÿÿÿisatan(0)isatan(1)is    atan(inf)is
atan(-inf)( R>R?RtatanR:R;RBRCRDRERF(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestAtan·s$##$cCsâ|jttjƒ|jdtjdƒdƒ|jdtjdƒdƒ|jdtjdƒdƒ|jttjd    ƒ|jttjd
ƒ|jttjtƒ|jttjtƒ|j    tj
tjt ƒƒƒdS( Nsatanh(0)is
atanh(0.5)gà?g ­zê“á?s atanh(-0.5)gà¿g ­zê“á¿iiÿÿÿÿ( R>R?RROR:tatanhRARBRCRDRERF(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt    testAtanhÀscCsî|jttjƒ|jdtjddƒtj dƒ|jdtjddƒtj dƒ|jdtjddƒdƒ|jd    tjddƒtjdƒ|jd
tjddƒtjdƒ|jd tjd tƒtjƒ|jd tjd dƒtjƒ|jdtjd dƒtjƒ|jtjd d ƒd ƒ|jtjd dƒd ƒ|jtjd tƒd ƒ|j    tj
tjd t ƒƒƒ|jdtjdtƒtj ƒ|jdtjddƒtj ƒ|jdtjddƒtj ƒ|jtjdd ƒdƒ|jtjddƒdƒ|jtjdtƒdƒ|j    tj
tjdt ƒƒƒ|jdtjttƒtjddƒ|jdtjtdƒtjdƒ|jdtjtdƒtjdƒ|jdtjtd ƒtjdƒ|jdtjtdƒtjdƒ|jdtjttƒtjdƒ|j    tj
tjtt ƒƒƒ|jdtjttƒtj ddƒ|jdtjtdƒtj dƒ|jdtjtdƒtj dƒ|jdtjtd ƒtj dƒ|jd tjtdƒtj dƒ|jd!tjttƒtj dƒ|j    tj
tjtt ƒƒƒ|jd"tjdtƒtjƒ|jd#tjddƒtjdƒ|jd$tjdd ƒtjdƒ|jtjdtƒd ƒ|j    tj
tjdt ƒƒƒ|jd%tjdtƒtj ƒ|jd&tjddƒtj dƒ|jd'tjdd ƒtj dƒ|jtjdtƒdƒ|j    tj
tjdt ƒƒƒ|j    tj
tjt tƒƒƒ|j    tj
tjt dƒƒƒ|j    tj
tjt dƒƒƒ|j    tj
tjt d ƒƒƒ|j    tj
tjt dƒƒƒ|j    tj
tjt tƒƒƒ|j    tj
tjt t ƒƒƒdS((Ns atan2(-1, 0)iÿÿÿÿiis atan2(-1, 1)iis atan2(0, 1)s atan2(1, 1)s atan2(1, 0)satan2(0., -inf)gsatan2(0., -2.3)gffffffÀsatan2(0., -0.)g€gffffff@satan2(-0., -inf)satan2(-0., -2.3)satan2(-0., -0.)satan2(inf, -inf)isatan2(inf, -2.3)satan2(inf, -0.)satan2(inf, 0.)satan2(inf, 2.3)satan2(inf, inf)satan2(-inf, -inf)satan2(-inf, -2.3)satan2(-inf, -0.)satan2(-inf, 0.)satan2(-inf, 2.3)satan2(-inf, inf)satan2(2.3, -inf)satan2(2.3, -0.)satan2(2.3, 0.)satan2(-2.3, -inf)satan2(-2.3, -0.)satan2(-2.3, 0.)( R>R?Rtatan2R:R;RCRIRBRDRERF(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt    testAtan2Ësf''&&""""###"*&&&&&"+'''''""&&"#''"""""""cCs|jttjƒ|jtttjdƒƒƒ|jtttjdƒƒƒ|jtttjdƒƒƒ|jdtjdƒdƒ|jdtjdƒdƒ|jdtjdƒd    ƒ|jd
tjd ƒd ƒ|jd tjdƒdƒ|jdtjdƒdƒ|jtjtƒtƒ|jtjt    ƒt    ƒ|j
tj tjt ƒƒƒdt fd„ƒY}dt fd„ƒY}|jdtj|ƒƒdƒ|jttj|ƒƒ|ƒ}d„|_|jttj|ƒ|jttj|d ƒdS(Nilgð?s    ceil(0.5)gà?s    ceil(1.0)s    ceil(1.5)gø?is
ceil(-0.5)gà¿is
ceil(-1.0)gð¿iÿÿÿÿs
ceil(-1.5)gø¿tTestCeilcBseZd„ZRS(cSsdS(Ngfffff¦D@((R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt    __float__s(t__name__t
__module__RV(((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyRUst
TestNoCeilcBseZRS((RWRX(((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyRYssceil(TestCeil())i*cWs|S(N((targs((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt<lambda>!s(R>R?RtceilRIR!ttypeR:RBRCRDRERFtobjectt__ceil__(R7RURYtt((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestCeils*     cCs¿|jtjddƒdƒ|jtjddƒdƒ|jtjddƒdƒ|jtjddƒdƒ|jtjd    d
ƒd ƒ|jttjƒ|jtjddƒdƒ|jtjdd
ƒdƒ|jtjtdƒtƒ|jtjtd
ƒtƒ|jtjtdƒtƒ|jtjtd
ƒtƒ|jtjdtƒdƒ|jtjdtƒdƒ|jtjttƒtƒ|jtjttƒtƒ|jtjttƒtƒ|jtjttƒtƒ|jtjtjt    dƒƒƒ|jtjtjt    tƒƒƒ|jtjtjt    tƒƒƒ|jtjtjt    t    ƒƒƒ|jtj
tjtt    ƒƒƒ|jt tjd t    ƒƒd ƒdS( Nii*gð?giÖÿÿÿgð¿ig@g@g€gÀg@( RIRtcopysignR>R?RBRCRDRERFRR (R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt testCopysign%s0"""""cCs:|jttjƒ|jdtjtj dƒdƒ|jdtjdƒdƒ|jdtjtjdƒdƒ|jdtjtjƒdƒyB|jtjtjtƒƒƒ|jtjtjt    ƒƒƒWn=t
k
r|jt
tjtƒ|jt
tjt    ƒnX|jtjtjt ƒƒƒdS(    Ns
cos(-pi/2)iiscos(0)is    cos(pi/2)scos(pi)iÿÿÿÿ( R>R?RtcosR:R;RDRERBRCRARF(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestCosGs$## cCsµ|jttjƒ|jdtjdƒdƒ|jdtjdƒdtjdƒddƒ|jtjtƒtƒ|jtjtƒtƒ|jtj    tjt
ƒƒƒdS(Nscosh(0)iiscosh(2)-2*cosh(1)**2iiÿÿÿÿ( R>R?RtcoshR:RIRBRCRDRERF(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestCoshUs 1cCs}|jttjƒ|jdtjtjƒdƒ|jdtjtjdƒdƒ|jdtjtj dƒdƒdS(    Ns degrees(pi)g€f@s degrees(pi/2)ig€V@sdegrees(-pi/4)ig€FÀ(R>R?RtdegreesR:R;(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt testDegrees]s#cCsÆ|jttjƒ|jdtjdƒdtjƒ|jdtjdƒdƒ|jdtjdƒtjƒ|jtjtƒtƒ|jtjtƒdƒ|j    tj
tjt ƒƒƒdS(Nsexp(-1)iÿÿÿÿisexp(0)isexp(1)g( R>R?RR+R:R<RIRBRCRDRERF(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestExpcs#cCsk|jttjƒ|jdtjdƒdƒ|jdtjdƒdƒ|jdtjdƒdƒdS(Nsfabs(-1)iÿÿÿÿisfabs(0)isfabs(1)(R>R?RtfabsR:(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestFabslsc    CsÍd„}tdƒdddg}tj|ƒxh|D]`}xWtttfD]F}|jtj||ƒƒ||ƒ|||ƒtj|ƒfƒqLWq6W|j    t
tjdƒ|j    t
tjtj ƒdS(NcSs8d}x+tdt|ƒdƒD]}||9}q W|S(Ni(trangetint(R tresultti((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pytfactss i
i2idiôiÿÿÿÿ( RmtrandomtshuffleRntlongR!RIRt    factorialR>RAR;(R7RqtvaluesR
tcast((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt testFactorialrs      HcCsM|jttjƒ|jtttjdƒƒƒ|jtttjdƒƒƒ|jtttjdƒƒƒ|jdtjdƒdƒ|jdtjdƒdƒ|jdtjd    ƒdƒ|jd
tjd ƒd ƒ|jd tjdƒd ƒ|jdtjdƒdƒ|jdtjdƒdƒ|jdtjdƒdƒ|jtjt    ƒt    ƒ|jtjt
ƒt
ƒ|j tj tjt ƒƒƒdtfd„ƒY}dtfd„ƒY}|jdtj|ƒƒdƒ|jttj|ƒƒ|ƒ}d„|_|jttj|ƒ|jttj|dƒdS(Nilgð?s
floor(0.5)gà?is
floor(1.0)s
floor(1.5)gø?s floor(-0.5)gà¿iÿÿÿÿs floor(-1.0)gð¿s floor(-1.5)gø¿iþÿÿÿsfloor(1.23e167)g‚àNݯ bsfloor(-1.23e167)g‚àNݯ ât    TestFloorcBseZd„ZRS(cSsdS(Ngfffff&E@((R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyRV•s(RWRXRV(((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyRy”st TestNoFloorcBseZRS((RWRX(((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyRz—ssfloor(TestFloor())i*cWs|S(N((RZ((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyR[s(R>R?RtfloorRIR!R]R:R\RBRCRDRERFR^t    __floor__(R7RyRzR`((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt    testFloor€s.     cCsC|jttjƒ|jdtjddƒdƒ|jdtjddƒdƒ|jdtjddƒdƒ|jd    tjd
dƒdƒ|jd tjd
dƒdƒ|jd tjd
dƒd ƒ|jtjtjtdƒƒƒ|jtjtjdtƒƒƒ|jtjtjttƒƒƒ|jttjddƒ|jttjt    dƒ|jttjt
dƒ|jttjt    dƒ|j tjdt    ƒdƒ|j tjdt    ƒdƒ|j tjdt
ƒdƒ|j tjdt
ƒdƒ|j tjddƒdƒ|j tjdt
ƒdƒdS(Ns
fmod(10,1)i
iis fmod(10,0.5)gà?s fmod(10,1.5)gø?s fmod(-10,1)iöÿÿÿs fmod(-10,0.5)s fmod(-10,1.5)iÿÿÿÿgð?gg@gÀ( R>R?RtfmodR:RDRERFRARBRCRI(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestFmod¡s("""csçˆjttjƒ‡fd†}|dtjdƒd ƒ|dtjdƒd ƒ|dtjdƒdƒ|d
tjd ƒdƒˆjtjtƒdtƒˆjtjtƒdtƒˆjtjtjt    ƒdƒƒdS(Ncsh||\}}\}}t||ƒtks;||krdˆjd|||f||ffƒndS(Ns%s returned %r, expected %r(R R5R6(R8RoRtmantR+temantteexp(R7(sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt    testfrexpºs"    s    frexp(-1)iÿÿÿÿgà¿isfrexp(0)isfrexp(1)gà?sfrexp(2)i(gà¿i(ii(gà?i(gà?i(
R>R?RtfrexpRIRBRCRDRERF(R7Rƒ((R7sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt    testFrexp·ss2fsum is not exact on machines with double roundingcsRddlm}|j‰|jˆ‰‡‡fd†}gdfdgdfddddd    d
d gdfd1dd3gd5fd6dd7gd9fd;dd<gd>fd@ddAgdCfgtddƒD]}d|^qÃtjdƒfgtddƒD]}d
||^qõtjdƒfgtdƒD]}d|dd|^q(dEgd
fdddgdfdFddGdIddJ gdfgtd d!d"ƒD](}d |d |d#d |d$^q—dLgtjd&ƒfg }x›t|ƒD]\}\}}ytj    |ƒ}WnUt
k
r=|j d'|||fƒn+t k
rg|j d(|||fƒnX|j ||ƒqëWdd)lm}    m}
m} x³tdƒD]¥} d*dd+dd,d-gd.}d/} xEtd0ƒD]7}|
d/|    ƒƒd*| }| |7} |j|ƒqÚW| |ƒ||ƒ} |j ||ƒtj    |ƒƒq¥WdS(MNiÿÿÿÿ(t
float_infocs"d\}}x|D]y}tj|ƒ\}}ttj|ˆƒƒ|ˆ}}||krt|||K}|}n|||K}||7}qWtttt|ƒƒƒdˆˆ|ƒ}|dkrd|d>}|d|t||@oþ|d|d@ƒ}||7}ntj||ƒS(sÓFull precision summation.  Compute sum(iterable) without any
            intermediate accumulation of error.  Based on the 'lsum' function
            at http://code.activestate.com/recipes/393090/
 
            iiii(ii(    RR„RntldexpRtlentbinR tbool(titerablettmantttexpR
R€R+ttailth(tetinytmant_dig(sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pytmsumÜs  #     - . gg}Ô%­I²Tgð?g}Ô%­I²Ôg0Žä.ÿ++gšd~ÅQJgð¿gšd~ÅQÊg@i5gà¿iÊÿÿÿiœÿÿÿg$@g(@g@gà?g@iiés0x1.df11f45f4e61ap+2s-0x1.62a2af1bd3624p-1ièg333333û?g€à7yÃACg¼‰Ø—²Òœ<g€à7yÃACiËÿÿÿiÎûÿÿiÌii2i4iþs0x1.5555555555555p+970sDtest %d failed: got OverflowError, expected %r for math.fsum(%.100r)sAtest %d failed: got ValueError, expected %r for math.fsum(%.100r)(RrtgaussRsiiùÿÿÿghŠ$.5ú»g#B’ ¡œ÷;i
iiÈg@Cg<g¼g@Cgÿÿÿÿÿÿ?Cg@Cg°9g@Cg@Cg@Cg@Cg°9g@Cg@Cg@Cgüÿÿÿÿÿ?Cg<g@Cgýÿÿÿÿÿ?CgáïþáÒ-ÇogáïþáÒ-Çïgÿà7yÃACg <gÿà7yÃACgÿà7yÃAÃg <gÐgÐÿ(tsysR†R‘tmin_expRmR!tfromhext    enumerateRtfsumt OverflowErrorR6RARIRrR“Rstxrangetappend(R7R†R’R Rpt test_valuestvalsRtactualRrR“Rstjtstv((RR‘sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestFsumÉsT          #'9>          
 
 cCs    |jttjƒ|jdtjddƒdƒ|jdtjddƒdƒ|jtjttƒtƒ|jtjttƒtƒ|jtjttƒtƒ|jtjttƒtƒ|j    tj
tjdtƒƒƒ|j    tj
tjtdƒƒƒdS(    Ns
hypot(0,0)is
hypot(3,4)iiigð?gÀ( R>R?RthypotR:RIRFRBRCRDRE(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt    testHypot$s"cCs|jttjƒ|jdtjddƒdƒ|jdtjddƒdƒ|jdtjddƒdƒ|jd    tjddƒd
ƒ|jttjd d ƒ|jttjd d ƒ|jtjd dƒdƒ|jtjd dƒdƒ|jtjtdƒtƒ|jtjtdƒtƒ|j    tj
tjt dƒƒƒxµddddddgD]›}|jtjt| ƒtƒ|jtjt| ƒtƒ|jtjd | ƒdƒ|jtjd | ƒdƒ|jtjd| ƒdƒ|jtjd| ƒdƒ|j    tj
tjt | ƒƒƒ|jttjd |ƒ|jttjd |ƒ|jtjd|ƒdƒ|jtjd|ƒdƒ|jtjt|ƒtƒ|jtjt|ƒtƒ|j    tj
tjt |ƒƒƒqlWdS(Ns
ldexp(0,1)iis
ldexp(1,1)is ldexp(1,-1)iÿÿÿÿgà?s ldexp(-1,1)iþÿÿÿgð?i@Bgð¿iÀ½ðÿgg€ii+ÿÿÿi
il
ii(i †l Iä Tld(    l Fµx:^Vl    «O»z—×pøc( R>R?RR‡R:R™RIRBRCRDRERF(R7R ((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt    testLdexp/s6"#cCs |jttjƒ|jdtjdtjƒdƒ|jdtjdƒdƒ|jdtjtjƒdƒ|jdtjdd    ƒd
ƒ|jd tjdd ƒd ƒ|jdtjddƒd    ƒ|jtjtƒtƒ|jttjt    ƒ|j
tj tjt ƒƒƒdS(Nslog(1/e)iiÿÿÿÿslog(1)islog(e)s    log(32,2)i iislog(10**40, 10)i
i(slog(10**40, 10**20)il    «O»z—×pøcl    «O»z—×pøcl Fµx:^V( R>R?RtlogR:R<RIRBRARCRDRERF(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestLogOs#cCs7|jttjƒ|jdtjdtjdƒdƒ|jdtjdƒdƒ|jdtjtjdƒdƒ|jdtjdƒtjdƒƒ|jtjtƒtƒ|jt    tjt
ƒ|j tj tjt ƒƒƒd }|jtj|ƒd
ƒ|jtj|ƒtjt|ƒƒƒdS( Ns log1p(1/e -1)iiÿÿÿÿslog1p(0)is
log1p(e-1)slog1p(1)iiZgxá61O@l(R>R?Rtlog1pR:R<R¦RIRBRARCRDRERFtassertAlmostEqualR!(R7R ((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt    testLog1p[s'#%cCs¹|jttjƒ|jdtjdƒdƒ|jdtjdƒdƒ|jdtjdƒdƒ|jtjtƒtƒ|jttjt    ƒ|j
tj tjt ƒƒƒdS(    Ns
log10(0.1)gš™™™™™¹?iÿÿÿÿslog10(1)iis    log10(10)i
( R>R?Rtlog10R:RIR¦RBRARCRDRERF(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt    testLog10hscsوjttjƒ‡fd†}|dtjdƒdƒ|dtjdƒdƒˆjtjtƒd
tfƒˆjtjtƒd tfƒtjtƒ}ˆjtj    |d ƒƒˆjtj    |d ƒƒdS(Ncsl||\}}\}}t||ƒtks?t||ƒrhˆjd|||f||ffƒndS(Ns%s returned %r, expected %r(R R5R6(R8RoRtv1tv2te1te2(R7(sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestmodfts&    s    modf(1.5)gø?gà?gð?s
modf(-1.5)gø¿gà¿gð¿gg€ii(gà?gð?(gà¿gð¿(
R>R?RtmodfRIRBRCRFRDRE(R7R±tmodf_nan((R7sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestModfqscCs |jttjƒ|jdtjddƒdƒ|jdtjddƒdƒ|jdtjddƒdƒ|jdtjddƒd    ƒ|jtjtdƒtƒ|jtjtdƒtƒ|jtjdtƒd
ƒ|jtjdtƒd
ƒ|jtj    tjt
dƒƒƒ|jtj    tjdt
ƒƒƒ|jtj    tjdt
ƒƒƒ|jtjdt
ƒdƒ|jtjd tƒd ƒ|jtjd d ƒd ƒ|jtjd d ƒd ƒ|jtjd dƒd ƒ|jtjd d ƒd
ƒ|jtjd dƒd
ƒ|jt tjd dƒ|jt tjd dƒ|jt tjd dƒ|jt tjd tƒ|jtj    tjd t
ƒƒƒ|jtjttƒtƒ|jtjtd ƒtƒ|jtjtd ƒtƒ|jtjtdƒtƒ|jtjtd ƒd
ƒ|jtjtdƒd
ƒ|jtjtdƒd ƒ|jtjtdƒd ƒ|jtjtdƒd ƒ|jtjttƒd ƒ|jtj    tjtt
ƒƒƒ|jtjdtƒd ƒ|jtjdd ƒdƒ|jtjdd ƒd ƒ|jtjddƒd ƒ|jtjdd ƒd
ƒ|jtjddƒd
ƒ|jt tjddƒ|jt tjddƒ|jt tjddƒ|jt tjdtƒ|jtj    tjdt
ƒƒƒ|jtjttƒtƒ|jtjtd ƒtƒ|jtjtd ƒtƒ|jtjtdƒtƒ|jtjtd ƒd
ƒ|jtjtdƒd
ƒ|jtjtdƒd ƒ|jtjtdƒd ƒ|jtjtdƒdƒ|jtjttƒd ƒ|jtj    tjtt
ƒƒƒ|jtjdtƒd
ƒ|jtjdd ƒdƒ|jt tjdd ƒ|jtjddƒd
ƒ|jtjdd ƒd
ƒ|jtjddƒd
ƒ|jtjddƒd
ƒ|jt tjddƒ|jtjddƒdƒ|jtjdtƒd
ƒ|jtj    tjdt
ƒƒƒ|jtjd
tƒd
ƒ|jtjd
d ƒd
ƒ|jtjd
d ƒd
ƒ|jtjd
dƒd
ƒ|jtjd
d ƒd
ƒ|jtjd
dƒd
ƒ|jtjd
dƒd
ƒ|jtjd
dƒd
ƒ|jtjd
dƒd
ƒ|jtjd
tƒd
ƒ|jtjd
t
ƒd
ƒ|jtjd d ƒd
ƒ|jtjdd ƒd
ƒ|jtjt
d ƒd
ƒ|jtjd dƒd
ƒ|jtjddƒd
ƒ|jtjt
dƒd
ƒ|jt tjdd ƒ|jt tjddƒ|jtjdtƒd ƒ|jtjdtƒd ƒ|jtjdtƒtƒ|jtjdtƒtƒ|jtjdtƒtƒ|jtjdtƒtƒ|jtjdtƒd ƒ|jtjdtƒd ƒ|jtjdtƒtƒ|jtjdtƒtƒ|jtjdtƒd ƒ|jtjdtƒd ƒ|jtjdtƒd ƒ|jtjdtƒd ƒ|jtjdtƒtƒ|jtjdtƒtƒ|jdtjdd ƒdƒ|jd tjddƒd!ƒ|jd"tjdd
ƒdƒ|jd#tjdd ƒd
ƒ|jd$tjddƒd
ƒ|jd%tjddƒd&ƒ|jd'tjddƒd(ƒ|jd)tjddƒd*ƒ|jt tjdd&ƒ|jt tjdd    ƒdS(+Nspow(0,1)iispow(1,0)spow(2,1)is    pow(2,-1)iÿÿÿÿgà?gð?gg@gffffff@g@g€gÀgffffffÀgÀgð¿g.ÀgÍÌÌÌÌÌÀgffffffþ?gš™™™™™ñ?gÍÌÌÌÌÌì?gš™™™™™¹?gš™™™™™¹¿gÍÌÌÌÌÌì¿gš™™™™™ñ¿gffffffþ¿s    (-2.)**3.g Às    (-2.)**2.g@s    (-2.)**1.s    (-2.)**0.s
(-2.)**-0.s
(-2.)**-1.gà¿s
(-2.)**-2.gÐ?s
(-2.)**-3.gÀ¿( R>R?RtpowR:RIRBRCRDRERFRA(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestPow„sâ""""""""cCs}|jttjƒ|jdtjdƒtjƒ|jdtjdƒtjdƒ|jdtjdƒtj dƒdS(    Ns radians(180)i´s radians(90)iZis radians(-45)iÓÿÿÿi(R>R?RtradiansR:R;(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt testRadianss#cCs|jttjƒ|jdtjdƒdƒ|jdtjtjdƒdƒ|jdtjtj dƒdƒyB|jtjtjtƒƒƒ|jtjtjt    ƒƒƒWn=t
k
r÷|jt
tjtƒ|jt
tjt    ƒnX|jtjtjt ƒƒƒdS(Nssin(0)is    sin(pi/2)iis
sin(-pi/2)iÿÿÿÿ( R>R?RtsinR:R;RDRERBRCRARF(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestSins#$# cCsÞ|jttjƒ|jdtjdƒdƒ|jdtjdƒdtjdƒddƒ|jdtjdƒtjdƒdƒ|jtjtƒtƒ|jtjtƒtƒ|j    tj
tjt ƒƒƒdS(Nssinh(0)issinh(1)**2-cosh(1)**2iiiÿÿÿÿssinh(1)+sinh(-1)( R>R?RtsinhR:RfRIRBRCRDRERF(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestSinh,s1)cCs¹|jttjƒ|jdtjdƒdƒ|jdtjdƒdƒ|jdtjdƒdƒ|jtjtƒtƒ|jttjtƒ|j    tj
tjt ƒƒƒdS(Nssqrt(0)issqrt(1)issqrt(4)ii( R>R?RtsqrtR:RIRBRARCRDRERF(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestSqrt5scCs|jttjƒ|jdtjdƒdƒ|jdtjtjdƒdƒ|jdtjtj dƒdƒyB|jtjtjtƒƒƒ|jtjtjt    ƒƒƒWn3|jt
tjtƒ|jt
tjt    ƒnX|jtjtjt ƒƒƒdS(Nstan(0)is    tan(pi/4)iis
tan(-pi/4)iÿÿÿÿ( R>R?RttanR:R;RDRERBRCRARF(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestTan>s#$#cCs|jttjƒ|jdtjdƒdƒ|jdtjdƒtjdƒdƒ|jdtjtƒdƒ|jdtjtƒdƒ|jtjtjt    ƒƒƒt
j dƒj d    ƒr|j tjd
ƒd
ƒ|j tjd tjd
ƒƒtjd d
ƒƒndS( Nstanh(0)istanh(1)+tanh(-1)iiÿÿÿÿs    tanh(inf)s
tanh(-inf)RRg€gð?(R>R?RttanhR:RBRCRDRERFR!t __getformat__R.RIRb(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttestTanhKs)cCs|jtjdƒdƒ|jtjdƒdƒ|jttjdƒƒtƒ|jttjdƒƒtƒ|jtjdƒdƒ|jtjdƒdƒ|jtjdƒdƒ|jtjdƒdƒ|jtjdƒdƒ|jtjd    ƒd
ƒd tfd „ƒY}d tfd„ƒY}|jtj|ƒƒdƒ|jttjƒ|jttjddƒ|jttftj|ƒƒdS(Niiÿÿÿÿgø?gø¿gõ…óþÿÿ?gõ…óþÿÿ¿gé !çýÿï¿ig-²ï?YÀiœÿÿÿt    TestTrunccBseZd„ZRS(cSsdS(Ni((R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt    __trunc__es(RWRXRÅ(((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyRÄdst TestNoTrunccBseZRS((RWRX(((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyRÆhsii(    RIRttruncR]RnR^R>R?tAttributeError(R7RÄRÆ((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt
test_truncXs"cCsˆ|jtjtdƒƒƒ|jtjtdƒdƒƒ|jtjtdƒƒƒ|jtjdƒƒ|jtjdƒƒdS(NRRggð?(RDRRER!t assertFalse(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt    testIsnanrs
 cCs°|jtjtdƒƒƒ|jtjtdƒƒƒ|jtjdƒƒ|jtjdƒƒ|jtjtdƒƒƒ|jtjdƒƒ|jtjdƒƒdS(NRs-infgðgðÿRggð?(RDRRR!RÊ(R7((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt    testIsinfyscCs²ytjdƒ}Wn|jdƒnX|dkrF|jdƒnytjdƒ}Wntk
rlnX|jdƒytjdƒ}Wntk
r nX|jdƒdS(    Ni6eÄs6underflowing exp() should not have raised an exceptionis)underflowing exp() should have returned 0iʚ;s.overflowing exp() didn't trigger OverflowErrorgð¿s sqrt(-1) didn't raise ValueError(RR+R6R™R½RA(R7R
((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttest_exceptions‰s     c Csx
ttƒD]ü\}}}}}}}|dks |dks |rLq n|dkr^q ntt|ƒ}y||ƒ}    Wnitk
r´dd|||f}
|j|
ƒn5tk
rèdd|||f}
|j|
ƒnX|jd|||f|    |ƒq WdS(    NgtrecttpolarsUnexpected ValueError in stest %s:%s(%r)
sUnexpected OverflowError in s    %s:%s(%r)(RÎRÏ(R3t    test_filetgetattrRRAR6R™R:( R7R'R(tartaiterteiR,tfuncRotmessage((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt test_testfile¨s"(   RRstest requires IEEE 754 doublesc Cs>d}d}g}xttƒD]ô\}}}}}tt|ƒ}    d|ks[d|krdd}nd|kryd}ny|    |ƒ}
Wn-tk
r¢d}
ntk
r¸d}
nXd} t|
tƒr–t|tƒr–tj    |ƒrtj    |
ƒrqntj    |ƒ r–tj    |
ƒ r–|dkrKt
||
d    d
d d
ƒ} n3|d krlt ||
d ƒ} nt ||
dƒ} | dkr“qq“q–nt|
t ƒrÉt|t ƒrÉ|
|krÉqqÉn|j |||||
ƒ} | dk    r| dj | ƒ7} n|j| ƒqW|r:|jddj|ƒƒndS(Nis${}:{}({!r}): expected {!r}, got {!r}tinvalidsdivide-by-zeroRAtoverflowR™tlgammaRg›+¡†›„ö<RterfciÐs ({})sFailures in test_mtestfile:
  s
  (R-tmath_testcasesRÑRRAR™Rt
isinstanceR!RERRtstrRR›R6tjoin( R7t ALLOWED_ERRORtfail_fmttfailuresR'R(R)RR,RÖRtaccuracy_failuretfail_msg((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyttest_mtestfile¿sN"               
                 (3RWRXR:R=RGRJRLRNRPRRRTRatrequires_IEEE_754RcReRgRiRjRlRxR}RR…tunittesttskipIftHAVE_DOUBLE_ROUNDINGR¢R¤R¥R§RªR¬R´R¶R¸RºR¼R¾RÀRÃRÉRËRÌRRÍRØt
skipUnlessR!RÂR.Ræ(((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyR4ƒsX                        
                               =    "                                !            Y                                 •                                             cCsSddlm}tjƒ}|jtjtƒƒ|j|dƒƒt|ƒdS(Niÿÿÿÿ(t DocFileSuites ieee754.txt(tdoctestRìRèt    TestSuitetaddTestt    makeSuiteR4R(Rìtsuite((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt    test_mainþs
 ((ttest.test_supportRRRèRtosR”RrRR5R!RFRBRCRëRÂR.RçR
tyRêRWtargvtfilet__file__tpathtdirnametcurdirttest_dirRàRÝRÐR RRR-R3tTestCaseR4Rò(((sV/tmp/ndk-User/buildhost/install/prebuilt/darwin-x86_64/lib/python2.7/test/test_math.pyt<module>sB                           ÿÿÿ~