Details

Time bar (total: 13.6s)

analyze1.8s (13.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 42 to 20 computations (52.4% saved)

sample5.8s (42.4%)

Results
2.3s2432×body1024invalid
1.9s7828×body128valid
750.0ms993×body512invalid
183.0ms564×body128invalid
181.0ms425×body256invalid
167.0ms166×body1024valid
84.0ms142×body512valid
47.0ms24×body2048invalid
42.0ms102×body256valid
29.0ms18×body2048valid
Compiler

Compiled 125 to 59 computations (52.8% saved)

simplify60.0ms (0.4%)

Algorithm
egg-herbie
Rules
373×rules-1_binary64
365×rules-6-rev_binary64
344×rules-20_binary64
313×rules-33_binary64
295×rules-1-rev_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02040
14638
212338
332438
4118238
5409138
6488338
7498138

prune5.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
5.3b
Counts
3 → 2
Alt Table
StatusErrorProgram
7.0b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re)))))
31.2b
(*.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))))
Compiler

Compiled 206 to 96 computations (53.4% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.7b
(*.f64 y.re (atan2.f64 x.im x.re))
0.7b
(/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
1.4b
(*.f64 (atan2.f64 x.im x.re) y.im)
31.6b
(cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))

series581.0ms (4.3%)

Counts
4 → 96
Calls

4 calls:

481.0ms
(/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
86.0ms
(cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))
8.0ms
(*.f64 (atan2.f64 x.im x.re) y.im)
6.0ms
(*.f64 y.re (atan2.f64 x.im x.re))

rewrite95.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
625×prod-diff_binary64
190×egg-rr
148×add-sqr-sqrt_binary64
136×add-log-exp_binary64
136×log1p-expm1-u_binary64
Counts
4 → 190
Calls

4 calls:

87.0ms
(*.f64 y.re (atan2.f64 x.im x.re))
87.0ms
(/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im)))
87.0ms
(*.f64 (atan2.f64 x.im x.re) y.im)
87.0ms
(cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01550
133550
2418950
3547850
000
100

simplify105.0ms (0.8%)

Algorithm
egg-herbie
Rules
544×fma-def_binary64
411×rules-13_binary64
400×rules-14-rev_binary64
307×rules-21_binary64
255×rules-20_binary64
Counts
286 → 321
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
05587070
122346584
253426584

prune680.0ms (5%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New30912321
Fresh101
Picked101
Done000
Total31112323
Error
2.1b
Counts
323 → 12
Alt Table
StatusErrorProgram
18.9b
(*.f64 (fma.f64 (log.f64 (hypot.f64 x.im x.re)) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))) (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re)))))
7.7b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
19.5b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (pow.f64 (sqrt.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))) 2))
36.7b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 (log.f64 (/.f64 -1 x.im)) y.im))))
7.4b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (fabs.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))))
17.4b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (-.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 y.im y.im) (pow.f64 (log.f64 (hypot.f64 x.im x.re)) 2))) (*.f64 (log.f64 (hypot.f64 x.im x.re)) (*.f64 y.im (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))))
7.1b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (pow.f64 (cbrt.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))) 3))
2.3b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (hypot.f64 x.re x.im)) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))) (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re)))))
34.9b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (fma.f64 (log.f64 x.im) y.im (*.f64 y.re (atan2.f64 x.im x.re)))))
7.0b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (log1p.f64 (expm1.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))) (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re)))))
7.1b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (cbrt.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 (cbrt.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))) 2)))
7.0b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (log.f64 (exp.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re)))))))
Compiler

Compiled 17989 to 6112 computations (66% saved)

localize16.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (log.f64 (hypot.f64 x.re x.im)) y.re)
0.7b
(*.f64 y.re (atan2.f64 x.im x.re))
1.4b
(*.f64 y.im (atan2.f64 x.im x.re))
31.6b
(cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))

series515.0ms (3.8%)

Counts
2 → 48
Calls

2 calls:

509.0ms
(*.f64 (log.f64 (hypot.f64 x.re x.im)) y.re)
6.0ms
(*.f64 y.im (atan2.f64 x.im x.re))

