Details

Time bar (total: 3.3s)

analyze122.0ms (3.7%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%50%50%2
0%50%50%3
0%50%50%4
0%50%50%5
6.2%31.2%62.5%6
9.4%28.1%62.5%7
14%17.2%68.8%8
14.8%16.4%68.8%9
17.6%9.8%72.7%10
18.1%8.8%73.1%11
19.6%5.2%75.2%12
20%4.5%75.5%13
20.7%2.7%76.6%14
Compiler

Compiled 23 to 20 computations (13% saved)

sample1.2s (36.1%)

Results
1.1s8256×body128valid
67.0ms541×body128invalid
Compiler

Compiled 46 to 40 computations (13% saved)

preprocess41.0ms (1.3%)

Algorithm
egg-herbie
Rules
692×fma-def_binary64
438×fma-neg_binary64
227×sub-neg_binary64
210×distribute-rgt-neg-in_binary64
204×unsub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02248
15242
214138
339538
4100538
5189838
6287338
7419738
022
Stop Event
saturated
node limit
Compiler

Compiled 22 to 19 computations (13.6% saved)

simplify66.0ms (2%)

Algorithm
egg-herbie
Rules
1035×fma-def_binary64
742×fma-neg_binary64
189×distribute-rgt-in_binary64
177×cancel-sign-sub-inv_binary64
156×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01524
13221
28219
319919
451019
596919
6147019
7242119
8362619
9407319
10423119
11427219
12427519
13482819
14482819
Stop Event
saturated
Counts
1 → 2

prune4.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.3b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.3b
(*.f64 (-.f64 a (/.f64 1 3)) (+.f64 1 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 9 (-.f64 a (/.f64 1 3))))) rand)))
0.3b
(*.f64 (-.f64 a 1/3) (+.f64 1 (/.f64 rand (sqrt.f64 (fma.f64 a 9 -3)))))
Compiler

Compiled 109 to 91 computations (16.5% saved)

localize8.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 a 9 -3)
0.1b
(*.f64 (-.f64 a 1/3) (+.f64 1 (/.f64 rand (sqrt.f64 (fma.f64 a 9 -3)))))
0.2b
(/.f64 rand (sqrt.f64 (fma.f64 a 9 -3)))
0.4b
(sqrt.f64 (fma.f64 a 9 -3))

series58.0ms (1.8%)

Counts
4 → 50
Calls

18 calls:

6.0ms
(/.f64 rand (sqrt.f64 (fma.f64 a 9 -3)))
rand
-inf
6.0ms
(/.f64 rand (sqrt.f64 (fma.f64 a 9 -3)))
a
-inf
5.0ms
(*.f64 (-.f64 a 1/3) (+.f64 1 (/.f64 rand (sqrt.f64 (fma.f64 a 9 -3)))))
rand
inf
4.0ms
(/.f64 rand (sqrt.f64 (fma.f64 a 9 -3)))
rand
0
4.0ms
(/.f64 rand (sqrt.f64 (fma.f64 a 9 -3)))
rand
inf

rewrite65.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
492×prod-diff_binary64
237×log1p-udef_binary64
135×add-sqr-sqrt_binary64
132×log1p-expm1-u_binary64
132×expm1-log1p-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01341
128840
2370640
Stop Event
node limit
Counts
4 → 127

simplify32.0ms (1%)

Algorithm
egg-herbie
Rules
374×fma-def_binary64
347×associate-+l+_binary64
282×associate-/l*_binary64
276×times-frac_binary64
231×associate-+r+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01001065
13211019
21143867
Stop Event
node limit
Counts
177 → 164

prune176.0ms (5.3%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1595164
Fresh101
Picked011
Done000
Total1606166
Error
0.2b
Counts
166 → 6
Alt Table
StatusErrorProgram
2.7b
(*.f64 (-.f64 a 1/3) (+.f64 1 (/.f64 rand (cbrt.f64 (pow.f64 (fma.f64 a 9 -3) 3/2)))))
0.6b
(*.f64 (-.f64 a 1/3) (+.f64 1 (/.f64 rand (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 a 9 -3))) 3))))
0.3b
(*.f64 (-.f64 a 1/3) (+.f64 1 (/.f64 rand (sqrt.f64 (fma.f64 a 9 -3)))))
0.3b
(*.f64 (-.f64 a 1/3) (+.f64 1 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 a 9 -3)) rand) -1)))
0.4b
(*.f64 (-.f64 a 1/3) (+.f64 1 (*.f64 (/.f64 1 (pow.f64 (fma.f64 a 9 -3) 1/4)) (/.f64 rand (pow.f64 (fma.f64 a 9 -3) 1/4)))))
0.3b
(-.f64 (*.f64 rand (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 a 9 -3))) (+.f64 a -1/3))) (-.f64 1/3 a))
Compiler

