Details

Time bar (total: 3.6s)

analyze115.0ms (3.2%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
25%74.9%0.1%5
25%62.4%12.6%6
31.2%50%18.8%7
40.6%37.5%22%8
45.3%26.5%28.2%9
46.8%19.5%33.7%10
48.8%14%37.2%11
51.7%10.1%38.1%12
52.8%7.1%40.1%13
53.3%5.1%41.6%14
Compiler

Compiled 20 to 12 computations (40% saved)

sample18.0ms (0.5%)

Algorithm
intervals
Results
11.0ms256×body128valid
0.0ms10×body128invalid
Compiler

Compiled 39 to 25 computations (35.9% saved)

simplify241.0ms (6.7%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (138.0ms)

IterNodesCost
0495620
1495620

prune4.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
8.8b
Counts
2 → 2
Compiler

Compiled 41 to 29 computations (29.3% saved)

localize11.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re))
0.1b
(-.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) x.re) (*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im))
0.2b
(*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im)
8.3b
(*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) x.re)

rewrite36.0ms (1%)

Algorithm
rewrite-expression-head
Rules
12×associate-*l/_binary64_3090 add-sqr-sqrt_binary64_3169
*-un-lft-identity_binary64_3147 add-exp-log_binary64_3185 add-cbrt-cube_binary64_3183 pow1_binary64_3208 add-log-exp_binary64_3186 add-cube-cbrt_binary64_3182
associate-*l*_binary64_3088
associate-*r*_binary64_3087
flip--_binary64_3122 flip-+_binary64_3121 flip3--_binary64_3151 flip3-+_binary64_3150 frac-sub_binary64_3156
*-commutative_binary64_3078 unswap-sqr_binary64_3115 pow-prod-down_binary64_3218 prod-exp_binary64_3196 cbrt-unprod_binary64_3180
cancel-sign-sub-inv_binary64_3113 sub-neg_binary64_3140 +-commutative_binary64_3077 difference-of-squares_binary64_3116 diff-log_binary64_3239 sum-log_binary64_3238
Counts
4 → 68
Calls

4 calls:

10.0ms
(-.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) x.re) (*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im))
8.0ms
(*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) x.re)
7.0ms
(*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im)
4.0ms
(+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re))

series125.0ms (3.5%)

Counts
4 → 12
Calls

4 calls:

41.0ms
(-.f64 (*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) x.re) (*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im))
37.0ms
(*.f64 (-.f64 (*.f64 x.re x.re) (*.f64 x.im x.im)) x.re)
29.0ms
(*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im)
18.0ms
(+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re))

simplify48.0ms (1.3%)

Algorithm
egg-herbie
Counts
80 → 80
Iterations

Useful iterations: 0 (25.0ms)

IterNodesCost
046851737
146851737

