Details

Time bar (total: 3.7s)

analyze56.0ms (1.5%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
25%74.9%0.1%3
25%74.9%0.1%4
56.2%43.7%0.1%5
65.6%34.3%0.1%6
79.6%20.3%0.1%7
83.5%16.4%0.1%8
90.1%9.8%0.1%9
91.9%8%0.1%10
95.1%4.8%0.1%11
96%4%0.1%12
97.5%2.4%0.1%13
97.9%2%0.1%14
Compiler

Compiled 12 to 8 computations (33.3% saved)

sample1.2s (31.6%)

Results
855.0ms8254×body128valid
1.0msbody1024valid
Compiler

Compiled 35 to 23 computations (34.3% saved)

simplify270.0ms (7.4%)

Algorithm
egg-herbie
Rules
1222×fma-neg_binary64
983×fma-def_binary64
688×div-sub_binary64
423×sub-neg_binary64
412×distribute-rgt-in_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0813
11813
23513
37413
415113
524513
664113
7112513
8215813
9272913
10303713
11299513
12304913
13306313
14356913
15355913
16355913
17355913
18355913
19355913
20365513
21370313
22378513
23359313

prune2.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.0b
Counts
2 → 1
Alt Table
StatusErrorProgram
0.0b
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))
Compiler

Compiled 33 to 21 computations (36.4% saved)

localize7.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))

series18.0ms (0.5%)

Counts
1 → 24
Calls

1 calls:

18.0ms
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))

rewrite13.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
58×*-un-lft-identity_binary64
40×add-sqr-sqrt_binary64
30×times-frac_binary64
19×distribute-lft-out--_binary64
14×add-cube-cbrt_binary64
Counts
1 → 60
Calls

1 calls:

7.0ms
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))

simplify103.0ms (2.8%)

Algorithm
egg-herbie
Rules
702×fma-def_binary64
518×times-frac_binary64
339×fma-neg_binary64
291×distribute-rgt-in_binary64
228×cancel-sign-sub-inv_binary64
Counts
84 → 109
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02242433
16352369
221152256
348532256
450452256

prune92.0ms (2.5%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1054109
Fresh000
Picked011
Done000
Total1055110
Error
0b
Counts
110 → 5
Alt Table
StatusErrorProgram
0.0b
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))
32.4b
(/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (*.f64 (-.f64 2 (+.f64 x y)) (+.f64 x y)))
25.8b
(-.f64 (fma.f64 (/.f64 (*.f64 y y) (pow.f64 (-.f64 2 x) 3)) x (*.f64 (+.f64 (/.f64 y (-.f64 2 x)) 1) (/.f64 x (-.f64 2 x)))) (*.f64 (+.f64 (/.f64 y (-.f64 2 x)) 1) (/.f64 y (-.f64 2 x))))
0.1b
(/.f64 1 (/.f64 (-.f64 2 (+.f64 x y)) (-.f64 x y)))
40.2b
(-.f64 (+.f64 (/.f64 2 y) (+.f64 1 (fma.f64 2 (*.f64 (/.f64 x y) (/.f64 x y)) (/.f64 4 (*.f64 y y))))) (*.f64 (/.f64 x y) (+.f64 2 (/.f64 6 y))))
Compiler

Compiled 2768 to 1443 computations (47.9% saved)

localize9.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 2 (+.f64 x y)) (-.f64 x y))
0.1b
(/.f64 1 (/.f64 (-.f64 2 (+.f64 x y)) (-.f64 x y)))

series37.0ms (1%)

Counts
2 → 48
Calls

2 calls:

24.0ms
(/.f64 1 (/.f64 (-.f64 2 (+.f64 x y)) (-.f64 x y)))
13.0ms
(/.f64 (-.f64 2 (+.f64 x y)) (-.f64 x y))

rewrite62.0ms (1.7%)

Algorithm
rewrite-expression-head
Rules
292×*-un-lft-identity_binary64
258×times-frac_binary64
214×add-sqr-sqrt_binary64
100×add-cube-cbrt_binary64
83×distribute-lft-out--_binary64
Counts
2 → 230
Calls

2 calls:

13.0ms
(/.f64 1 (/.f64 (-.f64 2 (+.f64 x y)) (-.f64 x y)))
8.0ms
(/.f64 (-.f64 2 (+.f64 x y)) (-.f64 x y))

simplify213.0ms (5.8%)

Algorithm
egg-herbie
Rules
814×times-frac_binary64
253×fma-neg_binary64
207×fma-def_binary64
179×+-commutative_binary64
143×associate--r+_binary64
Counts
278 → 300
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03387906
19687346
234447309
349987309
449647309

prune247.0ms (6.7%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New2991300
Fresh213
Picked011
Done011
Total3014305
Error
0b
Counts
305 → 4
Alt Table
StatusErrorProgram
0.1b
(/.f64 1 (/.f64 (-.f64 2 (+.f64 x y)) (-.f64 x y)))
40.2b
(-.f64 (+.f64 (/.f64 2 y) (+.f64 1 (fma.f64 2 (*.f64 (/.f64 x y) (/.f64 x y)) (/.f64 4 (*.f64 y y))))) (*.f64 (/.f64 x y) (+.f64 2 (/.f64 6 y))))
30.9b
(/.f64 1 (-.f64 (fma.f64 2 (/.f64 x y) 1) (/.f64 2 y)))
0.0b
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))
Compiler

Compiled 7798 to 4042 computations (48.2% saved)

localize8.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 2 (/.f64 x y) 1)
0.0b
(-.f64 (fma.f64 2 (/.f64 x y) 1) (/.f64 2 y))
0.5b
(/.f64 1 (-.f64 (fma.f64 2 (/.f64 x y) 1) (/.f64 2 y)))

series35.0ms (1%)

