Details

Time bar (total: 8.0s)

analyze489.0ms (6.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
0%99.9%0.1%5
12.5%87.4%0.1%6
28.1%71.8%0.1%7
42.1%57.7%0.1%8
43.7%56.2%0.1%9
64.4%35.5%0.1%10
71.6%28.3%0.1%11
72.2%27.7%0.1%12
81.6%18.2%0.2%13
84.9%14.9%0.2%14
Compiler

Compiled 16 to 9 computations (43.8% saved)

sample1.0s (12.6%)

Results
864.0ms8256×body128valid
28.0ms276×body128invalid
Compiler

Compiled 47 to 26 computations (44.7% saved)

simplify74.0ms (0.9%)

Algorithm
egg-herbie
Rules
669×fma-def_binary64
505×times-frac_binary64
497×div-sub_binary64
469×neg-mul-1_binary64
463×neg-sub0_binary64
Counts
1 → 2
Iterations

Useful iterations: 8 (0.0ms)

IterNodesCost
0918
13018
28318
319318
433418
543518
660018
787118
8136916
9359416
10429816
11485616

prune4.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.4b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.9b
(/.f64 (/.f64 v (+.f64 t1 u)) (-.f64 -1 (/.f64 u t1)))
20.7b
(/.f64 (*.f64 (neg.f64 t1) v) (*.f64 (+.f64 t1 u) (+.f64 t1 u)))
Compiler

Compiled 84 to 47 computations (44% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 v (+.f64 t1 u))
0.9b
(/.f64 (/.f64 v (+.f64 t1 u)) (-.f64 -1 (/.f64 u t1)))

series82.0ms (1%)

Counts
2 → 60
Calls

2 calls:

66.0ms
(/.f64 (/.f64 v (+.f64 t1 u)) (-.f64 -1 (/.f64 u t1)))
15.0ms
(/.f64 v (+.f64 t1 u))

rewrite38.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
223×times-frac_binary64
181×add-sqr-sqrt_binary64
174×*-un-lft-identity_binary64
86×add-cube-cbrt_binary64
38×difference-of-squares_binary64
Counts
2 → 186
Calls

2 calls:

12.0ms
(/.f64 (/.f64 v (+.f64 t1 u)) (-.f64 -1 (/.f64 u t1)))
3.0ms
(/.f64 v (+.f64 t1 u))

simplify190.0ms (2.4%)

Algorithm
egg-herbie
Rules
795×times-frac_binary64
383×fma-def_binary64
336×fma-neg_binary64
293×associate-/l/_binary64
286×distribute-rgt-in_binary64
Counts
246 → 219
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03267288
18487129
224357053
346017053
450037053

prune182.0ms (2.3%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New2136219
Fresh011
Picked101
Done000
Total2147221
Error
0.3b
Counts
221 → 7
Alt Table
StatusErrorProgram
1.8b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (/.f64 v (+.f64 t1 u))) (cbrt.f64 (/.f64 v (+.f64 t1 u)))) (*.f64 (cbrt.f64 (-.f64 -1 (/.f64 u t1))) (cbrt.f64 (-.f64 -1 (/.f64 u t1))))) (/.f64 (cbrt.f64 (/.f64 v (+.f64 t1 u))) (cbrt.f64 (-.f64 -1 (/.f64 u t1)))))
23.7b
(*.f64 (sqrt.f64 (/.f64 (/.f64 v (+.f64 t1 u)) (-.f64 -1 (/.f64 u t1)))) (sqrt.f64 (/.f64 (/.f64 v (+.f64 t1 u)) (-.f64 -1 (/.f64 u t1)))))
1.5b
(*.f64 (/.f64 (*.f64 (cbrt.f64 v) (cbrt.f64 v)) (*.f64 (cbrt.f64 (-.f64 -1 (/.f64 u t1))) (cbrt.f64 (-.f64 -1 (/.f64 u t1))))) (/.f64 (/.f64 (cbrt.f64 v) (+.f64 t1 u)) (cbrt.f64 (-.f64 -1 (/.f64 u t1)))))
1.0b
(/.f64 (*.f64 v (/.f64 1 (+.f64 t1 u))) (-.f64 -1 (/.f64 u t1)))
3.9b
(/.f64 (neg.f64 v) (fma.f64 u (/.f64 u t1) (fma.f64 u 2 t1)))
20.7b
(/.f64 (*.f64 (neg.f64 t1) v) (*.f64 (+.f64 t1 u) (+.f64 t1 u)))
1.8b
(/.f64 1 (/.f64 (-.f64 -1 (/.f64 u t1)) (/.f64 v (+.f64 t1 u))))
Compiler

