Details

Time bar (total: 6.4s)

analyze1.1s (16.4%)

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
12.5%87.4%0.1%6
18.7%81.2%0.1%7
25%73.4%1.7%8
28.1%68.7%3.2%9
31.2%62.8%6%10
32.8%60.1%7.1%11
34.3%56.7%9%12
35.1%55.2%9.7%13
35.9%53.4%10.7%14
Compiler

Compiled 15 to 12 computations (20% saved)

sample2.8s (43.1%)

Results
1.3s2348×body1024valid
621.0ms4151×body128valid
534.0ms1177×body512valid
159.0ms574×body256valid
27.0ms170×body128invalid
6.0msbody2048valid
1.0msbody1024invalid
Compiler

Compiled 44 to 35 computations (20.5% saved)

simplify14.0ms (0.2%)

Algorithm
egg-herbie
Rules
105×fma-def_binary64
66×fma-neg_binary64
27×cancel-sign-sub-inv_binary64
19×sub-neg_binary64
11×associate-/l*_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01119
12414
24814
38114
412214
516814
618714
722914
822614
924414
1024114
1121614

prune3.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.1b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.2b
(+.f64 (neg.f64 (*.f64 x (/.f64 1 (tan.f64 B)))) (/.f64 1 (sin.f64 B)))
0.1b
(-.f64 (/.f64 1 (sin.f64 B)) (/.f64 x (tan.f64 B)))
Compiler

Compiled 73 to 53 computations (27.4% saved)

localize7.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 1 (sin.f64 B)) (/.f64 x (tan.f64 B)))
0.1b
(/.f64 1 (sin.f64 B))
0.1b
(/.f64 x (tan.f64 B))

series84.0ms (1.3%)

Counts
3 → 52
Calls

3 calls:

38.0ms
(/.f64 x (tan.f64 B))
38.0ms
(-.f64 (/.f64 1 (sin.f64 B)) (/.f64 x (tan.f64 B)))
8.0ms
(/.f64 1 (sin.f64 B))

rewrite122.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
785×prod-diff_binary64
276×fma-def_binary64
254×egg-rr
223×fma-neg_binary64
184×expm1-udef_binary64
Counts
3 → 254
Calls

3 calls:

114.0ms
(-.f64 (/.f64 1 (sin.f64 B)) (/.f64 x (tan.f64 B)))
114.0ms
(/.f64 1 (sin.f64 B))
114.0ms
(/.f64 x (tan.f64 B))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0926
119926
2271426
3496526
4496626
000
100

simplify80.0ms (1.2%)

Algorithm
egg-herbie
Rules
610×+-commutative_binary64
500×sub-neg_binary64
422×associate--l+_binary64
420×fma-def_binary64
331×associate-+l+_binary64
Counts
306 → 281
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
063830
1177817
2528799
31983797
44141793
54721793
64945793

prune222.0ms (3.5%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New2738281
Fresh101
Picked101
Done000
Total2758283
Error
0.0b
Counts
283 → 8
Alt Table
StatusErrorProgram
0.1b
(fma.f64 -1 (/.f64 x (tan.f64 B)) (/.f64 1 (sin.f64 B)))
0.2b
(-.f64 (/.f64 1 (sin.f64 B)) (*.f64 x (/.f64 1 (tan.f64 B))))
26.7b
(/.f64 (-.f64 (pow.f64 (sin.f64 B) -2) (pow.f64 (/.f64 x (tan.f64 B)) 2)) (+.f64 (/.f64 x (tan.f64 B)) (/.f64 1 (sin.f64 B))))
35.2b
(/.f64 (-.f64 1 x) B)
0.7b
(-.f64 (/.f64 1 (sin.f64 B)) (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (tan.f64 B)) 2)) (/.f64 x (cbrt.f64 (tan.f64 B)))))
12.8b
(fma.f64 (-.f64 (tan.f64 B) (*.f64 x (sin.f64 B))) (/.f64 1 (*.f64 (tan.f64 B) (sin.f64 B))) (fma.f64 (neg.f64 (/.f64 1 (tan.f64 B))) x (/.f64 x (tan.f64 B))))
0.2b
(-.f64 (/.f64 1 (sin.f64 B)) (pow.f64 (/.f64 (tan.f64 B) x) -1))
0.6b
(-.f64 (/.f64 1 (sin.f64 B)) (pow.f64 (cbrt.f64 (/.f64 x (tan.f64 B))) 3))
Compiler

Compiled 8088 to 3083 computations (61.9% saved)

localize9.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 -1 (/.f64 x (tan.f64 B)) (/.f64 1 (sin.f64 B)))
0.1b
(/.f64 1 (sin.f64 B))
0.1b
(/.f64 x (tan.f64 B))

series40.0ms (0.6%)

