Details

Time bar (total: 6.6s)

analyze122.0ms (1.9%)

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%68.7%6.3%6
25%53.1%22%7
25%46.8%28.2%8
25%33.6%41.5%9
28.1%18%54%10
31.6%12.1%56.3%11
33.4%5.9%60.8%12
35.2%3.8%61%13
36.1%2.9%61%14
Compiler

Compiled 30 to 20 computations (33.3% saved)

sample26.0ms (0.4%)

Algorithm
intervals
Results
15.0ms256×body128valid
Compiler

Compiled 59 to 41 computations (30.5% saved)

simplify170.0ms (2.6%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (74.0ms)

IterNodesCost
0491543
1491543

prune4.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112
Error
0.2b
Counts
2 → 1
Compiler

Compiled 58 to 38 computations (34.5% saved)

localize16.0ms (0.2%)

Local error

Found 8 expressions with local error:

0.0b
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 a a) (-.f64 1 a)) (*.f64 (*.f64 b b) (+.f64 3 a)))))
0.0b
(+.f64 (*.f64 a a) (*.f64 b b))
0.0b
(*.f64 4 (+.f64 (*.f64 (*.f64 a a) (-.f64 1 a)) (*.f64 (*.f64 b b) (+.f64 3 a))))
0.0b
(+.f64 (*.f64 (*.f64 a a) (-.f64 1 a)) (*.f64 (*.f64 b b) (+.f64 3 a)))
0.0b
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 a a) (-.f64 1 a)) (*.f64 (*.f64 b b) (+.f64 3 a)))))
0.1b
(*.f64 (*.f64 a a) (-.f64 1 a))
0.3b
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
1.0b
(*.f64 (*.f64 b b) (+.f64 3 a))

rewrite43.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
15×pow1_binary64_2185 add-sqr-sqrt_binary64_2146 add-exp-log_binary64_2162 *-un-lft-identity_binary64_2124
14×add-cbrt-cube_binary64_2160
10×add-cube-cbrt_binary64_2159 associate-*r*_binary64_2064
pow-prod-down_binary64_2195 cancel-sign-sub-inv_binary64_2090 add-log-exp_binary64_2163 prod-exp_binary64_2173 distribute-rgt-in_binary64_2074 distribute-lft-in_binary64_2073 cbrt-unprod_binary64_2157
associate-*r/_binary64_2066
pow-unpow_binary64_2201 unpow-prod-down_binary64_2203
difference-of-squares_binary64_2093 unswap-sqr_binary64_2092 *-commutative_binary64_2055 associate-+r+_binary64_2056 associate-*l*_binary64_2065 sub-neg_binary64_2117 flip3-+_binary64_2127 flip-+_binary64_2098
flip--_binary64_2099 flip3--_binary64_2128 pow-pow_binary64_2196 sum-log_binary64_2215 distribute-lft-out--_binary64_2076 pow-exp_binary64_2192 distribute-lft-out_binary64_2075 sqr-pow_binary64_2096 +-commutative_binary64_2054 unpow2_binary64_2189 pow-to-exp_binary64_2193
Counts
4 → 87
Calls

8 calls:

10.0ms
(*.f64 (*.f64 a a) (-.f64 1 a))
9.0ms
(*.f64 (*.f64 b b) (+.f64 3 a))
9.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 a a) (-.f64 1 a)) (*.f64 (*.f64 b b) (+.f64 3 a)))))
5.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
0.0ms
(+.f64 (*.f64 (*.f64 a a) (-.f64 1 a)) (*.f64 (*.f64 b b) (+.f64 3 a)))

series736.0ms (11.2%)

Counts
4 → 54
Calls

4 calls:

401.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2) (*.f64 4 (+.f64 (*.f64 (*.f64 a a) (-.f64 1 a)) (*.f64 (*.f64 b b) (+.f64 3 a)))))
200.0ms
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) 2)
85.0ms
(*.f64 (*.f64 b b) (+.f64 3 a))
49.0ms
(*.f64 (*.f64 a a) (-.f64 1 a))
Compiler

Compiled 2144 to 1700 computations (20.7% saved)