Compiled 5671 to 2137 computations (62.3% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (+.f64 t1 u))
0.2b
(*.f64 v (/.f64 1 (+.f64 t1 u)))
0.9b
(/.f64 (*.f64 v (/.f64 1 (+.f64 t1 u))) (-.f64 -1 (/.f64 u t1)))

series91.0ms (1.1%)

Counts
3 → 96
Calls

3 calls:

66.0ms
(/.f64 (*.f64 v (/.f64 1 (+.f64 t1 u))) (-.f64 -1 (/.f64 u t1)))
16.0ms
(*.f64 v (/.f64 1 (+.f64 t1 u)))
8.0ms
(/.f64 1 (+.f64 t1 u))

rewrite29.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
42×*-un-lft-identity_binary64
40×add-sqr-sqrt_binary64
34×times-frac_binary64
31×add-exp-log_binary64
23×add-cube-cbrt_binary64
Counts
3 → 119
Calls

3 calls:

11.0ms
(/.f64 (*.f64 v (/.f64 1 (+.f64 t1 u))) (-.f64 -1 (/.f64 u t1)))
7.0ms
(*.f64 v (/.f64 1 (+.f64 t1 u)))
4.0ms
(/.f64 1 (+.f64 t1 u))

simplify120.0ms (1.5%)

Algorithm
egg-herbie
Rules
578×associate-/r*_binary64
449×associate-/r/_binary64
415×associate-/l/_binary64
366×fma-neg_binary64
338×fma-def_binary64
Counts
215 → 201
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02223908
15773653
220033521
347933521
450133521

prune210.0ms (2.6%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New2001201
Fresh156
Picked011
Done000
Total2017208
Error
0.3b
Counts
208 → 7
Alt Table
StatusErrorProgram
1.8b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (/.f64 v (+.f64 t1 u))) (cbrt.f64 (/.f64 v (+.f64 t1 u)))) (*.f64 (cbrt.f64 (-.f64 -1 (/.f64 u t1))) (cbrt.f64 (-.f64 -1 (/.f64 u t1))))) (/.f64 (cbrt.f64 (/.f64 v (+.f64 t1 u))) (cbrt.f64 (-.f64 -1 (/.f64 u t1)))))
23.7b
(*.f64 (sqrt.f64 (/.f64 (*.f64 v (/.f64 1 (+.f64 t1 u))) (-.f64 -1 (/.f64 u t1)))) (sqrt.f64 (/.f64 (*.f64 v (/.f64 1 (+.f64 t1 u))) (-.f64 -1 (/.f64 u t1)))))
1.5b
(*.f64 (/.f64 (*.f64 (cbrt.f64 v) (cbrt.f64 v)) (*.f64 (cbrt.f64 (-.f64 -1 (/.f64 u t1))) (cbrt.f64 (-.f64 -1 (/.f64 u t1))))) (/.f64 (/.f64 (cbrt.f64 v) (+.f64 t1 u)) (cbrt.f64 (-.f64 -1 (/.f64 u t1)))))
1.0b
(/.f64 (*.f64 v (/.f64 1 (+.f64 t1 u))) (-.f64 -1 (/.f64 u t1)))
3.9b
(/.f64 (neg.f64 v) (fma.f64 u (/.f64 u t1) (fma.f64 u 2 t1)))
20.7b
(/.f64 (*.f64 (neg.f64 t1) v) (*.f64 (+.f64 t1 u) (+.f64 t1 u)))
1.8b
(/.f64 1 (/.f64 (-.f64 -1 (/.f64 u t1)) (/.f64 v (+.f64 t1 u))))
Compiler

Compiled 4452 to 2159 computations (51.5% saved)

localize36.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(*.f64 (cbrt.f64 v) (cbrt.f64 v))
0.6b
(cbrt.f64 v)
1.6b
(/.f64 (*.f64 (cbrt.f64 v) (cbrt.f64 v)) (*.f64 (cbrt.f64 (-.f64 -1 (/.f64 u t1))) (cbrt.f64 (-.f64 -1 (/.f64 u t1)))))
8.6b
(cbrt.f64 (-.f64 -1 (/.f64 u t1)))

series1.1s (14%)

