Details

Time bar (total: 12.2s)

analyze1.5s (12.5%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
9.4%90.4%0.2%6
17.2%82.7%0.2%7
19.5%80.3%0.2%8
30.8%69%0.2%9
35.5%64.3%0.2%10
42.4%57.4%0.2%11
47.1%52.7%0.2%12
48.9%50.8%0.3%13
50%49.7%0.4%14
Compiler

Compiled 38 to 20 computations (47.4% saved)

sample135.0ms (1.1%)

Algorithm
intervals
Results
51.0ms85×body1024invalid
29.0ms238×body128valid
13.0ms33×body512invalid
5.0ms15×body256invalid
4.0msbody1024valid
2.0msbody2048invalid
2.0ms16×body128invalid
2.0msbody512valid
2.0msbody256valid
1.0msbody2048valid
Compiler

Compiled 75 to 43 computations (42.7% saved)

simplify161.0ms (1.3%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (59.0ms)

IterNodesCost
0494472
1494472

prune19.0ms (0.2%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112
Error
36.8b
Counts
2 → 1
Compiler

Compiled 73 to 38 computations (47.9% saved)

localize25.0ms (0.2%)

Local error

Found 8 expressions with local error:

0.0b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))))
0.0b
(+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re))
0.0b
(+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))
0.0b
(+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))
1.9b
(*.f64 (atan2.f64 x.im x.re) y.im)
32.3b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
32.3b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
33.2b
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))

rewrite30.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt_binary64
*-un-lft-identity_binary64 pow1_binary64 add-cube-cbrt_binary64
add-exp-log_binary64 add-cbrt-cube_binary64 sqrt-prod_binary64
add-log-exp_binary64 sqrt-div_binary64
associate-*r*_binary64 associate-*l*_binary64
flip3-+_binary64 pow1/2_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64 flip-+_binary64
pow-prod-down_binary64 cbrt-unprod_binary64 unswap-sqr_binary64 prod-exp_binary64 cos-sum_binary64 *-commutative_binary64
Counts
4 → 56
Calls

8 calls:

8.0ms
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
4.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
4.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
4.0ms
(*.f64 (atan2.f64 x.im x.re) y.im)
0.0ms
(+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))

series559.0ms (4.6%)

Counts
4 → 51
Calls

4 calls:

255.0ms
(cos.f64 (+.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.im) (*.f64 (atan2.f64 x.im x.re) y.re)))
137.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
93.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
74.0ms
(*.f64 (atan2.f64 x.im x.re) y.im)
Compiler

Compiled 3422 to 2245 computations (34.4% saved)

simplify105.0ms (0.9%)

Algorithm
egg-herbie
Counts
107 → 107
Iterations

Useful iterations: 0 (79.0ms)

IterNodesCost
049452028
149452028

prune212.0ms (1.7%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New1025107
Fresh000
Picked101
Done000
Total1035108
Error
22.1b
Counts
108 → 5
Compiler

Compiled 4480 to 1181 computations (73.6% saved)

localize21.0ms (0.2%)

Local error

Found 8 expressions with local error:

0.0b
(exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
0.0b
(-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
0.0b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 (atan2.f64 x.im x.re) y.re)))
0.0b
(+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))
0.2b
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)
1.9b
(*.f64 (atan2.f64 x.im x.re) y.im)
19.3b
(cos.f64 (*.f64 (atan2.f64 x.im x.re) y.re))
32.3b
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))

rewrite21.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
14×add-sqr-sqrt_binary64
11×pow1_binary64
*-un-lft-identity_binary64 add-cube-cbrt_binary64 associate-*l*_binary64
add-exp-log_binary64 add-cbrt-cube_binary64
associate-*r*_binary64
add-log-exp_binary64
log-pow_binary64 sqrt-prod_binary64
pow-prod-down_binary64 pow1/2_binary64 cbrt-unprod_binary64 sqrt-pow1_binary64 unswap-sqr_binary64 prod-exp_binary64 sqrt-div_binary64 *-commutative_binary64
flip3-+_binary64 rem-sqrt-square_binary64 flip-+_binary64
Counts
4 → 61
Calls

8 calls:

5.0ms
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)
4.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
4.0ms
(*.f64 (atan2.f64 x.im x.re) y.im)
2.0ms
(cos.f64 (*.f64 (atan2.f64 x.im x.re) y.re))
0.0ms
(+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im))

series672.0ms (5.5%)

Counts
4 → 54
Calls

4 calls:

338.0ms
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))) y.re)
132.0ms
(cos.f64 (*.f64 (atan2.f64 x.im x.re) y.re))
131.0ms
(sqrt.f64 (+.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)))
71.0ms
(*.f64 (atan2.f64 x.im x.re) y.im)
Compiler

Compiled 2540 to 1844 computations (27.4% saved)

simplify63.0ms (0.5%)

Algorithm
egg-herbie
Counts
115 → 115
Iterations

