Details

Time bar (total: 11.3s)

analyze5.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%49.7%50.3%0
0%49.7%50.3%1
0%49.7%50.3%2
24.8%24.8%50.3%3
37.3%12.4%50.3%4
43.5%6.2%50.3%5
46.6%3.1%50.3%6
48.1%1.6%50.3%7
48.9%0.8%50.3%8
49.3%0.4%50.3%9
49.5%0.2%50.3%10
49.6%0.1%50.3%11
49.6%0%50.3%12
49.7%0%50.3%13
49.7%0%50.3%14
Compiler

Compiled 16 to 12 computations (25% saved)

sample9.5s (84.5%)

Results
7.6s4107×body2048valid
1.2s2106×body1024valid
317.0ms1028×body512valid
204.0ms240×body4096valid
110.0ms531×body256valid
31.0ms244×body128valid
Compiler

Compiled 41 to 31 computations (24.4% saved)

simplify10.0ms (0.1%)

Algorithm
egg-herbie
Rules
39×fma-def_binary64
32×fma-neg_binary64
14×cancel-sign-sub-inv_binary64
12×sub-neg_binary64
10×distribute-rgt-in_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0712
11112
21712
32512
43312
55112
67612
79312
811012
912012
1012412
1112612
1211212

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
60.1b
Counts
2 → 1
Alt Table
StatusErrorProgram
60.1b
(-.f64 (/.f64 1 x) (/.f64 1 (tan.f64 x)))
Compiler

Compiled 27 to 21 computations (22.2% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(/.f64 1 (tan.f64 x))
3.1b
(-.f64 (/.f64 1 x) (/.f64 1 (tan.f64 x)))

series24.0ms (0.2%)

Counts
2 → 24
Calls

2 calls:

15.0ms
(/.f64 1 (tan.f64 x))
10.0ms
(-.f64 (/.f64 1 x) (/.f64 1 (tan.f64 x)))

rewrite61.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
823×log1p-expm1-u_binary64
823×expm1-log1p-u_binary64
592×prod-diff_binary64
126×egg-rr
82×add-sqr-sqrt_binary64
Counts
2 → 126
Calls

2 calls:

58.0ms
(/.f64 1 (tan.f64 x))
58.0ms
(-.f64 (/.f64 1 x) (/.f64 1 (tan.f64 x)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0718
116018
2207018
3616918
000
100

simplify85.0ms (0.8%)

Algorithm
egg-herbie
Rules
650×fma-neg_binary64
529×distribute-rgt-neg-in_binary64
519×associate-*l*_binary64
498×cancel-sign-sub-inv_binary64
420×distribute-lft-neg-in_binary64
Counts
150 → 144
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
033281
188281
2215279
3524275
41318275
52674275
63921275
74461275
84870275

prune73.0ms (0.6%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New1431144
Fresh000
Picked101
Done000
Total1441145
Error
0.4b
Counts
145 → 1
Alt Table
StatusErrorProgram
0.4b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))))
Compiler

Compiled 2955 to 1813 computations (38.6% saved)

localize10.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(*.f64 1/45 (pow.f64 x 3))
0.4b
(fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))

series6.0ms (0.1%)

Counts
2 → 12
Calls

2 calls:

3.0ms
(fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))
3.0ms
(*.f64 1/45 (pow.f64 x 3))

rewrite43.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
649×log1p-expm1-u_binary64
649×expm1-log1p-u_binary64
305×log-prod_binary64
134×expm1-udef_binary64
134×log1p-udef_binary64
Counts
2 → 45
Calls

2 calls:

42.0ms
(*.f64 1/45 (pow.f64 x 3))
42.0ms
(fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0818
116718
2169518
3511718
000
100

simplify149.0ms (1.3%)

Algorithm
egg-herbie
Rules
1032×sqr-pow_binary64
529×cube-prod_binary64
522×pow-sqr_binary64
481×fabs-mul_binary64
452×associate-*l*_binary64
Counts
57 → 48
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
010117
122117
241117
370117
4118117
5246117
6679117
7996117
81000117
91130117
101284117
111438117
121667117
131968117
142316117
152791117
163409117
173605117
183779117
193893117
203940117
213992117
224870117
234773117

prune56.0ms (0.5%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New43548
Fresh000
Picked011
Done000
Total43649
Error
0.2b
Counts
49 → 6
Alt Table
StatusErrorProgram
30.8b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (pow.f64 (sqrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 2)))
1.5b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (pow.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 3)))
28.2b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (/.f64 (-.f64 (*.f64 (*.f64 1/3 x) (*.f64 1/3 x)) (*.f64 1/2025 (pow.f64 x 6))) (-.f64 (*.f64 1/3 x) (*.f64 1/45 (pow.f64 x 3))))))
41.7b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (/.f64 (+.f64 (pow.f64 (*.f64 1/3 x) 3) (pow.f64 (*.f64 1/45 (pow.f64 x 3)) 3)) (fma.f64 (*.f64 1/3 x) (*.f64 1/3 x) (-.f64 (*.f64 1/2025 (pow.f64 x 6)) (*.f64 (*.f64 1/3 x) (*.f64 1/45 (pow.f64 x 3))))))))
0.4b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))))
1.6b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (*.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) (pow.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 2))))
Compiler

