Details

Time bar (total: 3.3s)

analyze93.0ms (2.8%)

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%50%12.6%6
43.7%40.6%15.7%7
56.2%23.4%20.4%8
57.8%21.1%21.2%9
64%12.5%23.5%10
64.8%10.7%24.5%11
67.9%6.4%25.7%12
68.3%5.4%26.3%13
69.9%3.3%26.9%14
Compiler

Compiled 12 to 8 computations (33.3% saved)

sample830.0ms (25.1%)

Results
753.0ms8256×body128valid
12.0ms143×body128invalid
Compiler

Compiled 35 to 23 computations (34.3% saved)

simplify27.0ms (0.8%)

Algorithm
egg-herbie
Rules
388×fma-def_binary64
286×fma-neg_binary64
71×distribute-rgt-in_binary64
70×associate-*l*_binary64
69×cancel-sign-sub-inv_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0810
11810
24010
38810
415410
521710
638610
751110
865710
972710
1077710
1172410

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.0b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.0b
(*.f64 2 (-.f64 (*.f64 x x) (*.f64 x y)))
0.0b
(*.f64 2 (*.f64 x (-.f64 x y)))
Compiler

Compiled 58 to 37 computations (36.2% saved)

localize4.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 x (-.f64 x y))
0.0b
(*.f64 2 (*.f64 x (-.f64 x y)))

series12.0ms (0.4%)

Counts
2 → 48
Calls

2 calls:

7.0ms
(*.f64 2 (*.f64 x (-.f64 x y)))
5.0ms
(*.f64 x (-.f64 x y))

rewrite28.0ms (0.9%)

Algorithm
rewrite-expression-head
Rules
65×distribute-lft-in_binary64
65×distribute-rgt-in_binary64
54×prod-diff_binary64
51×add-sqr-sqrt_binary64
49×*-un-lft-identity_binary64
Counts
2 → 124
Calls

2 calls:

9.0ms
(*.f64 2 (*.f64 x (-.f64 x y)))
5.0ms
(*.f64 x (-.f64 x y))

simplify120.0ms (3.6%)

Algorithm
egg-herbie
Rules
420×*-commutative_binary64
359×fma-neg_binary64
354×exp-prod_binary64
320×distribute-lft-neg-out_binary64
318×distribute-rgt-neg-out_binary64
Counts
172 → 154
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02092679
12892202
29761878
325631715
445571715
549981715
647131715

