Details

Time bar (total: 13.8s)

analyze1.0s (7.3%)

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%62.4%12.6%5
25%56.2%18.8%6
28.1%46.8%25.1%7
28.1%43.7%28.2%8
29.7%34.3%36%9
29.7%31.6%38.7%10
31.1%25.8%43.1%11
31.1%24.6%44.3%12
31.5%21.9%46.6%13
31.5%21%47.5%14
Compiler

Compiled 16 to 12 computations (25% saved)

sample8.1s (58.5%)

Results
2.2s2775×body1024valid
1.9s1707×body1024invalid
1.6s1880×body2048valid
678.0ms966×body512invalid
676.0ms1211×body512valid
338.0ms1823×body128valid
211.0ms567×body256valid
199.0ms506×body256invalid
194.0ms1097×body128invalid
11.0msbody2048invalid
Compiler

Compiled 32 to 24 computations (25% saved)

preprocess30.0ms (0.2%)

Algorithm
egg-herbie
Rules
754×fma-def_binary64
470×distribute-rgt-in_binary64
438×distribute-lft-in_binary64
314×associate-*l*_binary64
268×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01438
13338
27638
319538
465638
5220638
022
Stop Event
saturated
node limit
Compiler

Compiled 15 to 11 computations (26.7% saved)

simplify22.0ms (0.2%)

Algorithm
egg-herbie
Rules
436×unswap-sqr_binary64
377×fma-def_binary64
235×distribute-rgt-in_binary64
219×distribute-lft-in_binary64
212×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
12019
24219
310419
434019
5111119
6339319
Stop Event
node limit
Counts
1 → 1

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 45 to 33 computations (26.7% saved)

localize7.0ms (0%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 x (/.f64 1 n))
0.1b
(pow.f64 (+.f64 x 1) (/.f64 1 n))
2.8b
(-.f64 (pow.f64 (+.f64 x 1) (/.f64 1 n)) (pow.f64 x (/.f64 1 n)))

series73.0ms (0.5%)

Counts
3 → 72
Calls

18 calls:

12.0ms
(pow.f64 x (/.f64 1 n))
x
0
9.0ms
(pow.f64 x (/.f64 1 n))
x
inf
9.0ms
(pow.f64 x (/.f64 1 n))
x
-inf
7.0ms
(-.f64 (pow.f64 (+.f64 x 1) (/.f64 1 n)) (pow.f64 x (/.f64 1 n)))
x
inf
7.0ms
(-.f64 (pow.f64 (+.f64 x 1) (/.f64 1 n)) (pow.f64 x (/.f64 1 n)))
x
-inf

rewrite83.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
547×prod-diff_binary64
294×fma-def_binary64
178×log1p-udef_binary64
177×expm1-udef_binary64
155×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0936
120732
2282932
Stop Event
node limit
Counts
3 → 145

simplify62.0ms (0.4%)

Algorithm
egg-herbie
Rules
880×fma-def_binary64
568×associate-/l*_binary64
379×cancel-sign-sub-inv_binary64
229×sub-neg_binary64
156×+-commutative_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02072877
16842868
225502288
Stop Event
node limit
Counts
217 → 207

prune216.0ms (1.6%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New2025207
Fresh000
Picked101
Done000
Total2035208
Error
0.3b
Counts
208 → 5
Alt Table
StatusErrorProgram
18.8b
(-.f64 (+.f64 (/.f64 (log1p.f64 x) n) (*.f64 (/.f64 1/2 n) (-.f64 (/.f64 (pow.f64 (log1p.f64 x) 2) n) (/.f64 (pow.f64 (log.f64 x) 2) n)))) (/.f64 (log.f64 x) n))
18.5b
(/.f64 (-.f64 (log1p.f64 x) (log.f64 x)) n)
33.1b
(-.f64 (exp.f64 (/.f64 (log1p.f64 x) n)) (exp.f64 (/.f64 (log.f64 x) n)))
33.2b
(cbrt.f64 (pow.f64 (-.f64 (exp.f64 (/.f64 (log1p.f64 x) n)) (pow.f64 x (/.f64 1 n))) 3))
32.8b
(-.f64 (+.f64 (*.f64 1/3 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 n (pow.f64 x 3)))) (+.f64 (*.f64 1/2 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 (pow.f64 n 2) (pow.f64 x 2)))) (+.f64 (*.f64 1/6 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 (pow.f64 n 3) (pow.f64 x 3)))) (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 n x))))) (+.f64 (*.f64 1/2 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 n (pow.f64 x 2)))) (*.f64 1/2 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 (pow.f64 n 2) (pow.f64 x 3))))))
Compiler

