Details

Time bar (total: 8.5s)

analyze4.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
50%50%0.1%2
74.9%25%0.1%3
87.4%12.5%0.1%4
93.7%6.2%0.1%5
96.8%3.1%0.1%6
98.3%1.6%0.1%7
99.1%0.8%0.1%8
99.5%0.4%0.1%9
99.7%0.2%0.1%10
99.8%0.1%0.1%11
99.9%0%0.1%12
99.9%0%0.1%13
99.9%0%0.1%14
Compiler

Compiled 9 to 7 computations (22.2% saved)

sample924.0ms (10.8%)

Results
898.0ms8256×body128valid
Compiler

Compiled 26 to 20 computations (23.1% saved)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
079
179

prune3.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.8b
Counts
2 → 1
Alt Table
StatusErrorProgram
0.8b
(/.f64 (atan2.f64 im re) (log.f64 10))
Compiler

Compiled 24 to 18 computations (25% saved)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.8b
(/.f64 (atan2.f64 im re) (log.f64 10))

series54.0ms (0.6%)

Counts
1 → 0
Calls

1 calls:

53.0ms
(/.f64 (atan2.f64 im re) (log.f64 10))

rewrite4.0ms (0%)

Algorithm
rewrite-expression-head
Rules
12×times-frac_binary64
10×*-un-lft-identity_binary64
10×add-sqr-sqrt_binary64
10×add-cube-cbrt_binary64
pow1_binary64
Counts
1 → 33
Calls

1 calls:

2.0ms
(/.f64 (atan2.f64 im re) (log.f64 10))

simplify115.0ms (1.3%)

Algorithm
egg-herbie
Rules
1288×associate-/l/_binary64
1067×fma-neg_binary64
979×fma-def_binary64
677×unswap-sqr_binary64
350×times-frac_binary64
Counts
33 → 32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
055551
192513
2177513
3294513
4454513
5676513
61686513
72393513
82851513
93810513
104033513
114008513
124982513

prune26.0ms (0.3%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New26632
Fresh000
Picked011
Done000
Total26733
Error
0.1b
Counts
33 → 7
Alt Table
StatusErrorProgram
1.0b
(/.f64 1 (/.f64 (log.f64 10) (atan2.f64 im re)))
28.7b
(*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 10)))
2.0b
(*.f64 (*.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (atan2.f64 im re))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 10)))
28.2b
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 10))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 10))))
7.9b
(cbrt.f64 (*.f64 (*.f64 (/.f64 (atan2.f64 im re) (log.f64 10)) (/.f64 (atan2.f64 im re) (log.f64 10))) (/.f64 (atan2.f64 im re) (log.f64 10))))
0.8b
(/.f64 (atan2.f64 im re) (log.f64 10))
28.7b
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 10) (sqrt.f64 (atan2.f64 im re))))
Compiler

Compiled 631 to 367 computations (41.8% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1 (/.f64 (log.f64 10) (atan2.f64 im re)))
0.9b
(/.f64 (log.f64 10) (atan2.f64 im re))

series98.0ms (1.2%)

Counts
2 → 24
Calls

2 calls:

51.0ms
(/.f64 (log.f64 10) (atan2.f64 im re))
47.0ms
(/.f64 1 (/.f64 (log.f64 10) (atan2.f64 im re)))

rewrite18.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
108×times-frac_binary64
60×*-un-lft-identity_binary64
60×add-sqr-sqrt_binary64
60×add-cube-cbrt_binary64
19×associate-/r*_binary64
Counts
2 → 123
Calls

2 calls:

6.0ms
(/.f64 1 (/.f64 (log.f64 10) (atan2.f64 im re)))
3.0ms
(/.f64 (log.f64 10) (atan2.f64 im re))

simplify212.0ms (2.5%)

Algorithm
egg-herbie
Rules
1150×fabs-mul_binary64
912×fma-def_binary64
471×unswap-sqr_binary64
448×fma-neg_binary64
383×associate-/l/_binary64
Counts
147 → 138
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01002599
11692355
23932318
37842318
410452318
511382318
614852318
718802318
823012318
933472318
1046502318
1146892318
1249462318

