Details

Time bar (total: 9.0s)

analyze1.0s (11.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
0%99.9%0.1%5
0%99.9%0.1%6
18.7%81.2%0.1%7
18.7%81.2%0.1%8
29.7%69.5%0.9%9
30.4%67.9%1.7%10
36.3%61.1%2.6%11
36.9%59.5%3.6%12
39.9%55.9%4.2%13
40.2%54.9%4.9%14
Compiler

Compiled 17 to 11 computations (35.3% saved)

sample3.7s (40.6%)

Results
1.3s1105×body2048valid
1.0s1891×body1024valid
529.0ms4136×body128valid
287.0ms723×body512valid
261.0ms70×body4096valid
82.0ms331×body256valid
21.0ms158×body128invalid
6.0msbody8192exit
5.0msbody2048invalid
Compiler

Compiled 50 to 32 computations (36% saved)

simplify22.0ms (0.2%)

Algorithm
egg-herbie
Rules
297×fma-def_binary64
157×fma-neg_binary64
50×cancel-sign-sub-inv_binary64
37×associate-/l*_binary64
33×sub-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01123
12520
25020
312120
418120
524720
632120
738420
847020
948320
1050920
1146220

prune3.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
16.2b
Counts
3 → 2
Alt Table
StatusErrorProgram
16.2b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
16.4b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 1 (*.f64 F F)) (tan.f64 (*.f64 (PI.f64) l))))
Compiler

Compiled 88 to 48 computations (45.5% saved)

localize78.0ms (0.9%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
0.2b
(*.f64 (PI.f64) l)
3.4b
(/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))
31.2b
(tan.f64 (*.f64 (PI.f64) l))

series133.0ms (1.5%)

Counts
4 → 60
Calls

4 calls:

84.0ms
(/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))
35.0ms
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
11.0ms
(tan.f64 (*.f64 (PI.f64) l))
2.0ms
(*.f64 (PI.f64) l)

rewrite82.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
532×log-prod_binary64
276×fma-def_binary64
201×egg-rr
187×expm1-udef_binary64
187×log1p-udef_binary64
Counts
4 → 201
Calls

4 calls:

77.0ms
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
77.0ms
(*.f64 (PI.f64) l)
77.0ms
(/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))
77.0ms
(tan.f64 (*.f64 (PI.f64) l))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0945
120045
2268945
3507045

simplify70.0ms (0.8%)

Algorithm
egg-herbie
Rules
533×associate-/l/_binary64
401×distribute-rgt-neg-in_binary64
398×distribute-lft-neg-in_binary64
305×distribute-neg-frac_binary64
268×fma-neg_binary64
Counts
261 → 229
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0541516
11611504
25701502
326271493
454611493

prune364.0ms (4%)

Pruning

22 alts after pruning (22 fresh and 0 done)