rewrite72.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
910×log1p-expm1-u_binary64
910×expm1-log1p-u_binary64
248×prod-diff_binary64
126×egg-rr
99×add-sqr-sqrt_binary64
Counts
2 → 126
Calls

2 calls:

70.0ms
(*.f64 (log.f64 (hypot.f64 x.re x.im)) y.re)
70.0ms
(*.f64 y.im (atan2.f64 x.im x.re))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01016
122316
2274916
3654016
000
100

simplify45.0ms (0.3%)

Algorithm
egg-herbie
Rules
680×fma-neg_binary64
579×rules-11_binary64
416×fma-def_binary64
393×rules-20_binary64
324×rules-15-rev_binary64
Counts
174 → 172
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0911092
1302992
21403976
36126976

prune1.4s (10.6%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New3282330
Fresh2911
Picked101
Done000
Total33111342
Error
2.1b
Counts
342 → 11
Alt Table
StatusErrorProgram
7.0b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (log1p.f64 (expm1.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))) (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re)))))
3.0b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (hypot.f64 x.re x.im)) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
7.4b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (fabs.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))))
17.4b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (-.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 y.im y.im) (pow.f64 (log.f64 (hypot.f64 x.im x.re)) 2))) (*.f64 (log.f64 (hypot.f64 x.im x.re)) (*.f64 y.im (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))))
18.9b
(*.f64 (fma.f64 (log.f64 (hypot.f64 x.im x.re)) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))) (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re)))))
19.5b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (pow.f64 (sqrt.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))) 2))
7.1b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (pow.f64 (cbrt.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))) 3))
34.9b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (fma.f64 (log.f64 x.im) y.im (*.f64 y.re (atan2.f64 x.im x.re)))))
34.2b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (hypot.f64 x.re x.im)) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))) (cos.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (/.f64 -1 x.im))))))
7.1b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (cbrt.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 (cbrt.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))) 2)))
7.0b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (log.f64 (exp.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re)))))))
Compiler

Compiled 16149 to 5097 computations (68.4% saved)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (log.f64 (hypot.f64 x.re x.im)) y.re)
0.7b
(*.f64 y.re (atan2.f64 x.im x.re))
1.4b
(*.f64 y.im (atan2.f64 x.im x.re))
18.2b
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))

series14.0ms (0.1%)

Counts
1 → 4
Calls

1 calls:

14.0ms
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))

rewrite72.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
651×log1p-expm1-u_binary64
651×expm1-log1p-u_binary64
383×prod-diff_binary64
71×add-sqr-sqrt_binary64
64×add-cbrt-cube_binary64
Counts
1 → 31
Calls

1 calls:

71.0ms
(cos.f64 (*.f64 y.re (atan2.f64 x.im x.re)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
079
11579
219519
350219
000
100

simplify28.0ms (0.2%)

Algorithm
egg-herbie
Rules
739×rules-11_binary64
482×fma-neg_binary64
442×rules-20_binary64
415×fma-def_binary64
286×rules-13_binary64
Counts
35 → 38
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
029110
173106
2266106
31388106
45444106

prune656.0ms (4.8%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New2730273
Fresh01010
Picked011
Done000
Total27311284
Error
2.1b
Counts
284 → 11
Alt Table
StatusErrorProgram
7.0b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (log1p.f64 (expm1.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))) (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re)))))
3.0b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (hypot.f64 x.re x.im)) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
7.4b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (fabs.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))))
17.4b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (-.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 y.im y.im) (pow.f64 (log.f64 (hypot.f64 x.im x.re)) 2))) (*.f64 (log.f64 (hypot.f64 x.im x.re)) (*.f64 y.im (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))))
18.9b
(*.f64 (fma.f64 (log.f64 (hypot.f64 x.im x.re)) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))) (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re)))))
19.5b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (pow.f64 (sqrt.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))) 2))
7.1b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (pow.f64 (cbrt.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))) 3))
34.9b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (fma.f64 (log.f64 x.im) y.im (*.f64 y.re (atan2.f64 x.im x.re)))))
34.2b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (hypot.f64 x.re x.im)) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))) (cos.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (/.f64 -1 x.im))))))
7.1b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (cbrt.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 (cbrt.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))) 2)))
7.0b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (log.f64 (exp.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re)))))))
Compiler

