Details

Time bar (total: 9.2s)

analyze76.0ms (0.8%)

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%74.9%25.1%4
12.5%62.4%25.1%5
25%37.5%37.6%6
31.2%31.2%37.6%7
37.5%18.7%43.8%8
39%15.6%45.4%9
42.1%9.4%48.5%10
42.9%7.8%49.3%11
44.5%4.7%50.8%12
44.9%3.9%51.2%13
45.7%2.3%52%14
Compiler

Compiled 11 to 8 computations (27.3% saved)

sample2.2s (24.3%)

Results
2.2s8254×body128valid
19.0ms222×body128invalid
0.0msbody1024valid
0.0msbody512valid
Compiler

Compiled 32 to 23 computations (28.1% saved)

simplify17.0ms (0.2%)

Algorithm
egg-herbie
Rules
151×fma-def_binary64
131×fma-neg_binary64
45×cancel-sign-sub-inv_binary64
38×sub-neg_binary64
31×unsub-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0812
11610
23710
36310
412710
523310
632410
736110
840010
941410
1038310

prune5.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.1b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.1b
(fma.f64 y (sqrt.f64 x) (-.f64 1 x))
Compiler

Compiled 35 to 22 computations (37.1% saved)

localize5.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 y (sqrt.f64 x) (-.f64 1 x))

series6.0ms (0.1%)

Counts
1 → 15
Calls

1 calls:

6.0ms
(fma.f64 y (sqrt.f64 x) (-.f64 1 x))

rewrite104.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
649×log1p-expm1-u_binary64
649×expm1-log1p-u_binary64
230×prod-diff_binary64
177×fma-udef_binary64
125×fma-def_binary64
Counts
1 → 26
Calls

1 calls:

103.0ms
(fma.f64 y (sqrt.f64 x) (-.f64 1 x))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
114210
2163910
3489110
4495410
5493210
000
100

simplify26.0ms (0.3%)

Algorithm
egg-herbie
Rules
189×fma-def_binary64
157×fma-neg_binary64
52×cancel-sign-sub-inv_binary64
34×associate--r+_binary64
34×distribute-rgt-in_binary64
Counts
41 → 33
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
013113
123113
234113
352113
480113
5130113
6223113
7300113
8353113
9394113
10408113
11414113
12383113

prune26.0ms (0.3%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New28533
Fresh000
Picked011
Done000
Total28634
Error
0.1b
Counts
34 → 6
Alt Table
StatusErrorProgram
29.6b
(/.f64 (+.f64 (pow.f64 (*.f64 y (sqrt.f64 x)) 3) (pow.f64 (-.f64 1 x) 3)) (fma.f64 (*.f64 y (sqrt.f64 x)) (*.f64 y (sqrt.f64 x)) (-.f64 (pow.f64 (-.f64 1 x) 2) (*.f64 (*.f64 y (sqrt.f64 x)) (-.f64 1 x)))))
1.0b
(*.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) (pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2))
0.1b
(fma.f64 y (sqrt.f64 x) (-.f64 1 x))
29.7b
(cbrt.f64 (pow.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)) 3))
37.3b
(pow.f64 (sqrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2)
0.9b
(pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 3)
Compiler

Compiled 540 to 311 computations (42.4% saved)

localize11.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 y (sqrt.f64 x) (-.f64 1 x))
0.3b
(cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))
0.5b
(pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 3)

series4.6s (49.7%)

Counts
2 → 30
Calls

2 calls:

4.5s
(pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 3)
47.0ms
(cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))

rewrite49.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
806×log1p-expm1-u_binary64
806×expm1-log1p-u_binary64
230×prod-diff_binary64
88×add-sqr-sqrt_binary64
84×add-cbrt-cube_binary64
Counts
2 → 52
Calls

2 calls:

48.0ms
(cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))
48.0ms
(pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 3)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01022
118922
2205922
3527722
000
100

simplify90.0ms (1%)

Algorithm
egg-herbie
Rules
861×fma-def_binary64
286×times-frac_binary64
262×cancel-sign-sub-inv_binary64
261×associate-/r*_binary64
258×associate-/l*_binary64
Counts
82 → 95
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01561998
15161706
217141501
348631499
449961403
549661403

prune119.0ms (1.3%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New1244128
Fresh044
Picked101
Done011
Total1259134
Error
0.0b
Counts
134 → 9
Alt Table
StatusErrorProgram
40.1b
(pow.f64 (*.f64 (cbrt.f64 (sqrt.f64 x)) (cbrt.f64 y)) 3)
29.7b
(cbrt.f64 (pow.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)) 3))
29.6b
(/.f64 (+.f64 (pow.f64 (*.f64 y (sqrt.f64 x)) 3) (pow.f64 (-.f64 1 x) 3)) (fma.f64 (*.f64 y (sqrt.f64 x)) (*.f64 y (sqrt.f64 x)) (-.f64 (pow.f64 (-.f64 1 x) 2) (*.f64 (*.f64 y (sqrt.f64 x)) (-.f64 1 x)))))
1.0b
(*.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) (pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2))
0.1b
(fma.f64 y (sqrt.f64 x) (-.f64 1 x))
1.8b
(pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) 2)) 3)
1.2b
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))))
1.6b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) 2) 3) (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))))
37.3b
(pow.f64 (sqrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2)
Compiler

Compiled 3459 to 2197 computations (36.5% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 y (sqrt.f64 x) (-.f64 1 x))
0.2b
(*.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) (pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2))
0.3b
(cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))
0.4b
(pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2)

