Details

Time bar (total: 3.1s)

analyze37.0ms (1.2%)

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
37.5%62.4%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)

sample866.0ms (28%)

Infinites
0% of outputs are infinite.
Results
525.0ms8255×body128valid
0.0msbody512valid
Compiler

Compiled 35 to 23 computations (34.3% saved)

simplify287.0ms (9.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.6%)

Counts
1 → 24
Calls

1 calls:

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

rewrite12.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:

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

simplify83.0ms (2.7%)

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

prune84.0ms (2.7%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1072109
Fresh000
Picked011
Done000
Total1073110
Error
0b
Counts
110 → 3
Alt Table
StatusErrorProgram
0.0b
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))
0.3b
(expm1.f64 (log1p.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))))
28.9b
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) (pow.f64 (-.f64 2 y) 2)) (+.f64 (/.f64 x (-.f64 2 y)) (/.f64 (pow.f64 x 3) (pow.f64 (-.f64 2 y) 3)))) (+.f64 (/.f64 (*.f64 y (pow.f64 x 3)) (pow.f64 (-.f64 2 y) 4)) (+.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))))))
Compiler

Compiled 2720 to 1427 computations (47.5% saved)

localize8.0ms (0.3%)

Local error

Found 3 expressions with local error:

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

series140.0ms (4.5%)

Counts
2 → 48
Calls

2 calls:

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

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
expm1-log1p-u_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
Counts
2 → 22
Calls

2 calls:

0.0ms
(log1p.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))))
0.0ms
(expm1.f64 (log1p.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))))

simplify86.0ms (2.8%)

Algorithm
egg-herbie
Rules
702×associate-/r*_binary64
621×times-frac_binary64
513×fma-def_binary64
386×associate-/l*_binary64
192×+-commutative_binary64
Counts
70 → 105
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
05785361
119445178
253915178

prune238.0ms (7.7%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New2140214
Fresh011
Picked011
Done011
Total2143217
Error
0b
Counts
217 → 3
Alt Table
StatusErrorProgram
0.0b
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))
0.3b
(expm1.f64 (log1p.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))))
28.9b
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) (pow.f64 (-.f64 2 y) 2)) (+.f64 (/.f64 x (-.f64 2 y)) (/.f64 (pow.f64 x 3) (pow.f64 (-.f64 2 y) 3)))) (+.f64 (/.f64 (*.f64 y (pow.f64 x 3)) (pow.f64 (-.f64 2 y) 4)) (+.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))))))
Compiler

Compiled 9780 to 6559 computations (32.9% saved)

localize25.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
8.3b
(*.f64 y (pow.f64 x 2))
8.9b
(/.f64 (*.f64 y (pow.f64 x 3)) (pow.f64 (-.f64 2 y) 4))
9.0b
(/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 (-.f64 2 y) 3))
10.1b
(/.f64 (*.f64 y x) (pow.f64 (-.f64 2 y) 2))

series160.0ms (5.2%)

Counts
4 → 44
Calls

4 calls:

51.0ms
(/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 (-.f64 2 y) 3))
49.0ms
(/.f64 (*.f64 y x) (pow.f64 (-.f64 2 y) 2))
48.0ms
(/.f64 (*.f64 y (pow.f64 x 3)) (pow.f64 (-.f64 2 y) 4))
12.0ms
(*.f64 y (pow.f64 x 2))

rewrite37.0ms (1.2%)

Algorithm
rewrite-expression-head
Rules
74×add-exp-log_binary64
43×add-sqr-sqrt_binary64
37×*-un-lft-identity_binary64
35×associate-/r*_binary64
35×times-frac_binary64
Counts
4 → 176
Calls

4 calls:

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

simplify136.0ms (4.4%)

Algorithm
egg-herbie
Rules
465×times-frac_binary64
370×associate-/l*_binary64
368×log-prod_binary64
293×associate-/r*_binary64
277×log-div_binary64
Counts
220 → 256
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03704319
18543833
240233780
344513780
450343780

prune453.0ms (14.6%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New2560256
Fresh000
Picked011
Done022
Total2563259
Error
0b
Counts
259 → 3
Alt Table
StatusErrorProgram
0.0b
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))
0.3b
(expm1.f64 (log1p.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))))
28.9b
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) (pow.f64 (-.f64 2 y) 2)) (+.f64 (/.f64 x (-.f64 2 y)) (/.f64 (pow.f64 x 3) (pow.f64 (-.f64 2 y) 3)))) (+.f64 (/.f64 (*.f64 y (pow.f64 x 3)) (pow.f64 (-.f64 2 y) 4)) (+.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))))))
Compiler

Compiled 18600 to 13380 computations (28.1% saved)

regimes337.0ms (10.9%)

Accuracy

Total 0.0b remaining (21.8%)

Threshold costs 0.0b (21.8%)

Counts
106 → 1
Compiler

Compiled 8158 to 5368 computations (34.2% saved)

simplify3.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

end75.0ms (2.4%)

Compiler

Compiled 113 to 80 computations (29.2% saved)

Profiling

Loading profile data...