Details

Time bar (total: 4.6s)

analyze2.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
99.9%0%0.1%1
Compiler

Compiled 13 to 9 computations (30.8% saved)

sample2.7s (59.3%)

Results
1.1s1306×body1024valid
1.1s5888×body128valid
330.0ms717×body512valid
105.0ms342×body256valid
7.0msbody2048valid
Compiler

Compiled 38 to 26 computations (31.6% saved)

simplify7.0ms (0.2%)

Algorithm
egg-herbie
Rules
fma-def_binary64
+-commutative_binary64
associate-+r+_binary64
associate-+l+_binary64
*-commutative_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0914
11412
22212
32612
42612

prune5.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
0.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.0b
(fma.f64 z (cos.f64 y) (+.f64 x (sin.f64 y)))
Compiler

Compiled 42 to 23 computations (45.2% saved)

localize12.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(cos.f64 y)
0.0b
(+.f64 x (sin.f64 y))
0.0b
(fma.f64 z (cos.f64 y) (+.f64 x (sin.f64 y)))

series32.0ms (0.7%)

Counts
3 → 64
Calls

3 calls:

19.0ms
(fma.f64 z (cos.f64 y) (+.f64 x (sin.f64 y)))
11.0ms
(+.f64 x (sin.f64 y))
2.0ms
(cos.f64 y)

rewrite5.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-log-exp_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
fma-def_binary64
Counts
3 → 36
Calls

3 calls:

3.0ms
(+.f64 x (sin.f64 y))
1.0ms
(cos.f64 y)
0.0ms
(fma.f64 z (cos.f64 y) (+.f64 x (sin.f64 y)))

simplify137.0ms (3%)

Algorithm
egg-herbie
Rules
607×cancel-sign-sub-inv_binary64
443×distribute-rgt-neg-in_binary64
357×distribute-rgt-in_binary64
346×sub-neg_binary64
340×distribute-lft-in_binary64
Counts
100 → 80
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
092991
1226940
2515929
31512928
43685928
54604928
64967928
74999928
84879928

prune62.0ms (1.3%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New74680
Fresh000
Picked101
Done000
Total75681
Error
0.0b
Counts
81 → 6
Alt Table
StatusErrorProgram
0.1b
(fma.f64 z (cbrt.f64 (pow.f64 (cos.f64 y) 3)) (+.f64 x (sin.f64 y)))
42.3b
(log1p.f64 (expm1.f64 (fma.f64 z (cos.f64 y) (+.f64 x (sin.f64 y)))))
19.8b
(fma.f64 z (cos.f64 y) (cbrt.f64 (*.f64 (*.f64 (+.f64 x (sin.f64 y)) (+.f64 x (sin.f64 y))) (+.f64 x (sin.f64 y)))))
0.2b
(fma.f64 z (*.f64 (*.f64 (cbrt.f64 (cos.f64 y)) (cbrt.f64 (cos.f64 y))) (cbrt.f64 (cos.f64 y))) (+.f64 x (sin.f64 y)))
0.0b
(fma.f64 z (*.f64 1 (cos.f64 y)) (+.f64 x (sin.f64 y)))
14.7b
(fma.f64 z (cos.f64 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 (sin.f64 y) (sin.f64 y))) (-.f64 x (sin.f64 y))))
Compiler

Compiled 1208 to 436 computations (63.9% saved)

localize9.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(cos.f64 y)
0.0b
(+.f64 x (sin.f64 y))
0.0b
(fma.f64 z (*.f64 1 (cos.f64 y)) (+.f64 x (sin.f64 y)))

series17.0ms (0.4%)

Counts
1 → 36
Calls

1 calls:

17.0ms
(fma.f64 z (*.f64 1 (cos.f64 y)) (+.f64 x (sin.f64 y)))

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Rules
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
Counts
1 → 10
Calls

1 calls:

0.0ms
(fma.f64 z (*.f64 1 (cos.f64 y)) (+.f64 x (sin.f64 y)))

simplify111.0ms (2.4%)