prune86.0ms (1%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New1335138
Fresh055
Picked011
Done101
Total13411145
Error
0.0b
Counts
145 → 11
Alt Table
StatusErrorProgram
28.7b
(*.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (sqrt.f64 (atan2.f64 im re)) (log.f64 10)))
31.0b
(/.f64 (/.f64 1 (sqrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re)))) (sqrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))
7.9b
(cbrt.f64 (*.f64 (*.f64 (/.f64 (atan2.f64 im re) (log.f64 10)) (/.f64 (atan2.f64 im re) (log.f64 10))) (/.f64 (atan2.f64 im re) (log.f64 10))))
1.0b
(/.f64 1 (*.f64 (log.f64 10) (/.f64 1 (atan2.f64 im re))))
28.7b
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 10) (sqrt.f64 (atan2.f64 im re))))
1.0b
(/.f64 (/.f64 1 (sqrt.f64 (log.f64 10))) (/.f64 (sqrt.f64 (log.f64 10)) (atan2.f64 im re)))
1.0b
(/.f64 1 (/.f64 (log.f64 10) (atan2.f64 im re)))
0.7b
(/.f64 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))) (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))) (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))
2.0b
(*.f64 (*.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (atan2.f64 im re))) (/.f64 (cbrt.f64 (atan2.f64 im re)) (log.f64 10)))
28.2b
(*.f64 (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 10))) (sqrt.f64 (/.f64 (atan2.f64 im re) (log.f64 10))))
0.7b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))) (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))) (/.f64 1 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re)))))
Compiler

Compiled 2758 to 1799 computations (34.8% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.6b
(/.f64 1 (*.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))) (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re)))))
0.6b
(/.f64 1 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))
0.9b
(/.f64 (log.f64 10) (atan2.f64 im re))
3.9b
(cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re)))

series3.2s (37.9%)

Counts
3 → 72
Calls

3 calls:

1.4s
(/.f64 1 (*.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))) (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re)))))
954.0ms
(/.f64 1 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))
893.0ms
(cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re)))

rewrite36.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
120×times-frac_binary64
80×cbrt-prod_binary64
69×*-un-lft-identity_binary64
69×add-sqr-sqrt_binary64
69×add-cube-cbrt_binary64
Counts
3 → 166
Calls

3 calls:

8.0ms
(/.f64 1 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))
8.0ms
(/.f64 1 (*.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))) (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re)))))
2.0ms
(cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re)))

simplify187.0ms (2.2%)

Algorithm
egg-herbie
Rules
663×distribute-rgt-in_binary64
656×fma-neg_binary64
412×fma-def_binary64
293×unswap-sqr_binary64
278×*-commutative_binary64
Counts
238 → 192
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01524788
12254313
24164280
313574130
422944031
543664031
648854031

prune474.0ms (5.6%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New3463349
Fresh459
Picked101
Done011
Total3519360
Error
0.0b
Counts
360 → 9
Alt Table
StatusErrorProgram
0.7b
(/.f64 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))) (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))) (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))
0.6b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))) (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))) (/.f64 (/.f64 1 (cbrt.f64 (*.f64 (cbrt.f64 (log.f64 10)) (cbrt.f64 (log.f64 10))))) (cbrt.f64 (/.f64 (cbrt.f64 (log.f64 10)) (atan2.f64 im re)))))
28.7b
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 10) (sqrt.f64 (atan2.f64 im re))))
1.0b
(/.f64 (/.f64 1 (sqrt.f64 (log.f64 10))) (/.f64 (sqrt.f64 (log.f64 10)) (atan2.f64 im re)))
1.0b
(/.f64 1 (/.f64 (log.f64 10) (atan2.f64 im re)))
31.0b
(/.f64 (/.f64 1 (sqrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re)))) (sqrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))
0.9b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (atan2.f64 im re))))) (cbrt.f64 (/.f64 (log.f64 10) (cbrt.f64 (atan2.f64 im re))))))) (/.f64 1 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re)))))
1.0b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))) (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))) (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))) (cbrt.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))))) (/.f64 1 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re)))))
1.0b
(/.f64 1 (*.f64 (log.f64 10) (/.f64 1 (atan2.f64 im re))))
Compiler

Compiled 12511 to 8484 computations (32.2% saved)

