Details

Time bar (total: 11.3s)

analyze881.0ms (7.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%99.9%0.1%4
12.5%87.4%0.1%5
18.7%68.7%12.6%6
28.1%59.3%12.6%7
32.8%48.4%18.8%8
38.2%42.9%18.8%9
41%37.1%22%10
43.9%34.1%22%11
45.5%31%23.5%12
46.9%29.6%23.5%13
47.7%28%24.3%14
Compiler

Compiled 19 to 9 computations (52.6% saved)

sample124.0ms (1.1%)

Algorithm
intervals
Results
66.0ms126×body8192exit
21.0ms219×body128valid
7.0ms22×body512valid
3.0ms14×body256valid
0.0msbody1024valid
0.0msbody128invalid
Compiler

Compiled 39 to 19 computations (51.3% saved)

simplify105.0ms (0.9%)

Algorithm
egg-herbie
Rules
568×neg-mul-1_binary64
503×fma-def_binary64
491×fma-neg_binary64
484×div-sub_binary64
416×distribute-neg-frac_binary64
Counts
1 → 2
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0923
12223
25823
315221
433818
5109018
6290218
7369518
8470618
9488118

prune6.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
11.5b
Counts
3 → 2
Alt Table
StatusErrorProgram
12.7b
(-.f64 wj (/.f64 (-.f64 (*.f64 wj (exp.f64 wj)) x) (+.f64 (exp.f64 wj) (*.f64 wj (exp.f64 wj)))))
11.5b
(+.f64 wj (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)))
Compiler

Compiled 94 to 48 computations (48.9% saved)

localize15.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(/.f64 x (exp.f64 wj))
0.0b
(/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1))
4.8b
(+.f64 wj (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)))

series107.0ms (1%)

Counts
3 → 52
Calls

3 calls:

39.0ms
(+.f64 wj (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)))
36.0ms
(/.f64 x (exp.f64 wj))
32.0ms
(/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1))

rewrite74.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
50×*-un-lft-identity_binary64
49×add-sqr-sqrt_binary64
38×times-frac_binary64
24×add-cube-cbrt_binary64
10×difference-of-squares_binary64
Counts
3 → 100
Calls

3 calls:

29.0ms
(+.f64 wj (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)))
23.0ms
(/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1))
5.0ms
(/.f64 x (exp.f64 wj))

simplify191.0ms (1.7%)

Algorithm
egg-herbie
Rules
643×fma-neg_binary64
444×fma-def_binary64
331×distribute-rgt-in_binary64
292×associate--l+_binary64
278×distribute-lft-in_binary64
Counts
152 → 154
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02283154
15833016
216042995
347982993
452982993

prune274.0ms (2.4%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New1495154
Fresh101
Picked101
Done000
Total1515156
Error
0.1b
Counts
156 → 5
Alt Table
StatusErrorProgram
11.5b
(+.f64 wj (*.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (fma.f64 wj wj -1)) (-.f64 wj 1)))
29.8b
(/.f64 (fma.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)) (/.f64 (fma.f64 -1 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)) (*.f64 wj wj)) (-.f64 wj (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1))))
29.9b
(/.f64 (-.f64 (*.f64 wj wj) (*.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)) (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)))) (-.f64 wj (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1))))
11.7b
(fma.f64 (*.f64 (cbrt.f64 wj) (cbrt.f64 wj)) (cbrt.f64 wj) (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)))
2.6b
(-.f64 (fma.f64 5/2 (*.f64 x (*.f64 wj wj)) (fma.f64 wj wj x)) (fma.f64 x (fma.f64 2 wj (*.f64 8/3 (pow.f64 wj 3))) (pow.f64 wj 3)))
Compiler

Compiled 3436 to 1502 computations (56.3% saved)

localize27.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (fma.f64 5/2 (*.f64 x (*.f64 wj wj)) (fma.f64 wj wj x)) (fma.f64 x (fma.f64 2 wj (*.f64 8/3 (pow.f64 wj 3))) (pow.f64 wj 3)))
0.0b
(fma.f64 x (fma.f64 2 wj (*.f64 8/3 (pow.f64 wj 3))) (pow.f64 wj 3))
0.1b
(*.f64 8/3 (pow.f64 wj 3))
7.9b
(*.f64 x (*.f64 wj wj))

series113.0ms (1%)

Counts
4 → 72
Calls

4 calls:

