Details

Time bar (total: 15.8s)

analyze1.0s (6.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%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.9s (56.6%)

Results
2.4s2778×body1024valid
2.1s1723×body1024invalid
1.7s1791×body2048valid
825.0ms997×body512invalid
798.0ms1286×body512valid
355.0ms1800×body128valid
239.0ms555×body256invalid
231.0ms601×body256valid
201.0ms1129×body128invalid
8.0msbody2048invalid
Compiler

Compiled 47 to 35 computations (25.5% saved)

simplify50.0ms (0.3%)

Algorithm
egg-herbie
Rules
436×unswap-sqr_binary64
377×fma-def_binary64
359×sub-neg_binary64
289×unsub-neg_binary64
253×distribute-rgt-neg-in_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
12019
24119
310219
424819
579019
6211019
7440519
8504819

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
35.0b
Counts
2 → 1
Alt Table
StatusErrorProgram
35.0b
(-.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.2b
(pow.f64 (+.f64 x 1) (/.f64 1 n))
1.8b
(-.f64 (pow.f64 (+.f64 x 1) (/.f64 1 n)) (pow.f64 x (/.f64 1 n)))

series85.0ms (0.5%)

Counts
3 → 72
Calls

3 calls:

37.0ms
(pow.f64 x (/.f64 1 n))
34.0ms
(-.f64 (pow.f64 (+.f64 x 1) (/.f64 1 n)) (pow.f64 x (/.f64 1 n)))
13.0ms
(pow.f64 (+.f64 x 1) (/.f64 1 n))

rewrite29.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
78×*-un-lft-identity_binary64
76×unpow-prod-down_binary64
65×add-sqr-sqrt_binary64
56×prod-diff_binary64
53×add-cube-cbrt_binary64
Counts
3 → 155
Calls

3 calls:

9.0ms
(-.f64 (pow.f64 (+.f64 x 1) (/.f64 1 n)) (pow.f64 x (/.f64 1 n)))
4.0ms
(pow.f64 (+.f64 x 1) (/.f64 1 n))
2.0ms
(pow.f64 x (/.f64 1 n))

simplify183.0ms (1.2%)

Algorithm
egg-herbie
Rules
580×cancel-sign-sub-inv_binary64
422×fma-neg_binary64
284×sub-neg_binary64
202×fma-def_binary64
194×+-commutative_binary64
Counts
227 → 269
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03959164
19647582
233115432
349145432
449745432

prune311.0ms (2%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New2645269
Fresh000
Picked101
Done000
Total2655270
Error
0.8b
Counts
270 → 5
Alt Table
StatusErrorProgram
37.7b
(-.f64 (fma.f64 11/24 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (*.f64 n n) (pow.f64 x 4))) (fma.f64 1/3 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 n (pow.f64 x 3))) (fma.f64 1/24 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (pow.f64 x 4) (pow.f64 n 4))) (fma.f64 1/2 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (*.f64 x x) (*.f64 n n))) (fma.f64 1/6 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (pow.f64 x 3) (pow.f64 n 3))) (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 x n))))))) (fma.f64 1/2 (+.f64 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 x (*.f64 x n))) (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 n (*.f64 n (pow.f64 x 3))))) (*.f64 1/4 (+.f64 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 n (pow.f64 x 4))) (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (pow.f64 n 3) (pow.f64 x 4)))))))
34.2b
(log.f64 (exp.f64 (-.f64 (exp.f64 (/.f64 (log1p.f64 x) n)) (pow.f64 x (/.f64 1 n)))))
24.7b
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 (+.f64 1 x)) 2) (pow.f64 n 2))) (/.f64 (log.f64 (+.f64 1 x)) n)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 x) 2) (pow.f64 n 2))) (/.f64 (log.f64 x) n)))
20.7b
(/.f64 (-.f64 (log1p.f64 x) (log.f64 x)) n)
34.0b
(-.f64 (exp.f64 (/.f64 (log1p.f64 x) n)) (pow.f64 x (/.f64 1 n)))
Compiler

Compiled 9886 to 6683 computations (32.4% saved)

localize6.0ms (0%)

Local error

Found 2 expressions with local error:

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

series471.0ms (3%)

Counts
2 → 36
Calls