prune97.0ms (2.7%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New74680
Fresh011
Picked101
Done000
Total75782
Error
0.1b
Counts
82 → 7
Compiler

Compiled 2090 to 893 computations (57.3% saved)

localize11.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.0b
(*.f64 x.re (-.f64 x.re x.im))
0.1b
(-.f64 (*.f64 (+.f64 x.re x.im) (*.f64 x.re (-.f64 x.re x.im))) (*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im))
0.2b
(*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im)
0.2b
(*.f64 (+.f64 x.re x.im) (*.f64 x.re (-.f64 x.re x.im)))

rewrite64.0ms (1.8%)

Algorithm
rewrite-expression-head
Rules
36×distribute-lft-in_binary64_3096 distribute-rgt-in_binary64_3097
31×cancel-sign-sub-inv_binary64_3113
26×associate-*r/_binary64_3089
25×add-sqr-sqrt_binary64_3169
24×associate-*l/_binary64_3090
23×*-un-lft-identity_binary64_3147
19×add-cube-cbrt_binary64_3182
18×flip-+_binary64_3121 flip3-+_binary64_3150
16×associate--l+_binary64_3084 frac-sub_binary64_3156
13×add-exp-log_binary64_3185 add-cbrt-cube_binary64_3183 pow1_binary64_3208
12×frac-times_binary64_3157
11×flip--_binary64_3122 flip3--_binary64_3151 sub-neg_binary64_3140
10×associate-*l*_binary64_3088
associate-*r*_binary64_3087
add-log-exp_binary64_3186
pow-prod-down_binary64_3218 prod-exp_binary64_3196 cbrt-unprod_binary64_3180
*-commutative_binary64_3078
unswap-sqr_binary64_3115
distribute-lft-out_binary64_3098 distribute-lft-out--_binary64_3099 difference-of-squares_binary64_3116 diff-log_binary64_3239
Counts
4 → 137
Calls

4 calls:

17.0ms
(-.f64 (*.f64 (+.f64 x.re x.im) (*.f64 x.re (-.f64 x.re x.im))) (*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im))
12.0ms
(*.f64 (+.f64 x.re x.im) (*.f64 x.re (-.f64 x.re x.im)))
9.0ms
(*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im)
8.0ms
(*.f64 x.re (-.f64 x.re x.im))

series135.0ms (3.7%)

Counts
4 → 12
Calls

4 calls:

41.0ms
(-.f64 (*.f64 (+.f64 x.re x.im) (*.f64 x.re (-.f64 x.re x.im))) (*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im))
38.0ms
(*.f64 (+.f64 x.re x.im) (*.f64 x.re (-.f64 x.re x.im)))
28.0ms
(*.f64 (+.f64 (*.f64 x.re x.im) (*.f64 x.im x.re)) x.im)
27.0ms
(*.f64 x.re (-.f64 x.re x.im))

simplify103.0ms (2.9%)

Algorithm
egg-herbie
Counts
149 → 149
Iterations

Useful iterations: 0 (58.0ms)

IterNodesCost
047023820
147023820

prune343.0ms (9.5%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New1436149
Fresh426
Picked101
Done000
Total1488156
Error
0.0b
Counts
156 → 8
Compiler

Compiled 3932 to 1396 computations (64.5% saved)

localize12.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im)) (*.f64 (neg.f64 x.im) (+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 2 (*.f64 x.re x.im)))))
0.2b
(+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 2 (*.f64 x.re x.im)))
0.2b
(*.f64 (neg.f64 x.im) (+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 2 (*.f64 x.re x.im))))
5.7b
(*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im))

rewrite56.0ms (1.6%)

Algorithm
rewrite-expression-head
Rules
12×add-sqr-sqrt_binary64_3169 associate-*r/_binary64_3089
11×*-un-lft-identity_binary64_3147 add-exp-log_binary64_3185 add-cbrt-cube_binary64_3183 pow1_binary64_3208 associate-*l*_binary64_3088
add-cube-cbrt_binary64_3182
flip-+_binary64_3121 flip3-+_binary64_3150 add-log-exp_binary64_3186
associate-*r*_binary64_3087
distribute-lft-in_binary64_3096 distribute-rgt-in_binary64_3097
frac-add_binary64_3155 pow-prod-down_binary64_3218 associate-+l+_binary64_3080 prod-exp_binary64_3196 cbrt-unprod_binary64_3180
distribute-lft-neg-in_binary64_3104 distribute-rgt-neg-in_binary64_3105
*-commutative_binary64_3078 unswap-sqr_binary64_3115 +-commutative_binary64_3077 associate-+r+_binary64_3079 distribute-lft-neg-out_binary64_3106 sum-log_binary64_3238
unsub-neg_binary64_3141 neg-mul-1_binary64_3143 distribute-lft-out_binary64_3098
Counts
4 → 87
Calls

4 calls:

13.0ms
(+.f64 (*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im)) (*.f64 (neg.f64 x.im) (+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 2 (*.f64 x.re x.im)))))
13.0ms
(*.f64 (neg.f64 x.im) (+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 2 (*.f64 x.re x.im))))
9.0ms
(*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im))
8.0ms
(+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 2 (*.f64 x.re x.im)))

series143.0ms (4%)

Counts
4 → 12
Calls

4 calls:

50.0ms
(*.f64 (neg.f64 x.im) (+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 2 (*.f64 x.re x.im))))
40.0ms
(+.f64 (*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im)) (*.f64 (neg.f64 x.im) (+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 2 (*.f64 x.re x.im)))))
27.0ms
(+.f64 (*.f64 x.re (+.f64 x.re x.im)) (*.f64 2 (*.f64 x.re x.im)))
26.0ms
(*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im))