Compiled 1444 to 1167 computations (19.2% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 1/45 (pow.f64 x 3))
0.4b
(fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))
0.6b
(cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3))))
0.7b
(pow.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 3)

series76.0ms (0.7%)

Counts
2 → 24
Calls

2 calls:

68.0ms
(pow.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 3)
7.0ms
(cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3))))

rewrite43.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
722×log1p-expm1-u_binary64
722×expm1-log1p-u_binary64
146×expm1-udef_binary64
146×log1p-udef_binary64
117×prod-diff_binary64
Counts
2 → 49
Calls

2 calls:

42.0ms
(cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3))))
42.0ms
(pow.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 3)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01024
119024
2189524
3494224
000
100

simplify80.0ms (0.7%)

Algorithm
egg-herbie
Rules
383×fma-neg_binary64
370×cancel-sign-sub-inv_binary64
292×unswap-sqr_binary64
232×fma-def_binary64
209×associate-/l/_binary64
Counts
73 → 85
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0841184
12381134
2629827
32353524
44638508
54994508
64939508

prune134.0ms (1.2%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1312133
Fresh134
Picked101
Done011
Total1336139
Error
0.2b
Counts
139 → 6
Alt Table
StatusErrorProgram
41.8b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (*.f64 (+.f64 (/.f64 15 (*.f64 x x)) 1) (*.f64 1/45 (pow.f64 x 3)))))
1.9b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 3)) 3)))
30.8b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (pow.f64 (sqrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 2)))
41.7b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (/.f64 (+.f64 (pow.f64 (*.f64 1/3 x) 3) (pow.f64 (*.f64 1/45 (pow.f64 x 3)) 3)) (fma.f64 (*.f64 1/3 x) (*.f64 1/3 x) (-.f64 (*.f64 1/2025 (pow.f64 x 6)) (*.f64 (*.f64 1/3 x) (*.f64 1/45 (pow.f64 x 3))))))))
0.4b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))))
1.6b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (*.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) (pow.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 2))))
Compiler

Compiled 4153 to 3425 computations (17.5% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) (pow.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 2))
0.4b
(fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))
0.5b
(pow.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 2)
0.6b
(cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3))))

series19.0ms (0.2%)

Counts
2 → 24
Calls

2 calls:

16.0ms
(pow.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 2)
3.0ms
(*.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) (pow.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 2))

rewrite46.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
813×log1p-expm1-u_binary64
813×expm1-log1p-u_binary64
117×prod-diff_binary64
101×add-sqr-sqrt_binary64
97×add-cbrt-cube_binary64
Counts
2 → 37
Calls

2 calls:

45.0ms
(*.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) (pow.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 2))
45.0ms
(pow.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 2)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01227
122825
2214325
3503525
000
100

simplify83.0ms (0.7%)

Algorithm
egg-herbie
Rules
673×fma-neg_binary64
545×cancel-sign-sub-inv_binary64
298×neg-mul-1_binary64
264×distribute-rgt-neg-in_binary64
258×associate-*r*_binary64
Counts
61 → 63
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
079893
1221863
2604623
32663481
44451469
54894469
64919469

prune245.0ms (2.2%)

Pruning

11 alts after pruning (10 fresh and 1 done)

PrunedKeptTotal
New2136219
Fresh044
Picked101
Done011
Total21411225
Error
0.1b
Counts
225 → 11
Alt Table
StatusErrorProgram
1.9b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (*.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 3)) 2))))
41.7b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (/.f64 (+.f64 (pow.f64 (*.f64 1/3 x) 3) (pow.f64 (*.f64 1/45 (pow.f64 x 3)) 3)) (fma.f64 (*.f64 1/3 x) (*.f64 1/3 x) (-.f64 (*.f64 1/2025 (pow.f64 x 6)) (*.f64 (*.f64 1/3 x) (*.f64 1/45 (pow.f64 x 3))))))))
31.3b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (*.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) (pow.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 2)) 2))))
0.4b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))))
2.0b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3))))) 3) (pow.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 2))))
32.7b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (*.f64 (exp.f64 (log.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))))) (pow.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 2))))
28.5b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (*.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) (cbrt.f64 (pow.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3))) 2)))))
32.7b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (*.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) (*.f64 (cbrt.f64 (pow.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3))) 2/3)) (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3))))) (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))))))))
41.8b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (*.f64 (+.f64 (/.f64 15 (*.f64 x x)) 1) (*.f64 1/45 (pow.f64 x 3)))))
1.9b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 3)) 3)))
30.8b
(fma.f64 2/945 (pow.f64 x 5) (fma.f64 1/4725 (pow.f64 x 7) (pow.f64 (sqrt.f64 (fma.f64 1/3 x (*.f64 1/45 (pow.f64 x 3)))) 2)))
Compiler

Compiled 9024 to 7415 computations (17.8% saved)

regimes175.0ms (1.5%)

Accuracy

Total 0.2b remaining (45.3%)

Threshold costs 0.2b (45.3%)

Counts
76 → 1
Compiler

Compiled 4094 to 3378 computations (17.5% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01625
11725
21725

end286.0ms (2.5%)

Compiler

Compiled 399 to 325 computations (18.5% saved)

Profiling

Loading profile data...