54.0ms
(-.f64 (fma.f64 5/2 (*.f64 x (*.f64 wj wj)) (fma.f64 wj wj x)) (fma.f64 x (fma.f64 2 wj (*.f64 8/3 (pow.f64 wj 3))) (pow.f64 wj 3)))
36.0ms
(fma.f64 x (fma.f64 2 wj (*.f64 8/3 (pow.f64 wj 3))) (pow.f64 wj 3))
17.0ms
(*.f64 x (*.f64 wj wj))
5.0ms
(*.f64 8/3 (pow.f64 wj 3))

rewrite36.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
27×add-sqr-sqrt_binary64
19×*-un-lft-identity_binary64
17×add-cube-cbrt_binary64
14×add-exp-log_binary64
13×associate-*r*_binary64
Counts
4 → 96
Calls

4 calls:

9.0ms
(*.f64 8/3 (pow.f64 wj 3))
8.0ms
(*.f64 x (*.f64 wj wj))
7.0ms
(-.f64 (fma.f64 5/2 (*.f64 x (*.f64 wj wj)) (fma.f64 wj wj x)) (fma.f64 x (fma.f64 2 wj (*.f64 8/3 (pow.f64 wj 3))) (pow.f64 wj 3)))
1.0ms
(fma.f64 x (fma.f64 2 wj (*.f64 8/3 (pow.f64 wj 3))) (pow.f64 wj 3))

simplify217.0ms (1.9%)

Algorithm
egg-herbie
Rules
806×fma-def_binary64
521×distribute-rgt-in_binary64
507×distribute-lft-in_binary64
479×fma-neg_binary64
401×cancel-sign-sub-inv_binary64
Counts
168 → 173
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01913853
14093376
214383085
349853004
451893004

prune459.0ms (4.1%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New1703173
Fresh044
Picked011
Done000
Total1708178
Error
0.1b
Counts
178 → 8
Alt Table
StatusErrorProgram
29.9b
(/.f64 (-.f64 (*.f64 wj wj) (*.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)) (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)))) (-.f64 wj (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1))))
3.9b
(*.f64 (*.f64 (cbrt.f64 (-.f64 (+.f64 (fma.f64 wj wj x) (*.f64 (*.f64 wj x) (fma.f64 wj 5/2 -2))) (*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1)))) (cbrt.f64 (-.f64 (+.f64 (fma.f64 wj wj x) (*.f64 (*.f64 wj x) (fma.f64 wj 5/2 -2))) (*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1))))) (cbrt.f64 (-.f64 (+.f64 (fma.f64 wj wj x) (*.f64 (*.f64 wj x) (fma.f64 wj 5/2 -2))) (*.f64 (pow.f64 wj 3) (fma.f64 x 8/3 1)))))
2.6b
(-.f64 (fma.f64 5/2 (*.f64 x (*.f64 wj wj)) (fma.f64 wj wj x)) (fma.f64 x (fma.f64 2 wj (*.f64 8/3 (pow.f64 wj 3))) (pow.f64 wj 3)))
3.2b
(-.f64 (fma.f64 5/2 (*.f64 x (*.f64 wj wj)) (fma.f64 wj wj x)) (pow.f64 wj 3))
11.5b
(+.f64 wj (*.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (fma.f64 wj wj -1)) (-.f64 wj 1)))
29.8b
(/.f64 (fma.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)) (/.f64 (fma.f64 -1 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)) (*.f64 wj wj)) (-.f64 wj (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1))))
39.2b
(cbrt.f64 (*.f64 (*.f64 (-.f64 (fma.f64 5/2 (*.f64 x (*.f64 wj wj)) (fma.f64 wj wj x)) (fma.f64 x (fma.f64 2 wj (*.f64 8/3 (pow.f64 wj 3))) (pow.f64 wj 3))) (-.f64 (fma.f64 5/2 (*.f64 x (*.f64 wj wj)) (fma.f64 wj wj x)) (fma.f64 x (fma.f64 2 wj (*.f64 8/3 (pow.f64 wj 3))) (pow.f64 wj 3)))) (-.f64 (fma.f64 5/2 (*.f64 x (*.f64 wj wj)) (fma.f64 wj wj x)) (fma.f64 x (fma.f64 2 wj (*.f64 8/3 (pow.f64 wj 3))) (pow.f64 wj 3)))))
11.7b
(fma.f64 (*.f64 (cbrt.f64 wj) (cbrt.f64 wj)) (cbrt.f64 wj) (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)))
Compiler