Compiled 3611 to 2821 computations (21.9% saved)

localize10.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (/.f64 1 (fma.f64 a 9 -3)))
0.2b
(*.f64 rand (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 a 9 -3))) (+.f64 a -1/3)))
0.3b
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 a 9 -3))) (+.f64 a -1/3))
0.5b
(/.f64 1 (fma.f64 a 9 -3))

series45.0ms (1.4%)

Counts
4 → 36
Calls

15 calls:

6.0ms
(*.f64 rand (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 a 9 -3))) (+.f64 a -1/3)))
rand
0
5.0ms
(*.f64 rand (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 a 9 -3))) (+.f64 a -1/3)))
rand
-inf
4.0ms
(*.f64 rand (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 a 9 -3))) (+.f64 a -1/3)))
rand
inf
4.0ms
(*.f64 rand (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 a 9 -3))) (+.f64 a -1/3)))
a
-inf
4.0ms
(*.f64 rand (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 a 9 -3))) (+.f64 a -1/3)))
a
inf

rewrite59.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
227×expm1-udef_binary64
227×log1p-udef_binary64
209×prod-diff_binary64
194×log-pow_binary64
156×fma-def_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01353
128045
2341745
Stop Event
node limit
Counts
4 → 140

simplify30.0ms (0.9%)

Algorithm
egg-herbie
Rules
563×fma-def_binary64
457×times-frac_binary64
358×associate-+l+_binary64
317×associate-/l*_binary64
179×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0125861
1380818
21291769
Stop Event
node limit
Counts
176 → 178

prune181.0ms (5.5%)

Pruning

5 alts after pruning (3 fresh and 2 done)

PrunedKeptTotal
New1771178
Fresh224
Picked011
Done011
Total1795184
Error
0b
Counts
184 → 5
Alt Table
StatusErrorProgram
2.7b
(*.f64 (-.f64 a 1/3) (+.f64 1 (/.f64 rand (cbrt.f64 (pow.f64 (fma.f64 a 9 -3) 3/2)))))
0.3b
(*.f64 (-.f64 a 1/3) (+.f64 1 (/.f64 rand (sqrt.f64 (fma.f64 a 9 -3)))))
0.3b
(*.f64 (-.f64 a 1/3) (+.f64 1 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 a 9 -3)) rand) -1)))
0.8b
(-.f64 (*.f64 rand (*.f64 (sqrt.f64 (/.f64 1/9 a)) (+.f64 a -1/3))) (-.f64 1/3 a))
0.3b
(-.f64 (*.f64 rand (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 a 9 -3))) (+.f64 a -1/3))) (-.f64 1/3 a))
Compiler

Compiled 4375 to 3412 computations (22% saved)

localize9.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (-.f64 a 1/3) (+.f64 1 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 a 9 -3)) rand) -1)))
0.2b
(/.f64 (sqrt.f64 (fma.f64 a 9 -3)) rand)
0.4b
(sqrt.f64 (fma.f64 a 9 -3))
0.8b
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 a 9 -3)) rand) -1)

series81.0ms (2.5%)

Counts
3 → 48
Calls

18 calls:

7.0ms
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 a 9 -3)) rand) -1)
rand
inf
6.0ms
(*.f64 (-.f64 a 1/3) (+.f64 1 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 a 9 -3)) rand) -1)))
a
-inf
6.0ms
(/.f64 (sqrt.f64 (fma.f64 a 9 -3)) rand)
a
inf
6.0ms
(*.f64 (-.f64 a 1/3) (+.f64 1 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 a 9 -3)) rand) -1)))
a
0
6.0ms
(*.f64 (-.f64 a 1/3) (+.f64 1 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 a 9 -3)) rand) -1)))
a
inf

rewrite63.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
519×prod-diff_binary64
154×add-sqr-sqrt_binary64
150×log1p-expm1-u_binary64
150×expm1-log1p-u_binary64
149×add-cbrt-cube_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01545
133039
2412639
Stop Event
node limit
Counts
3 → 120

simplify37.0ms (1.1%)

Algorithm
egg-herbie
Rules
375×times-frac_binary64
313×associate-/l*_binary64
286×fma-def_binary64
277×associate--r+_binary64
246×associate--l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0991192
13101112
21088974
Stop Event
node limit
Counts
168 → 152

