Details

Time bar (total: 7.8s)

analyze117.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
0%99.9%0.1%3
0%99.9%0.1%4
25%74.9%0.1%5
31.2%68.7%0.1%6
67.1%32.8%0.1%7
71%28.9%0.1%8
82.3%17.6%0.1%9
84.9%15%0.1%10
90.8%9.1%0.1%11
92.2%7.7%0.1%12
95.3%4.6%0.1%13
96%3.9%0.1%14
Compiler

Compiled 14 to 11 computations (21.4% saved)

sample1.3s (16%)

Results
672.0ms6507×body128valid
208.0ms631×body1024valid
174.0ms719×body512valid
67.0ms396×body256valid
1.0msbody2048valid
Compiler

Compiled 41 to 32 computations (22% saved)

simplify198.0ms (2.5%)

Algorithm
egg-herbie
Rules
1996×fma-def_binary64
1626×fma-neg_binary64
1098×div-sub_binary64
733×sub-neg_binary64
664×associate-/l*_binary64
Counts
1 → 2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0916
11916
24316
310214
427414
565214
6127214
7169714
8241614
9293314
10327814
11346114
12198014
13199614
14265914
15253914
16249714
17253114
18253114
19472314
20490314
21594214

prune4.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
10.0b
Counts
3 → 2
Alt Table
StatusErrorProgram
19.0b
(-.f64 1 (/.f64 (*.f64 (-.f64 1 x) y) (+.f64 y 1)))
10.2b
(fma.f64 y (/.f64 (+.f64 x -1) (+.f64 1 y)) 1)
Compiler

Compiled 73 to 55 computations (24.7% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (+.f64 x -1) (+.f64 1 y))
10.2b
(fma.f64 y (/.f64 (+.f64 x -1) (+.f64 1 y)) 1)

series22.0ms (0.3%)

Counts
2 → 48
Calls

2 calls:

13.0ms
(/.f64 (+.f64 x -1) (+.f64 1 y))
9.0ms
(fma.f64 y (/.f64 (+.f64 x -1) (+.f64 1 y)) 1)

rewrite8.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
35×*-un-lft-identity_binary64
20×times-frac_binary64
18×add-sqr-sqrt_binary64
13×add-cube-cbrt_binary64
11×distribute-lft-out_binary64
Counts
2 → 57
Calls

2 calls:

5.0ms
(/.f64 (+.f64 x -1) (+.f64 1 y))
0.0ms
(fma.f64 y (/.f64 (+.f64 x -1) (+.f64 1 y)) 1)

simplify77.0ms (1%)

Algorithm
egg-herbie
Rules
780×fma-neg_binary64
491×associate--l+_binary64
425×associate--r+_binary64
390×associate-+l+_binary64
315×fma-def_binary64
Counts
105 → 102
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01602086
14161897
212751850
347011850
454021850

prune82.0ms (1%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New984102
Fresh101
Picked011
Done000
Total995104
Error
0.1b
Counts
104 → 5
Alt Table
StatusErrorProgram
10.2b
(-.f64 (fma.f64 (/.f64 y (+.f64 1 y)) x 1) (/.f64 y (+.f64 1 y)))
36.5b
(-.f64 (+.f64 (+.f64 x (/.f64 x (*.f64 y y))) (/.f64 1 (pow.f64 y 3))) (+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (/.f64 1 (*.f64 y y)) (/.f64 (+.f64 x -1) y))))
23.2b
(*.f64 (sqrt.f64 (fma.f64 y (/.f64 (+.f64 x -1) (+.f64 1 y)) 1)) (sqrt.f64 (fma.f64 y (/.f64 (+.f64 x -1) (+.f64 1 y)) 1)))
10.8b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 y (/.f64 (+.f64 x -1) (+.f64 1 y)) 1)) (cbrt.f64 (fma.f64 y (/.f64 (+.f64 x -1) (+.f64 1 y)) 1))) (cbrt.f64 (fma.f64 y (/.f64 (+.f64 x -1) (+.f64 1 y)) 1)))
10.2b
(fma.f64 y (/.f64 (+.f64 x -1) (+.f64 1 y)) 1)
Compiler