Counts
3 → 72
Calls

3 calls:

19.0ms
(/.f64 1 (-.f64 (fma.f64 2 (/.f64 x y) 1) (/.f64 2 y)))
10.0ms
(-.f64 (fma.f64 2 (/.f64 x y) 1) (/.f64 2 y))
5.0ms
(fma.f64 2 (/.f64 x y) 1)

rewrite31.0ms (0.9%)

Algorithm
rewrite-expression-head
Rules
81×add-sqr-sqrt_binary64
66×*-un-lft-identity_binary64
59×times-frac_binary64
56×add-cube-cbrt_binary64
39×prod-diff_binary64
Counts
3 → 129
Calls

3 calls:

7.0ms
(-.f64 (fma.f64 2 (/.f64 x y) 1) (/.f64 2 y))
6.0ms
(/.f64 1 (-.f64 (fma.f64 2 (/.f64 x y) 1) (/.f64 2 y)))
0.0ms
(fma.f64 2 (/.f64 x y) 1)

simplify137.0ms (3.7%)

Algorithm
egg-herbie
Rules
844×times-frac_binary64
435×fma-neg_binary64
285×cancel-sign-sub-inv_binary64
187×fma-def_binary64
173×sub-neg_binary64
Counts
201 → 200
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03284483
18293817
225833532
348083532
448603532

prune205.0ms (5.6%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New2000200
Fresh011
Picked011
Done022
Total2004204
Error
0b
Counts
204 → 4
Alt Table
StatusErrorProgram
0.1b
(/.f64 1 (/.f64 (-.f64 2 (+.f64 x y)) (-.f64 x y)))
40.2b
(-.f64 (+.f64 (/.f64 2 y) (+.f64 1 (fma.f64 2 (*.f64 (/.f64 x y) (/.f64 x y)) (/.f64 4 (*.f64 y y))))) (*.f64 (/.f64 x y) (+.f64 2 (/.f64 6 y))))
30.9b
(/.f64 1 (-.f64 (fma.f64 2 (/.f64 x y) 1) (/.f64 2 y)))
0.0b
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))
Compiler

Compiled 5866 to 4143 computations (29.4% saved)

localize17.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (/.f64 x y) (+.f64 2 (/.f64 6 y)))
0.2b
(*.f64 (/.f64 x y) (/.f64 x y))
0.4b
(/.f64 4 (*.f64 y y))
7.0b
(-.f64 (+.f64 (/.f64 2 y) (+.f64 1 (fma.f64 2 (*.f64 (/.f64 x y) (/.f64 x y)) (/.f64 4 (*.f64 y y))))) (*.f64 (/.f64 x y) (+.f64 2 (/.f64 6 y))))

series96.0ms (2.6%)

Counts
4 → 84
Calls

4 calls:

42.0ms
(-.f64 (+.f64 (/.f64 2 y) (+.f64 1 (fma.f64 2 (*.f64 (/.f64 x y) (/.f64 x y)) (/.f64 4 (*.f64 y y))))) (*.f64 (/.f64 x y) (+.f64 2 (/.f64 6 y))))
29.0ms
(*.f64 (/.f64 x y) (/.f64 x y))
23.0ms
(*.f64 (/.f64 x y) (+.f64 2 (/.f64 6 y)))
2.0ms
(/.f64 4 (*.f64 y y))

rewrite50.0ms (1.4%)

Algorithm
rewrite-expression-head
Rules
61×add-sqr-sqrt_binary64
56×*-un-lft-identity_binary64
53×times-frac_binary64
44×add-cube-cbrt_binary64
26×associate-*l*_binary64
Counts
4 → 182
Calls

4 calls:

14.0ms
(-.f64 (+.f64 (/.f64 2 y) (+.f64 1 (fma.f64 2 (*.f64 (/.f64 x y) (/.f64 x y)) (/.f64 4 (*.f64 y y))))) (*.f64 (/.f64 x y) (+.f64 2 (/.f64 6 y))))
8.0ms
(*.f64 (/.f64 x y) (+.f64 2 (/.f64 6 y)))
7.0ms
(*.f64 (/.f64 x y) (/.f64 x y))
3.0ms
(/.f64 4 (*.f64 y y))

simplify241.0ms (6.6%)

Algorithm
egg-herbie
Rules
442×distribute-rgt-in_binary64
423×distribute-lft-in_binary64
249×associate-*r/_binary64
240×associate-*l/_binary64
202×fma-def_binary64
Counts
266 → 295
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04029030
113858302
246568251
349818251
449748251

prune307.0ms (8.4%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New2950295
Fresh000
Picked011
Done033
Total2954299
Error
0b
Counts
299 → 4
Alt Table
StatusErrorProgram
0.1b
(/.f64 1 (/.f64 (-.f64 2 (+.f64 x y)) (-.f64 x y)))
40.2b
(-.f64 (+.f64 (/.f64 2 y) (+.f64 1 (fma.f64 2 (*.f64 (/.f64 x y) (/.f64 x y)) (/.f64 4 (*.f64 y y))))) (*.f64 (/.f64 x y) (+.f64 2 (/.f64 6 y))))
30.9b
(/.f64 1 (-.f64 (fma.f64 2 (/.f64 x y) 1) (/.f64 2 y)))
0.0b
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))
Compiler

Compiled 15650 to 7984 computations (49% saved)

regimes177.0ms (4.8%)

Accuracy

Total 0.0b remaining (48.8%)

Threshold costs 0.0b (48.8%)

Counts
59 → 1
Compiler

Compiled 3322 to 2272 computations (31.6% saved)

simplify2.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0813
11313
22413
33213
43613
53713
63713

end73.0ms (2%)

Compiler

Compiled 92 to 61 computations (33.7% saved)

Profiling

Loading profile data...