PrunedKeptTotal
New22322245
Fresh101
Picked101
Done000
Total22522247
Error
12.8b
Counts
247 → 22
Alt Table
StatusErrorProgram
24.7b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (expm1.f64 (log1p.f64 (*.f64 (PI.f64) l)))) (*.f64 F F)))
34.0b
(fma.f64 (sqrt.f64 l) (*.f64 (sqrt.f64 l) (PI.f64)) (neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))
16.6b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2) (*.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2))))
16.9b
(fma.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (cbrt.f64 l) (PI.f64)) (neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))
36.7b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (cbrt.f64 (pow.f64 (*.f64 (PI.f64) l) 3))) (*.f64 F F)))
17.1b
(fma.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (*.f64 (cbrt.f64 (PI.f64)) l) (neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))
34.1b
(-.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) l)) 2) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
30.8b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (-.f64 (exp.f64 (log1p.f64 (tan.f64 (*.f64 (PI.f64) l)))) 1) (*.f64 F F)))
16.3b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 3)) (*.f64 F F)))
23.9b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (+.f64 (log.f64 (sqrt.f64 (exp.f64 (tan.f64 (*.f64 (PI.f64) l))))) (log.f64 (sqrt.f64 (exp.f64 (tan.f64 (*.f64 (PI.f64) l)))))) (*.f64 F F)))
42.7b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (pow.f64 (pow.f64 (*.f64 (PI.f64) l) 3) 1/3)) (*.f64 F F)))
46.8b
(sqrt.f64 (pow.f64 (-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))) 2))
16.8b
(fma.f64 (*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2)) (cbrt.f64 l) (neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))
37.0b
(/.f64 1 (/.f64 (fma.f64 (PI.f64) l (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))) (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)) 2))))
28.4b
(expm1.f64 (log1p.f64 (-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))))
37.0b
(*.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)) 2)) (/.f64 1 (fma.f64 (PI.f64) l (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))))
17.1b
(fma.f64 (*.f64 l (pow.f64 (cbrt.f64 (PI.f64)) 2)) (cbrt.f64 (PI.f64)) (neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))
13.2b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) (/.f64 1 F)))
33.9b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) l)) 2)) (*.f64 F F)))
16.9b
(-.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 3) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
22.4b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (sqrt.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 2)) (*.f64 F F)))
27.2b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 l F) (+.f64 (/.f64 (PI.f64) F) (/.f64 (*.f64 1/3 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 l l))) F))))
Compiler

Compiled 6659 to 1899 computations (71.5% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) (/.f64 1 F))
0.2b
(/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)
0.2b
(*.f64 (PI.f64) l)
31.2b
(tan.f64 (*.f64 (PI.f64) l))

series89.0ms (1%)

Counts
2 → 48
Calls

2 calls:

50.0ms
(*.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) (/.f64 1 F))
38.0ms
(/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)

rewrite56.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
524×log-prod_binary64
259×pow2_binary64
186×pow1/3_binary64
179×expm1-udef_binary64
179×log1p-udef_binary64
Counts
2 → 99
Calls

2 calls:

54.0ms
(*.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) (/.f64 1 F))
54.0ms
(/.f64 (tan.f64 (*.f64 (PI.f64) l)) F)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01023
120723
2250223
3497223

simplify64.0ms (0.7%)

Algorithm
egg-herbie
Rules
801×fma-def_binary64
775×associate-/r/_binary64
699×associate-/l/_binary64
535×unswap-sqr_binary64
238×times-frac_binary64
Counts
147 → 117
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0491130
11381122
24231118
318941118
449341118
555861118

prune413.0ms (4.6%)

Pruning

25 alts after pruning (25 fresh and 0 done)