Compiled 6939 to 4177 computations (39.8% saved)

localize6.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (-.f64 (log1p.f64 x) (log.f64 x)) n)
4.0b
(-.f64 (log1p.f64 x) (log.f64 x))

series413.0ms (3%)

Counts
2 → 36
Calls

9 calls:

161.0ms
(/.f64 (-.f64 (log1p.f64 x) (log.f64 x)) n)
n
-inf
137.0ms
(/.f64 (-.f64 (log1p.f64 x) (log.f64 x)) n)
n
inf
108.0ms
(/.f64 (-.f64 (log1p.f64 x) (log.f64 x)) n)
n
0
1.0ms
(/.f64 (-.f64 (log1p.f64 x) (log.f64 x)) n)
x
-inf
1.0ms
(/.f64 (-.f64 (log1p.f64 x) (log.f64 x)) n)
x
inf

rewrite93.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
884×expm1-log1p-u_binary64
576×prod-diff_binary64
228×egg-rr
80×add-sqr-sqrt_binary64
77×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0719
115419
2226819
Stop Event
node limit
Counts
2 → 228

simplify39.0ms (0.3%)

Algorithm
egg-herbie
Rules
446×associate-/r*_binary64
433×fma-def_binary64
243×cancel-sign-sub-inv_binary64
207×associate-*l*_binary64
206×fma-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
070598
1192590
2505590
31463563
Stop Event
node limit
Counts
264 → 260

prune212.0ms (1.5%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New2546260
Fresh044
Picked101
Done000
Total25510265
Error
0.1b
Counts
265 → 10
Alt Table
StatusErrorProgram
18.6b
(*.f64 (sqrt.f64 (-.f64 (log1p.f64 x) (log.f64 x))) (*.f64 (sqrt.f64 (-.f64 (log1p.f64 x) (log.f64 x))) (/.f64 1 n)))
37.3b
(/.f64 (+.f64 (/.f64 1 x) (+.f64 (/.f64 1/3 (pow.f64 x 3)) (/.f64 (/.f64 -1/2 x) x))) n)
18.9b
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 n) 2)) (/.f64 (-.f64 (log1p.f64 x) (log.f64 x)) (cbrt.f64 n)))
32.8b
(-.f64 (+.f64 (*.f64 1/3 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 n (pow.f64 x 3)))) (+.f64 (*.f64 1/2 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 (pow.f64 n 2) (pow.f64 x 2)))) (+.f64 (*.f64 1/6 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 (pow.f64 n 3) (pow.f64 x 3)))) (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 n x))))) (+.f64 (*.f64 1/2 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 n (pow.f64 x 2)))) (*.f64 1/2 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 (pow.f64 n 2) (pow.f64 x 3))))))
18.8b
(-.f64 (+.f64 (/.f64 (log1p.f64 x) n) (*.f64 (/.f64 1/2 n) (-.f64 (/.f64 (pow.f64 (log1p.f64 x) 2) n) (/.f64 (pow.f64 (log.f64 x) 2) n)))) (/.f64 (log.f64 x) n))
18.6b
(*.f64 (-.f64 (log1p.f64 x) (log.f64 x)) (/.f64 1 n))
18.6b
(pow.f64 (/.f64 n (-.f64 (log1p.f64 x) (log.f64 x))) -1)
33.1b
(-.f64 (exp.f64 (/.f64 (log1p.f64 x) n)) (exp.f64 (/.f64 (log.f64 x) n)))
33.2b
(cbrt.f64 (pow.f64 (-.f64 (exp.f64 (/.f64 (log1p.f64 x) n)) (pow.f64 x (/.f64 1 n))) 3))
18.6b
(/.f64 (cbrt.f64 (pow.f64 (-.f64 (log1p.f64 x) (log.f64 x)) 3)) n)
Compiler

Compiled 9276 to 3081 computations (66.8% saved)

localize11.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(/.f64 n (-.f64 (log1p.f64 x) (log.f64 x)))
0.2b
(pow.f64 (/.f64 n (-.f64 (log1p.f64 x) (log.f64 x))) -1)
4.0b
(-.f64 (log1p.f64 x) (log.f64 x))

