Details

Time bar (total: 5.1s)

analyze83.0ms (1.6%)

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%50%25.1%6
25%31.2%43.8%7
25%21.9%53.2%8
25%14%61%9
28.1%10.9%61%10
31.6%7.4%61%11
33.4%5.7%61%12
35.2%3.8%61%13
36.1%2.9%61%14
Compiler

Compiled 18 to 13 computations (27.8% saved)

sample19.0ms (0.4%)

Algorithm
intervals
Results
11.0ms256×body128valid
Compiler

Compiled 35 to 27 computations (22.9% saved)

simplify209.0ms (4.1%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (35.0ms)

IterNodesCost
0512625

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112

Merged error: 0.2b

Counts
2 → 1
Compiler

Compiled 34 to 24 computations (29.4% saved)

localize10.0ms (0.2%)

Local error

Found 4 expressions with local error:

0.0b
(+.f64 (*.f64 a a) (*.f64 b b))
0.0b
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (*.f64 b b)))
0.0b
(*.f64 4 (*.f64 b b))
0.3b
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)

rewrite29.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
10×pow1_binary64_2185 add-exp-log_binary64_2162
add-cbrt-cube_binary64_2160
add-log-exp_binary64_2163 add-sqr-sqrt_binary64_2146
add-cube-cbrt_binary64_2159 *-un-lft-identity_binary64_2124
pow-prod-down_binary64_2195 pow-unpow_binary64_2201 unpow-prod-down_binary64_2203 associate-*l*_binary64_2065 prod-exp_binary64_2173 cbrt-unprod_binary64_2157
sum-log_binary64_2215 +-commutative_binary64_2054 flip3-+_binary64_2127 flip-+_binary64_2098
unswap-sqr_binary64_2092 pow-pow_binary64_2196 pow-exp_binary64_2192 *-commutative_binary64_2055 sqr-pow_binary64_2096 unpow2_binary64_2189 pow-to-exp_binary64_2193 associate-*r*_binary64_2064
Counts
4 → 59
Calls

4 calls:

9.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (*.f64 b b)))
6.0ms
(*.f64 4 (*.f64 b b))
5.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
4.0ms
(+.f64 (*.f64 a a) (*.f64 b b))

series216.0ms (4.2%)

Counts
4 → 12
Calls

4 calls:

92.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (*.f64 b b)))
51.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
37.0ms
(+.f64 (*.f64 a a) (*.f64 b b))
36.0ms
(*.f64 4 (*.f64 b b))

simplify76.0ms (1.5%)

Algorithm
egg-herbie
Counts
71 → 71
Iterations

Useful iterations: 0 (61.0ms)

IterNodesCost
049231108
149231108

prune275.0ms (5.4%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New68371
Fresh000
Picked101
Done000
Total69372

Merged error: 0b

Counts
72 → 3
Compiler

Compiled 1645 to 786 computations (52.2% saved)

localize15.0ms (0.3%)

Local error

Found 3 expressions with local error:

0.0b
(+.f64 (+.f64 (*.f64 (*.f64 a a) (*.f64 b (*.f64 b 2))) (+.f64 (pow.f64 b 4) (pow.f64 a 4))) (*.f64 4 (*.f64 b b)))
0.0b
(*.f64 4 (*.f64 b b))
1.7b
(*.f64 (*.f64 a a) (*.f64 b (*.f64 b 2)))

rewrite47.0ms (0.9%)

Algorithm
rewrite-expression-head
Rules
29×pow1_binary64_2185 add-exp-log_binary64_2162 add-cbrt-cube_binary64_2160
18×pow-prod-down_binary64_2195 prod-exp_binary64_2173 cbrt-unprod_binary64_2157
12×add-log-exp_binary64_2163
sum-log_binary64_2215
add-sqr-sqrt_binary64_2146
add-cube-cbrt_binary64_2159 associate-*l*_binary64_2065 *-un-lft-identity_binary64_2124
*-commutative_binary64_2055 associate-*r*_binary64_2064
unswap-sqr_binary64_2092 +-commutative_binary64_2054 flip3-+_binary64_2127 associate-+l+_binary64_2057 flip-+_binary64_2098
Counts
3 → 61
Calls

3 calls:

23.0ms
(+.f64 (+.f64 (*.f64 (*.f64 a a) (*.f64 b (*.f64 b 2))) (+.f64 (pow.f64 b 4) (pow.f64 a 4))) (*.f64 4 (*.f64 b b)))
11.0ms
(*.f64 (*.f64 a a) (*.f64 b (*.f64 b 2)))
6.0ms
(*.f64 4 (*.f64 b b))

series173.0ms (3.4%)

Counts
3 → 9
Calls

3 calls:

83.0ms
(+.f64 (+.f64 (*.f64 (*.f64 a a) (*.f64 b (*.f64 b 2))) (+.f64 (pow.f64 b 4) (pow.f64 a 4))) (*.f64 4 (*.f64 b b)))
53.0ms
(*.f64 (*.f64 a a) (*.f64 b (*.f64 b 2)))
36.0ms
(*.f64 4 (*.f64 b b))

simplify79.0ms (1.5%)

Algorithm
egg-herbie
Counts
70 → 70
Iterations

Useful iterations: 0 (63.0ms)

IterNodesCost
049581194
149581194

prune95.0ms (1.9%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New70070
Fresh022
Picked011
Done000
Total70373

Merged error: 0b

Counts
73 → 3
Compiler

Compiled 2050 to 1365 computations (33.4% saved)

localize13.0ms (0.3%)

Local error

Found 4 expressions with local error:

0.0b
(*.f64 (*.f64 b b) 4)
0.2b
(pow.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)) 3)
0.3b
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
30.0b
(cbrt.f64 (pow.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)) 3))

