Details

Time bar (total: 5.5s)

analyze79.0ms (1.4%)

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
37.5%62.4%0.1%6
50%37.5%12.6%7
56.2%31.2%12.6%8
62.4%18.7%18.8%9
65.6%15.6%18.8%10
68.7%9.4%22%11
70.2%7.8%22%12
71.8%4.7%23.5%13
72.6%3.9%23.5%14
Compiler

Compiled 8 to 5 computations (37.5% saved)

sample1.2s (21.6%)

Results
1.1s8256×body128valid
13.0ms186×body128invalid
Compiler

Compiled 23 to 14 computations (39.1% saved)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-*r*_binary64
associate-*l*_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
057
197
2107
3107

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
0.2b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.2b
(*.f64 (*.f64 x y) y)
Compiler

Compiled 26 to 13 computations (50% saved)

localize3.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (*.f64 x y) y)

series11.0ms (0.2%)

Counts
1 → 24
Calls

1 calls:

10.0ms
(*.f64 (*.f64 x y) y)

rewrite77.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
816×log1p-udef_binary64
431×log1p-expm1-u_binary64
431×expm1-log1p-u_binary64
366×unpow-prod-down_binary64
273×log-prod_binary64
Counts
1 → 18
Calls

1 calls:

76.0ms
(*.f64 (*.f64 x y) y)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
057
1997
211597
348067
462047
000
100

simplify155.0ms (2.8%)

Algorithm
egg-herbie
Rules
1108×sqr-pow_binary64
573×fabs-mul_binary64
560×cube-prod_binary64
536×pow-sqr_binary64
454×associate-*l*_binary64
Counts
42 → 20
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06168
112168
222168
341168
488168
5221168
6693168
71098168
81100168
91248168
101418168
111600168
121825168
132110168
142529168
153094168
163780168
173998168
184242168
194324168
204357168
214378168
224947168

prune12.0ms (0.2%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New16420
Fresh000
Picked011
Done000
Total16521
Error
0.1b
Counts
21 → 5
Alt Table
StatusErrorProgram
48.2b
(cbrt.f64 (pow.f64 (*.f64 y (sqrt.f64 x)) 6))
30.3b
(pow.f64 (*.f64 y (sqrt.f64 x)) 2)
1.0b
(pow.f64 (cbrt.f64 (*.f64 y (*.f64 x y))) 3)
13.6b
(*.f64 (pow.f64 y 2) x)
0.2b
(*.f64 (*.f64 x y) y)
Compiler

Compiled 241 to 115 computations (52.3% saved)

localize6.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(*.f64 y (*.f64 x y))
0.5b
(pow.f64 (cbrt.f64 (*.f64 y (*.f64 x y))) 3)
17.2b
(cbrt.f64 (*.f64 y (*.f64 x y)))

series948.0ms (17.3%)

Counts
3 → 72
Calls

3 calls:

484.0ms
(pow.f64 (cbrt.f64 (*.f64 y (*.f64 x y))) 3)
455.0ms
(cbrt.f64 (*.f64 y (*.f64 x y)))
9.0ms
(*.f64 y (*.f64 x y))

rewrite77.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
602×log1p-expm1-u_binary64
602×expm1-log1p-u_binary64
343×log-prod_binary64
121×pow1/3_binary64
121×expm1-udef_binary64
Counts
3 → 85
Calls

3 calls:

75.0ms
(*.f64 y (*.f64 x y))
75.0ms
(pow.f64 (cbrt.f64 (*.f64 y (*.f64 x y))) 3)
75.0ms
(cbrt.f64 (*.f64 y (*.f64 x y)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0823
114723
2160923
3496023
4489923
000
100

simplify61.0ms (1.1%)

Algorithm
egg-herbie
Rules
698×unswap-sqr_binary64
316×unsub-neg_binary64
281×fma-neg_binary64
273×exp-sum_binary64
247×fma-def_binary64
Counts
157 → 86
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0511348
11291220
22371140
3708604
42555604
55004604

prune73.0ms (1.3%)

Pruning

12 alts after pruning (11 fresh and 1 done)

PrunedKeptTotal
New78886
Fresh033
Picked101
Done011
Total791291
Error
0.0b
Counts
91 → 12
Alt Table
StatusErrorProgram
14.0b
(*.f64 (*.f64 (*.f64 y x) (cbrt.f64 (*.f64 y y))) (cbrt.f64 y))
0.2b
(*.f64 (*.f64 x y) y)
1.3b
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y (*.f64 y x)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 y (*.f64 y x)))) (pow.f64 (cbrt.f64 (*.f64 y (*.f64 y x))) 2)))
1.0b
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 (cbrt.f64 (*.f64 y x)) y))
14.0b
(*.f64 (cbrt.f64 (*.f64 y y)) (*.f64 (cbrt.f64 y) (*.f64 y x)))
1.0b
(*.f64 (cbrt.f64 y) (*.f64 (cbrt.f64 (*.f64 y x)) (pow.f64 (cbrt.f64 (*.f64 y (*.f64 y x))) 2)))
48.2b
(cbrt.f64 (pow.f64 (*.f64 y (sqrt.f64 x)) 6))
30.3b
(pow.f64 (*.f64 y (sqrt.f64 x)) 2)
13.6b
(*.f64 (pow.f64 y 2) x)
31.2b
(cbrt.f64 (pow.f64 (*.f64 y (*.f64 y x)) 3))
29.4b
(*.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 y x)) y))
31.5b
(*.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (*.f64 y x)))
Compiler