prune166.0ms (5.1%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New1820182
Fresh022
Picked011
Done022
Total1825187
Error
0b
Counts
187 → 5
Alt Table
StatusErrorProgram
2.7b
(*.f64 (-.f64 a 1/3) (+.f64 1 (/.f64 rand (cbrt.f64 (pow.f64 (fma.f64 a 9 -3) 3/2)))))
0.3b
(*.f64 (-.f64 a 1/3) (+.f64 1 (/.f64 rand (sqrt.f64 (fma.f64 a 9 -3)))))
0.3b
(*.f64 (-.f64 a 1/3) (+.f64 1 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 a 9 -3)) rand) -1)))
0.8b
(-.f64 (*.f64 rand (*.f64 (sqrt.f64 (/.f64 1/9 a)) (+.f64 a -1/3))) (-.f64 1/3 a))
0.3b
(-.f64 (*.f64 rand (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 a 9 -3))) (+.f64 a -1/3))) (-.f64 1/3 a))
Compiler

Compiled 4146 to 3273 computations (21.1% saved)

localize8.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (/.f64 1/9 a))
0.2b
(*.f64 rand (*.f64 (sqrt.f64 (/.f64 1/9 a)) (+.f64 a -1/3)))
0.3b
(*.f64 (sqrt.f64 (/.f64 1/9 a)) (+.f64 a -1/3))
0.3b
(/.f64 1/9 a)

series36.0ms (1.1%)

Counts
4 → 12
Calls

15 calls:

4.0ms
(*.f64 (sqrt.f64 (/.f64 1/9 a)) (+.f64 a -1/3))
a
-inf
4.0ms
(*.f64 rand (*.f64 (sqrt.f64 (/.f64 1/9 a)) (+.f64 a -1/3)))
a
-inf
3.0ms
(*.f64 rand (*.f64 (sqrt.f64 (/.f64 1/9 a)) (+.f64 a -1/3)))
a
0
3.0ms
(*.f64 rand (*.f64 (sqrt.f64 (/.f64 1/9 a)) (+.f64 a -1/3)))
a
inf
3.0ms
(*.f64 rand (*.f64 (sqrt.f64 (/.f64 1/9 a)) (+.f64 a -1/3)))
rand
0

rewrite60.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
519×log-prod_binary64
218×prod-diff_binary64
192×expm1-udef_binary64
192×log1p-udef_binary64
164×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01037
122737
2298837
Stop Event
node limit
Counts
4 → 155

simplify68.0ms (2.1%)

Algorithm
egg-herbie
Rules
1536×fma-def_binary64
467×fma-neg_binary64
268×distribute-rgt-neg-in_binary64
264×cancel-sign-sub-inv_binary64
206×distribute-rgt-in_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
017224
139216
292216
3278216
4553200
5755200
61057200
71648200
82852200
93886200
104326200
114400200
124406200
134409200
Stop Event
node limit
Counts
167 → 159

prune199.0ms (6.1%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New1590159
Fresh011
Picked011
Done033
Total1595164
Error
0b
Counts
164 → 5
Alt Table
StatusErrorProgram
2.7b
(*.f64 (-.f64 a 1/3) (+.f64 1 (/.f64 rand (cbrt.f64 (pow.f64 (fma.f64 a 9 -3) 3/2)))))
0.3b
(*.f64 (-.f64 a 1/3) (+.f64 1 (/.f64 rand (sqrt.f64 (fma.f64 a 9 -3)))))
0.3b
(*.f64 (-.f64 a 1/3) (+.f64 1 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 a 9 -3)) rand) -1)))
0.8b
(-.f64 (*.f64 rand (*.f64 (sqrt.f64 (/.f64 1/9 a)) (+.f64 a -1/3))) (-.f64 1/3 a))
0.3b
(-.f64 (*.f64 rand (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 a 9 -3))) (+.f64 a -1/3))) (-.f64 1/3 a))
Compiler

Compiled 3240 to 2233 computations (31.1% saved)

regimes384.0ms (11.7%)

Accuracy

Total 0.1b remaining (73.1%)

Threshold costs 0.1b (73.1%)

Counts
87 → 1
Compiler

Compiled 6174 to 4886 computations (20.9% saved)

simplify3.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01523
12223
23323
34523
46423
58423
610523
711623
812223
912423
Stop Event
saturated

end84.0ms (2.6%)

Stop Event
fuel
Compiler

Compiled 120 to 95 computations (20.8% saved)

Profiling

Loading profile data...