2 calls:

467.0ms
(/.f64 (-.f64 (log1p.f64 x) (log.f64 x)) n)
4.0ms
(-.f64 (log1p.f64 x) (log.f64 x))

rewrite13.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
38×*-un-lft-identity_binary64
33×add-sqr-sqrt_binary64
23×add-cube-cbrt_binary64
18×times-frac_binary64
12×prod-diff_binary64
Counts
2 → 83
Calls

2 calls:

5.0ms
(/.f64 (-.f64 (log1p.f64 x) (log.f64 x)) n)
4.0ms
(-.f64 (log1p.f64 x) (log.f64 x))

simplify126.0ms (0.8%)

Algorithm
egg-herbie
Rules
869×fma-neg_binary64
399×fma-def_binary64
386×associate-*l*_binary64
296×associate-*r*_binary64
171×associate-/l*_binary64
Counts
119 → 118
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01892225
14261862
212171802
340711801
449621801
549711801
649341801

prune151.0ms (1%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New1126118
Fresh044
Picked101
Done000
Total11310123
Error
0.1b
Counts
123 → 10
Alt Table
StatusErrorProgram
37.7b
(-.f64 (fma.f64 11/24 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (*.f64 n n) (pow.f64 x 4))) (fma.f64 1/3 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 n (pow.f64 x 3))) (fma.f64 1/24 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (pow.f64 x 4) (pow.f64 n 4))) (fma.f64 1/2 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (*.f64 x x) (*.f64 n n))) (fma.f64 1/6 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (pow.f64 x 3) (pow.f64 n 3))) (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 x n))))))) (fma.f64 1/2 (+.f64 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 x (*.f64 x n))) (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 n (*.f64 n (pow.f64 x 3))))) (*.f64 1/4 (+.f64 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 n (pow.f64 x 4))) (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (pow.f64 n 3) (pow.f64 x 4)))))))
20.8b
(/.f64 1 (/.f64 n (-.f64 (log1p.f64 x) (log.f64 x))))
20.8b
(/.f64 (cbrt.f64 (*.f64 (*.f64 (-.f64 (log1p.f64 x) (log.f64 x)) (-.f64 (log1p.f64 x) (log.f64 x))) (-.f64 (log1p.f64 x) (log.f64 x)))) n)
21.0b
(/.f64 (exp.f64 (log.f64 (-.f64 (log1p.f64 x) (log.f64 x)))) n)
39.1b
(/.f64 (+.f64 (/.f64 1/3 (pow.f64 x 3)) (-.f64 (/.f64 1 x) (/.f64 1/2 (*.f64 x x)))) n)
34.2b
(log.f64 (exp.f64 (-.f64 (exp.f64 (/.f64 (log1p.f64 x) n)) (pow.f64 x (/.f64 1 n)))))
21.0b
(/.f64 (-.f64 (pow.f64 (log1p.f64 x) 3) (pow.f64 (log.f64 x) 3)) (*.f64 n (fma.f64 (log.f64 x) (log.f64 x) (*.f64 (log1p.f64 x) (+.f64 (log.f64 x) (log1p.f64 x))))))
24.7b
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 (+.f64 1 x)) 2) (pow.f64 n 2))) (/.f64 (log.f64 (+.f64 1 x)) n)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 x) 2) (pow.f64 n 2))) (/.f64 (log.f64 x) n)))
20.8b
(*.f64 (-.f64 (log1p.f64 x) (log.f64 x)) (/.f64 1 n))
34.0b
(-.f64 (exp.f64 (/.f64 (log1p.f64 x) n)) (pow.f64 x (/.f64 1 n)))
Compiler

Compiled 2554 to 996 computations (61% saved)

localize7.0ms (0%)

Local error

Found 3 expressions with local error:

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

series987.0ms (6.3%)

Counts
2 → 48
Calls

2 calls:

503.0ms
(/.f64 n (-.f64 (log1p.f64 x) (log.f64 x)))
485.0ms
(/.f64 1 (/.f64 n (-.f64 (log1p.f64 x) (log.f64 x))))

rewrite32.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
162×times-frac_binary64
126×*-un-lft-identity_binary64
110×add-sqr-sqrt_binary64
78×add-cube-cbrt_binary64
32×distribute-lft-out--_binary64
Counts
2 → 165
Calls