Compiled 1353 to 622 computations (54% saved)

localize7.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cbrt.f64 (*.f64 y x)) y)
0.2b
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 (cbrt.f64 (*.f64 y x)) y))
0.5b
(pow.f64 (cbrt.f64 (*.f64 y x)) 2)
9.4b
(cbrt.f64 (*.f64 y x))

series1.1s (19.8%)

Counts
4 → 96
Calls

4 calls:

415.0ms
(*.f64 (cbrt.f64 (*.f64 y x)) y)
329.0ms
(pow.f64 (cbrt.f64 (*.f64 y x)) 2)
305.0ms
(cbrt.f64 (*.f64 y x))
33.0ms
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 (cbrt.f64 (*.f64 y x)) y))

rewrite47.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
717×log1p-expm1-u_binary64
717×expm1-log1p-u_binary64
147×expm1-udef_binary64
147×log1p-udef_binary64
88×associate-*r*_binary64
Counts
4 → 81
Calls

4 calls:

46.0ms
(*.f64 (cbrt.f64 (*.f64 y x)) y)
46.0ms
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 (cbrt.f64 (*.f64 y x)) y))
46.0ms
(pow.f64 (cbrt.f64 (*.f64 y x)) 2)
46.0ms
(cbrt.f64 (*.f64 y x))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0931
118031
2193231
3490931
000
100

simplify138.0ms (2.5%)

Algorithm
egg-herbie
Rules
718×fma-neg_binary64
439×associate-*l*_binary64
411×exp-sum_binary64
385×associate-*r*_binary64
309×exp-prod_binary64
Counts
177 → 106
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0721472
11721440
23081308
3968968
43447956
54789956
64655956
74959956
84835956

prune122.0ms (2.2%)

Pruning

12 alts after pruning (11 fresh and 1 done)

PrunedKeptTotal
New1354139
Fresh3710
Picked101
Done011
Total13912151
Error
0.0b
Counts
151 → 12
Alt Table
StatusErrorProgram
1.0b
(*.f64 (pow.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 x)) 2) (*.f64 (cbrt.f64 (*.f64 y x)) y))
1.3b
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y (*.f64 y x)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 y (*.f64 y x)))) (pow.f64 (cbrt.f64 (*.f64 y (*.f64 y x))) 2)))
0.8b
(*.f64 (*.f64 (cbrt.f64 (*.f64 y (*.f64 y x))) (cbrt.f64 x)) (*.f64 (cbrt.f64 (*.f64 y x)) y))
30.3b
(pow.f64 (*.f64 y (sqrt.f64 x)) 2)
14.0b
(*.f64 (*.f64 (*.f64 y x) (cbrt.f64 (*.f64 y y))) (cbrt.f64 y))
0.2b
(*.f64 (*.f64 x y) y)
4.2b
(*.f64 (pow.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 4))) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y x))) 2))) 2) (*.f64 (cbrt.f64 (*.f64 y x)) y))
29.4b
(*.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 y x)) y))
1.0b
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y (cbrt.f64 (*.f64 y x))))
1.0b
(*.f64 (cbrt.f64 y) (*.f64 (cbrt.f64 (*.f64 y x)) (pow.f64 (cbrt.f64 (*.f64 y (*.f64 y x))) 2)))
48.2b
(cbrt.f64 (pow.f64 (*.f64 y (sqrt.f64 x)) 6))
13.6b
(*.f64 (pow.f64 y 2) x)
Compiler

