Details

Time bar (total: 3.5s)

analyze68.0ms (1.9%)

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)

sample931.0ms (26.8%)

Symmetry

(sort x y)

Results
868.0ms8255×body128valid
0.0msbody1024valid
Compiler

Compiled 35 to 23 computations (34.3% saved)

simplify27.0ms (0.8%)

Algorithm
egg-herbie
Rules
589×fma-neg_binary64
394×fma-def_binary64
320×rules-42_binary64
312×rules-41_binary64
308×rules-40_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0813
14513
211813
339113
4115713
51013

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 33 to 21 computations (36.4% saved)

localize5.0ms (0.1%)

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:

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

rewrite89.0ms (2.5%)

Algorithm
batch-egg-rewrite
Rules
765×fma-neg_binary64
639×prod-diff_binary64
168×expm1-udef_binary64
168×log1p-udef_binary64
93×add-sqr-sqrt_binary64
Counts
1 → 36
Calls

1 calls:

88.0ms
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0813
120213
2272013
3495913
4491413
000
100

simplify64.0ms (1.9%)

Algorithm
egg-herbie
Rules
394×rules-7-rev_binary64
333×fma-def_binary64
260×fma-neg_binary64
258×rules-21_binary64
255×rules-40_binary64
Counts
60 → 64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01321039
110251003
249951003
349691003

prune62.0ms (1.8%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New60464
Fresh000
Picked101
Done000
Total61465
Error
0.4b
Counts
65 → 4
Alt Table
StatusErrorProgram
40.4b
-1
44.5b
(-.f64 (+.f64 (/.f64 (*.f64 x x) (pow.f64 (-.f64 2 y) 2)) (+.f64 (/.f64 x (-.f64 2 y)) (/.f64 (pow.f64 x 3) (pow.f64 (-.f64 2 y) 3)))) (fma.f64 y (/.f64 (pow.f64 x 3) (pow.f64 (-.f64 2 y) 4)) (fma.f64 y (/.f64 x (pow.f64 (-.f64 2 y) 2)) (fma.f64 y (/.f64 (*.f64 x x) (pow.f64 (-.f64 2 y) 3)) (/.f64 y (-.f64 2 y))))))
31.9b
(cbrt.f64 (pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) 3))
30.4b
(fabs.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))))
Compiler

Compiled 1709 to 1052 computations (38.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)))

prune59.0ms (1.7%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New61364
Fresh033
Picked101
Done000
Total62668
Error
0.3b
Counts
68 → 6
Alt Table
StatusErrorProgram
34.0b
(fabs.f64 (cbrt.f64 (pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) 3)))
40.4b
-1
48.5b
(fabs.f64 (*.f64 (+.f64 4 (+.f64 (pow.f64 (+.f64 x y) 2) (*.f64 2 (+.f64 x y)))) (/.f64 (-.f64 x y) (-.f64 8 (pow.f64 (+.f64 x y) 3)))))
44.5b
(-.f64 (+.f64 (/.f64 (*.f64 x x) (pow.f64 (-.f64 2 y) 2)) (+.f64 (/.f64 x (-.f64 2 y)) (/.f64 (pow.f64 x 3) (pow.f64 (-.f64 2 y) 3)))) (fma.f64 y (/.f64 (pow.f64 x 3) (pow.f64 (-.f64 2 y) 4)) (fma.f64 y (/.f64 x (pow.f64 (-.f64 2 y) 2)) (fma.f64 y (/.f64 (*.f64 x x) (pow.f64 (-.f64 2 y) 3)) (/.f64 y (-.f64 2 y))))))
30.4b
(fabs.f64 (log1p.f64 (expm1.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))))))
31.9b
(cbrt.f64 (pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) 3))
Compiler

Compiled 1863 to 1178 computations (36.8% saved)

localize12.0ms (0.4%)

Local error

Found 3 expressions with local error:

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

series62.0ms (1.8%)

Counts
2 → 48
Calls

2 calls:

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

rewrite73.0ms (2.1%)

Algorithm
batch-egg-rewrite
Rules
796×fma-neg_binary64
709×prod-diff_binary64
183×expm1-udef_binary64
183×log1p-udef_binary64
101×add-sqr-sqrt_binary64
Counts
2 → 79
Calls

2 calls:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01028
122428
2296728
3532928
000
100

simplify66.0ms (1.9%)

Algorithm
egg-herbie
Rules
663×fma-neg_binary64
631×rules-21_binary64
611×rules-40_binary64
611×rules-41_binary64
611×rules-42_binary64
Counts
127 → 141
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03252861
124752845
249092845