Counts
4 → 84
Calls

4 calls:

1.0s
(/.f64 (*.f64 (cbrt.f64 v) (cbrt.f64 v)) (*.f64 (cbrt.f64 (-.f64 -1 (/.f64 u t1))) (cbrt.f64 (-.f64 -1 (/.f64 u t1)))))
45.0ms
(cbrt.f64 (-.f64 -1 (/.f64 u t1)))
37.0ms
(*.f64 (cbrt.f64 v) (cbrt.f64 v))
34.0ms
(cbrt.f64 v)

rewrite77.0ms (1%)

Algorithm
rewrite-expression-head
Rules
27×add-sqr-sqrt_binary64
25×cbrt-prod_binary64
18×add-exp-log_binary64
16×*-un-lft-identity_binary64
14×cbrt-div_binary64
Counts
4 → 104
Calls

4 calls:

18.0ms
(/.f64 (*.f64 (cbrt.f64 v) (cbrt.f64 v)) (*.f64 (cbrt.f64 (-.f64 -1 (/.f64 u t1))) (cbrt.f64 (-.f64 -1 (/.f64 u t1)))))
4.0ms
(*.f64 (cbrt.f64 v) (cbrt.f64 v))
4.0ms
(cbrt.f64 (-.f64 -1 (/.f64 u t1)))
1.0ms
(cbrt.f64 v)

simplify126.0ms (1.6%)

Algorithm
egg-herbie
Rules
685×fma-def_binary64
381×unswap-sqr_binary64
308×times-frac_binary64
268×associate-/l*_binary64
247×associate-*r*_binary64
Counts
188 → 215
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03675663
110004654
234284230
350174230

prune427.0ms (5.4%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New3530353
Fresh055
Picked011
Done011
Total3537360
Error
0.3b
Counts
360 → 7
Alt Table
StatusErrorProgram
1.8b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (/.f64 v (+.f64 t1 u))) (cbrt.f64 (/.f64 v (+.f64 t1 u)))) (*.f64 (cbrt.f64 (-.f64 -1 (/.f64 u t1))) (cbrt.f64 (-.f64 -1 (/.f64 u t1))))) (/.f64 (cbrt.f64 (/.f64 v (+.f64 t1 u))) (cbrt.f64 (-.f64 -1 (/.f64 u t1)))))
23.7b
(*.f64 (sqrt.f64 (/.f64 (*.f64 v (/.f64 1 (+.f64 t1 u))) (-.f64 -1 (/.f64 u t1)))) (sqrt.f64 (/.f64 (*.f64 v (/.f64 1 (+.f64 t1 u))) (-.f64 -1 (/.f64 u t1)))))
1.5b
(*.f64 (/.f64 (*.f64 (cbrt.f64 v) (cbrt.f64 v)) (*.f64 (cbrt.f64 (-.f64 -1 (/.f64 u t1))) (cbrt.f64 (-.f64 -1 (/.f64 u t1))))) (/.f64 (/.f64 (cbrt.f64 v) (+.f64 t1 u)) (cbrt.f64 (-.f64 -1 (/.f64 u t1)))))
1.0b
(/.f64 (*.f64 v (/.f64 1 (+.f64 t1 u))) (-.f64 -1 (/.f64 u t1)))
3.9b
(/.f64 (neg.f64 v) (fma.f64 u (/.f64 u t1) (fma.f64 u 2 t1)))
20.7b
(/.f64 (*.f64 (neg.f64 t1) v) (*.f64 (+.f64 t1 u) (+.f64 t1 u)))
1.8b
(/.f64 1 (/.f64 (-.f64 -1 (/.f64 u t1)) (/.f64 v (+.f64 t1 u))))
Compiler

Compiled 17083 to 8610 computations (49.6% saved)

localize15.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(/.f64 (*.f64 (cbrt.f64 (/.f64 v (+.f64 t1 u))) (cbrt.f64 (/.f64 v (+.f64 t1 u)))) (*.f64 (cbrt.f64 (-.f64 -1 (/.f64 u t1))) (cbrt.f64 (-.f64 -1 (/.f64 u t1)))))
0.5b
(*.f64 (cbrt.f64 (/.f64 v (+.f64 t1 u))) (cbrt.f64 (/.f64 v (+.f64 t1 u))))
8.6b
(cbrt.f64 (-.f64 -1 (/.f64 u t1)))
11.2b
(cbrt.f64 (/.f64 v (+.f64 t1 u)))