2 calls:

7.0ms
(/.f64 1 (/.f64 n (-.f64 (log1p.f64 x) (log.f64 x))))
4.0ms
(/.f64 n (-.f64 (log1p.f64 x) (log.f64 x)))

simplify138.0ms (0.9%)

Algorithm
egg-herbie
Rules
395×times-frac_binary64
339×associate-/l*_binary64
331×fma-neg_binary64
326×associate-/r*_binary64
324×fma-def_binary64
Counts
213 → 207
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02134582
14884291
214454175
343534175
449924175

prune240.0ms (1.5%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New2612263
Fresh189
Picked011
Done000
Total26211273
Error
0.1b
Counts
273 → 11
Alt Table
StatusErrorProgram
34.2b
(log.f64 (exp.f64 (-.f64 (exp.f64 (/.f64 (log1p.f64 x) n)) (pow.f64 x (/.f64 1 n)))))
21.0b
(/.f64 1 (/.f64 n (exp.f64 (log.f64 (-.f64 (log1p.f64 x) (log.f64 x))))))
37.7b
(-.f64 (fma.f64 11/24 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (*.f64 n n) (pow.f64 x 4))) (fma.f64 1/3 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 n (pow.f64 x 3))) (fma.f64 1/24 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (pow.f64 x 4) (pow.f64 n 4))) (fma.f64 1/2 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (*.f64 x x) (*.f64 n n))) (fma.f64 1/6 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (pow.f64 x 3) (pow.f64 n 3))) (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 x n))))))) (fma.f64 1/2 (+.f64 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 x (*.f64 x n))) (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 n (*.f64 n (pow.f64 x 3))))) (*.f64 1/4 (+.f64 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 n (pow.f64 x 4))) (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (pow.f64 n 3) (pow.f64 x 4)))))))
20.8b
(/.f64 1 (/.f64 n (-.f64 (log1p.f64 x) (log.f64 x))))
20.8b
(/.f64 (cbrt.f64 (*.f64 (*.f64 (-.f64 (log1p.f64 x) (log.f64 x)) (-.f64 (log1p.f64 x) (log.f64 x))) (-.f64 (log1p.f64 x) (log.f64 x)))) n)
38.9b
(/.f64 1 (fma.f64 (/.f64 n x) -1/12 (*.f64 n (+.f64 x 1/2))))
39.1b
(/.f64 (+.f64 (/.f64 1/3 (pow.f64 x 3)) (-.f64 (/.f64 1 x) (/.f64 1/2 (*.f64 x x)))) n)
21.0b
(/.f64 (-.f64 (pow.f64 (log1p.f64 x) 3) (pow.f64 (log.f64 x) 3)) (*.f64 n (fma.f64 (log.f64 x) (log.f64 x) (*.f64 (log1p.f64 x) (+.f64 (log.f64 x) (log1p.f64 x))))))
24.7b
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 (+.f64 1 x)) 2) (pow.f64 n 2))) (/.f64 (log.f64 (+.f64 1 x)) n)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 x) 2) (pow.f64 n 2))) (/.f64 (log.f64 x) n)))
20.8b
(*.f64 (-.f64 (log1p.f64 x) (log.f64 x)) (/.f64 1 n))
34.0b
(-.f64 (exp.f64 (/.f64 (log1p.f64 x) n)) (pow.f64 x (/.f64 1 n)))
Compiler

Compiled 5832 to 2146 computations (63.2% saved)

localize7.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (-.f64 (log1p.f64 x) (log.f64 x)) (/.f64 1 n))
3.2b
(-.f64 (log1p.f64 x) (log.f64 x))

series472.0ms (3%)

Counts
1 → 24
Calls

1 calls:

472.0ms
(*.f64 (-.f64 (log1p.f64 x) (log.f64 x)) (/.f64 1 n))

rewrite15.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
18×add-sqr-sqrt_binary64
13×associate-*r*_binary64
13×*-un-lft-identity_binary64
11×times-frac_binary64
10×add-exp-log_binary64
Counts
1 → 45
Calls

1 calls:

8.0ms
(*.f64 (-.f64 (log1p.f64 x) (log.f64 x)) (/.f64 1 n))

