Details

Time bar (total: 3.7s)

analyze49.0ms (1.3%)

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.1s (29.7%)

Results
784.0ms8255×body128valid
0.0msbody512valid
Compiler

Compiled 35 to 23 computations (34.3% saved)

simplify266.0ms (7.3%)

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)

localize6.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

series19.0ms (0.5%)

Counts
1 → 24
Calls

1 calls:

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

rewrite12.0ms (0.3%)

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)))

simplify96.0ms (2.6%)

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

prune77.0ms (2.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New1063109
Fresh000
Picked101
Done000
Total1073110
Error
0b
Counts
110 → 3
Alt Table
StatusErrorProgram
0.1b
(/.f64 1 (/.f64 (-.f64 2 (+.f64 x y)) (-.f64 x y)))
30.5b
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) (pow.f64 (-.f64 2 y) 2)) (/.f64 x (-.f64 2 y))) (+.f64 (/.f64 (*.f64 y x) (pow.f64 (-.f64 2 y) 2)) (+.f64 (/.f64 y (-.f64 2 y)) (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 (-.f64 2 y) 3)))))
0.1b
(*.f64 (-.f64 x y) (/.f64 1 (-.f64 2 (+.f64 x y))))
Compiler

Compiled 2691 to 1404 computations (47.8% saved)

localize6.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)))

series31.0ms (0.9%)

Counts
2 → 48
Calls

2 calls:

16.0ms
(/.f64 1 (/.f64 (-.f64 2 (+.f64 x y)) (-.f64 x y)))
15.0ms
(/.f64 (-.f64 2 (+.f64 x y)) (-.f64 x y))

rewrite56.0ms (1.5%)

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:

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

simplify199.0ms (5.4%)

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

prune203.0ms (5.5%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New3000300
Fresh022
Picked011
Done000
Total3003303
Error
0b
Counts
303 → 3
Alt Table
StatusErrorProgram
0.1b
(/.f64 1 (/.f64 (-.f64 2 (+.f64 x y)) (-.f64 x y)))
30.5b
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) (pow.f64 (-.f64 2 y) 2)) (/.f64 x (-.f64 2 y))) (+.f64 (/.f64 (*.f64 y x) (pow.f64 (-.f64 2 y) 2)) (+.f64 (/.f64 y (-.f64 2 y)) (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 (-.f64 2 y) 3)))))
0.1b
(*.f64 (-.f64 x y) (/.f64 1 (-.f64 2 (+.f64 x y))))
Compiler

Compiled 7811 to 4057 computations (48.1% saved)

localize6.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

series29.0ms (0.8%)

Counts
2 → 48
Calls

2 calls:

17.0ms
(*.f64 (-.f64 x y) (/.f64 1 (-.f64 2 (+.f64 x y))))
12.0ms
(/.f64 1 (-.f64 2 (+.f64 x y)))

rewrite28.0ms (0.8%)

Algorithm
rewrite-expression-head
Rules
62×*-un-lft-identity_binary64
47×add-sqr-sqrt_binary64
38×times-frac_binary64
24×associate-*r*_binary64
24×add-cube-cbrt_binary64
Counts
2 → 102
Calls

2 calls:

12.0ms
(*.f64 (-.f64 x y) (/.f64 1 (-.f64 2 (+.f64 x y))))
9.0ms
(/.f64 1 (-.f64 2 (+.f64 x y)))

simplify110.0ms (3%)

Algorithm
egg-herbie
Rules
654×times-frac_binary64
403×fma-neg_binary64
325×sub-neg_binary64
288×cancel-sign-sub-inv_binary64
188×+-commutative_binary64
Counts
150 → 192
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03063603
18513445
230683427
349423427
451453427

prune136.0ms (3.7%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1920192
Fresh011
Picked011
Done011
Total1923195
Error
0b
Counts
195 → 3
Alt Table
StatusErrorProgram
0.1b
(/.f64 1 (/.f64 (-.f64 2 (+.f64 x y)) (-.f64 x y)))
30.5b
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) (pow.f64 (-.f64 2 y) 2)) (/.f64 x (-.f64 2 y))) (+.f64 (/.f64 (*.f64 y x) (pow.f64 (-.f64 2 y) 2)) (+.f64 (/.f64 y (-.f64 2 y)) (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 (-.f64 2 y) 3)))))
0.1b
(*.f64 (-.f64 x y) (/.f64 1 (-.f64 2 (+.f64 x y))))
Compiler

Compiled 4720 to 2743 computations (41.9% saved)

localize17.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
6.4b
(*.f64 y (pow.f64 x 2))
6.8b
(/.f64 (pow.f64 x 2) (pow.f64 (-.f64 2 y) 2))
10.2b
(/.f64 (*.f64 y x) (pow.f64 (-.f64 2 y) 2))
11.0b
(/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 (-.f64 2 y) 3))

series150.0ms (4.1%)

Counts
4 → 44
Calls

4 calls:

55.0ms
(/.f64 (*.f64 y x) (pow.f64 (-.f64 2 y) 2))
43.0ms
(/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 (-.f64 2 y) 3))
42.0ms
(/.f64 (pow.f64 x 2) (pow.f64 (-.f64 2 y) 2))
9.0ms
(*.f64 y (pow.f64 x 2))

rewrite43.0ms (1.2%)

Algorithm
rewrite-expression-head
Rules
106×times-frac_binary64
102×unpow-prod-down_binary64
93×add-sqr-sqrt_binary64
87×*-un-lft-identity_binary64
60×add-exp-log_binary64
Counts
4 → 251
Calls

4 calls:

10.0ms
(/.f64 (pow.f64 x 2) (pow.f64 (-.f64 2 y) 2))
7.0ms
(/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 (-.f64 2 y) 3))
6.0ms
(/.f64 (*.f64 y x) (pow.f64 (-.f64 2 y) 2))
4.0ms
(*.f64 y (pow.f64 x 2))

simplify164.0ms (4.5%)

Algorithm
egg-herbie
Rules
944×fma-def_binary64
409×times-frac_binary64
319×associate-/l*_binary64
311×associate-/r*_binary64
180×associate-*r*_binary64
Counts
295 → 372
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04016151
18265249
235805180
349725180
450085180

prune453.0ms (12.4%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New3720372
Fresh000
Picked011
Done022
Total3723375
Error
0b
Counts
375 → 3
Alt Table
StatusErrorProgram
0.1b
(/.f64 1 (/.f64 (-.f64 2 (+.f64 x y)) (-.f64 x y)))
30.5b
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) (pow.f64 (-.f64 2 y) 2)) (/.f64 x (-.f64 2 y))) (+.f64 (/.f64 (*.f64 y x) (pow.f64 (-.f64 2 y) 2)) (+.f64 (/.f64 y (-.f64 2 y)) (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 (-.f64 2 y) 3)))))
0.1b
(*.f64 (-.f64 x y) (/.f64 1 (-.f64 2 (+.f64 x y))))
Compiler

Compiled 19204 to 13314 computations (30.7% saved)

regimes340.0ms (9.3%)

Accuracy

Total 0.0b remaining (33.1%)

Threshold costs 0.0b (33.1%)

Counts
108 → 1
Compiler

Compiled 7929 to 5207 computations (34.3% 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
01013
11813
22813
33613
44013
54113
64013

end68.0ms (1.8%)

Compiler

Compiled 93 to 65 computations (30.1% saved)

Profiling

Loading profile data...