Details

Time bar (total: 4.1s)

analyze110.0ms (2.7%)

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

Results
672.0ms6484×body128valid
208.0ms627×body1024valid
174.0ms699×body512valid
75.0ms438×body256valid
4.0msbody2048valid
Compiler

Compiled 28 to 22 computations (21.4% saved)

preprocess41.0ms (1%)

Algorithm
egg-herbie
Rules
1040×fma-neg_binary64
720×times-frac_binary64
361×associate-/l*_binary64
246×div-sub_binary64
203×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01432
13232
27932
320328
464828
5198128
6467228
022
Stop Event
saturated
node limit
Compiler

Compiled 13 to 10 computations (23.1% saved)

simplify28.0ms (0.7%)

Algorithm
egg-herbie
Rules
777×fma-def_binary64
611×fma-neg_binary64
471×div-sub_binary64
314×distribute-rgt-in_binary64
295×distribute-lft-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0916
11916
24316
311114
432614
589314
6237814
7363814
Stop Event
node limit
Counts
1 → 2

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 47 to 35 computations (25.5% saved)

localize6.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

series12.0ms (0.3%)

Counts
2 → 36
Calls

9 calls:

3.0ms
(fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)
x
-inf
2.0ms
(fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)
x
inf
2.0ms
(fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)
x
0
1.0ms
(fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)
y
-inf
1.0ms
(fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)
y
0

rewrite47.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
443×log-prod_binary64
234×prod-diff_binary64
173×expm1-udef_binary64
172×log1p-udef_binary64
150×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
119521
2260021
Stop Event
node limit
Counts
2 → 64

simplify34.0ms (0.8%)

Algorithm
egg-herbie
Rules
547×associate-+l-_binary64
449×cancel-sign-sub-inv_binary64
416×fma-neg_binary64
397×sub-neg_binary64
385×associate--r+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
059624
1177613
2555587
32124547
Stop Event
node limit
Counts
100 → 98

prune68.0ms (1.6%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New95398
Fresh000
Picked011
Done000
Total95499
Error
0.0b
Counts
99 → 4
Alt Table
StatusErrorProgram
33.8b
(*.f64 (/.f64 x (+.f64 1 y)) y)
15.1b
(*.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)) 2))
31.3b
(-.f64 (+.f64 (/.f64 1 y) (+.f64 (/.f64 1 (pow.f64 y 3)) (+.f64 (/.f64 x (pow.f64 y 2)) x))) (+.f64 (/.f64 x y) (+.f64 (/.f64 x (pow.f64 y 3)) (/.f64 1 (pow.f64 y 2)))))
14.6b
(fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)
Compiler

Compiled 1668 to 1199 computations (28.1% saved)

localize9.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

series88.0ms (2.1%)

Counts
3 → 56
Calls

18 calls:

14.0ms
(pow.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)) 2)
y
-inf
12.0ms
(pow.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)) 2)
y
inf
11.0ms
(cbrt.f64 (fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1))
y
inf
9.0ms
(cbrt.f64 (fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1))
y
-inf
8.0ms
(pow.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)) 2)
x
0

rewrite59.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
234×prod-diff_binary64
209×expm1-udef_binary64
208×log1p-udef_binary64
177×log-pow_binary64
168×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01349
127749
2321249
Stop Event
node limit
Counts
3 → 71

simplify84.0ms (2%)

Algorithm
egg-herbie
Rules
486×fma-def_binary64
294×associate-+r+_binary64
265×+-commutative_binary64
248×associate-*r*_binary64
235×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03123986
111203659
247183651
Stop Event
node limit
Counts
127 → 135

prune284.0ms (6.9%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New2701271
Fresh022
Picked101
Done011
Total2714275
Error
0.0b
Counts
275 → 4
Alt Table
StatusErrorProgram
33.8b
(*.f64 (/.f64 x (+.f64 1 y)) y)
39.6b
(*.f64 (cbrt.f64 (log.f64 (exp.f64 (fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)))) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)) 2))
31.3b
(-.f64 (+.f64 (/.f64 1 y) (+.f64 (/.f64 1 (pow.f64 y 3)) (+.f64 (/.f64 x (pow.f64 y 2)) x))) (+.f64 (/.f64 x y) (+.f64 (/.f64 x (pow.f64 y 3)) (/.f64 1 (pow.f64 y 2)))))
14.6b
(fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)
Compiler

Compiled 11224 to 8471 computations (24.5% saved)