Compiled 2024 to 1394 computations (31.1% saved)

localize6.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 (/.f64 y (+.f64 1 y)) x 1)
0.0b
(/.f64 y (+.f64 1 y))
2.3b
(-.f64 (fma.f64 (/.f64 y (+.f64 1 y)) x 1) (/.f64 y (+.f64 1 y)))

series24.0ms (0.3%)

Counts
3 → 60
Calls

3 calls:

11.0ms
(fma.f64 (/.f64 y (+.f64 1 y)) x 1)
10.0ms
(-.f64 (fma.f64 (/.f64 y (+.f64 1 y)) x 1) (/.f64 y (+.f64 1 y)))
2.0ms
(/.f64 y (+.f64 1 y))

rewrite27.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
97×*-un-lft-identity_binary64
68×add-sqr-sqrt_binary64
63×add-cube-cbrt_binary64
61×times-frac_binary64
54×prod-diff_binary64
Counts
3 → 137
Calls

3 calls:

8.0ms
(-.f64 (fma.f64 (/.f64 y (+.f64 1 y)) x 1) (/.f64 y (+.f64 1 y)))
3.0ms
(/.f64 y (+.f64 1 y))
0.0ms
(fma.f64 (/.f64 y (+.f64 1 y)) x 1)

simplify191.0ms (2.4%)

Algorithm
egg-herbie
Rules
640×fma-neg_binary64
469×times-frac_binary64
314×distribute-rgt-in_binary64
243×cancel-sign-sub-inv_binary64
197×sub-neg_binary64
Counts
197 → 203
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02825709
17323867
221283329
342373329
449973329
549853329
648063329

prune291.0ms (3.7%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New2532255
Fresh213
Picked101
Done011
Total2564260
Error
0.1b
Counts
260 → 4
Alt Table
StatusErrorProgram
36.5b
(-.f64 (+.f64 (+.f64 x (/.f64 x (*.f64 y y))) (/.f64 1 (pow.f64 y 3))) (+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (/.f64 1 (*.f64 y y)) (/.f64 (+.f64 x -1) y))))
17.9b
(+.f64 (fma.f64 1 (fma.f64 (/.f64 y (+.f64 1 y)) x 1) (neg.f64 (*.f64 (+.f64 (*.f64 1 1) (-.f64 (*.f64 y y) (*.f64 1 y))) (/.f64 y (+.f64 (pow.f64 1 3) (pow.f64 y 3)))))) (fma.f64 (neg.f64 (+.f64 (*.f64 1 1) (-.f64 (*.f64 y y) (*.f64 1 y)))) (/.f64 y (+.f64 (pow.f64 1 3) (pow.f64 y 3))) (*.f64 (+.f64 (*.f64 1 1) (-.f64 (*.f64 y y) (*.f64 1 y))) (/.f64 y (+.f64 (pow.f64 1 3) (pow.f64 y 3))))))
10.6b
(+.f64 (fma.f64 1 (fma.f64 (/.f64 y (+.f64 1 y)) x 1) (neg.f64 (*.f64 (-.f64 1 y) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y)))))) (fma.f64 (neg.f64 (-.f64 1 y)) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))) (*.f64 (-.f64 1 y) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))))))
10.2b
(fma.f64 y (/.f64 (+.f64 x -1) (+.f64 1 y)) 1)
Compiler

Compiled 7706 to 5099 computations (33.8% saved)

localize16.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (-.f64 1 y) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))))
2.8b
(fma.f64 1 (fma.f64 (/.f64 y (+.f64 1 y)) x 1) (neg.f64 (*.f64 (-.f64 1 y) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))))))
11.7b
(/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y)))
28.3b
(fma.f64 (neg.f64 (-.f64 1 y)) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))) (*.f64 (-.f64 1 y) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y)))))

series57.0ms (0.7%)

Counts
4 → 60
Calls