Algorithm
egg-herbie
Rules
520×fma-def_binary64
382×sub-neg_binary64
349×distribute-rgt-neg-in_binary64
316×distribute-rgt-in_binary64
314×distribute-lft-in_binary64
Counts
46 → 33
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
039573
186546
2219543
3763541
42794541
54412541
64906541
74940541

prune78.0ms (1.7%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New80080
Fresh055
Picked011
Done000
Total80686
Error
0.0b
Counts
86 → 6
Alt Table
StatusErrorProgram
0.1b
(fma.f64 z (cbrt.f64 (pow.f64 (cos.f64 y) 3)) (+.f64 x (sin.f64 y)))
42.3b
(log1p.f64 (expm1.f64 (fma.f64 z (cos.f64 y) (+.f64 x (sin.f64 y)))))
19.8b
(fma.f64 z (cos.f64 y) (cbrt.f64 (*.f64 (*.f64 (+.f64 x (sin.f64 y)) (+.f64 x (sin.f64 y))) (+.f64 x (sin.f64 y)))))
0.2b
(fma.f64 z (*.f64 (*.f64 (cbrt.f64 (cos.f64 y)) (cbrt.f64 (cos.f64 y))) (cbrt.f64 (cos.f64 y))) (+.f64 x (sin.f64 y)))
0.0b
(fma.f64 z (*.f64 1 (cos.f64 y)) (+.f64 x (sin.f64 y)))
14.7b
(fma.f64 z (cos.f64 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 (sin.f64 y) (sin.f64 y))) (-.f64 x (sin.f64 y))))
Compiler

Compiled 1318 to 564 computations (57.2% saved)

localize10.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (sin.f64 y))
0.0b
(fma.f64 z (cbrt.f64 (pow.f64 (cos.f64 y) 3)) (+.f64 x (sin.f64 y)))
0.4b
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
0.4b
(pow.f64 (cos.f64 y) 3)

series25.0ms (0.5%)

Counts
3 → 52
Calls

3 calls:

14.0ms
(fma.f64 z (cbrt.f64 (pow.f64 (cos.f64 y) 3)) (+.f64 x (sin.f64 y)))
9.0ms
(pow.f64 (cos.f64 y) 3)
2.0ms
(cbrt.f64 (pow.f64 (cos.f64 y) 3))

rewrite6.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
12×cbrt-prod_binary64
*-un-lft-identity_binary64
add-sqr-sqrt_binary64
add-cube-cbrt_binary64
cube-prod_binary64
Counts
3 → 58
Calls

3 calls:

2.0ms
(pow.f64 (cos.f64 y) 3)
2.0ms
(cbrt.f64 (pow.f64 (cos.f64 y) 3))
0.0ms
(fma.f64 z (cbrt.f64 (pow.f64 (cos.f64 y) 3)) (+.f64 x (sin.f64 y)))

simplify99.0ms (2.1%)

Algorithm
egg-herbie
Rules
429×distribute-rgt-in_binary64
424×associate-*l*_binary64
368×associate-*r*_binary64
368×fma-neg_binary64
226×exp-prod_binary64
Counts
110 → 101
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01081101
12181039
26391012
325011012
451561012

prune154.0ms (3.4%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New1301131
Fresh044
Picked011
Done011
Total1307137
Error
0.0b
Counts
137 → 7
Alt Table
StatusErrorProgram
0.1b
(fma.f64 z (cbrt.f64 (pow.f64 (cos.f64 y) 3)) (+.f64 x (sin.f64 y)))
42.3b
(log1p.f64 (expm1.f64 (fma.f64 z (cos.f64 y) (+.f64 x (sin.f64 y)))))
19.8b
(fma.f64 z (cos.f64 y) (cbrt.f64 (*.f64 (*.f64 (+.f64 x (sin.f64 y)) (+.f64 x (sin.f64 y))) (+.f64 x (sin.f64 y)))))
0.2b
(fma.f64 z (*.f64 (*.f64 (cbrt.f64 (cos.f64 y)) (cbrt.f64 (cos.f64 y))) (cbrt.f64 (cos.f64 y))) (+.f64 x (sin.f64 y)))
0.1b
(fma.f64 z (cbrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (cos.f64 y) 3) 3))) (+.f64 x (sin.f64 y)))
0.0b
(fma.f64 z (*.f64 1 (cos.f64 y)) (+.f64 x (sin.f64 y)))
14.7b
(fma.f64 z (cos.f64 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 (sin.f64 y) (sin.f64 y))) (-.f64 x (sin.f64 y))))
Compiler

