Details

Time bar (total: 8.1s)

analyze788.0ms (9.8%)

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
0%99.8%0.2%6
0%99.8%0.2%7
6.2%93.6%0.2%8
25%74.9%0.2%9
28.1%71.7%0.2%10
29.6%70.2%0.2%11
53%46.8%0.2%12
71.3%28.5%0.2%13
71.7%28.1%0.2%14
Compiler

Compiled 20 to 12 computations (40% saved)

sample29.0ms (0.4%)

Algorithm
intervals
Results
16.0ms256×body128valid
3.0ms16×body128invalid
Compiler

Compiled 43 to 27 computations (37.2% saved)

simplify119.0ms (1.5%)

Algorithm
egg-herbie
Rules
768×times-frac_binary64
766×div-sub_binary64
654×unswap-sqr_binary64
570×unsub-neg_binary64
551×cancel-sign-sub-inv_binary64
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01430
12530
24530
37130
413430
518830
624830
738730
853530
965230
1069930
11204530
12360030
13307030
14325930
15344530
16385030
17523230

prune1.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done000
Total011
Error
27.9b
Counts
1 → 1
Alt Table
StatusErrorProgram
27.9b
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Compiler

Compiled 38 to 22 computations (42.1% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

0.0b
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
0.2b
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
27.3b
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

rewrite82.0ms (1%)

Algorithm
rewrite-expression-head
Error
27.8b
Rules
11×*-un-lft-identity_binary64
11×add-sqr-sqrt_binary64
11×add-cube-cbrt_binary64
times-frac_binary64
add-log-exp_binary64
Counts
3 → 55
Calls

3 calls:

12.0ms
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
3.0ms
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
3.0ms
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
Compiler

Compiled 1496 to 199 computations (86.7% saved)

series136.0ms (1.7%)

Error
4.4b
Counts
3 → 60
Calls

3 calls:

69.0ms
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
30.0ms
(-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im))
19.0ms
(+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))
Compiler

Compiled 1880 to 1191 computations (36.6% saved)

simplify147.0ms (1.8%)

Algorithm
egg-herbie
Rules
460×associate-*l*_binary64
386×associate-*r*_binary64
313×unswap-sqr_binary64
253×div-sub_binary64
208×distribute-rgt-in_binary64
Counts
115 → 69
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01212787
13352572
210292570
336322570
448302570
549392570