simplify76.0ms (0.5%)

Algorithm
egg-herbie
Rules
763×fma-def_binary64
436×times-frac_binary64
422×fma-neg_binary64
209×distribute-rgt-neg-out_binary64
208×associate-*l*_binary64
Counts
69 → 83
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01251178
13021086
28381086
321981086
449001086
551101086

prune124.0ms (0.8%)

Pruning

12 alts after pruning (10 fresh and 2 done)

PrunedKeptTotal
New1381139
Fresh099
Picked011
Done011
Total13812150
Error
0.1b
Counts
150 → 12
Alt Table
StatusErrorProgram
34.2b
(log.f64 (exp.f64 (-.f64 (exp.f64 (/.f64 (log1p.f64 x) n)) (pow.f64 x (/.f64 1 n)))))
21.0b
(/.f64 1 (/.f64 n (exp.f64 (log.f64 (-.f64 (log1p.f64 x) (log.f64 x))))))
21.0b
(/.f64 (-.f64 (pow.f64 (log1p.f64 x) 3) (pow.f64 (log.f64 x) 3)) (*.f64 n (fma.f64 (log.f64 x) (log.f64 x) (*.f64 (log1p.f64 x) (+.f64 (log.f64 x) (log1p.f64 x))))))
39.2b
(*.f64 (-.f64 (/.f64 1 x) (/.f64 1/2 (*.f64 x x))) (/.f64 1 n))
37.7b
(-.f64 (fma.f64 11/24 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (*.f64 n n) (pow.f64 x 4))) (fma.f64 1/3 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 n (pow.f64 x 3))) (fma.f64 1/24 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (pow.f64 x 4) (pow.f64 n 4))) (fma.f64 1/2 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (*.f64 x x) (*.f64 n n))) (fma.f64 1/6 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (pow.f64 x 3) (pow.f64 n 3))) (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 x n))))))) (fma.f64 1/2 (+.f64 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 x (*.f64 x n))) (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 n (*.f64 n (pow.f64 x 3))))) (*.f64 1/4 (+.f64 (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 n (pow.f64 x 4))) (/.f64 (pow.f64 x (/.f64 1 n)) (*.f64 (pow.f64 n 3) (pow.f64 x 4)))))))
20.8b
(/.f64 1 (/.f64 n (-.f64 (log1p.f64 x) (log.f64 x))))
20.8b
(/.f64 (cbrt.f64 (*.f64 (*.f64 (-.f64 (log1p.f64 x) (log.f64 x)) (-.f64 (log1p.f64 x) (log.f64 x))) (-.f64 (log1p.f64 x) (log.f64 x)))) n)
38.9b
(/.f64 1 (fma.f64 (/.f64 n x) -1/12 (*.f64 n (+.f64 x 1/2))))
39.1b
(/.f64 (+.f64 (/.f64 1/3 (pow.f64 x 3)) (-.f64 (/.f64 1 x) (/.f64 1/2 (*.f64 x x)))) n)
24.7b
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 (+.f64 1 x)) 2) (pow.f64 n 2))) (/.f64 (log.f64 (+.f64 1 x)) n)) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (log.f64 x) 2) (pow.f64 n 2))) (/.f64 (log.f64 x) n)))
20.8b
(*.f64 (-.f64 (log1p.f64 x) (log.f64 x)) (/.f64 1 n))
34.0b
(-.f64 (exp.f64 (/.f64 (log1p.f64 x) n)) (pow.f64 x (/.f64 1 n)))
Compiler

Compiled 2770 to 1167 computations (57.9% saved)

regimes2.0s (12.6%)

Accuracy

Total 6.9b remaining (98%)

Threshold costs 0b (0%)

Counts
217 → 2
Compiler

Compiled 19052 to 11969 computations (37.2% saved)

bsearch85.0ms (0.5%)

Steps
ItersRangePoint
9
1.6672574015366395
878182.1653203844
502.9330801505896
Compiler

Compiled 3 to 2 computations (33.3% saved)

simplify3.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02050
12950
23550
33950
44150
54050

end209.0ms (1.3%)

Compiler

Compiled 404 to 260 computations (35.6% saved)

Profiling

Loading profile data...