Counts
1 → 24
Calls

1 calls:

40.0ms
(fma.f64 -1 (/.f64 x (tan.f64 B)) (/.f64 1 (sin.f64 B)))

rewrite44.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
884×log1p-expm1-u_binary64
884×expm1-log1p-u_binary64
121×prod-diff_binary64
98×add-sqr-sqrt_binary64
90×add-cbrt-cube_binary64
Counts
1 → 23
Calls

1 calls:

43.0ms
(fma.f64 -1 (/.f64 x (tan.f64 B)) (/.f64 1 (sin.f64 B)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01015
119815
2228815
3566115
000
100

simplify57.0ms (0.9%)

Algorithm
egg-herbie
Rules
591×+-commutative_binary64
412×cancel-sign-sub-inv_binary64
402×associate--l+_binary64
357×sub-neg_binary64
353×fma-neg_binary64
Counts
47 → 35
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
053482
1138473
2400466
31549464
42834458
54905458
65038458

prune95.0ms (1.5%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New1060106
Fresh077
Picked011
Done000
Total1068114
Error
0.0b
Counts
114 → 8
Alt Table
StatusErrorProgram
0.1b
(fma.f64 -1 (/.f64 x (tan.f64 B)) (/.f64 1 (sin.f64 B)))
0.2b
(-.f64 (/.f64 1 (sin.f64 B)) (*.f64 x (/.f64 1 (tan.f64 B))))
26.7b
(/.f64 (-.f64 (pow.f64 (sin.f64 B) -2) (pow.f64 (/.f64 x (tan.f64 B)) 2)) (+.f64 (/.f64 x (tan.f64 B)) (/.f64 1 (sin.f64 B))))
35.2b
(/.f64 (-.f64 1 x) B)
0.7b
(-.f64 (/.f64 1 (sin.f64 B)) (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (tan.f64 B)) 2)) (/.f64 x (cbrt.f64 (tan.f64 B)))))
12.8b
(fma.f64 (-.f64 (tan.f64 B) (*.f64 x (sin.f64 B))) (/.f64 1 (*.f64 (tan.f64 B) (sin.f64 B))) (fma.f64 (neg.f64 (/.f64 1 (tan.f64 B))) x (/.f64 x (tan.f64 B))))
0.2b
(-.f64 (/.f64 1 (sin.f64 B)) (pow.f64 (/.f64 (tan.f64 B) x) -1))
0.6b
(-.f64 (/.f64 1 (sin.f64 B)) (pow.f64 (cbrt.f64 (/.f64 x (tan.f64 B))) 3))
Compiler

Compiled 1886 to 1014 computations (46.2% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 1 (sin.f64 B)) (*.f64 x (/.f64 1 (tan.f64 B))))
0.1b
(/.f64 1 (sin.f64 B))
0.1b
(/.f64 1 (tan.f64 B))
0.2b
(*.f64 x (/.f64 1 (tan.f64 B)))

series181.0ms (2.8%)

Counts
3 → 60
Calls

3 calls:

129.0ms
(*.f64 x (/.f64 1 (tan.f64 B)))
37.0ms
(-.f64 (/.f64 1 (sin.f64 B)) (*.f64 x (/.f64 1 (tan.f64 B))))
15.0ms
(/.f64 1 (tan.f64 B))

rewrite124.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
846×prod-diff_binary64
689×fma-udef_binary64
192×expm1-udef_binary64
192×log1p-udef_binary64
144×fma-neg_binary64
Counts
3 → 123
Calls

3 calls:

121.0ms
(-.f64 (/.f64 1 (sin.f64 B)) (*.f64 x (/.f64 1 (tan.f64 B))))
121.0ms
(/.f64 1 (tan.f64 B))
121.0ms
(*.f64 x (/.f64 1 (tan.f64 B)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01026
121926
2271026
3499226
4453826
5510426
000
100

simplify92.0ms (1.4%)

Algorithm
egg-herbie
Rules
470×cancel-sign-sub-inv_binary64
461×sub-neg_binary64
439×associate--l+_binary64
433×fma-def_binary64
389×fma-neg_binary64
Counts
183 → 151
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
068894
1190879
2573864
32110863
44178859
54760859
65013859

prune155.0ms (2.4%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New1810181
Fresh066
Picked011
Done011
Total1818189
Error
0.0b
Counts
189 → 8
Alt Table
StatusErrorProgram
0.1b
(fma.f64 -1 (/.f64 x (tan.f64 B)) (/.f64 1 (sin.f64 B)))
0.2b
(-.f64 (/.f64 1 (sin.f64 B)) (*.f64 x (/.f64 1 (tan.f64 B))))
26.7b
(/.f64 (-.f64 (pow.f64 (sin.f64 B) -2) (pow.f64 (/.f64 x (tan.f64 B)) 2)) (+.f64 (/.f64 x (tan.f64 B)) (/.f64 1 (sin.f64 B))))
35.2b
(/.f64 (-.f64 1 x) B)
0.7b
(-.f64 (/.f64 1 (sin.f64 B)) (*.f64 (/.f64 1 (pow.f64 (cbrt.f64 (tan.f64 B)) 2)) (/.f64 x (cbrt.f64 (tan.f64 B)))))
12.8b
(fma.f64 (-.f64 (tan.f64 B) (*.f64 x (sin.f64 B))) (/.f64 1 (*.f64 (tan.f64 B) (sin.f64 B))) (fma.f64 (neg.f64 (/.f64 1 (tan.f64 B))) x (/.f64 x (tan.f64 B))))
0.2b
(-.f64 (/.f64 1 (sin.f64 B)) (pow.f64 (/.f64 (tan.f64 B) x) -1))
0.6b
(-.f64 (/.f64 1 (sin.f64 B)) (pow.f64 (cbrt.f64 (/.f64 x (tan.f64 B))) 3))
Compiler

Compiled 3572 to 1833 computations (48.7% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 1 (sin.f64 B)) (pow.f64 (/.f64 (tan.f64 B) x) -1))
0.1b
(/.f64 1 (sin.f64 B))
0.1b
(/.f64 (tan.f64 B) x)
0.3b
(pow.f64 (/.f64 (tan.f64 B) x) -1)

series110.0ms (1.7%)

Counts
3 → 72
Calls

3 calls:

45.0ms
(pow.f64 (/.f64 (tan.f64 B) x) -1)
43.0ms
(-.f64 (/.f64 1 (sin.f64 B)) (pow.f64 (/.f64 (tan.f64 B) x) -1))
22.0ms
(/.f64 (tan.f64 B) x)

rewrite133.0ms (2.1%)

Algorithm
batch-egg-rewrite
Rules
662×prod-diff_binary64
452×fma-udef_binary64
293×fma-def_binary64
214×fma-neg_binary64
208×egg-rr
Counts
3 → 208
Calls

3 calls:

128.0ms
(-.f64 (/.f64 1 (sin.f64 B)) (pow.f64 (/.f64 (tan.f64 B) x) -1))
128.0ms
(/.f64 (tan.f64 B) x)
128.0ms
(pow.f64 (/.f64 (tan.f64 B) x) -1)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01132
123626
2289126
3481326
4478026
5492626
000
100

simplify84.0ms (1.3%)

Algorithm
egg-herbie
Rules
536×sub-neg_binary64
418×associate--l+_binary64
388×fma-def_binary64
331×associate-+l+_binary64
330×cancel-sign-sub-inv_binary64
Counts
280 → 236
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0751077
12031064
25901046
320991044
443141040
549721040
650821040

prune224.0ms (3.5%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New2642266
Fresh235
Picked101
Done022
Total2677274
Error
0.0b
Counts
274 → 7
Alt Table
StatusErrorProgram
0.1b
(fma.f64 -1 (/.f64 x (tan.f64 B)) (/.f64 1 (sin.f64 B)))
0.2b
(-.f64 (/.f64 1 (sin.f64 B)) (*.f64 x (/.f64 1 (tan.f64 B))))
0.2b
(-.f64 (/.f64 1 (sin.f64 B)) (pow.f64 (*.f64 (tan.f64 B) (/.f64 1 x)) -1))
26.7b
(/.f64 (-.f64 (pow.f64 (sin.f64 B) -2) (pow.f64 (/.f64 x (tan.f64 B)) 2)) (+.f64 (/.f64 x (tan.f64 B)) (/.f64 1 (sin.f64 B))))
35.2b
(/.f64 (-.f64 1 x) B)
12.8b
(fma.f64 (-.f64 (tan.f64 B) (*.f64 x (sin.f64 B))) (/.f64 1 (*.f64 (tan.f64 B) (sin.f64 B))) (fma.f64 (neg.f64 (/.f64 1 (tan.f64 B))) x (/.f64 x (tan.f64 B))))
0.2b
(-.f64 (/.f64 1 (sin.f64 B)) (pow.f64 (/.f64 (sin.f64 B) (*.f64 x (cos.f64 B))) -1))
Compiler

Compiled 5838 to 2491 computations (57.3% saved)

regimes603.0ms (9.4%)

Accuracy

Total 0.1b remaining (81.1%)

Threshold costs 0.1b (81.1%)

Counts
165 → 1
Compiler

Compiled 8317 to 5988 computations (28% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01015
11215
21115

end101.0ms (1.6%)

Compiler

Compiled 138 to 94 computations (31.9% saved)

Profiling

Loading profile data...