4 calls:

41.0ms
(fma.f64 1 (fma.f64 (/.f64 y (+.f64 1 y)) x 1) (neg.f64 (*.f64 (-.f64 1 y) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))))))
10.0ms
(fma.f64 (neg.f64 (-.f64 1 y)) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))) (*.f64 (-.f64 1 y) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y)))))
3.0ms
(/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y)))
2.0ms
(*.f64 (-.f64 1 y) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))))

rewrite26.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
30×add-sqr-sqrt_binary64
25×times-frac_binary64
25×*-un-lft-identity_binary64
22×add-cube-cbrt_binary64
18×associate-*r*_binary64
Counts
4 → 101
Calls

4 calls:

11.0ms
(*.f64 (-.f64 1 y) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))))
9.0ms
(/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y)))
0.0ms
(fma.f64 1 (fma.f64 (/.f64 y (+.f64 1 y)) x 1) (neg.f64 (*.f64 (-.f64 1 y) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))))))
0.0ms
(fma.f64 (neg.f64 (-.f64 1 y)) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))) (*.f64 (-.f64 1 y) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y)))))

simplify120.0ms (1.5%)

Algorithm
egg-herbie
Rules
608×fma-def_binary64
361×fma-neg_binary64
357×associate-/l*_binary64
341×distribute-rgt-in_binary64
287×times-frac_binary64
Counts
161 → 226
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02243307
15322909
219052525
346802525
448702525

prune833.0ms (10.6%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New4722474
Fresh112
Picked101
Done011
Total4744478
Error
0.0b
Counts
478 → 4
Alt Table
StatusErrorProgram
26.5b
(+.f64 (cbrt.f64 (pow.f64 (+.f64 (/.f64 (+.f64 y -1) (-.f64 (/.f64 1 y) y)) (fma.f64 x (/.f64 y (+.f64 y 1)) 1)) 3)) (fma.f64 (neg.f64 (-.f64 1 y)) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))) (*.f64 (-.f64 1 y) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))))))
36.5b
(-.f64 (+.f64 (+.f64 x (/.f64 x (*.f64 y y))) (/.f64 1 (pow.f64 y 3))) (+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (/.f64 1 (*.f64 y y)) (/.f64 (+.f64 x -1) y))))
10.2b
(fma.f64 y (/.f64 (+.f64 x -1) (+.f64 1 y)) 1)
38.5b
(+.f64 (-.f64 (+.f64 1 (/.f64 (pow.f64 y 2) (-.f64 1 (pow.f64 y 2)))) (/.f64 y (-.f64 1 (pow.f64 y 2)))) (fma.f64 (neg.f64 (-.f64 1 y)) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))) (*.f64 (-.f64 1 y) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))))))
Compiler

Compiled 27916 to 18218 computations (34.7% saved)

localize23.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
2.3b
(+.f64 (/.f64 (+.f64 y -1) (-.f64 (/.f64 1 y) y)) (fma.f64 x (/.f64 y (+.f64 y 1)) 1))
11.7b
(/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y)))
15.4b
(cbrt.f64 (pow.f64 (+.f64 (/.f64 (+.f64 y -1) (-.f64 (/.f64 1 y) y)) (fma.f64 x (/.f64 y (+.f64 y 1)) 1)) 3))
28.3b
(fma.f64 (neg.f64 (-.f64 1 y)) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))) (*.f64 (-.f64 1 y) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y)))))

series43.0ms (0.5%)

Counts
2 → 48
Calls

2 calls:

22.0ms
(+.f64 (/.f64 (+.f64 y -1) (-.f64 (/.f64 1 y) y)) (fma.f64 x (/.f64 y (+.f64 y 1)) 1))
21.0ms
(cbrt.f64 (pow.f64 (+.f64 (/.f64 (+.f64 y -1) (-.f64 (/.f64 1 y) y)) (fma.f64 x (/.f64 y (+.f64 y 1)) 1)) 3))