Compiled 2575 to 1107 computations (57% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (cbrt.f64 (*.f64 y (*.f64 y x))) (cbrt.f64 x))
0.6b
(cbrt.f64 x)
9.4b
(cbrt.f64 (*.f64 y x))
17.2b
(cbrt.f64 (*.f64 y (*.f64 y x)))

series877.0ms (16%)

Counts
3 → 60
Calls

3 calls:

466.0ms
(*.f64 (cbrt.f64 (*.f64 y (*.f64 y x))) (cbrt.f64 x))
382.0ms
(cbrt.f64 (*.f64 y (*.f64 y x)))
29.0ms
(cbrt.f64 x)

rewrite50.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
645×log1p-expm1-u_binary64
645×expm1-log1p-u_binary64
412×log-prod_binary64
130×expm1-udef_binary64
130×log1p-udef_binary64
Counts
3 → 71
Calls

3 calls:

49.0ms
(*.f64 (cbrt.f64 (*.f64 y (*.f64 y x))) (cbrt.f64 x))
49.0ms
(cbrt.f64 x)
49.0ms
(cbrt.f64 (*.f64 y (*.f64 y x)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0824
115521
2174621
3519421
000
100

simplify107.0ms (2%)

Algorithm
egg-herbie
Rules
581×div-exp_binary64
520×exp-sum_binary64
486×fma-neg_binary64
415×exp-diff_binary64
403×exp-prod_binary64
Counts
131 → 89
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
071940
1164868
2307768
3922644
42931556
54751556
64202556
74403556
85462556

prune88.0ms (1.6%)

Pruning

13 alts after pruning (11 fresh and 2 done)

PrunedKeptTotal
New1211122
Fresh01010
Picked011
Done011
Total12113134
Error
0b
Counts
134 → 13
Alt Table
StatusErrorProgram
1.0b
(*.f64 (pow.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 x)) 2) (*.f64 (cbrt.f64 (*.f64 y x)) y))
30.5b
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (*.f64 y (sqrt.f64 x))) 2) (cbrt.f64 x)) (*.f64 (cbrt.f64 (*.f64 y x)) y))
1.3b
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y (*.f64 y x)))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 y (*.f64 y x)))) (pow.f64 (cbrt.f64 (*.f64 y (*.f64 y x))) 2)))
0.8b
(*.f64 (*.f64 (cbrt.f64 (*.f64 y (*.f64 y x))) (cbrt.f64 x)) (*.f64 (cbrt.f64 (*.f64 y x)) y))
30.3b
(pow.f64 (*.f64 y (sqrt.f64 x)) 2)
14.0b
(*.f64 (*.f64 (*.f64 y x) (cbrt.f64 (*.f64 y y))) (cbrt.f64 y))
0.2b
(*.f64 (*.f64 x y) y)
4.2b
(*.f64 (pow.f64 (*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 4))) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 y x))) 2))) 2) (*.f64 (cbrt.f64 (*.f64 y x)) y))
29.4b
(*.f64 (sqrt.f64 (*.f64 y x)) (*.f64 (sqrt.f64 (*.f64 y x)) y))
1.0b
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y (cbrt.f64 (*.f64 y x))))
1.0b
(*.f64 (cbrt.f64 y) (*.f64 (cbrt.f64 (*.f64 y x)) (pow.f64 (cbrt.f64 (*.f64 y (*.f64 y x))) 2)))
48.2b
(cbrt.f64 (pow.f64 (*.f64 y (sqrt.f64 x)) 6))
13.6b
(*.f64 (pow.f64 y 2) x)
Compiler

Compiled 2617 to 856 computations (67.3% saved)

regimes117.0ms (2.1%)

Accuracy

Total 0.2b remaining (86.7%)

Threshold costs 0.2b (86.7%)

Counts
43 → 1
Compiler

Compiled 2027 to 1237 computations (39% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
057
177
277

end131.0ms (2.4%)

Compiler

Compiled 213 to 126 computations (40.8% saved)

Profiling

Loading profile data...