Compiled 2191 to 990 computations (54.8% saved)

localize12.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(cbrt.f64 (pow.f64 (pow.f64 (cos.f64 y) 3) 3))
0.4b
(cbrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (cos.f64 y) 3) 3)))
0.4b
(pow.f64 (cos.f64 y) 3)
0.4b
(pow.f64 (pow.f64 (cos.f64 y) 3) 3)

series36.0ms (0.8%)

Counts
3 → 36
Calls

3 calls:

22.0ms
(pow.f64 (pow.f64 (cos.f64 y) 3) 3)
11.0ms
(cbrt.f64 (pow.f64 (pow.f64 (cos.f64 y) 3) 3))
3.0ms
(cbrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (cos.f64 y) 3) 3)))

rewrite32.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
93×cbrt-prod_binary64
54×cube-prod_binary64
54×unpow-prod-down_binary64
25×*-un-lft-identity_binary64
25×add-sqr-sqrt_binary64
Counts
3 → 129
Calls

3 calls:

8.0ms
(cbrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (cos.f64 y) 3) 3)))
6.0ms
(cbrt.f64 (pow.f64 (pow.f64 (cos.f64 y) 3) 3))
5.0ms
(pow.f64 (pow.f64 (cos.f64 y) 3) 3)

simplify160.0ms (3.5%)

Algorithm
egg-herbie
Rules
546×fma-def_binary64
531×fma-neg_binary64
368×log-prod_binary64
295×associate-+l+_binary64
250×associate-+r+_binary64
Counts
165 → 126
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01361812
12441642
27341630
316051540
443901540
549981540
649711540

prune361.0ms (7.9%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New1590159
Fresh044
Picked011
Done022
Total1597166
Error
0.0b
Counts
166 → 7
Alt Table
StatusErrorProgram
0.1b
(fma.f64 z (cbrt.f64 (pow.f64 (cos.f64 y) 3)) (+.f64 x (sin.f64 y)))
42.3b
(log1p.f64 (expm1.f64 (fma.f64 z (cos.f64 y) (+.f64 x (sin.f64 y)))))
19.8b
(fma.f64 z (cos.f64 y) (cbrt.f64 (*.f64 (*.f64 (+.f64 x (sin.f64 y)) (+.f64 x (sin.f64 y))) (+.f64 x (sin.f64 y)))))
0.2b
(fma.f64 z (*.f64 (*.f64 (cbrt.f64 (cos.f64 y)) (cbrt.f64 (cos.f64 y))) (cbrt.f64 (cos.f64 y))) (+.f64 x (sin.f64 y)))
0.1b
(fma.f64 z (cbrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (cos.f64 y) 3) 3))) (+.f64 x (sin.f64 y)))
0.0b
(fma.f64 z (*.f64 1 (cos.f64 y)) (+.f64 x (sin.f64 y)))
14.7b
(fma.f64 z (cos.f64 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 (sin.f64 y) (sin.f64 y))) (-.f64 x (sin.f64 y))))
Compiler

Compiled 3225 to 1812 computations (43.8% saved)

regimes324.0ms (7.1%)

Accuracy

Total 0.0b remaining (40.7%)

Threshold costs 0.0b (40.7%)

Counts
50 → 1
Compiler

Compiled 2796 to 1838 computations (34.3% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0812
1912
2912

end166.0ms (3.6%)

Compiler

Compiled 142 to 86 computations (39.4% saved)

Profiling

Loading profile data...