Useful iterations: 0 (39.0ms)

IterNodesCost
050392019

prune141.0ms (1.2%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New1114115
Fresh044
Picked101
Done000
Total1128120
Error
4.4b
Counts
120 → 8
Compiler

Compiled 3513 to 1189 computations (66.2% saved)

localize17.0ms (0.1%)

Local error

Found 8 expressions with local error:

0.1b
(*.f64 (log.f64 (neg.f64 x.im)) y.re)
0.0b
(exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im)))
0.0b
(-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))
0.0b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 (atan2.f64 x.im x.re) y.re)))
0.1b
(*.f64 (log.f64 (neg.f64 x.im)) y.re)
0.2b
(*.f64 (atan2.f64 x.im x.re) y.re)
1.9b
(*.f64 (atan2.f64 x.im x.re) y.im)
19.3b
(cos.f64 (*.f64 (atan2.f64 x.im x.re) y.re))

rewrite19.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
16×add-sqr-sqrt_binary64
11×pow1_binary64
10×*-un-lft-identity_binary64 add-cube-cbrt_binary64 add-exp-log_binary64 add-cbrt-cube_binary64 associate-*l*_binary64
associate-*r*_binary64
add-log-exp_binary64
pow-prod-down_binary64 cbrt-unprod_binary64 unswap-sqr_binary64 prod-exp_binary64 *-commutative_binary64
log-pow_binary64
Counts
4 → 62
Calls

8 calls:

4.0ms
(*.f64 (log.f64 (neg.f64 x.im)) y.re)
4.0ms
(*.f64 (atan2.f64 x.im x.re) y.im)
4.0ms
(*.f64 (atan2.f64 x.im x.re) y.re)
2.0ms
(cos.f64 (*.f64 (atan2.f64 x.im x.re) y.re))
0.0ms
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 (atan2.f64 x.im x.re) y.re)))

series423.0ms (3.5%)

Counts
4 → 34
Calls

4 calls:

171.0ms
(*.f64 (log.f64 (neg.f64 x.im)) y.re)
124.0ms
(cos.f64 (*.f64 (atan2.f64 x.im x.re) y.re))
64.0ms
(*.f64 (atan2.f64 x.im x.re) y.re)
64.0ms
(*.f64 (atan2.f64 x.im x.re) y.im)
Compiler

Compiled 1312 to 977 computations (25.5% saved)

simplify88.0ms (0.7%)

Algorithm
egg-herbie
Counts
96 → 96
Iterations

Useful iterations: 0 (70.0ms)

IterNodesCost
051481176

prune84.0ms (0.7%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New95196
Fresh077
Picked101
Done000
Total968104
Error
4.4b
Counts
104 → 8
Compiler

Compiled 2348 to 463 computations (80.3% saved)

localize22.0ms (0.2%)

Local error

Found 8 expressions with local error:

0.1b
(*.f64 (log.f64 (neg.f64 x.im)) y.re)
0.0b
(exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (*.f64 (cbrt.f64 (atan2.f64 x.im x.re)) (cbrt.f64 (atan2.f64 x.im x.re))) (*.f64 y.im (cbrt.f64 (atan2.f64 x.im x.re))))))
0.0b
(-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (*.f64 (cbrt.f64 (atan2.f64 x.im x.re)) (cbrt.f64 (atan2.f64 x.im x.re))) (*.f64 y.im (cbrt.f64 (atan2.f64 x.im x.re)))))
0.0b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (*.f64 (cbrt.f64 (atan2.f64 x.im x.re)) (cbrt.f64 (atan2.f64 x.im x.re))) (*.f64 y.im (cbrt.f64 (atan2.f64 x.im x.re)))))) (cos.f64 (*.f64 (atan2.f64 x.im x.re) y.re)))
4.1b
(cbrt.f64 (atan2.f64 x.im x.re))
4.1b
(cbrt.f64 (atan2.f64 x.im x.re))
4.1b
(cbrt.f64 (atan2.f64 x.im x.re))
19.3b
(cos.f64 (*.f64 (atan2.f64 x.im x.re) y.re))

rewrite9.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
cbrt-prod_binary64
*-un-lft-identity_binary64 add-cube-cbrt_binary64 add-sqr-sqrt_binary64
add-log-exp_binary64 pow1_binary64 add-exp-log_binary64 add-cbrt-cube_binary64
pow1/3_binary64
Counts
4 → 40
Calls

8 calls:

2.0ms
(cos.f64 (*.f64 (atan2.f64 x.im x.re) y.re))
1.0ms
(cbrt.f64 (atan2.f64 x.im x.re))
1.0ms
(cbrt.f64 (atan2.f64 x.im x.re))
1.0ms
(cbrt.f64 (atan2.f64 x.im x.re))
0.0ms
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (neg.f64 x.im)) y.re) (*.f64 (*.f64 (cbrt.f64 (atan2.f64 x.im x.re)) (cbrt.f64 (atan2.f64 x.im x.re))) (*.f64 y.im (cbrt.f64 (atan2.f64 x.im x.re)))))) (cos.f64 (*.f64 (atan2.f64 x.im x.re) y.re)))