simplify86.0ms (2.4%)

Algorithm
egg-herbie
Counts
99 → 99
Iterations

Useful iterations: 0 (53.0ms)

IterNodesCost
050112769

prune116.0ms (3.2%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New98199
Fresh257
Picked011
Done000
Total1007107
Error
0.0b
Counts
107 → 7
Compiler

Compiled 2916 to 1251 computations (57.1% saved)

localize11.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im)) (neg.f64 (*.f64 x.im (*.f64 x.re (+.f64 x.re (*.f64 x.im 3))))))
0.2b
(*.f64 x.re (+.f64 x.re (*.f64 x.im 3)))
0.2b
(*.f64 x.im (*.f64 x.re (+.f64 x.re (*.f64 x.im 3))))
5.7b
(*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im))

rewrite45.0ms (1.2%)

Algorithm
rewrite-expression-head
Rules
20×associate-*r/_binary64_3089
16×add-exp-log_binary64_3185 add-cbrt-cube_binary64_3183 pow1_binary64_3208
11×add-sqr-sqrt_binary64_3169 distribute-lft-in_binary64_3096 distribute-rgt-in_binary64_3097
10×*-un-lft-identity_binary64_3147
flip-+_binary64_3121 associate-*r*_binary64_3087 flip3-+_binary64_3150 add-log-exp_binary64_3186 add-cube-cbrt_binary64_3182
pow-prod-down_binary64_3218 prod-exp_binary64_3196 cbrt-unprod_binary64_3180 associate-*l*_binary64_3088
frac-add_binary64_3155 distribute-neg-frac_binary64_3111 associate-+r+_binary64_3079 distribute-neg-in_binary64_3108
*-commutative_binary64_3078
unswap-sqr_binary64_3115 associate-+l+_binary64_3080 sum-log_binary64_3238
unsub-neg_binary64_3141 associate-+r-_binary64_3081 distribute-lft-out_binary64_3098 +-commutative_binary64_3077 neg-sub0_binary64_3142 neg-log_binary64_3240
Counts
4 → 94
Calls

4 calls:

12.0ms
(+.f64 (*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im)) (neg.f64 (*.f64 x.im (*.f64 x.re (+.f64 x.re (*.f64 x.im 3))))))
9.0ms
(*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im))
8.0ms
(*.f64 x.im (*.f64 x.re (+.f64 x.re (*.f64 x.im 3))))
6.0ms
(*.f64 x.re (+.f64 x.re (*.f64 x.im 3)))

series132.0ms (3.7%)

Counts
4 → 12
Calls

4 calls:

41.0ms
(*.f64 x.im (*.f64 x.re (+.f64 x.re (*.f64 x.im 3))))
39.0ms
(+.f64 (*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im)) (neg.f64 (*.f64 x.im (*.f64 x.re (+.f64 x.re (*.f64 x.im 3))))))
27.0ms
(*.f64 (*.f64 x.re x.re) (+.f64 x.re x.im))
25.0ms
(*.f64 x.re (+.f64 x.re (*.f64 x.im 3)))

simplify79.0ms (2.2%)

Algorithm
egg-herbie
Counts
106 → 106
Iterations

Useful iterations: 0 (53.0ms)

IterNodesCost
050952291

prune107.0ms (3%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New1051106
Fresh145
Picked011
Done011
Total1067113
Error
0b
Counts
113 → 7
Compiler

Compiled 2478 to 1337 computations (46% saved)

regimes230.0ms (6.4%)

Accuracy

Total 0.2b remaining (98.4%)

Threshold costs 0.2b (98.4%)

Compiler

Compiled 3006 to 1887 computations (37.2% saved)

bsearch0.0ms (0%)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
06620
16620

end0.0ms (0%)

sample1.2s (34.3%)

Algorithm
intervals
Results
347.0ms8000×body128valid
20.0ms404×body128invalid
Compiler

Compiled 1036 to 653 computations (37% saved)

Profiling

Loading profile data...