Compiled 6744 to 3688 computations (45.3% saved)

localize20.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 5/2 (*.f64 x (*.f64 wj wj)) (fma.f64 wj wj x))
0.0b
(-.f64 (fma.f64 5/2 (*.f64 x (*.f64 wj wj)) (fma.f64 wj wj x)) (pow.f64 wj 3))
7.9b
(*.f64 x (*.f64 wj wj))

series49.0ms (0.4%)

Counts
2 → 48
Calls

2 calls:

28.0ms
(-.f64 (fma.f64 5/2 (*.f64 x (*.f64 wj wj)) (fma.f64 wj wj x)) (pow.f64 wj 3))
21.0ms
(fma.f64 5/2 (*.f64 x (*.f64 wj wj)) (fma.f64 wj wj x))

rewrite25.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
36×prod-diff_binary64
34×add-sqr-sqrt_binary64
29×*-un-lft-identity_binary64
27×add-cube-cbrt_binary64
13×cube-prod_binary64
Counts
2 → 80
Calls

2 calls:

12.0ms
(-.f64 (fma.f64 5/2 (*.f64 x (*.f64 wj wj)) (fma.f64 wj wj x)) (pow.f64 wj 3))
1.0ms
(fma.f64 5/2 (*.f64 x (*.f64 wj wj)) (fma.f64 wj wj x))

simplify170.0ms (1.5%)

Algorithm
egg-herbie
Rules
935×fma-neg_binary64
558×exp-prod_binary64
314×distribute-rgt-in_binary64
313×distribute-lft-in_binary64
251×cancel-sign-sub-inv_binary64
Counts
128 → 103
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01462889
12242531
28962102
329762083
444952080
546732080

prune291.0ms (2.6%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1332135
Fresh246
Picked101
Done011
Total1367143
Error
0.1b
Counts
143 → 7
Alt Table
StatusErrorProgram
35.2b
(-.f64 (exp.f64 (log.f64 (+.f64 x (*.f64 wj (*.f64 wj (fma.f64 5/2 x 1)))))) (pow.f64 wj 3))
11.5b
(+.f64 wj (*.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (fma.f64 wj wj -1)) (-.f64 wj 1)))
40.4b
(/.f64 (-.f64 (pow.f64 (+.f64 x (*.f64 wj (*.f64 wj (fma.f64 5/2 x 1)))) 3) (pow.f64 wj 9)) (+.f64 (pow.f64 wj 6) (*.f64 (+.f64 x (*.f64 wj (*.f64 wj (fma.f64 5/2 x 1)))) (+.f64 x (*.f64 (*.f64 wj wj) (+.f64 wj (fma.f64 5/2 x 1)))))))
29.8b
(/.f64 (fma.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)) (/.f64 (fma.f64 -1 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)) (*.f64 wj wj)) (-.f64 wj (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1))))
29.9b
(/.f64 (-.f64 (*.f64 wj wj) (*.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)) (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)))) (-.f64 wj (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1))))
11.7b
(fma.f64 (*.f64 (cbrt.f64 wj) (cbrt.f64 wj)) (cbrt.f64 wj) (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)))
2.6b
(-.f64 (fma.f64 5/2 (*.f64 x (*.f64 wj wj)) (fma.f64 wj wj x)) (fma.f64 x (fma.f64 2 wj (*.f64 8/3 (pow.f64 wj 3))) (pow.f64 wj 3)))
Compiler

Compiled 4089 to 1945 computations (52.4% saved)

localize22.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (fma.f64 wj wj -1))
0.0b
(*.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (fma.f64 wj wj -1)) (-.f64 wj 1))
0.0b
(/.f64 x (exp.f64 wj))
4.8b
(+.f64 wj (*.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (fma.f64 wj wj -1)) (-.f64 wj 1)))

series310.0ms (2.8%)

Counts
3 → 72
Calls

3 calls:

171.0ms
(+.f64 wj (*.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (fma.f64 wj wj -1)) (-.f64 wj 1)))
75.0ms
(*.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (fma.f64 wj wj -1)) (-.f64 wj 1))
63.0ms
(/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (fma.f64 wj wj -1))

rewrite100.0ms (0.9%)

Algorithm
rewrite-expression-head
Rules
98×add-sqr-sqrt_binary64
71×*-un-lft-identity_binary64
54×add-cube-cbrt_binary64
44×times-frac_binary64
36×prod-diff_binary64
Counts
3 → 163
Calls