PrunedKeptTotal
New1748182
Fresh41721
Picked101
Done000
Total17925204
Error
12.8b
Counts
204 → 25
Alt Table
StatusErrorProgram
17.1b
(fma.f64 (*.f64 l (pow.f64 (cbrt.f64 (PI.f64)) 2)) (cbrt.f64 (PI.f64)) (neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))
13.2b
(-.f64 (*.f64 (PI.f64) l) (pow.f64 (*.f64 (/.f64 F (tan.f64 (*.f64 (PI.f64) l))) F) -1))
21.9b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (sqrt.f64 (pow.f64 (tan.f64 (*.f64 (PI.f64) l)) 2)) F) (/.f64 1 F)))
13.4b
(-.f64 (*.f64 (PI.f64) l) (pow.f64 (cbrt.f64 (/.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) F)) 3))
24.7b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (expm1.f64 (log1p.f64 (*.f64 (PI.f64) l)))) (*.f64 F F)))
34.0b
(fma.f64 (sqrt.f64 l) (*.f64 (sqrt.f64 l) (PI.f64)) (neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))
36.6b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (tan.f64 (cbrt.f64 (pow.f64 (*.f64 (PI.f64) l) 3))) F) (/.f64 1 F)))
16.6b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (pow.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) 2) (*.f64 (cbrt.f64 (tan.f64 (*.f64 (PI.f64) l))) (pow.f64 F -2))))
16.9b
(fma.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (cbrt.f64 l) (PI.f64)) (neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))
34.1b
(-.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) l)) 2) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
30.8b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (-.f64 (exp.f64 (log1p.f64 (tan.f64 (*.f64 (PI.f64) l)))) 1) (*.f64 F F)))
16.9b
(-.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 3) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))
13.2b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (/.f64 1 F) (/.f64 F (tan.f64 (*.f64 (PI.f64) l)))))
42.7b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (pow.f64 (pow.f64 (*.f64 (PI.f64) l) 3) 1/3)) (*.f64 F F)))
46.8b
(sqrt.f64 (pow.f64 (-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))) 2))
27.2b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 l F) (+.f64 (/.f64 (PI.f64) F) (/.f64 (*.f64 1/3 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 l l))) F))))
13.3b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 (tan.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 3)) F) (/.f64 1 F)))
16.5b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (expm1.f64 (log1p.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F))) (/.f64 1 F)))
16.8b
(fma.f64 (*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2)) (cbrt.f64 l) (neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))
37.0b
(/.f64 1 (/.f64 (fma.f64 (PI.f64) l (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))) (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)) 2))))
28.4b
(expm1.f64 (log1p.f64 (-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))))
37.0b
(*.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)) 2)) (/.f64 1 (fma.f64 (PI.f64) l (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))))
17.1b
(fma.f64 (pow.f64 (cbrt.f64 (PI.f64)) 2) (*.f64 (cbrt.f64 (PI.f64)) l) (neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))
33.9b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (tan.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) l)) 2)) (*.f64 F F)))
20.1b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (sqrt.f64 (pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) 2)) (/.f64 1 F)))
Compiler

Compiled 4547 to 2037 computations (55.2% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (/.f64 1 F) (/.f64 F (tan.f64 (*.f64 (PI.f64) l))))
0.2b
(/.f64 F (tan.f64 (*.f64 (PI.f64) l)))
0.2b
(*.f64 (PI.f64) l)
31.2b
(tan.f64 (*.f64 (PI.f64) l))

series119.0ms (1.3%)

Counts
2 → 48
Calls

2 calls:

68.0ms
(/.f64 F (tan.f64 (*.f64 (PI.f64) l)))
51.0ms
(/.f64 (/.f64 1 F) (/.f64 F (tan.f64 (*.f64 (PI.f64) l))))

rewrite56.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
568×log-prod_binary64
187×expm1-udef_binary64
187×log1p-udef_binary64
177×pow3_binary64
172×log-pow_binary64
Counts
2 → 86
Calls

2 calls:

54.0ms
(/.f64 (/.f64 1 F) (/.f64 F (tan.f64 (*.f64 (PI.f64) l))))
54.0ms
(/.f64 F (tan.f64 (*.f64 (PI.f64) l)))
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01026
121323
2270423
3502123

simplify52.0ms (0.6%)

Algorithm
egg-herbie
Rules
515×distribute-rgt-neg-in_binary64
497×distribute-lft-neg-in_binary64
430×unswap-sqr_binary64
383×associate-*r*_binary64
383×associate-*l*_binary64
Counts
134 → 104
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0621112
11651106
25841102
328391098
450041098