series607.0ms (5%)

Counts
4 → 28
Calls

4 calls:

167.0ms
(cbrt.f64 (atan2.f64 x.im x.re))
161.0ms
(cbrt.f64 (atan2.f64 x.im x.re))
153.0ms
(cbrt.f64 (atan2.f64 x.im x.re))
125.0ms
(cos.f64 (*.f64 (atan2.f64 x.im x.re) y.re))
Compiler

Compiled 1707 to 1028 computations (39.8% saved)

simplify73.0ms (0.6%)

Algorithm
egg-herbie
Counts
68 → 68
Iterations

Useful iterations: 0 (59.0ms)

IterNodesCost
04910768
14910768

prune69.0ms (0.6%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New67168
Fresh077
Picked101
Done000
Total68876
Error
4.4b
Counts
76 → 8
Compiler

Compiled 2220 to 253 computations (88.6% saved)

simplify23.0ms (0.2%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (5.0ms)

IterNodesCost
03571421
13571421

regimes384.0ms (3.2%)

Compiler

Compiled 2908 to 2016 computations (30.7% saved)

bsearch219.0ms (1.8%)

Steps
ItersRangePoint
10
-2.0900747234974714e-303
2.790433275347491e-300
4.3354624121682e-310
8
-2.2018441581627254e-65
-9.670250962732699e-70
-1.0023614876036504e-65
6
-2493285051684366.5
-319741171256093.3
-326275111805596.6
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes328.0ms (2.7%)

Compiler

Compiled 2192 to 1560 computations (28.8% saved)

bsearch233.0ms (1.9%)

Steps
ItersRangePoint
10
-2.0900747234974714e-303
2.790433275347491e-300
4.3354624121682e-310
8
-2.2018441581627254e-65
-9.670250962732699e-70
-9.834281750438918e-70
6
-2493285051684366.5
-319741171256093.3
-925944660526301.8
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes263.0ms (2.2%)

Compiler

Compiled 1600 to 1152 computations (28% saved)

bsearch214.0ms (1.8%)

Steps
ItersRangePoint
10
-2.0900747234974714e-303
2.790433275347491e-300
4.3354624121682e-310
8
-2.2018441581627254e-65
-9.670250962732699e-70
-1.0162343325851357e-69
6
-2493285051684366.5
-319741171256093.3
-339342992904603.25
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes154.0ms (1.3%)

Compiler

Compiled 284 to 296 computations (-4.2% saved)

bsearch196.0ms (1.6%)

Steps
ItersRangePoint
10
-2.0900747234974714e-303
2.790433275347491e-300
4.3354624121682e-310
8
-2.2018441581627254e-65
-9.670250962732699e-70
-1.8575264693177687e-69
6
-2493285051684366.5
-319741171256093.3
-339342992904603.25
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes127.0ms (1%)

Compiler

Compiled 140 to 192 computations (-37.1% saved)

bsearch264.0ms (2.2%)

Steps
ItersRangePoint
10
2.3372972800024355e-05
32438381851594.934
0.0011869954206574697
9
4.155612138687374e-29
1.1739286950373954e-23
4.2003005748055775e-29
9
2.664181243983387e-69
8.780853057274785e-64
3.5192623145897594e-65
9
-1.190299236294038e-08
-9.496995252881928e-17
-1.7214144504141627e-15
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes150.0ms (1.2%)

Accuracy

Total 6.3b remaining (66.7%)

Threshold costs 0b (0%)

Compiler

Compiled 68 to 136 computations (-100% saved)

bsearch245.0ms (2%)

Steps
ItersRangePoint
10
2.3372972800024355e-05
32438381851594.934
8.825529323851523e-05
5
1.268664387818345e-40
4.445456705749919e-40
1.2949051645648911e-40
9
3.1591285939219716e-60
5.629644129336155e-53
5.531442779259403e-53
10
-144906351.1093351
-0.010704970374718521
-0.010833561531639842
Compiler

Compiled 465 to 218 computations (53.1% saved)

simplify14.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (4.0ms)

IterNodesCost
0249899
1249899

end0.0ms (0%)

sample4.2s (34.9%)

Algorithm
intervals
Results
1.3s2387×body1024invalid
909.0ms7580×body128valid
364.0ms979×body512invalid
105.0ms189×body1024valid
103.0ms415×body256invalid
69.0ms556×body128invalid
53.0ms138×body512valid
27.0ms34×body2048invalid
20.0ms81×body256valid
10.0ms12×body2048valid
Compiler

Compiled 1227 to 734 computations (40.2% saved)

Pareto

0.8924915478245478

Profiling

Loading profile data...