3 calls:

32.0ms
(*.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (fma.f64 wj wj -1)) (-.f64 wj 1))
18.0ms
(/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (fma.f64 wj wj -1))
13.0ms
(+.f64 wj (*.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (fma.f64 wj wj -1)) (-.f64 wj 1)))

simplify307.0ms (2.7%)

Algorithm
egg-herbie
Rules
590×associate-/l*_binary64
274×cancel-sign-sub-inv_binary64
250×sub-neg_binary64
224×fma-neg_binary64
148×fma-def_binary64
Counts
235 → 288
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03047066
18206306
228495658
351225658

prune756.0ms (6.7%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New3243327
Fresh055
Picked101
Done011
Total3259334
Error
0.1b
Counts
334 → 9
Alt Table
StatusErrorProgram
2.6b
(-.f64 (fma.f64 5/2 (*.f64 x (*.f64 wj wj)) (fma.f64 wj wj x)) (fma.f64 x (fma.f64 2 wj (*.f64 8/3 (pow.f64 wj 3))) (pow.f64 wj 3)))
11.7b
(fma.f64 (*.f64 (cbrt.f64 wj) (cbrt.f64 wj)) (cbrt.f64 wj) (*.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (fma.f64 wj wj -1)) (-.f64 wj 1)))
35.2b
(-.f64 (exp.f64 (log.f64 (+.f64 x (*.f64 wj (*.f64 wj (fma.f64 5/2 x 1)))))) (pow.f64 wj 3))
54.0b
(-.f64 (+.f64 wj (/.f64 wj (fma.f64 wj wj -1))) (*.f64 (/.f64 wj (fma.f64 wj wj -1)) wj))
40.4b
(/.f64 (-.f64 (pow.f64 (+.f64 x (*.f64 wj (*.f64 wj (fma.f64 5/2 x 1)))) 3) (pow.f64 wj 9)) (+.f64 (pow.f64 wj 6) (*.f64 (+.f64 x (*.f64 wj (*.f64 wj (fma.f64 5/2 x 1)))) (+.f64 x (*.f64 (*.f64 wj wj) (+.f64 wj (fma.f64 5/2 x 1)))))))
29.8b
(/.f64 (fma.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)) (/.f64 (fma.f64 -1 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)) (*.f64 wj wj)) (-.f64 wj (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1))))
29.9b
(/.f64 (-.f64 (*.f64 wj wj) (*.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)) (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)))) (-.f64 wj (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1))))
39.7b
(cbrt.f64 (*.f64 (*.f64 (+.f64 wj (*.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (fma.f64 wj wj -1)) (-.f64 wj 1))) (+.f64 wj (*.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (fma.f64 wj wj -1)) (-.f64 wj 1)))) (+.f64 wj (*.f64 (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (fma.f64 wj wj -1)) (-.f64 wj 1)))))
11.7b
(fma.f64 (*.f64 (cbrt.f64 wj) (cbrt.f64 wj)) (cbrt.f64 wj) (/.f64 (-.f64 (/.f64 x (exp.f64 wj)) wj) (+.f64 wj 1)))
Compiler

Compiled 9993 to 4806 computations (51.9% saved)

regimes2.8s (24.6%)

Accuracy

Total 0.3b remaining (69.7%)

Threshold costs 0.3b (69.7%)

Counts
323 → 2
Compiler

Compiled 24189 to 14778 computations (38.9% saved)

bsearch25.0ms (0.2%)

Compiler

Compiled 18 to 8 computations (55.6% saved)

simplify25.0ms (0.2%)

Algorithm
egg-herbie
Rules
75×distribute-rgt-neg-in_binary64
59×cancel-sign-sub-inv_binary64
51×neg-sub0_binary64
51×neg-mul-1_binary64
50×distribute-lft-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03988
16488
28488
310188
412688
514388
616488
719788
823588
928088
1032188
1135888
1239388
1341888
1442988
1543488
1643688
1743288

end2.0ms (0%)

Compiler

Compiled 61 to 36 computations (41% saved)

sample3.8s (33.4%)

Algorithm
intervals
Results
1.8s3784×body8192exit
541.0ms6542×body128valid
195.0ms719×body512valid
124.0ms717×body256valid
9.0ms22×body1024valid
7.0ms77×body128invalid
1.0ms13×body128overflowed
Compiler

Compiled 373 to 212 computations (43.2% saved)

Profiling

Loading profile data...