localize15.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
5.3b
(+.f64 (/.f64 1 (pow.f64 y 3)) (+.f64 (/.f64 x (pow.f64 y 2)) x))
6.1b
(+.f64 (/.f64 x (pow.f64 y 3)) (/.f64 1 (pow.f64 y 2)))
6.9b
(/.f64 x (pow.f64 y 2))
9.6b
(-.f64 (+.f64 (/.f64 1 y) (+.f64 (/.f64 1 (pow.f64 y 3)) (+.f64 (/.f64 x (pow.f64 y 2)) x))) (+.f64 (/.f64 x y) (+.f64 (/.f64 x (pow.f64 y 3)) (/.f64 1 (pow.f64 y 2)))))

series140.0ms (3.4%)

Counts
4 → 43
Calls

24 calls:

22.0ms
(-.f64 (+.f64 (/.f64 1 y) (+.f64 (/.f64 1 (pow.f64 y 3)) (+.f64 (/.f64 x (pow.f64 y 2)) x))) (+.f64 (/.f64 x y) (+.f64 (/.f64 x (pow.f64 y 3)) (/.f64 1 (pow.f64 y 2)))))
x
0
18.0ms
(-.f64 (+.f64 (/.f64 1 y) (+.f64 (/.f64 1 (pow.f64 y 3)) (+.f64 (/.f64 x (pow.f64 y 2)) x))) (+.f64 (/.f64 x y) (+.f64 (/.f64 x (pow.f64 y 3)) (/.f64 1 (pow.f64 y 2)))))
x
inf
16.0ms
(-.f64 (+.f64 (/.f64 1 y) (+.f64 (/.f64 1 (pow.f64 y 3)) (+.f64 (/.f64 x (pow.f64 y 2)) x))) (+.f64 (/.f64 x y) (+.f64 (/.f64 x (pow.f64 y 3)) (/.f64 1 (pow.f64 y 2)))))
x
-inf
14.0ms
(+.f64 (/.f64 x (pow.f64 y 3)) (/.f64 1 (pow.f64 y 2)))
x
-inf
9.0ms
(/.f64 x (pow.f64 y 2))
x
0

rewrite46.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
246×log1p-expm1-u_binary64
246×expm1-log1p-u_binary64
240×add-cbrt-cube_binary64
226×add-cube-cbrt_binary64
226×add-log-exp_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02079
150971
Stop Event
node limit
Counts
4 → 97

simplify36.0ms (0.9%)

Algorithm
egg-herbie
Rules
579×associate--l+_binary64
527×associate-+l-_binary64
485×fma-def_binary64
332×+-commutative_binary64
293×sub-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
041859
1125859
2418793
31560703
Stop Event
node limit
Counts
140 → 125

prune132.0ms (3.2%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New1241125
Fresh022
Picked011
Done011
Total1245129
Error
0.0b
Counts
129 → 5
Alt Table
StatusErrorProgram
33.8b
(*.f64 (/.f64 x (+.f64 1 y)) y)
39.6b
(*.f64 (cbrt.f64 (log.f64 (exp.f64 (fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)))) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)) 2))
31.8b
(-.f64 (+.f64 (/.f64 1 y) (fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (pow.f64 y -2) x)) 2) (cbrt.f64 (fma.f64 x (pow.f64 y -2) x)) (pow.f64 y -3))) (+.f64 (/.f64 x y) (+.f64 (/.f64 x (pow.f64 y 3)) (/.f64 1 (pow.f64 y 2)))))
31.3b
(-.f64 (+.f64 (/.f64 1 y) (+.f64 (/.f64 1 (pow.f64 y 3)) (+.f64 (/.f64 x (pow.f64 y 2)) x))) (+.f64 (/.f64 x y) (+.f64 (/.f64 x (pow.f64 y 3)) (/.f64 1 (pow.f64 y 2)))))
14.6b
(fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)
Compiler

Compiled 4704 to 3073 computations (34.7% saved)

localize23.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
3.8b
(fma.f64 x (pow.f64 y -2) x)
6.1b
(+.f64 (/.f64 x (pow.f64 y 3)) (/.f64 1 (pow.f64 y 2)))
9.6b
(-.f64 (+.f64 (/.f64 1 y) (fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (pow.f64 y -2) x)) 2) (cbrt.f64 (fma.f64 x (pow.f64 y -2) x)) (pow.f64 y -3))) (+.f64 (/.f64 x y) (+.f64 (/.f64 x (pow.f64 y 3)) (/.f64 1 (pow.f64 y 2)))))
16.3b
(cbrt.f64 (fma.f64 x (pow.f64 y -2) x))

series60.0ms (1.5%)

Counts
3 → 49
Calls

18 calls:

7.0ms
(-.f64 (+.f64 (/.f64 1 y) (fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (pow.f64 y -2) x)) 2) (cbrt.f64 (fma.f64 x (pow.f64 y -2) x)) (pow.f64 y -3))) (+.f64 (/.f64 x y) (+.f64 (/.f64 x (pow.f64 y 3)) (/.f64 1 (pow.f64 y 2)))))
x
inf
7.0ms
(-.f64 (+.f64 (/.f64 1 y) (fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (pow.f64 y -2) x)) 2) (cbrt.f64 (fma.f64 x (pow.f64 y -2) x)) (pow.f64 y -3))) (+.f64 (/.f64 x y) (+.f64 (/.f64 x (pow.f64 y 3)) (/.f64 1 (pow.f64 y 2)))))
x
0
7.0ms
(cbrt.f64 (fma.f64 x (pow.f64 y -2) x))
y
inf
6.0ms
(-.f64 (+.f64 (/.f64 1 y) (fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (pow.f64 y -2) x)) 2) (cbrt.f64 (fma.f64 x (pow.f64 y -2) x)) (pow.f64 y -3))) (+.f64 (/.f64 x y) (+.f64 (/.f64 x (pow.f64 y 3)) (/.f64 1 (pow.f64 y 2)))))
x
-inf
4.0ms
(cbrt.f64 (fma.f64 x (pow.f64 y -2) x))
y
-inf

rewrite52.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
253×log1p-expm1-u_binary64
253×expm1-log1p-u_binary64
244×add-cbrt-cube_binary64
234×add-cube-cbrt_binary64
232×add-log-exp_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02459
155357
Stop Event
node limit
Counts
3 → 65

simplify38.0ms (0.9%)

Algorithm
egg-herbie
Rules
550×associate-/l*_binary64
351×cancel-sign-sub-inv_binary64
260×fma-neg_binary64
252×sub-neg_binary64
150×associate--l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
060927
1176845
2561744
32437720
Stop Event
node limit
Counts
114 → 95

prune191.0ms (4.6%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New1720172
Fresh022
Picked011
Done022
Total1725177
Error
0.0b
Counts
177 → 5
Alt Table
StatusErrorProgram
33.8b
(*.f64 (/.f64 x (+.f64 1 y)) y)
39.6b
(*.f64 (cbrt.f64 (log.f64 (exp.f64 (fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)))) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)) 2))
31.8b
(-.f64 (+.f64 (/.f64 1 y) (fma.f64 (pow.f64 (cbrt.f64 (fma.f64 x (pow.f64 y -2) x)) 2) (cbrt.f64 (fma.f64 x (pow.f64 y -2) x)) (pow.f64 y -3))) (+.f64 (/.f64 x y) (+.f64 (/.f64 x (pow.f64 y 3)) (/.f64 1 (pow.f64 y 2)))))
31.3b
(-.f64 (+.f64 (/.f64 1 y) (+.f64 (/.f64 1 (pow.f64 y 3)) (+.f64 (/.f64 x (pow.f64 y 2)) x))) (+.f64 (/.f64 x y) (+.f64 (/.f64 x (pow.f64 y 3)) (/.f64 1 (pow.f64 y 2)))))
14.6b
(fma.f64 (-.f64 1 x) (/.f64 y (-.f64 -1 y)) 1)
Compiler

Compiled 7371 to 4839 computations (34.4% saved)

regimes1.2s (29.5%)

Accuracy

Total 0.1b remaining (68.6%)

Threshold costs 0.1b (68.6%)

Counts
112 → 3
Compiler

Compiled 15900 to 11164 computations (29.8% saved)

bsearch5.0ms (0.1%)

Algorithm
left-value
Calls

2 calls:

0.0ms
(/.f64 (*.f64 (-.f64 1 x) y) (+.f64 y 1))
0.0ms
(/.f64 (*.f64 (-.f64 1 x) y) (+.f64 y 1))
Steps
ItersPointRange
1.0000021235299896
∈ [
1.0000021235299896
,
1.0000725393650813
]
0.46900552544123797
∈ [
0.46900552544123797
,
0.952053924801016
]
Compiler

Compiled 11 to 8 computations (27.3% saved)

simplify5.0ms (0.1%)

Algorithm
egg-herbie
Rules
11×+-commutative_binary64
sub-neg_binary64
*-commutative_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
032106
148106
263106
373106
477106
Stop Event
saturated

end130.0ms (3.2%)

Stop Event
fuel
Compiler

Compiled 277 to 198 computations (28.5% saved)

Profiling

Loading profile data...