localize19.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(cbrt.f64 (log.f64 10))
1.6b
(*.f64 (cbrt.f64 (log.f64 10)) (cbrt.f64 (log.f64 10)))
3.9b
(cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re)))
4.2b
(cbrt.f64 (/.f64 (cbrt.f64 (log.f64 10)) (atan2.f64 im re)))

series1.0s (12.3%)

Counts
3 → 24
Calls

3 calls:

1.0s
(cbrt.f64 (/.f64 (cbrt.f64 (log.f64 10)) (atan2.f64 im re)))
0.0ms
(*.f64 (cbrt.f64 (log.f64 10)) (cbrt.f64 (log.f64 10)))
0.0ms
(cbrt.f64 (log.f64 10))

rewrite22.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
65×cbrt-prod_binary64
34×add-sqr-sqrt_binary64
28×*-un-lft-identity_binary64
26×add-cube-cbrt_binary64
21×times-frac_binary64
Counts
3 → 97
Calls

3 calls:

5.0ms
(*.f64 (cbrt.f64 (log.f64 10)) (cbrt.f64 (log.f64 10)))
3.0ms
(cbrt.f64 (/.f64 (cbrt.f64 (log.f64 10)) (atan2.f64 im re)))
1.0ms
(cbrt.f64 (log.f64 10))

simplify147.0ms (1.7%)

Algorithm
egg-herbie
Rules
934×fma-neg_binary64
430×sqr-pow_binary64
356×associate-/l*_binary64
356×times-frac_binary64
342×*-commutative_binary64
Counts
121 → 110
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01222084
11672046
23541984
37671966
421731780
524651780
630041780
746911780
848431780

prune333.0ms (3.9%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New1991200
Fresh077
Picked011
Done011
Total19910209
Error
0.0b
Counts
209 → 10
Alt Table
StatusErrorProgram
0.5b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))) (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))) (/.f64 (/.f64 1 (cbrt.f64 (*.f64 (cbrt.f64 (log.f64 10)) (cbrt.f64 (log.f64 10))))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (/.f64 (cbrt.f64 (log.f64 10)) (atan2.f64 im re)))) (cbrt.f64 (cbrt.f64 (/.f64 (cbrt.f64 (log.f64 10)) (atan2.f64 im re))))) (cbrt.f64 (cbrt.f64 (/.f64 (cbrt.f64 (log.f64 10)) (atan2.f64 im re)))))))
0.7b
(/.f64 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))) (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))) (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))
0.6b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))) (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))) (/.f64 (/.f64 1 (cbrt.f64 (*.f64 (cbrt.f64 (log.f64 10)) (cbrt.f64 (log.f64 10))))) (cbrt.f64 (/.f64 (cbrt.f64 (log.f64 10)) (atan2.f64 im re)))))
28.7b
(/.f64 (sqrt.f64 (atan2.f64 im re)) (/.f64 (log.f64 10) (sqrt.f64 (atan2.f64 im re))))
1.0b
(/.f64 (/.f64 1 (sqrt.f64 (log.f64 10))) (/.f64 (sqrt.f64 (log.f64 10)) (atan2.f64 im re)))
1.0b
(/.f64 1 (/.f64 (log.f64 10) (atan2.f64 im re)))
31.0b
(/.f64 (/.f64 1 (sqrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re)))) (sqrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))
0.9b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (cbrt.f64 (atan2.f64 im re)) (cbrt.f64 (atan2.f64 im re))))) (cbrt.f64 (/.f64 (log.f64 10) (cbrt.f64 (atan2.f64 im re))))))) (/.f64 1 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re)))))
1.0b
(*.f64 (/.f64 1 (*.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))) (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))) (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))) (cbrt.f64 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re))))))) (/.f64 1 (cbrt.f64 (/.f64 (log.f64 10) (atan2.f64 im re)))))
1.0b
(/.f64 1 (*.f64 (log.f64 10) (/.f64 1 (atan2.f64 im re))))
Compiler

Compiled 9057 to 6902 computations (23.8% saved)

regimes1.2s (14.2%)

Accuracy

Total 0.4b remaining (74.8%)

Threshold costs 0.4b (74.8%)

Counts
240 → 1
Compiler

Compiled 31188 to 23389 computations (25% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01543
11843
21643

end245.0ms (2.9%)

Compiler

Compiled 344 to 251 computations (27% saved)

Profiling

Loading profile data...