Compiled 9508 to 3157 computations (66.8% saved)

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.7b
(*.f64 y.re (atan2.f64 x.im x.re))
0.7b
(log1p.f64 (expm1.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
1.4b
(*.f64 y.im (atan2.f64 x.im x.re))
31.6b
(cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))

series10.0ms (0.1%)

Counts
1 → 36
Calls

1 calls:

9.0ms
(log1p.f64 (expm1.f64 (*.f64 y.im (atan2.f64 x.im x.re))))

rewrite47.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
637×expm1-log1p-u_binary64
636×log1p-expm1-u_binary64
210×prod-diff_binary64
125×expm1-udef_binary64
125×log1p-udef_binary64
Counts
1 → 76
Calls

1 calls:

45.0ms
(log1p.f64 (expm1.f64 (*.f64 y.im (atan2.f64 x.im x.re))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
087
11577
219207
349917
000
100

simplify13.0ms (0.1%)

Algorithm
egg-herbie
Rules
rules-20_binary64
Counts
112 → 76
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07252
17252
27252

prune694.0ms (5.1%)

Pruning

11 alts after pruning (9 fresh and 2 done)

PrunedKeptTotal
New2971298
Fresh189
Picked011
Done011
Total29811309
Error
2.1b
Counts
309 → 11
Alt Table
StatusErrorProgram
19.5b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (pow.f64 (sqrt.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))) 2))
7.0b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (log1p.f64 (expm1.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))) (log.f64 (+.f64 1 (expm1.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))))))
7.0b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (log1p.f64 (expm1.f64 (*.f64 y.im (atan2.f64 x.im x.re)))))) (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re)))))
3.0b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (hypot.f64 x.re x.im)) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))) (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))))
7.4b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (fabs.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))))
17.4b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (-.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 y.re (atan2.f64 x.im x.re))) (*.f64 (*.f64 y.im y.im) (pow.f64 (log.f64 (hypot.f64 x.im x.re)) 2))) (*.f64 (log.f64 (hypot.f64 x.im x.re)) (*.f64 y.im (sin.f64 (*.f64 y.re (atan2.f64 x.im x.re))))))))
18.9b
(*.f64 (fma.f64 (log.f64 (hypot.f64 x.im x.re)) (/.f64 y.re (exp.f64 (*.f64 y.im (atan2.f64 x.im x.re)))) (exp.f64 (neg.f64 (*.f64 y.im (atan2.f64 x.im x.re))))) (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re)))))
7.1b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (pow.f64 (cbrt.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))) 3))
34.9b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (cos.f64 (fma.f64 (log.f64 x.im) y.im (*.f64 y.re (atan2.f64 x.im x.re)))))
34.2b
(*.f64 (exp.f64 (-.f64 (*.f64 (log.f64 (hypot.f64 x.re x.im)) y.re) (*.f64 y.im (atan2.f64 x.im x.re)))) (cos.f64 (-.f64 (*.f64 y.re (atan2.f64 x.im x.re)) (*.f64 y.im (log.f64 (/.f64 -1 x.im))))))
7.1b
(*.f64 (/.f64 (pow.f64 (hypot.f64 x.re x.im) y.re) (exp.f64 (*.f64 (atan2.f64 x.im x.re) y.im))) (*.f64 (cbrt.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))) (pow.f64 (cbrt.f64 (cos.f64 (fma.f64 (log.f64 (hypot.f64 x.re x.im)) y.im (*.f64 y.re (atan2.f64 x.im x.re))))) 2)))
Compiler

Compiled 14344 to 4307 computations (70% saved)

regimes544.0ms (4%)

Accuracy

Total 0.4b remaining (11.7%)

Threshold costs 0.4b (11.7%)

Counts
81 → 1
Compiler

Compiled 12707 to 7050 computations (44.5% saved)

simplify1.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01640
11640

end263.0ms (1.9%)

Compiler

Compiled 441 to 232 computations (47.4% saved)

Profiling

Loading profile data...