series89.0ms (1%)

Counts
2 → 30
Calls

2 calls:

83.0ms
(pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2)
7.0ms
(*.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) (pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2))

rewrite50.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
829×log1p-expm1-u_binary64
829×expm1-log1p-u_binary64
230×prod-diff_binary64
95×add-sqr-sqrt_binary64
90×add-cbrt-cube_binary64
Counts
2 → 40
Calls

2 calls:

49.0ms
(*.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) (pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2))
49.0ms
(pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01125
120525
2212825
3543225
000
100

simplify69.0ms (0.7%)

Algorithm
egg-herbie
Rules
812×fma-def_binary64
398×times-frac_binary64
319×associate-/l*_binary64
293×associate-/r*_binary64
267×cancel-sign-sub-inv_binary64
Counts
70 → 75
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01501618
14751507
216601249
347791249
449681249

prune306.0ms (3.3%)

Pruning

11 alts after pruning (9 fresh and 2 done)

PrunedKeptTotal
New2412243
Fresh077
Picked011
Done011
Total24111252
Error
0.0b
Counts
252 → 11
Alt Table
StatusErrorProgram
40.1b
(pow.f64 (*.f64 (cbrt.f64 (sqrt.f64 x)) (cbrt.f64 y)) 3)
29.7b
(cbrt.f64 (pow.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)) 3))
29.6b
(/.f64 (+.f64 (pow.f64 (*.f64 y (sqrt.f64 x)) 3) (pow.f64 (-.f64 1 x) 3)) (fma.f64 (*.f64 y (sqrt.f64 x)) (*.f64 y (sqrt.f64 x)) (-.f64 (pow.f64 (-.f64 1 x) 2) (*.f64 (*.f64 y (sqrt.f64 x)) (-.f64 1 x)))))
1.0b
(*.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) (pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2))
0.1b
(fma.f64 y (sqrt.f64 x) (-.f64 1 x))
40.1b
(*.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) (pow.f64 (fma.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 (sqrt.f64 x)) (cbrt.f64 y)) y) (-.f64 (sqrt.f64 (/.f64 1 x)) (sqrt.f64 x))) (*.f64 (cbrt.f64 (sqrt.f64 x)) (cbrt.f64 y))) 2))
1.8b
(pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) 2)) 3)
1.2b
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))))
1.6b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) 2) 3) (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))))
1.2b
(*.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) (*.f64 (*.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))))))
37.3b
(pow.f64 (sqrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2)
Compiler

Compiled 9471 to 5908 computations (37.6% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))
0.4b
(pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) 2)
0.4b
(pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2)
0.4b
(cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))))

series134.0ms (1.5%)

Counts
2 → 30
Calls

2 calls:

89.0ms
(pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) 2)
45.0ms
(cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))))

rewrite60.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
879×log1p-expm1-u_binary64
879×expm1-log1p-u_binary64
230×prod-diff_binary64
101×add-sqr-sqrt_binary64
96×add-cbrt-cube_binary64
Counts
2 → 44
Calls

2 calls:

59.0ms
(pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) 2)
59.0ms
(cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01131
121831
2227131
3575431
000
100

simplify106.0ms (1.1%)

Algorithm
egg-herbie
Rules
662×times-frac_binary64
511×cancel-sign-sub-inv_binary64
324×fma-neg_binary64
274×fma-def_binary64
222×sub-neg_binary64
Counts
74 → 99
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02553184
18283086
229333074
349923074
450683074

prune525.0ms (5.7%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New3503353
Fresh358
Picked101
Done022
Total35410364
Error
0.0b
Counts
364 → 10
Alt Table
StatusErrorProgram
38.2b
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) 2)) (cbrt.f64 (fma.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 (sqrt.f64 x)) (cbrt.f64 y)) y) (-.f64 (sqrt.f64 (/.f64 1 x)) (sqrt.f64 x))) (*.f64 (cbrt.f64 (sqrt.f64 x)) (cbrt.f64 y)))))
40.1b
(*.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) (pow.f64 (fma.f64 1/3 (*.f64 (/.f64 (*.f64 (cbrt.f64 (sqrt.f64 x)) (cbrt.f64 y)) y) (-.f64 (sqrt.f64 (/.f64 1 x)) (sqrt.f64 x))) (*.f64 (cbrt.f64 (sqrt.f64 x)) (cbrt.f64 y))) 2))
1.4b
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))))) 3))
1.6b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) 2) 3) (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))))
1.0b
(*.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) (pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2))
0.1b
(fma.f64 y (sqrt.f64 x) (-.f64 1 x))
1.0b
(*.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2) (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) 2))) (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))))
1.8b
(pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) 2)) 3)
1.2b
(*.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) (*.f64 (*.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x)))) 2)) (cbrt.f64 (cbrt.f64 (fma.f64 y (sqrt.f64 x) (-.f64 1 x))))))
40.1b
(pow.f64 (*.f64 (cbrt.f64 (sqrt.f64 x)) (cbrt.f64 y)) 3)
Compiler

Compiled 22611 to 14650 computations (35.2% saved)

regimes272.0ms (2.9%)

Accuracy

Total 0.0b remaining (54.2%)

Threshold costs 0.0b (54.2%)

Counts
66 → 1
Compiler

Compiled 6323 to 4111 computations (35% saved)

simplify2.0ms (0%)

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
0710
11110
21510
31710
41810
51710

end231.0ms (2.5%)

Compiler

Compiled 306 to 201 computations (34.3% saved)

Profiling

Loading profile data...