Details

Time bar (total: 6.1s)

analyze1.2s (19.9%)

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 (47%)

Results
1.5s2422×body1024valid
649.0ms4127×body128valid
433.0ms1107×body512valid
173.0ms593×body256valid
27.0ms183×body128invalid
7.0msbody2048valid
2.0msbody1024invalid
1.0msbody256invalid
0.0msbody512invalid
Compiler

Compiled 44 to 35 computations (20.5% saved)

simplify12.0ms (0.2%)

Algorithm
egg-herbie
Rules
105×fma-def_binary64
66×fma-neg_binary64
25×cancel-sign-sub-inv_binary64
19×sub-neg_binary64
11×associate-/l*_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01119
12414
25114
39014
414314
521614
626714
733714
841914
943914
1044414
Stop Event
saturated
Counts
1 → 2

prune3.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.2b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.2b
(-.f64 (/.f64 1 (sin.f64 B)) (/.f64 x (tan.f64 B)))
0.2b
(+.f64 (neg.f64 (*.f64 x (/.f64 1 (tan.f64 B)))) (/.f64 1 (sin.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))

series79.0ms (1.3%)

Counts
3 → 52
Calls

3 calls:

36.0ms
(-.f64 (/.f64 1 (sin.f64 B)) (/.f64 x (tan.f64 B)))
36.0ms
(/.f64 x (tan.f64 B))
6.0ms
(/.f64 1 (sin.f64 B))

rewrite84.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
785×prod-diff_binary64
230×egg-rr
184×expm1-udef_binary64
184×log1p-udef_binary64
103×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0926
120026
2290326
Stop Event
node limit
Counts
3 → 230
Calls

3 calls:

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

simplify37.0ms (0.6%)

Algorithm
egg-herbie
Rules
420×associate--l+_binary64
420×fma-def_binary64
330×cancel-sign-sub-inv_binary64
326×associate-+l+_binary64
283×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
063830
1181817
2551799
32457797
Stop Event
node limit
Counts
282 → 259

prune271.0ms (4.5%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New24910259
Fresh101
Picked101
Done000
Total25110261
Error
0b
Counts
261 → 10
Alt Table
StatusErrorProgram
8.1b
(/.f64 (-.f64 (/.f64 (tan.f64 B) x) (sin.f64 B)) (*.f64 (sin.f64 B) (/.f64 (tan.f64 B) x)))
0.6b
(-.f64 (/.f64 1 (sin.f64 B)) (*.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (/.f64 1 (tan.f64 B)))))
16.3b
(-.f64 (cbrt.f64 (pow.f64 (sin.f64 B) -3)) (/.f64 x (tan.f64 B)))
12.2b
(-.f64 (*.f64 (/.f64 1 (cbrt.f64 (sin.f64 B))) (cbrt.f64 (pow.f64 (sin.f64 B) -2))) (/.f64 x (tan.f64 B)))
32.2b
(-.f64 (pow.f64 (pow.f64 (sin.f64 B) -1/2) 2) (/.f64 x (tan.f64 B)))
0.2b
(/.f64 (/.f64 (-.f64 (tan.f64 B) (*.f64 x (sin.f64 B))) (sin.f64 B)) (tan.f64 B))
0.6b
(-.f64 (/.f64 1 (sin.f64 B)) (*.f64 (cbrt.f64 (/.f64 x (tan.f64 B))) (pow.f64 (cbrt.f64 (/.f64 x (tan.f64 B))) 2)))
12.1b
(*.f64 (-.f64 (tan.f64 B) (*.f64 x (sin.f64 B))) (/.f64 1 (*.f64 (tan.f64 B) (sin.f64 B))))
31.3b
(-.f64 (fma.f64 B 1/6 (/.f64 1 B)) (/.f64 x (tan.f64 B)))
0.2b
(-.f64 (/.f64 1 (sin.f64 B)) (/.f64 (*.f64 x (cos.f64 B)) (sin.f64 B)))
Compiler

Compiled 7675 to 3260 computations (57.5% saved)

localize10.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

series49.0ms (0.8%)

Counts
3 → 35
Calls

3 calls:

23.0ms
(-.f64 (/.f64 1 (sin.f64 B)) (/.f64 (*.f64 x (cos.f64 B)) (sin.f64 B)))
19.0ms
(/.f64 (*.f64 x (cos.f64 B)) (sin.f64 B))
7.0ms
(*.f64 x (cos.f64 B))

rewrite119.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
911×prod-diff_binary64
328×egg-rr
111×add-sqr-sqrt_binary64
104×add-cbrt-cube_binary64
104×log1p-expm1-u_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01031
121926
2325626
Stop Event
node limit
Counts
3 → 328
Calls

3 calls:

108.0ms
(-.f64 (/.f64 1 (sin.f64 B)) (/.f64 (*.f64 x (cos.f64 B)) (sin.f64 B)))
108.0ms
(*.f64 x (cos.f64 B))
108.0ms
(/.f64 (*.f64 x (cos.f64 B)) (sin.f64 B))

simplify43.0ms (0.7%)

Algorithm
egg-herbie
Rules
504×fma-neg_binary64
428×fma-def_binary64
310×associate-+l+_binary64
257×distribute-rgt-neg-in_binary64
252×distribute-lft-neg-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
076526
1218514
2686492
33116488
Stop Event
node limit
Counts
363 → 356

prune326.0ms (5.4%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New3824386
Fresh639
Picked101
Done000
Total3897396
Error
0b
Counts
396 → 7
Alt Table
StatusErrorProgram
12.1b
(*.f64 (-.f64 (tan.f64 B) (*.f64 x (sin.f64 B))) (/.f64 1 (*.f64 (tan.f64 B) (sin.f64 B))))
11.6b
(/.f64 (-.f64 (sin.f64 B) (*.f64 (*.f64 x (cos.f64 B)) (sin.f64 B))) (pow.f64 (sin.f64 B) 2))
0.2b
(/.f64 (/.f64 (-.f64 (tan.f64 B) (*.f64 x (sin.f64 B))) (sin.f64 B)) (tan.f64 B))
11.6b
(/.f64 (-.f64 (tan.f64 B) (*.f64 (sin.f64 B) x)) (*.f64 (sin.f64 B) (tan.f64 B)))
0.2b
(/.f64 (-.f64 1 (*.f64 x (cos.f64 B))) (sin.f64 B))
16.3b
(-.f64 (cbrt.f64 (pow.f64 (sin.f64 B) -3)) (/.f64 x (tan.f64 B)))
0.2b
(*.f64 (/.f64 1 (sin.f64 B)) (-.f64 1 (*.f64 x (cos.f64 B))))
Compiler

Compiled 13228 to 5112 computations (61.4% saved)

localize7.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

series23.0ms (0.4%)

Counts
2 → 28
Calls

2 calls:

22.0ms
(/.f64 (-.f64 1 (*.f64 x (cos.f64 B))) (sin.f64 B))
1.0ms
(cos.f64 B)

rewrite60.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
535×prod-diff_binary64
497×log-prod_binary64
174×expm1-udef_binary64
173×log1p-udef_binary64
151×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0917
119217
2259617
Stop Event
node limit
Counts
2 → 109
Calls

2 calls:

56.0ms
(cos.f64 B)
56.0ms
(/.f64 (-.f64 1 (*.f64 x (cos.f64 B))) (sin.f64 B))

simplify27.0ms (0.4%)

Algorithm
egg-herbie
Rules
637×associate-*l*_binary64
423×associate--l+_binary64
325×fma-def_binary64
293×associate-+l+_binary64
248×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
071453
1194440
2558429
32421427
Stop Event
node limit
Counts
137 → 129

prune122.0ms (2%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1530153
Fresh066
Picked011
Done000
Total1537160
Error
0b
Counts
160 → 7
Alt Table
StatusErrorProgram
12.1b
(*.f64 (-.f64 (tan.f64 B) (*.f64 x (sin.f64 B))) (/.f64 1 (*.f64 (tan.f64 B) (sin.f64 B))))
11.6b
(/.f64 (-.f64 (sin.f64 B) (*.f64 (*.f64 x (cos.f64 B)) (sin.f64 B))) (pow.f64 (sin.f64 B) 2))
0.2b
(/.f64 (/.f64 (-.f64 (tan.f64 B) (*.f64 x (sin.f64 B))) (sin.f64 B)) (tan.f64 B))
11.6b
(/.f64 (-.f64 (tan.f64 B) (*.f64 (sin.f64 B) x)) (*.f64 (sin.f64 B) (tan.f64 B)))
0.2b
(/.f64 (-.f64 1 (*.f64 x (cos.f64 B))) (sin.f64 B))
16.3b
(-.f64 (cbrt.f64 (pow.f64 (sin.f64 B) -3)) (/.f64 x (tan.f64 B)))
0.2b
(*.f64 (/.f64 1 (sin.f64 B)) (-.f64 1 (*.f64 x (cos.f64 B))))
Compiler

Compiled 4387 to 1885 computations (57% saved)

localize8.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

series17.0ms (0.3%)

Counts
1 → 24
Calls

1 calls:

17.0ms
(*.f64 (/.f64 1 (sin.f64 B)) (-.f64 1 (*.f64 x (cos.f64 B))))

rewrite48.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
512×log-prod_binary64
457×prod-diff_binary64
185×expm1-udef_binary64
184×log1p-udef_binary64
166×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01014
121114
2272114
Stop Event
node limit
Counts
1 → 68
Calls

1 calls:

46.0ms
(*.f64 (/.f64 1 (sin.f64 B)) (-.f64 1 (*.f64 x (cos.f64 B))))

simplify33.0ms (0.5%)

Algorithm
egg-herbie
Rules
558×+-commutative_binary64
414×cancel-sign-sub-inv_binary64
400×associate--l+_binary64
366×sub-neg_binary64
355×fma-neg_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
054397
1148388
2425381
31874379
43727373
Stop Event
node limit
Counts
92 → 79

prune123.0ms (2%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New1620162
Fresh055
Picked011
Done011
Total1627169
Error
0b
Counts
169 → 7
Alt Table
StatusErrorProgram
12.1b
(*.f64 (-.f64 (tan.f64 B) (*.f64 x (sin.f64 B))) (/.f64 1 (*.f64 (tan.f64 B) (sin.f64 B))))
11.6b
(/.f64 (-.f64 (sin.f64 B) (*.f64 (*.f64 x (cos.f64 B)) (sin.f64 B))) (pow.f64 (sin.f64 B) 2))
0.2b
(/.f64 (/.f64 (-.f64 (tan.f64 B) (*.f64 x (sin.f64 B))) (sin.f64 B)) (tan.f64 B))
11.6b
(/.f64 (-.f64 (tan.f64 B) (*.f64 (sin.f64 B) x)) (*.f64 (sin.f64 B) (tan.f64 B)))
0.2b
(/.f64 (-.f64 1 (*.f64 x (cos.f64 B))) (sin.f64 B))
16.3b
(-.f64 (cbrt.f64 (pow.f64 (sin.f64 B) -3)) (/.f64 x (tan.f64 B)))
0.2b
(*.f64 (/.f64 1 (sin.f64 B)) (-.f64 1 (*.f64 x (cos.f64 B))))
Compiler

Compiled 2761 to 1484 computations (46.3% saved)

regimes396.0ms (6.5%)

Accuracy

Total 0.2b remaining (89.7%)

Threshold costs 0.2b (89.7%)

Counts
121 → 1
Compiler

Compiled 5095 to 3717 computations (27% saved)

simplify2.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
0914
11714
22814
33414
43814
53914
Stop Event
saturated

end99.0ms (1.6%)

Compiler

Compiled 122 to 79 computations (35.2% saved)

Profiling

Loading profile data...