simplify92.0ms (1.4%)

Algorithm
egg-herbie
Counts
141 → 141
Iterations

Useful iterations: 0 (64.0ms)

IterNodesCost
049622518
149622518

prune256.0ms (3.9%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1392141
Fresh000
Picked011
Done000
Total1393142
Error
0b
Counts
142 → 3
Compiler

Compiled 4466 to 2340 computations (47.6% saved)

localize23.0ms (0.4%)

Local error

Found 8 expressions with local error:

0.0b
(*.f64 4 (+.f64 (*.f64 (*.f64 a a) (-.f64 1 a)) (*.f64 (*.f64 b b) (+.f64 3 a))))
0.0b
(*.f64 2 (*.f64 (*.f64 b b) (*.f64 a a)))
0.0b
(+.f64 (pow.f64 a 4) (+.f64 (pow.f64 b 4) (*.f64 2 (*.f64 (*.f64 b b) (*.f64 a a)))))
0.0b
(+.f64 (*.f64 (*.f64 a a) (-.f64 1 a)) (*.f64 (*.f64 b b) (+.f64 3 a)))
0.0b
(+.f64 (+.f64 (pow.f64 a 4) (+.f64 (pow.f64 b 4) (*.f64 2 (*.f64 (*.f64 b b) (*.f64 a a))))) (*.f64 4 (+.f64 (*.f64 (*.f64 a a) (-.f64 1 a)) (*.f64 (*.f64 b b) (+.f64 3 a)))))
0.1b
(*.f64 (*.f64 a a) (-.f64 1 a))
1.0b
(*.f64 (*.f64 b b) (+.f64 3 a))
3.9b
(*.f64 (*.f64 b b) (*.f64 a a))

rewrite65.0ms (1%)

Algorithm
rewrite-expression-head
Rules
42×pow1_binary64_2185
32×associate-*r/_binary64_2066
26×add-exp-log_binary64_2162 add-cbrt-cube_binary64_2160
20×pow-prod-down_binary64_2195 frac-add_binary64_2132
14×prod-exp_binary64_2173 flip3-+_binary64_2127 flip-+_binary64_2098 cbrt-unprod_binary64_2157
13×add-log-exp_binary64_2163 add-sqr-sqrt_binary64_2146 *-un-lft-identity_binary64_2124
11×associate-*r*_binary64_2064
add-cube-cbrt_binary64_2159
cancel-sign-sub-inv_binary64_2090 sum-log_binary64_2215 distribute-rgt-in_binary64_2074 distribute-lft-in_binary64_2073
flip--_binary64_2099 flip3--_binary64_2128
pow-prod-up_binary64_2194 pow-plus_binary64_2187
unswap-sqr_binary64_2092 *-commutative_binary64_2055 associate-*l*_binary64_2065
difference-of-squares_binary64_2093 associate-+r+_binary64_2056 sub-neg_binary64_2117 pow2_binary64_2205 pow-sqr_binary64_2097
distribute-lft-out--_binary64_2076 distribute-lft-out_binary64_2075 +-commutative_binary64_2054 associate-+l+_binary64_2057
Counts
4 → 113
Calls

8 calls:

17.0ms
(+.f64 (+.f64 (pow.f64 a 4) (+.f64 (pow.f64 b 4) (*.f64 2 (*.f64 (*.f64 b b) (*.f64 a a))))) (*.f64 4 (+.f64 (*.f64 (*.f64 a a) (-.f64 1 a)) (*.f64 (*.f64 b b) (+.f64 3 a)))))
10.0ms
(*.f64 (*.f64 a a) (-.f64 1 a))
9.0ms
(*.f64 (*.f64 b b) (*.f64 a a))
9.0ms
(*.f64 (*.f64 b b) (+.f64 3 a))
0.0ms
(+.f64 (*.f64 (*.f64 a a) (-.f64 1 a)) (*.f64 (*.f64 b b) (+.f64 3 a)))

series630.0ms (9.6%)

Counts
4 → 42
Calls

4 calls:

412.0ms
(+.f64 (+.f64 (pow.f64 a 4) (+.f64 (pow.f64 b 4) (*.f64 2 (*.f64 (*.f64 b b) (*.f64 a a))))) (*.f64 4 (+.f64 (*.f64 (*.f64 a a) (-.f64 1 a)) (*.f64 (*.f64 b b) (+.f64 3 a)))))
86.0ms
(*.f64 (*.f64 b b) (+.f64 3 a))
80.0ms
(*.f64 (*.f64 b b) (*.f64 a a))
51.0ms
(*.f64 (*.f64 a a) (-.f64 1 a))
Compiler

Compiled 2000 to 1580 computations (21% saved)

simplify91.0ms (1.4%)

Algorithm
egg-herbie
Counts
155 → 155
Iterations

Useful iterations: 0 (43.0ms)

IterNodesCost
050275282

prune340.0ms (5.2%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1550155
Fresh011
Picked011
Done011
Total1553158
Error
0b
Counts
158 → 3
Compiler

Compiled 7255 to 4133 computations (43% saved)

localize13.0ms (0.2%)

Local error

Found 8 expressions with local error:

1.9b
(*.f64 (*.f64 a a) (+.f64 (*.f64 2 (*.f64 b b)) 4))
0.1b
(*.f64 (pow.f64 a 3) (+.f64 a -4))
0.0b
(*.f64 2 (*.f64 b b))
0.0b
(+.f64 (*.f64 (pow.f64 a 3) (+.f64 a -4)) (*.f64 (*.f64 a a) (+.f64 (*.f64 2 (*.f64 b b)) 4)))
0.0b
(+.f64 (*.f64 (pow.f64 a 3) (+.f64 a -4)) (*.f64 (*.f64 a a) (+.f64 (*.f64 2 (*.f64 b b)) 4)))
0.0b
(*.f64 2 (*.f64 b b))
0.1b
(*.f64 (pow.f64 a 3) (+.f64 a -4))
1.9b
(*.f64 (*.f64 a a) (+.f64 (*.f64 2 (*.f64 b b)) 4))

rewrite50.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
19×add-sqr-sqrt_binary64_2146 add-exp-log_binary64_2162
16×associate-*l*_binary64_2065 add-cbrt-cube_binary64_2160
14×pow1_binary64_2185
12×associate-*r/_binary64_2066 *-un-lft-identity_binary64_2124
10×add-cube-cbrt_binary64_2159
prod-exp_binary64_2173
associate-*r*_binary64_2064
flip3-+_binary64_2127 flip-+_binary64_2098 cbrt-unprod_binary64_2157
pow-prod-down_binary64_2195 unswap-sqr_binary64_2092 add-log-exp_binary64_2163
unpow-prod-down_binary64_2203 cube-prod_binary64_2152 distribute-rgt-in_binary64_2074 frac-add_binary64_2132 distribute-lft-in_binary64_2073
*-commutative_binary64_2055
associate-+r+_binary64_2056 sqr-pow_binary64_2096 associate-+l+_binary64_2057
unpow3_binary64_2190 cube-mult_binary64_2154 sum-log_binary64_2215 pow-exp_binary64_2192 distribute-lft-out_binary64_2075 +-commutative_binary64_2054 pow-to-exp_binary64_2193
Counts
4 → 97
Calls

8 calls:

12.0ms
(*.f64 (*.f64 a a) (+.f64 (*.f64 2 (*.f64 b b)) 4))
11.0ms
(*.f64 (pow.f64 a 3) (+.f64 a -4))
11.0ms
(+.f64 (*.f64 (pow.f64 a 3) (+.f64 a -4)) (*.f64 (*.f64 a a) (+.f64 (*.f64 2 (*.f64 b b)) 4)))
6.0ms
(*.f64 2 (*.f64 b b))
0.0ms
(+.f64 (*.f64 (pow.f64 a 3) (+.f64 a -4)) (*.f64 (*.f64 a a) (+.f64 (*.f64 2 (*.f64 b b)) 4)))

series542.0ms (8.3%)

Counts
4 → 33
Calls

4 calls:

320.0ms
(+.f64 (*.f64 (pow.f64 a 3) (+.f64 a -4)) (*.f64 (*.f64 a a) (+.f64 (*.f64 2 (*.f64 b b)) 4)))
137.0ms
(*.f64 (*.f64 a a) (+.f64 (*.f64 2 (*.f64 b b)) 4))
57.0ms
(*.f64 (pow.f64 a 3) (+.f64 a -4))
28.0ms
(*.f64 2 (*.f64 b b))
Compiler

Compiled 1077 to 954 computations (11.4% saved)

simplify105.0ms (1.6%)

Algorithm
egg-herbie
Counts
130 → 130
Iterations

Useful iterations: 0 (77.0ms)

IterNodesCost
049412309
149412309

prune168.0ms (2.6%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1300130
Fresh000
Picked011
Done022
Total1303133
Error
0b
Counts
133 → 3
Compiler

Compiled 3286 to 2100 computations (36.1% saved)

simplify93.0ms (1.4%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (76.0ms)

IterNodesCost
018541309
118541309

regimes234.0ms (3.6%)

Compiler

Compiled 3468 to 2345 computations (32.4% saved)

bsearch0.0ms (0%)

regimes118.0ms (1.8%)

Compiler

Compiled 1312 to 1004 computations (23.5% saved)

bsearch0.0ms (0%)

regimes113.0ms (1.7%)

Compiler

Compiled 1213 to 935 computations (22.9% saved)

bsearch0.0ms (0%)

regimes102.0ms (1.6%)

Compiler

Compiled 496 to 407 computations (17.9% saved)

bsearch44.0ms (0.7%)

Steps
ItersRangePoint
7
0.002593718922734915
0.05711394243750176
0.005744048479646246
7
-2.7215326199460134e-06
-1.6554979034914197e-08
-2.6670250584883396e-06
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes96.0ms (1.5%)

Compiler

Compiled 421 to 353 computations (16.2% saved)

bsearch45.0ms (0.7%)

Steps
ItersRangePoint
7
0.002593718922734915
0.05711394243750176
0.012463999438901438
8
-1.6554979034914197e-08
-9.233325200499867e-13
-4.922910256473494e-09
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes83.0ms (1.3%)

Compiler

Compiled 283 to 254 computations (10.2% saved)

bsearch43.0ms (0.7%)

Steps
ItersRangePoint
7
0.002593718922734915
0.05711394243750176
0.003177323774896446
8
-1.6554979034914197e-08
-9.233325200499867e-13
-1.614473810573396e-08
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes78.0ms (1.2%)

Compiler

Compiled 226 to 209 computations (7.5% saved)

bsearch44.0ms (0.7%)

Steps
ItersRangePoint
7
0.002593718922734915
0.05711394243750176
0.002628048619920887
8
-1.6554979034914197e-08
-9.233325200499867e-13
-1.614473810573396e-08
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes34.0ms (0.5%)

Compiler

Compiled 130 to 134 computations (-3.1% saved)

bsearch0.0ms (0%)

regimes31.0ms (0.5%)

Compiler

Compiled 91 to 101 computations (-11% saved)

bsearch0.0ms (0%)

regimes25.0ms (0.4%)

Compiler

Compiled 52 to 68 computations (-30.8% saved)

bsearch0.0ms (0%)

regimes17.0ms (0.3%)

Compiler

Compiled 10 to 26 computations (-160% saved)

bsearch0.0ms (0%)

regimes13.0ms (0.2%)

Accuracy

Total 0.0b remaining (76.7%)

Threshold costs 0.0b (76.7%)

Compiler

Compiled 8 to 20 computations (-150% saved)

bsearch16.0ms (0.2%)

Compiler

Compiled 394 to 267 computations (32.2% saved)

simplify7.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (2.0ms)

IterNodesCost
0181538
1181538

end0.0ms (0%)

sample1.8s (28%)

Algorithm
intervals
Results
500.0ms8000×body128valid
0.0msbody128invalid
Compiler

Compiled 1276 to 868 computations (32% saved)

Pareto

0.8980802772728957

Profiling

Loading profile data...