Details

Time bar (total: 4.3s)

analyze658.0ms (15.2%)

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 16 to 12 computations (25% saved)

sample20.0ms (0.5%)

Algorithm
intervals
Results
10.0ms256×body128valid
1.0ms17×body128invalid
Compiler

Compiled 31 to 27 computations (12.9% saved)

simplify7.0ms (0.2%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (2.0ms)

IterNodesCost
01830
11830

prune5.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022

Merged error: 26.4b

Counts
2 → 1
Compiler

Compiled 30 to 22 computations (26.7% saved)

localize9.0ms (0.2%)

Local error

Found 2 expressions with local error:

0.5b
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
26.0b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

rewrite17.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
10×*-un-lft-identity_binary64 add-cube-cbrt_binary64 add-sqr-sqrt_binary64
times-frac_binary64
add-log-exp_binary64 add-exp-log_binary64 add-cbrt-cube_binary64
flip3-+_binary64 associate-/r*_binary64 associate-/l*_binary64 flip-+_binary64
associate-/l/_binary64 pow1_binary64 associate-/r/_binary64
cbrt-undiv_binary64 clear-num_binary64 frac-2neg_binary64 div-inv_binary64 div-exp_binary64 +-commutative_binary64 sum-log_binary64
Counts
2 → 42
Calls

2 calls:

9.0ms
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
4.0ms
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))

series251.0ms (5.8%)

Counts
2 → 6
Calls

2 calls:

178.0ms
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
74.0ms
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))

simplify44.0ms (1%)

Algorithm
egg-herbie
Counts
48 → 48
Iterations

Useful iterations: 0 (25.0ms)

IterNodesCost
050281623

prune62.0ms (1.4%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New40848
Fresh000
Picked011
Done000
Total40949

Merged error: 25.7b

Counts
49 → 9
Compiler

Compiled 1379 to 266 computations (80.7% saved)

localize12.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.5b
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
15.6b
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
30.5b
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
30.5b
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

rewrite36.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
23×add-sqr-sqrt_binary64
21×*-un-lft-identity_binary64 add-cube-cbrt_binary64
18×times-frac_binary64 sqrt-prod_binary64
associate-/r*_binary64 add-log-exp_binary64 pow1_binary64 add-exp-log_binary64 add-cbrt-cube_binary64 sqrt-div_binary64
flip3-+_binary64 flip-+_binary64
associate-/l*_binary64
associate-/l/_binary64 pow1/2_binary64 associate-/r/_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64
cbrt-undiv_binary64 clear-num_binary64 frac-2neg_binary64 div-inv_binary64 div-exp_binary64 +-commutative_binary64 sum-log_binary64
Counts
4 → 84
Calls

4 calls:

14.0ms
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
4.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
4.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
4.0ms
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))

series411.0ms (9.5%)

Counts
4 → 12
Calls

4 calls:

244.0ms
(/.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im))))
77.0ms
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
46.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
43.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

simplify74.0ms (1.7%)

Algorithm
egg-herbie
Counts
96 → 96
Iterations

Useful iterations: 0 (43.0ms)

IterNodesCost
049932839
149932839

prune128.0ms (3%)

Pruning

11 alts after pruning (9 fresh and 2 done)

PrunedKeptTotal
New91596
Fresh347
Picked011
Done011
Total9411105

Merged error: 23.9b

Counts
105 → 11
Compiler

Compiled 3385 to 1122 computations (66.9% saved)

localize19.0ms (0.4%)

Local error

Found 4 expressions with local error:

0.5b
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
15.8b
(*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
30.5b
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
30.5b
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

rewrite58.0ms (1.4%)

Algorithm
rewrite-expression-head
Rules
40×*-un-lft-identity_binary64
36×add-sqr-sqrt_binary64
30×associate-*r*_binary64
28×times-frac_binary64
25×sqrt-prod_binary64
22×add-cube-cbrt_binary64
11×add-exp-log_binary64
add-cbrt-cube_binary64
pow1_binary64 distribute-lft-out_binary64 unpow-prod-down_binary64
flip3-+_binary64 add-log-exp_binary64 flip-+_binary64 sqrt-div_binary64
unswap-sqr_binary64
associate-*l*_binary64 prod-exp_binary64
pow1/2_binary64 cbrt-unprod_binary64 associate-/r/_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64 frac-times_binary64 associate-*l/_binary64
pow-prod-down_binary64 cbrt-undiv_binary64 associate-*r/_binary64 rec-exp_binary64 un-div-inv_binary64 div-inv_binary64 div-exp_binary64 +-commutative_binary64 sum-log_binary64 *-commutative_binary64
Counts
4 → 101
Calls

4 calls:

29.0ms
(*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
9.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
4.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
4.0ms
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))

series396.0ms (9.2%)

Counts
4 → 12
Calls

4 calls:

243.0ms
(*.f64 (+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im)) (/.f64 1 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
69.0ms
(+.f64 (*.f64 x.re y.re) (*.f64 x.im y.im))
44.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
40.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))

simplify78.0ms (1.8%)

Algorithm
egg-herbie
Counts
113 → 113
Iterations

Useful iterations: 0 (47.0ms)

IterNodesCost
052682872

prune159.0ms (3.7%)

Pruning

11 alts after pruning (8 fresh and 3 done)

PrunedKeptTotal
New1130113
Fresh088
Picked011
Done022
Total11311124

Merged error: 23.9b

Counts
124 → 11
Compiler

Compiled 3971 to 1828 computations (54% saved)

localize26.0ms (0.6%)

Local error

Found 4 expressions with local error:

8.8b
(/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
30.5b
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
30.5b
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
30.5b
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

rewrite57.0ms (1.3%)

Algorithm
rewrite-expression-head
Rules
65×sqrt-prod_binary64
55×*-un-lft-identity_binary64
34×add-sqr-sqrt_binary64
33×times-frac_binary64
31×add-cube-cbrt_binary64
12×distribute-lft-out_binary64 unpow-prod-down_binary64
11×associate-/r*_binary64
10×sqrt-div_binary64
pow1_binary64
add-exp-log_binary64 add-cbrt-cube_binary64
flip3-+_binary64 flip-+_binary64
add-log-exp_binary64
pow1/2_binary64 sqrt-pow1_binary64 rem-sqrt-square_binary64 associate-/l*_binary64
associate-/l/_binary64 associate-/r/_binary64
cbrt-undiv_binary64 clear-num_binary64 frac-2neg_binary64 div-inv_binary64 div-exp_binary64
Counts
4 → 112
Calls

4 calls:

18.0ms
(/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
9.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
9.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
4.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))

series515.0ms (11.9%)

Counts
4 → 12
Calls

4 calls:

378.0ms
(/.f64 (+.f64 (*.f64 y.re x.re) (*.f64 y.im x.im)) (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))))
50.0ms
(sqrt.f64 (+.f64 (*.f64 y.re y.re) (*.f64 y.im y.im)))
44.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))
43.0ms
(sqrt.f64 (+.f64 (pow.f64 y.re 2) (pow.f64 y.im 2)))

simplify84.0ms (2%)

Algorithm
egg-herbie
Counts
124 → 124
Iterations

Useful iterations: 0 (44.0ms)

IterNodesCost
050694067

prune252.0ms (5.8%)

Pruning

11 alts after pruning (7 fresh and 4 done)

PrunedKeptTotal
New1240124
Fresh077
Picked011
Done033
Total12411135

Merged error: 23.9b

Counts
135 → 11
Compiler

Compiled 5784 to 3054 computations (47.2% saved)

regimes131.0ms (3%)

Compiler

Compiled 1414 to 861 computations (39.1% saved)

bsearch0.0ms (0%)

simplify2.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02050
12050

end0.0ms (0%)

sample804.0ms (18.6%)

Algorithm
intervals
Results
344.0ms8000×body128valid
22.0ms478×body128invalid
Compiler

Compiled 297 to 180 computations (39.4% saved)

Profiling

Loading profile data...