series809.0ms (5.9%)

Counts
2 → 48
Calls

12 calls:

157.0ms
(pow.f64 (/.f64 n (-.f64 (log1p.f64 x) (log.f64 x))) -1)
n
-inf
145.0ms
(pow.f64 (/.f64 n (-.f64 (log1p.f64 x) (log.f64 x))) -1)
n
inf
142.0ms
(/.f64 n (-.f64 (log1p.f64 x) (log.f64 x)))
n
-inf
136.0ms
(/.f64 n (-.f64 (log1p.f64 x) (log.f64 x)))
n
inf
111.0ms
(pow.f64 (/.f64 n (-.f64 (log1p.f64 x) (log.f64 x))) -1)
n
0

rewrite49.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
459×log-prod_binary64
412×prod-diff_binary64
182×fma-def_binary64
170×expm1-udef_binary64
170×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0925
119322
2259822
Stop Event
node limit
Counts
2 → 86

simplify39.0ms (0.3%)

Algorithm
egg-herbie
Rules
356×sub-neg_binary64
234×times-frac_binary64
232×fma-def_binary64
210×associate-/r*_binary64
210×distribute-neg-frac_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
084848
1254838
2776802
33283767
Stop Event
node limit
Counts
134 → 120

prune178.0ms (1.3%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New1812183
Fresh279
Picked011
Done000
Total18310193
Error
0.1b
Counts
193 → 10
Alt Table
StatusErrorProgram
18.6b
(pow.f64 (*.f64 n (/.f64 1 (-.f64 (log1p.f64 x) (log.f64 x)))) -1)
18.6b
(pow.f64 (/.f64 n (-.f64 (log1p.f64 x) (log.f64 x))) -1)
33.2b
(cbrt.f64 (pow.f64 (-.f64 (exp.f64 (/.f64 (log1p.f64 x) n)) (pow.f64 x (/.f64 1 n))) 3))
18.6b
(/.f64 (sqrt.f64 (-.f64 (log1p.f64 x) (log.f64 x))) (/.f64 n (sqrt.f64 (-.f64 (log1p.f64 x) (log.f64 x)))))
37.3b
(/.f64 (+.f64 (/.f64 1 x) (+.f64 (/.f64 1/3 (pow.f64 x 3)) (/.f64 (/.f64 -1/2 x) x))) n)
18.8b
(-.f64 (+.f64 (/.f64 (log1p.f64 x) n) (*.f64 (/.f64 1/2 n) (-.f64 (/.f64 (pow.f64 (log1p.f64 x) 2) n) (/.f64 (pow.f64 (log.f64 x) 2) n)))) (/.f64 (log.f64 x) n))
18.6b
(*.f64 (-.f64 (log1p.f64 x) (log.f64 x)) (/.f64 1 n))
33.1b
(-.f64 (exp.f64 (/.f64 (log1p.f64 x) n)) (exp.f64 (/.f64 (log.f64 x) n)))
18.6b
(/.f64 (cbrt.f64 (pow.f64 (-.f64 (log1p.f64 x) (log.f64 x)) 3)) n)
32.8b
(-.f64 (+.f64 (*.f64 1/3 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 n (pow.f64 x 3)))) (+.f64 (*.f64 1/2 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 (pow.f64 n 2) (pow.f64 x 2)))) (+.f64 (*.f64 1/6 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 (pow.f64 n 3) (pow.f64 x 3)))) (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 n x))))) (+.f64 (*.f64 1/2 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 n (pow.f64 x 2)))) (*.f64 1/2 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 (pow.f64 n 2) (pow.f64 x 3))))))
Compiler

Compiled 3496 to 1639 computations (53.1% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 1 (-.f64 (log1p.f64 x) (log.f64 x)))
0.2b
(pow.f64 (*.f64 n (/.f64 1 (-.f64 (log1p.f64 x) (log.f64 x)))) -1)
0.2b
(*.f64 n (/.f64 1 (-.f64 (log1p.f64 x) (log.f64 x))))
4.0b
(-.f64 (log1p.f64 x) (log.f64 x))

series802.0ms (5.8%)

Counts
3 → 60
Calls

15 calls:

152.0ms
(*.f64 n (/.f64 1 (-.f64 (log1p.f64 x) (log.f64 x))))
n
inf
145.0ms
(pow.f64 (*.f64 n (/.f64 1 (-.f64 (log1p.f64 x) (log.f64 x)))) -1)
n
-inf
139.0ms
(*.f64 n (/.f64 1 (-.f64 (log1p.f64 x) (log.f64 x))))
n
-inf
137.0ms
(pow.f64 (*.f64 n (/.f64 1 (-.f64 (log1p.f64 x) (log.f64 x)))) -1)
n
inf
106.0ms
(pow.f64 (*.f64 n (/.f64 1 (-.f64 (log1p.f64 x) (log.f64 x)))) -1)
n
0

rewrite48.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
403×prod-diff_binary64
196×fma-def_binary64
191×expm1-udef_binary64
191×log1p-udef_binary64
176×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01136
123133
2290533
Stop Event
node limit
Counts
3 → 76

simplify49.0ms (0.4%)

Algorithm
egg-herbie
Rules
616×sub-neg_binary64
352×fma-def_binary64
290×times-frac_binary64
257×associate-/r*_binary64
249×associate--r+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01141080
13411064
210711018
346471018
Stop Event
node limit
Counts
136 → 122

prune165.0ms (1.2%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New1850185
Fresh088
Picked011
Done011
Total18510195
Error
0.1b
Counts
195 → 10
Alt Table
StatusErrorProgram
18.6b
(pow.f64 (*.f64 n (/.f64 1 (-.f64 (log1p.f64 x) (log.f64 x)))) -1)
18.6b
(pow.f64 (/.f64 n (-.f64 (log1p.f64 x) (log.f64 x))) -1)
33.2b
(cbrt.f64 (pow.f64 (-.f64 (exp.f64 (/.f64 (log1p.f64 x) n)) (pow.f64 x (/.f64 1 n))) 3))
18.6b
(/.f64 (sqrt.f64 (-.f64 (log1p.f64 x) (log.f64 x))) (/.f64 n (sqrt.f64 (-.f64 (log1p.f64 x) (log.f64 x)))))
37.3b
(/.f64 (+.f64 (/.f64 1 x) (+.f64 (/.f64 1/3 (pow.f64 x 3)) (/.f64 (/.f64 -1/2 x) x))) n)
18.8b
(-.f64 (+.f64 (/.f64 (log1p.f64 x) n) (*.f64 (/.f64 1/2 n) (-.f64 (/.f64 (pow.f64 (log1p.f64 x) 2) n) (/.f64 (pow.f64 (log.f64 x) 2) n)))) (/.f64 (log.f64 x) n))
18.6b
(*.f64 (-.f64 (log1p.f64 x) (log.f64 x)) (/.f64 1 n))
33.1b
(-.f64 (exp.f64 (/.f64 (log1p.f64 x) n)) (exp.f64 (/.f64 (log.f64 x) n)))
18.6b
(/.f64 (cbrt.f64 (pow.f64 (-.f64 (log1p.f64 x) (log.f64 x)) 3)) n)
32.8b
(-.f64 (+.f64 (*.f64 1/3 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 n (pow.f64 x 3)))) (+.f64 (*.f64 1/2 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 (pow.f64 n 2) (pow.f64 x 2)))) (+.f64 (*.f64 1/6 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 (pow.f64 n 3) (pow.f64 x 3)))) (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 n x))))) (+.f64 (*.f64 1/2 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 n (pow.f64 x 2)))) (*.f64 1/2 (/.f64 (exp.f64 (*.f64 -1 (/.f64 (log.f64 (/.f64 1 x)) n))) (*.f64 (pow.f64 n 2) (pow.f64 x 3))))))
Compiler

Compiled 3452 to 1797 computations (47.9% saved)

regimes1.0s (7.6%)

Accuracy

Total 7.0b remaining (97.7%)

Threshold costs 0b (0%)

Counts
153 → 2
Compiler

Compiled 11327 to 7999 computations (29.4% saved)

bsearch83.0ms (0.6%)

Algorithm
binary-search
Calls

1 calls:

78.0ms
x
Steps
ItersPointRange
6906.254529779961
∈ [
1.2702880047433631e-8
,
183682.5172598838
]
Compiler

Compiled 3 to 2 computations (33.3% saved)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01732
12132
Stop Event
saturated

end187.0ms (1.4%)

Stop Event
fuel
Compiler

Compiled 298 to 213 computations (28.5% saved)

Profiling

Loading profile data...