prune198.0ms (2.2%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New1645169
Fresh17724
Picked101
Done000
Total18212194
Error
1.1b
Counts
194 → 12
Alt Table
StatusErrorProgram
32.1b
(-.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) l)) 2) (/.f64 (/.f64 1 F) (/.f64 F (tan.f64 (*.f64 (PI.f64) l)))))
13.2b
(-.f64 (*.f64 (PI.f64) l) (+.f64 0 (/.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) F)))
1.3b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (/.f64 1 F) (-.f64 (/.f64 F (*.f64 (PI.f64) l)) (+.f64 (*.f64 1/3 (*.f64 (PI.f64) (*.f64 F l))) (+.f64 (*.f64 2/945 (*.f64 (pow.f64 (PI.f64) 5) (*.f64 (pow.f64 l 5) F))) (*.f64 1/45 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 (pow.f64 l 3) F))))))))
16.8b
(fma.f64 (*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2)) (cbrt.f64 l) (neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))
37.0b
(/.f64 1 (/.f64 (fma.f64 (PI.f64) l (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))) (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)) 2))))
13.4b
(-.f64 (*.f64 (PI.f64) l) (pow.f64 (cbrt.f64 (/.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) F)) 3))
34.0b
(fma.f64 (sqrt.f64 l) (*.f64 (sqrt.f64 l) (PI.f64)) (neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))
16.9b
(fma.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (cbrt.f64 l) (PI.f64)) (neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))
13.9b
(-.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 3) (/.f64 (/.f64 1 F) (/.f64 F (tan.f64 (*.f64 (PI.f64) l)))))
27.2b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 l F) (+.f64 (/.f64 (PI.f64) F) (/.f64 (*.f64 1/3 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 l l))) F))))
37.0b
(*.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)) 2)) (/.f64 1 (fma.f64 (PI.f64) l (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))))
16.5b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (cbrt.f64 (pow.f64 F -2)) (*.f64 (/.f64 1 (cbrt.f64 F)) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F))))
Compiler

Compiled 3991 to 1712 computations (57.1% saved)

localize26.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(pow.f64 (PI.f64) 5)
2.7b
(/.f64 (/.f64 1 F) (-.f64 (/.f64 F (*.f64 (PI.f64) l)) (+.f64 (*.f64 1/3 (*.f64 (PI.f64) (*.f64 F l))) (+.f64 (*.f64 2/945 (*.f64 (pow.f64 (PI.f64) 5) (*.f64 (pow.f64 l 5) F))) (*.f64 1/45 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 (pow.f64 l 3) F)))))))
4.3b
(*.f64 (pow.f64 l 3) F)
5.4b
(*.f64 (pow.f64 l 5) F)

series287.0ms (3.2%)

Counts
4 → 48
Calls

4 calls:

263.0ms
(/.f64 (/.f64 1 F) (-.f64 (/.f64 F (*.f64 (PI.f64) l)) (+.f64 (*.f64 1/3 (*.f64 (PI.f64) (*.f64 F l))) (+.f64 (*.f64 2/945 (*.f64 (pow.f64 (PI.f64) 5) (*.f64 (pow.f64 l 5) F))) (*.f64 1/45 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 (pow.f64 l 3) F)))))))
13.0ms
(*.f64 (pow.f64 l 5) F)
11.0ms
(*.f64 (pow.f64 l 3) F)
0.0ms
(pow.f64 (PI.f64) 5)

rewrite46.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
315×log1p-expm1-u_binary64
315×expm1-log1p-u_binary64
306×add-cbrt-cube_binary64
304×add-log-exp_binary64
303×add-exp-log_binary64
Counts
4 → 60
Calls

4 calls:

45.0ms
(pow.f64 (PI.f64) 5)
45.0ms
(/.f64 (/.f64 1 F) (-.f64 (/.f64 F (*.f64 (PI.f64) l)) (+.f64 (*.f64 1/3 (*.f64 (PI.f64) (*.f64 F l))) (+.f64 (*.f64 2/945 (*.f64 (pow.f64 (PI.f64) 5) (*.f64 (pow.f64 l 5) F))) (*.f64 1/45 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 (pow.f64 l 3) F)))))))
45.0ms
(*.f64 (pow.f64 l 3) F)
45.0ms
(*.f64 (pow.f64 l 5) F)
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03080
167874
2495474

simplify62.0ms (0.7%)