rewrite40.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
14×add-sqr-sqrt_binary64_2146
13×add-cube-cbrt_binary64_2159 *-un-lft-identity_binary64_2124
12×cbrt-prod_binary64_2155
11×pow1_binary64_2185 add-exp-log_binary64_2162
10×add-cbrt-cube_binary64_2160
unpow-prod-down_binary64_2203
pow-unpow_binary64_2201 cube-prod_binary64_2152
add-log-exp_binary64_2163 cube-div_binary64_2153
pow-prod-down_binary64_2195 prod-exp_binary64_2173 sqr-pow_binary64_2096 associate-*r*_binary64_2064 cbrt-unprod_binary64_2157
unpow3_binary64_2190 cbrt-div_binary64_2156 cube-mult_binary64_2154 pow-pow_binary64_2196 pow-exp_binary64_2192 pow-to-exp_binary64_2193 flip3-+_binary64_2127 flip-+_binary64_2098
unswap-sqr_binary64_2092 rem-cbrt-cube_binary64_2148 *-commutative_binary64_2055 associate-*l*_binary64_2065 pow1/3_binary64_2206 unpow2_binary64_2189 rem-cube-cbrt_binary64_2147
Counts
4 → 85
Calls

4 calls:

11.0ms
(pow.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)) 3)
9.0ms
(cbrt.f64 (pow.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)) 3))
7.0ms
(*.f64 (*.f64 b b) 4)
5.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)

series826.0ms (16.2%)

Counts
4 → 12
Calls

4 calls:

661.0ms
(pow.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)) 3)
84.0ms
(cbrt.f64 (pow.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)) 3))
47.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
33.0ms
(*.f64 (*.f64 b b) 4)

simplify86.0ms (1.7%)

Algorithm
egg-herbie
Counts
97 → 97
Iterations

Useful iterations: 0 (61.0ms)

IterNodesCost
049542271
149542271

prune114.0ms (2.2%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New97097
Fresh011
Picked011
Done011
Total973100

Merged error: 0b

Counts
100 → 3
Compiler

Compiled 2636 to 1354 computations (48.6% saved)

localize30.0ms (0.6%)

Local error

Found 4 expressions with local error:

0.3b
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
2.0b
(*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))
2.8b
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 4) (-.f64 (*.f64 16 (pow.f64 b 4)) (*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))))
45.2b
(/.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 6) (*.f64 64 (pow.f64 b 6))) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 4) (-.f64 (*.f64 16 (pow.f64 b 4)) (*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)))))

rewrite71.0ms (1.4%)

Algorithm
rewrite-expression-head
Rules
31×add-exp-log_binary64_2162
27×*-un-lft-identity_binary64_2124
18×prod-exp_binary64_2173
17×add-cube-cbrt_binary64_2159 add-sqr-sqrt_binary64_2146
15×add-cbrt-cube_binary64_2160
12×times-frac_binary64_2130
add-log-exp_binary64_2163
associate-*l*_binary64_2065
unpow-prod-down_binary64_2203 cbrt-unprod_binary64_2157
distribute-lft-out_binary64_2075 pow1_binary64_2185
pow-exp_binary64_2192 associate-/r*_binary64_2068 pow-to-exp_binary64_2193
pow-unpow_binary64_2201 associate-/l*_binary64_2069 flip3-+_binary64_2127 flip-+_binary64_2098
associate-/r/_binary64_2070 sum-log_binary64_2215 associate-+r+_binary64_2056 sqr-pow_binary64_2096 unpow2_binary64_2189 associate-/l/_binary64_2071
clear-num_binary64_2123 cbrt-undiv_binary64_2158 cancel-sign-sub-inv_binary64_2090 associate-+r-_binary64_2058 pow-pow_binary64_2196 *-commutative_binary64_2055 diff-log_binary64_2216 +-commutative_binary64_2054 sub-neg_binary64_2117 associate-*r*_binary64_2064 div-inv_binary64_2121 div-exp_binary64_2175 frac-2neg_binary64_2135
Counts
4 → 98
Calls

4 calls:

22.0ms
(/.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 6) (*.f64 64 (pow.f64 b 6))) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 4) (-.f64 (*.f64 16 (pow.f64 b 4)) (*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)))))
13.0ms
(*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))
13.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 4) (-.f64 (*.f64 16 (pow.f64 b 4)) (*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))))
6.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)

series1.1s (21.5%)

Counts
4 → 12
Calls

4 calls:

540.0ms
(/.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 6) (*.f64 64 (pow.f64 b 6))) (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 4) (-.f64 (*.f64 16 (pow.f64 b 4)) (*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4)))))
416.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 4) (-.f64 (*.f64 16 (pow.f64 b 4)) (*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))))
93.0ms
(*.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 (*.f64 b b) 4))
46.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)

simplify87.0ms (1.7%)

Algorithm
egg-herbie
Counts
110 → 110
Iterations

Useful iterations: 0 (45.0ms)

IterNodesCost
050565411

prune281.0ms (5.5%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1100110
Fresh000
Picked011
Done022
Total1103113

Merged error: 0b

Counts
113 → 3
Compiler

Compiled 6841 to 3296 computations (51.8% saved)

regimes252.0ms (4.9%)

Compiler

Compiled 2984 to 2064 computations (30.8% saved)

bsearch0.0ms (0%)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (1.0ms)

IterNodesCost
03537
13537

end0.0ms (0%)

sample880.0ms (17.2%)

Algorithm
intervals
Results
359.0ms8000×body128valid
0.0msbody128invalid
Compiler

Compiled 423 to 295 computations (30.3% saved)

Profiling

Loading profile data...