prune88.0ms (2.7%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New1522154
Fresh101
Picked101
Done000
Total1542156
Error
0.0b
Counts
156 → 2
Alt Table
StatusErrorProgram
0.8b
(*.f64 2 (+.f64 (*.f64 x x) (*.f64 (*.f64 (neg.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (cbrt.f64 y)) x)))
0.0b
(*.f64 x (*.f64 2 (-.f64 x y)))
Compiler

Compiled 3045 to 1060 computations (65.2% saved)

localize4.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 x (*.f64 2 (-.f64 x y)))

series7.0ms (0.2%)

Counts
1 → 24
Calls

1 calls:

7.0ms
(*.f64 x (*.f64 2 (-.f64 x y)))

rewrite17.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
52×distribute-lft-in_binary64
52×distribute-rgt-in_binary64
36×prod-diff_binary64
30×*-un-lft-identity_binary64
30×add-sqr-sqrt_binary64
Counts
1 → 74
Calls

1 calls:

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

simplify77.0ms (2.3%)

Algorithm
egg-herbie
Rules
510×fma-neg_binary64
381×*-commutative_binary64
334×exp-prod_binary64
295×distribute-lft-neg-out_binary64
290×distribute-rgt-neg-out_binary64
Counts
98 → 84
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01911726
12601429
27901213
321921105
445661105
548911105

prune52.0ms (1.6%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New84084
Fresh011
Picked011
Done000
Total84286
Error
0.0b
Counts
86 → 2
Alt Table
StatusErrorProgram
0.8b
(*.f64 2 (+.f64 (*.f64 x x) (*.f64 (*.f64 (neg.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (cbrt.f64 y)) x)))
0.0b
(*.f64 x (*.f64 2 (-.f64 x y)))
Compiler

Compiled 1843 to 734 computations (60.2% saved)

localize13.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 x x) (*.f64 (*.f64 (neg.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (cbrt.f64 y)) x))
0.2b
(*.f64 (neg.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (cbrt.f64 y))
0.5b
(*.f64 (cbrt.f64 y) (cbrt.f64 y))
0.5b
(cbrt.f64 y)

series104.0ms (3.1%)

Counts
4 → 60
Calls

4 calls:

39.0ms
(*.f64 (cbrt.f64 y) (cbrt.f64 y))
35.0ms
(cbrt.f64 y)
18.0ms
(+.f64 (*.f64 x x) (*.f64 (*.f64 (neg.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (cbrt.f64 y)) x))
12.0ms
(*.f64 (neg.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (cbrt.f64 y))

rewrite16.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
28×add-sqr-sqrt_binary64
23×cbrt-prod_binary64
16×*-un-lft-identity_binary64
16×add-cube-cbrt_binary64
13×pow1_binary64
Counts
4 → 99
Calls

4 calls:

4.0ms
(*.f64 (neg.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (cbrt.f64 y))
4.0ms
(*.f64 (cbrt.f64 y) (cbrt.f64 y))
3.0ms
(+.f64 (*.f64 x x) (*.f64 (*.f64 (neg.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (cbrt.f64 y)) x))
1.0ms
(cbrt.f64 y)

simplify1.2s (36.1%)

Algorithm
egg-herbie
Rules
666×fma-neg_binary64
400×unsub-neg_binary64
340×fma-def_binary64
339×*-commutative_binary64
323×exp-prod_binary64
Counts
159 → 156
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01191446
12901185
211771125
331281101
447461096
549991096
649331096

prune98.0ms (3%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New1911192
Fresh000
Picked101
Done011
Total1922194
Error
0b
Counts
194 → 2
Alt Table
StatusErrorProgram
0.8b
(*.f64 2 (fma.f64 x x (*.f64 (*.f64 (neg.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (cbrt.f64 y)) x)))
0.0b
(*.f64 x (*.f64 2 (-.f64 x y)))
Compiler

Compiled 4057 to 1501 computations (63% saved)

localize9.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 2 (fma.f64 x x (*.f64 (*.f64 (neg.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (cbrt.f64 y)) x)))
0.2b
(*.f64 (neg.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (cbrt.f64 y))
0.5b
(*.f64 (cbrt.f64 y) (cbrt.f64 y))
0.5b
(cbrt.f64 y)

series17.0ms (0.5%)

Counts
1 → 24
Calls

1 calls:

17.0ms
(*.f64 2 (fma.f64 x x (*.f64 (*.f64 (neg.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (cbrt.f64 y)) x)))

rewrite9.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
add-sqr-sqrt_binary64
associate-*r*_binary64
associate-*l*_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
Counts
1 → 22
Calls

1 calls:

8.0ms
(*.f64 2 (fma.f64 x x (*.f64 (*.f64 (neg.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (cbrt.f64 y)) x)))

simplify40.0ms (1.2%)

Algorithm
egg-herbie
Rules
810×distribute-rgt-in_binary64
789×distribute-lft-in_binary64
374×fma-def_binary64
239×associate-*l*_binary64
214×associate-*r*_binary64
Counts
46 → 41
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
054947
1115506
2270506
31055506
44997506

prune97.0ms (2.9%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New2020202
Fresh000
Picked011
Done011
Total2022204
Error
0b
Counts
204 → 2
Alt Table
StatusErrorProgram
0.8b
(*.f64 2 (fma.f64 x x (*.f64 (*.f64 (neg.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y))) (cbrt.f64 y)) x)))
0.0b
(*.f64 x (*.f64 2 (-.f64 x y)))
Compiler

Compiled 4077 to 1572 computations (61.4% saved)

regimes308.0ms (9.3%)

Accuracy

Total 0.0b remaining (89.1%)

Threshold costs 0.0b (89.1%)

Counts
76 → 1
Compiler

Compiled 4504 to 3036 computations (32.6% saved)

simplify2.0ms (0.1%)

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
0710
11110
21610
31810
41910
51910

end37.0ms (1.1%)

Compiler

Compiled 45 to 28 computations (37.8% saved)

Profiling

Loading profile data...