Algorithm
egg-herbie
Rules
868×unswap-sqr_binary64
551×associate-/r*_binary64
434×associate-*l*_binary64
399×associate-*r*_binary64
380×fma-neg_binary64
Counts
108 → 81
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0871422
12491416
29101408
342211408
460471408

prune136.0ms (1.5%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New79281
Fresh01111
Picked101
Done000
Total801393
Error
0.1b
Counts
93 → 13
Alt Table
StatusErrorProgram
13.4b
(-.f64 (*.f64 (PI.f64) l) (pow.f64 (cbrt.f64 (/.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) F)) 3))
0.6b
(-.f64 (*.f64 (PI.f64) l) (/.f64 (/.f64 1 F) (-.f64 (/.f64 F (*.f64 (PI.f64) l)) (+.f64 (*.f64 1/3 (*.f64 (PI.f64) (*.f64 F l))) (+.f64 (*.f64 2/945 (*.f64 (pow.f64 (PI.f64) 5) (log.f64 (pow.f64 (exp.f64 (pow.f64 l 5)) F)))) (*.f64 1/45 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 (pow.f64 l 3) F))))))))
25.9b
(-.f64 (*.f64 (PI.f64) l) (/.f64 -945/2 (*.f64 (pow.f64 (PI.f64) 5) (*.f64 F (*.f64 F (pow.f64 l 5))))))
34.0b
(fma.f64 (sqrt.f64 l) (*.f64 (sqrt.f64 l) (PI.f64)) (neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))
32.1b
(-.f64 (pow.f64 (sqrt.f64 (*.f64 (PI.f64) l)) 2) (/.f64 (/.f64 1 F) (/.f64 F (tan.f64 (*.f64 (PI.f64) l)))))
13.2b
(-.f64 (*.f64 (PI.f64) l) (+.f64 0 (/.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F) F)))
16.8b
(fma.f64 (*.f64 (PI.f64) (pow.f64 (cbrt.f64 l) 2)) (cbrt.f64 l) (neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))
37.0b
(/.f64 1 (/.f64 (fma.f64 (PI.f64) l (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))) (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)) 2))))
16.9b
(fma.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (cbrt.f64 l) (PI.f64)) (neg.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F))))
13.9b
(-.f64 (pow.f64 (cbrt.f64 (*.f64 (PI.f64) l)) 3) (/.f64 (/.f64 1 F) (/.f64 F (tan.f64 (*.f64 (PI.f64) l)))))
27.2b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (/.f64 l F) (+.f64 (/.f64 (PI.f64) F) (/.f64 (*.f64 1/3 (*.f64 (pow.f64 (PI.f64) 3) (*.f64 l l))) F))))
37.0b
(*.f64 (-.f64 (pow.f64 (*.f64 (PI.f64) l) 2) (pow.f64 (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)) 2)) (/.f64 1 (fma.f64 (PI.f64) l (/.f64 (tan.f64 (*.f64 (PI.f64) l)) (*.f64 F F)))))
16.5b
(-.f64 (*.f64 (PI.f64) l) (*.f64 (cbrt.f64 (pow.f64 F -2)) (*.f64 (/.f64 1 (cbrt.f64 F)) (/.f64 (tan.f64 (*.f64 (PI.f64) l)) F))))
Compiler

Compiled 3916 to 2235 computations (42.9% saved)

regimes1.7s (19%)

Accuracy

Total 0.5b remaining (64%)

Threshold costs 0.5b (64%)

Counts
210 → 1
Compiler

Compiled 29869 to 19157 computations (35.9% saved)

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Rules
28×*-commutative_binary64
23×+-commutative_binary64
21×sub-neg_binary64
19×neg-sub0_binary64
19×neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03376
15076
26376
38876
412476
515976
618776
720576
821376
921476
1020976

end225.0ms (2.5%)

Compiler

Compiled 406 to 263 computations (35.2% saved)

Profiling

Loading profile data...