series1.9s (24%)

Counts
3 → 108
Calls

3 calls:

1.0s
(/.f64 (*.f64 (cbrt.f64 (/.f64 v (+.f64 t1 u))) (cbrt.f64 (/.f64 v (+.f64 t1 u)))) (*.f64 (cbrt.f64 (-.f64 -1 (/.f64 u t1))) (cbrt.f64 (-.f64 -1 (/.f64 u t1)))))
559.0ms
(*.f64 (cbrt.f64 (/.f64 v (+.f64 t1 u))) (cbrt.f64 (/.f64 v (+.f64 t1 u))))
328.0ms
(cbrt.f64 (/.f64 v (+.f64 t1 u)))

rewrite65.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
114×cbrt-prod_binary64
99×*-un-lft-identity_binary64
79×times-frac_binary64
75×add-sqr-sqrt_binary64
51×add-cube-cbrt_binary64
Counts
3 → 164
Calls

3 calls:

22.0ms
(/.f64 (*.f64 (cbrt.f64 (/.f64 v (+.f64 t1 u))) (cbrt.f64 (/.f64 v (+.f64 t1 u)))) (*.f64 (cbrt.f64 (-.f64 -1 (/.f64 u t1))) (cbrt.f64 (-.f64 -1 (/.f64 u t1)))))
17.0ms
(*.f64 (cbrt.f64 (/.f64 v (+.f64 t1 u))) (cbrt.f64 (/.f64 v (+.f64 t1 u))))
4.0ms
(cbrt.f64 (/.f64 v (+.f64 t1 u)))

simplify169.0ms (2.1%)

Algorithm
egg-herbie
Rules
331×times-frac_binary64
320×associate-/l*_binary64
275×associate-*l*_binary64
270×fma-def_binary64
253×associate-/r*_binary64
Counts
272 → 340
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
063211208
1172710154
2497810154

prune894.0ms (11.2%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New6590659
Fresh044
Picked011
Done022
Total6597666
Error
0.3b
Counts
666 → 7
Alt Table
StatusErrorProgram
1.8b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (/.f64 v (+.f64 t1 u))) (cbrt.f64 (/.f64 v (+.f64 t1 u)))) (*.f64 (cbrt.f64 (-.f64 -1 (/.f64 u t1))) (cbrt.f64 (-.f64 -1 (/.f64 u t1))))) (/.f64 (cbrt.f64 (/.f64 v (+.f64 t1 u))) (cbrt.f64 (-.f64 -1 (/.f64 u t1)))))
23.7b
(*.f64 (sqrt.f64 (/.f64 (*.f64 v (/.f64 1 (+.f64 t1 u))) (-.f64 -1 (/.f64 u t1)))) (sqrt.f64 (/.f64 (*.f64 v (/.f64 1 (+.f64 t1 u))) (-.f64 -1 (/.f64 u t1)))))
1.5b
(*.f64 (/.f64 (*.f64 (cbrt.f64 v) (cbrt.f64 v)) (*.f64 (cbrt.f64 (-.f64 -1 (/.f64 u t1))) (cbrt.f64 (-.f64 -1 (/.f64 u t1))))) (/.f64 (/.f64 (cbrt.f64 v) (+.f64 t1 u)) (cbrt.f64 (-.f64 -1 (/.f64 u t1)))))
1.0b
(/.f64 (*.f64 v (/.f64 1 (+.f64 t1 u))) (-.f64 -1 (/.f64 u t1)))
3.9b
(/.f64 (neg.f64 v) (fma.f64 u (/.f64 u t1) (fma.f64 u 2 t1)))
20.7b
(/.f64 (*.f64 (neg.f64 t1) v) (*.f64 (+.f64 t1 u) (+.f64 t1 u)))
1.8b
(/.f64 1 (/.f64 (-.f64 -1 (/.f64 u t1)) (/.f64 v (+.f64 t1 u))))
Compiler

Compiled 39645 to 18191 computations (54.1% saved)

regimes482.0ms (6.1%)

Accuracy

Total 1.1b remaining (83.1%)

Threshold costs 0b (0%)

Counts
109 → 1
Compiler

Compiled 11254 to 6646 computations (40.9% saved)

simplify2.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01118
12218
22818
33318
43518
53418

end110.0ms (1.4%)

Compiler

Compiled 204 to 121 computations (40.7% saved)

Profiling

Loading profile data...