prune177.0ms (5.1%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New2041205
Fresh145
Picked011
Done000
Total2056211
Error
0.3b
Counts
211 → 6
Alt Table
StatusErrorProgram
34.0b
(fabs.f64 (cbrt.f64 (pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) 3)))
40.4b
-1
44.5b
(-.f64 (+.f64 (/.f64 (*.f64 x x) (pow.f64 (-.f64 2 y) 2)) (+.f64 (/.f64 x (-.f64 2 y)) (/.f64 (pow.f64 x 3) (pow.f64 (-.f64 2 y) 3)))) (fma.f64 y (/.f64 (pow.f64 x 3) (pow.f64 (-.f64 2 y) 4)) (fma.f64 y (/.f64 x (pow.f64 (-.f64 2 y) 2)) (fma.f64 y (/.f64 (*.f64 x x) (pow.f64 (-.f64 2 y) 3)) (/.f64 y (-.f64 2 y))))))
30.4b
(fabs.f64 (log1p.f64 (expm1.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))))))
31.9b
(cbrt.f64 (pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) 3))
34.3b
(fabs.f64 (log1p.f64 (cbrt.f64 (pow.f64 (expm1.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))) 3))))
Compiler

Compiled 6570 to 4323 computations (34.2% saved)

localize7.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))
0.0b
(pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) 3)
6.6b
(cbrt.f64 (pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) 3))

series83.0ms (2.4%)

Counts
2 → 48
Calls

2 calls:

49.0ms
(pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) 3)
34.0ms
(cbrt.f64 (pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) 3))

rewrite71.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
676×prod-diff_binary64
193×expm1-udef_binary64
193×log1p-udef_binary64
109×log1p-expm1-u_binary64
109×expm1-log1p-u_binary64
Counts
2 → 90
Calls

2 calls:

68.0ms
(pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) 3)
68.0ms
(cbrt.f64 (pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) 3))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01129
125229
2316529
3497029
000
100

simplify60.0ms (1.7%)

Algorithm
egg-herbie
Rules
647×rules-21_binary64
642×fma-neg_binary64
629×rules-40_binary64
629×rules-41_binary64
629×rules-42_binary64
Counts
138 → 150
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02992520
124852514
250802514

prune194.0ms (5.6%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New2140214
Fresh044
Picked011
Done011
Total2146220
Error
0.3b
Counts
220 → 6
Alt Table
StatusErrorProgram
34.0b
(fabs.f64 (cbrt.f64 (pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) 3)))
40.4b
-1
44.5b
(-.f64 (+.f64 (/.f64 (*.f64 x x) (pow.f64 (-.f64 2 y) 2)) (+.f64 (/.f64 x (-.f64 2 y)) (/.f64 (pow.f64 x 3) (pow.f64 (-.f64 2 y) 3)))) (fma.f64 y (/.f64 (pow.f64 x 3) (pow.f64 (-.f64 2 y) 4)) (fma.f64 y (/.f64 x (pow.f64 (-.f64 2 y) 2)) (fma.f64 y (/.f64 (*.f64 x x) (pow.f64 (-.f64 2 y) 3)) (/.f64 y (-.f64 2 y))))))
30.4b
(fabs.f64 (log1p.f64 (expm1.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))))))
31.9b
(cbrt.f64 (pow.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y))) 3))
34.3b
(fabs.f64 (log1p.f64 (cbrt.f64 (pow.f64 (expm1.f64 (/.f64 (-.f64 x y) (-.f64 2 (+.f64 x y)))) 3))))
Compiler

Compiled 6904 to 4359 computations (36.9% saved)

regimes1.0s (29.8%)

Accuracy

Total 15.4b remaining (99.9%)

Threshold costs 0b (0%)

Counts
99 → 9
Compiler

Compiled 7092 to 4839 computations (31.8% saved)

bsearch119.0ms (3.4%)

Steps
ItersRangePoint
1
3.220276928142287e+240
3.406520001479297e+240
3.2577735983466184e+240
6
3.5778139012805087e+214
1.9010862347000516e+215
1.868197491650569e+215
6
2.1090771802375272e+127
1.780844484117474e+128
2.135141610076587e+127
4
4.817329476588653e+78
6.75576822236225e+78
6.6951920115568245e+78
9
4.630452609000262e-82
6.101993887875615e-76
5.992168364127104e-76
7
-3.9257441632624185e-277
-2.3862209229846128e-279
-3.8606393500957805e-277
7
-5.727214721047251e-245
-2.900458360948772e-246
-2.938866461636586e-246
9
-4.6268110145711325e-36
-2.4198674042994304e-43
-4.5557276941455826e-36
Compiler

Compiled 3 to 2 computations (33.3% saved)

simplify5.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
057266
157266

end178.0ms (5.1%)

Remove

(sort x y)

Compiler

Compiled 843 to 531 computations (37% saved)

Profiling

Loading profile data...