prune49.0ms (0.6%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New62769
Fresh000
Picked101
Done000
Total63770
Error
16.5b
Counts
70 → 7
Alt Table
StatusErrorProgram
43.1b
(*.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (sqrt.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
43.8b
(/.f64 (-.f64 (*.f64 x.im y.re) (*.f64 x.re y.im)) (cbrt.f64 (pow.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) 3)))
27.9b
(*.f64 (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
36.9b
(neg.f64 (/.f64 x.re y.im))
40.4b
(neg.f64 (/.f64 (*.f64 x.re y.im) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
28.0b
(/.f64 1 (/.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))))
27.8b
(/.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
Compiler

Compiled 1551 to 725 computations (53.3% saved)

localize16.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.2b
(-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))
16.7b
(/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
30.7b
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
30.7b
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))

rewrite136.0ms (1.7%)

Algorithm
rewrite-expression-head
Error
16.5b
Rules
43×*-un-lft-identity_binary64
28×sqrt-prod_binary64
25×add-sqr-sqrt_binary64
24×times-frac_binary64
23×add-cube-cbrt_binary64
Counts
4 → 96
Calls

4 calls:

10.0ms
(/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
7.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
3.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
3.0ms
(-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))
Compiler

Compiled 3183 to 1247 computations (60.8% saved)

series244.0ms (3%)

Error
15.2b
Counts
4 → 92
Calls

4 calls:

99.0ms
(/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
38.0ms
(-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))
35.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
34.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
Compiler

Compiled 5234 to 3281 computations (37.3% saved)

simplify170.0ms (2.1%)

Algorithm
egg-herbie
Rules
516×times-frac_binary64
430×associate-/l*_binary64
290×associate-/r*_binary64
272×associate-*l/_binary64
219×cancel-sign-sub-inv_binary64
Counts
188 → 140
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02145157
15054844
215874838
348394832
451904832

prune101.0ms (1.3%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New1346140
Fresh336
Picked101
Done000
Total1389147
Error
15.2b
Counts
147 → 9
Alt Table
StatusErrorProgram
27.8b
(/.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (pow.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) 1/2))
46.5b
(/.f64 (neg.f64 x.im) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
43.1b
(*.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (sqrt.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
36.9b
(neg.f64 (/.f64 x.re y.im))
47.3b
(/.f64 (-.f64 x.im (/.f64 (*.f64 y.im x.re) y.re)) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
28.0b
(/.f64 1 (/.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))))
46.5b
(/.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (+.f64 y.im (*.f64 1/2 (/.f64 (pow.f64 y.re 2) y.im)))) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
28.3b
(/.f64 (*.f64 (/.f64 1 (*.f64 (cbrt.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (cbrt.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 y.im x.re)) (cbrt.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
28.0b
(/.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
Compiler

Compiled 3244 to 1518 computations (53.2% saved)

localize20.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.2b
(-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))
16.7b
(/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
30.7b
(pow.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) 1/2)
30.7b
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))

rewrite132.0ms (1.6%)

Algorithm
rewrite-expression-head
Error
15.2b
Rules
44×*-un-lft-identity_binary64
25×sqrt-prod_binary64
25×add-sqr-sqrt_binary64
24×times-frac_binary64
24×add-cube-cbrt_binary64
Counts
4 → 99
Calls

4 calls:

12.0ms
(/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
8.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
4.0ms
(pow.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) 1/2)
3.0ms
(-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))
Compiler

Compiled 3343 to 1459 computations (56.4% saved)

series251.0ms (3.1%)

Error
15.2b
Counts
4 → 92
Calls

4 calls:

86.0ms
(/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
47.0ms
(pow.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) 1/2)
36.0ms
(-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))
34.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
Compiler

Compiled 5370 to 3450 computations (35.8% saved)

simplify191.0ms (2.4%)

Algorithm
egg-herbie
Rules
591×times-frac_binary64
491×associate-/l*_binary64
227×div-sub_binary64
223×cancel-sign-sub-inv_binary64
167×associate-/l/_binary64
Counts
191 → 146
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02155196
15214897
217204855
346334849
450974849

prune101.0ms (1.3%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New1451146
Fresh178
Picked101
Done000
Total1478155
Error
15.2b
Counts
155 → 8
Alt Table
StatusErrorProgram
43.1b
(*.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (sqrt.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
36.9b
(neg.f64 (/.f64 x.re y.im))
46.5b
(/.f64 (neg.f64 x.im) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
47.3b
(/.f64 (-.f64 x.im (/.f64 (*.f64 y.im x.re) y.re)) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
28.0b
(/.f64 1 (/.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))))
34.9b
(/.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (cbrt.f64 (pow.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) 3/2))) (pow.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) 1/2))
46.5b
(/.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (+.f64 y.im (*.f64 1/2 (/.f64 (pow.f64 y.re 2) y.im)))) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
28.0b
(/.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
Compiler

Compiled 3257 to 1600 computations (50.9% saved)

localize15.0ms (0.2%)

Local error

Found 4 expressions with local error:

16.7b
(/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
30.7b
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
30.7b
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
30.7b
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))

rewrite157.0ms (2%)

Algorithm
rewrite-expression-head
Error
15.2b
Rules
52×*-un-lft-identity_binary64
35×sqrt-prod_binary64
27×add-sqr-sqrt_binary64
24×times-frac_binary64
24×add-cube-cbrt_binary64
Counts
4 → 103
Calls

4 calls:

12.0ms
(/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
7.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
5.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
5.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
Compiler

Compiled 4291 to 2748 computations (36% saved)

series283.0ms (3.5%)

Error
15.2b
Counts
4 → 86
Calls

4 calls:

97.0ms
(/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))
47.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
39.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
38.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
Compiler

Compiled 7200 to 5216 computations (27.6% saved)

simplify131.0ms (1.6%)

Algorithm
egg-herbie
Rules
445×times-frac_binary64
386×associate-/l*_binary64
353×associate-*l*_binary64
346×associate-*r*_binary64
275×associate-/r*_binary64
Counts
189 → 126
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01735286
14515005
213414975
350104975

prune119.0ms (1.5%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New1251126
Fresh077
Picked011
Done000
Total1259134
Error
15.2b
Counts
134 → 9
Alt Table
StatusErrorProgram
43.1b
(*.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (sqrt.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
36.9b
(neg.f64 (/.f64 x.re y.im))
46.5b
(/.f64 (neg.f64 x.im) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
47.3b
(/.f64 (-.f64 x.im (/.f64 (*.f64 y.im x.re) y.re)) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
28.0b
(/.f64 1 (/.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im))))
34.9b
(/.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (cbrt.f64 (pow.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)) 3/2))) (pow.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)) 1/2))
46.5b
(/.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (+.f64 y.im (*.f64 1/2 (/.f64 (pow.f64 y.re 2) y.im)))) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
47.3b
(/.f64 (-.f64 x.im (/.f64 (*.f64 y.im x.re) y.re)) (*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
28.0b
(/.f64 (/.f64 (-.f64 (*.f64 y.re x.im) (*.f64 x.re y.im)) (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))) (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2))))))
Compiler

Compiled 3824 to 2443 computations (36.1% saved)

regimes3.3s (41.2%)

Accuracy

Total 1.1b remaining (7.1%)

Threshold costs 0b (0%)

Compiler

Compiled 23403 to 14633 computations (37.5% saved)

bsearch80.0ms (1%)

Steps
ItersRangePoint
8
1.3195658943841933e+150
5.873810536870084e+153
6.4153068053837126e+150
6
1.8602385643483246e-120
6.34431879816719e-119
3.818593708289327e-120
8
-6.015141269972389e-92
-2.0827600051108637e-94
-4.270742155339291e-94
9
-1.8111732204671598e+74
-2.1764639905828446e+67
-8.236807978306482e+73
Compiler

Compiled 5 to 4 computations (20% saved)

simplify11.0ms (0.1%)

Algorithm
egg-herbie
Rules
10×+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
043178
158174
274174
383174
488174
589174
689174

end2.0ms (0%)

Compiler

Compiled 97 to 52 computations (46.4% saved)

sample1.2s (15.1%)

Algorithm
intervals
Results
569.0ms8000×body128valid
28.0ms530×body128invalid
Compiler

Compiled 355 to 227 computations (36.1% saved)

Profiling

Loading profile data...