rewrite47.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
62×add-sqr-sqrt_binary64
61×*-un-lft-identity_binary64
50×times-frac_binary64
46×fma-def_binary64
19×add-cube-cbrt_binary64
Counts
2 → 88
Calls

2 calls:

18.0ms
(+.f64 (/.f64 (+.f64 y -1) (-.f64 (/.f64 1 y) y)) (fma.f64 x (/.f64 y (+.f64 y 1)) 1))
18.0ms
(cbrt.f64 (pow.f64 (+.f64 (/.f64 (+.f64 y -1) (-.f64 (/.f64 1 y) y)) (fma.f64 x (/.f64 y (+.f64 y 1)) 1)) 3))

simplify118.0ms (1.5%)

Algorithm
egg-herbie
Rules
381×associate-*l*_binary64
326×distribute-rgt-in_binary64
311×associate-*r*_binary64
309×fma-neg_binary64
300×distribute-lft-in_binary64
Counts
136 → 96
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01153046
12972829
29732819
343322813
449782813
549632813

prune447.0ms (5.7%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New2692271
Fresh112
Picked101
Done011
Total2714275
Error
0.0b
Counts
275 → 4
Alt Table
StatusErrorProgram
60.7b
(+.f64 (cbrt.f64 (pow.f64 (fma.f64 (/.f64 (sqrt.f64 (+.f64 y -1)) (+.f64 (sqrt.f64 (/.f64 1 y)) (sqrt.f64 y))) (/.f64 (sqrt.f64 (+.f64 y -1)) (-.f64 (sqrt.f64 (/.f64 1 y)) (sqrt.f64 y))) (fma.f64 x (/.f64 y (+.f64 y 1)) 1)) 3)) (fma.f64 (neg.f64 (-.f64 1 y)) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))) (*.f64 (-.f64 1 y) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))))))
36.5b
(-.f64 (+.f64 (+.f64 x (/.f64 x (*.f64 y y))) (/.f64 1 (pow.f64 y 3))) (+.f64 (/.f64 x (pow.f64 y 3)) (+.f64 (/.f64 1 (*.f64 y y)) (/.f64 (+.f64 x -1) y))))
10.2b
(fma.f64 y (/.f64 (+.f64 x -1) (+.f64 1 y)) 1)
30.8b
(+.f64 (cbrt.f64 (pow.f64 (+.f64 (/.f64 (+.f64 y -1) (-.f64 (/.f64 1 y) y)) (fma.f64 x (/.f64 y (+.f64 y 1)) 1)) 3)) (fma.f64 (neg.f64 (-.f64 1 y)) (*.f64 (/.f64 y (-.f64 (pow.f64 (*.f64 1 1) 3) (pow.f64 (*.f64 y y) 3))) (+.f64 (*.f64 (*.f64 1 1) (*.f64 1 1)) (+.f64 (*.f64 (*.f64 y y) (*.f64 y y)) (*.f64 (*.f64 1 1) (*.f64 y y))))) (*.f64 (-.f64 1 y) (/.f64 y (-.f64 (*.f64 1 1) (*.f64 y y))))))
Compiler

Compiled 15674 to 10517 computations (32.9% saved)

regimes3.6s (45.8%)

Accuracy

Total 0.1b remaining (81.2%)

Threshold costs 0.1b (81.2%)

Counts
366 → 3
Compiler

Compiled 73182 to 51758 computations (29.3% saved)

bsearch20.0ms (0.3%)

Compiler

Compiled 11 to 8 computations (27.3% saved)

simplify20.0ms (0.3%)

Algorithm
egg-herbie
Rules
63×cancel-sign-sub-inv_binary64
55×distribute-rgt-neg-in_binary64
37×distribute-lft-neg-in_binary64
37×neg-sub0_binary64
37×neg-mul-1_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
048209
182209
2111205
3138205
4173205
5215205
6256205
7289205
8317205
9344205
10358205
11368205
12375205
13377205
14372205

end159.0ms (2%)

Compiler

Compiled 472 to 310 computations (34.3% saved)

Profiling

Loading profile data...