Details

Time bar (total: 4.9s)

analyze423.0ms (8.7%)

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
25%74.9%0.1%6
37.4%62.4%0.1%7
56.2%43.7%0.1%8
56.2%43.7%0.1%9
65.5%34.3%0.1%10
76.5%23.4%0.1%11
76.5%23.4%0.1%12
81.9%17.9%0.1%13
87.8%12.1%0.1%14
Compiler

Compiled 13 to 9 computations (30.8% saved)

sample2.3s (47.2%)

Results
926.0ms5907×body128valid
925.0ms1329×body1024valid
279.0ms694×body512valid
89.0ms317×body256valid
12.0msbody2048valid
Compiler

Compiled 38 to 26 computations (31.6% saved)

simplify18.0ms (0.4%)

Algorithm
egg-herbie
Rules
228×fma-def_binary64
171×fma-neg_binary64
68×cancel-sign-sub-inv_binary64
44×distribute-rgt-in_binary64
42×associate--r+_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0914
11814
23814
36714
411814
518314
632414
753114
868114
984614
1095014
1196014
Stop Event
saturated
Counts
1 → 2

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
0.1b
Counts
3 → 1
Alt Table
StatusErrorProgram
0.1b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
Compiler

Compiled 45 to 26 computations (42.2% saved)

localize7.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(cos.f64 y)
0.0b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
0.1b
(*.f64 z (sin.f64 y))

series20.0ms (0.4%)

Counts
3 → 64
Calls

3 calls:

13.0ms
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
6.0ms
(*.f64 z (sin.f64 y))
1.0ms
(cos.f64 y)

rewrite63.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
521×log-prod_binary64
460×fma-def_binary64
217×fma-neg_binary64
194×expm1-udef_binary64
194×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0923
120223
2296423
Stop Event
node limit
Counts
3 → 170
Calls

3 calls:

60.0ms
(cos.f64 y)
60.0ms
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
60.0ms
(*.f64 z (sin.f64 y))

simplify44.0ms (0.9%)

Algorithm
egg-herbie
Rules
514×fma-neg_binary64
427×sub-neg_binary64
268×unswap-sqr_binary64
267×*-commutative_binary64
204×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
058715
1176703
2508687
31785681
44289681
Stop Event
node limit
Counts
234 → 200

prune144.0ms (3%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New1955200
Fresh000
Picked101
Done000
Total1965201
Error
0.0b
Counts
201 → 5
Alt Table
StatusErrorProgram
0.3b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (sin.f64 y))) 2) (neg.f64 (cbrt.f64 (*.f64 z (sin.f64 y)))) (+.f64 x (cos.f64 y)))
21.5b
(-.f64 x (fma.f64 y z -1))
33.3b
(fma.f64 (*.f64 (neg.f64 z) (sqrt.f64 (sin.f64 y))) (sqrt.f64 (sin.f64 y)) (+.f64 x (cos.f64 y)))
0.7b
(fma.f64 (*.f64 (neg.f64 z) (cbrt.f64 (pow.f64 (sin.f64 y) 2))) (cbrt.f64 (sin.f64 y)) (+.f64 x (cos.f64 y)))
0.1b
(+.f64 (cos.f64 y) (-.f64 x (*.f64 z (sin.f64 y))))
Compiler

Compiled 3689 to 1039 computations (71.8% saved)

localize7.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(cos.f64 y)
0.0b
(-.f64 x (*.f64 z (sin.f64 y)))
0.0b
(+.f64 (cos.f64 y) (-.f64 x (*.f64 z (sin.f64 y))))
0.1b
(*.f64 z (sin.f64 y))

series23.0ms (0.5%)

Counts
2 → 72
Calls

2 calls:

12.0ms
(+.f64 (cos.f64 y) (-.f64 x (*.f64 z (sin.f64 y))))
11.0ms
(-.f64 x (*.f64 z (sin.f64 y)))

rewrite65.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
520×log-prod_binary64
423×fma-def_binary64
213×fma-neg_binary64
194×expm1-udef_binary64
194×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0923
120223
2292123
Stop Event
node limit
Counts
2 → 168
Calls

2 calls:

62.0ms
(-.f64 x (*.f64 z (sin.f64 y)))
62.0ms
(+.f64 (cos.f64 y) (-.f64 x (*.f64 z (sin.f64 y))))

simplify43.0ms (0.9%)

Algorithm
egg-herbie
Rules
705×fma-def_binary64
468×distribute-rgt-neg-in_binary64
362×cancel-sign-sub-inv_binary64
305×sub-neg_binary64
285×fma-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
040770
1119769
2325763
31027749
43893749
Stop Event
node limit
Counts
240 → 190

prune164.0ms (3.4%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New2421243
Fresh134
Picked011
Done000
Total2435248
Error
0.0b
Counts
248 → 5
Alt Table
StatusErrorProgram
0.1b
(+.f64 (cos.f64 y) (-.f64 x (*.f64 z (sin.f64 y))))
0.3b
(+.f64 (cos.f64 y) (fma.f64 (*.f64 (neg.f64 z) (pow.f64 (cbrt.f64 (sin.f64 y)) 2)) (cbrt.f64 (sin.f64 y)) x))
33.3b
(fma.f64 (*.f64 (neg.f64 z) (sqrt.f64 (sin.f64 y))) (sqrt.f64 (sin.f64 y)) (+.f64 x (cos.f64 y)))
0.7b
(fma.f64 (*.f64 (neg.f64 z) (cbrt.f64 (pow.f64 (sin.f64 y) 2))) (cbrt.f64 (sin.f64 y)) (+.f64 x (cos.f64 y)))
21.5b
(-.f64 x (fma.f64 y z -1))
Compiler

Compiled 4275 to 1263 computations (70.5% saved)

localize13.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 (*.f64 (neg.f64 z) (pow.f64 (cbrt.f64 (sin.f64 y)) 2)) (cbrt.f64 (sin.f64 y)) x)
0.2b
(*.f64 (neg.f64 z) (pow.f64 (cbrt.f64 (sin.f64 y)) 2))
0.5b
(pow.f64 (cbrt.f64 (sin.f64 y)) 2)
0.6b
(cbrt.f64 (sin.f64 y))

series254.0ms (5.2%)

Counts
4 → 69
Calls

4 calls:

125.0ms
(fma.f64 (*.f64 (neg.f64 z) (pow.f64 (cbrt.f64 (sin.f64 y)) 2)) (cbrt.f64 (sin.f64 y)) x)
71.0ms
(*.f64 (neg.f64 z) (pow.f64 (cbrt.f64 (sin.f64 y)) 2))
43.0ms
(pow.f64 (cbrt.f64 (sin.f64 y)) 2)
15.0ms
(cbrt.f64 (sin.f64 y))

rewrite53.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
826×log1p-expm1-u_binary64
826×expm1-log1p-u_binary64
109×add-sqr-sqrt_binary64
101×add-cbrt-cube_binary64
100×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01147
122333
2265033
Stop Event
node limit
Counts
4 → 81
Calls

4 calls:

52.0ms
(fma.f64 (*.f64 (neg.f64 z) (pow.f64 (cbrt.f64 (sin.f64 y)) 2)) (cbrt.f64 (sin.f64 y)) x)
52.0ms
(*.f64 (neg.f64 z) (pow.f64 (cbrt.f64 (sin.f64 y)) 2))
52.0ms
(pow.f64 (cbrt.f64 (sin.f64 y)) 2)
52.0ms
(cbrt.f64 (sin.f64 y))

simplify52.0ms (1.1%)

Algorithm
egg-herbie
Rules
860×fma-def_binary64
658×unswap-sqr_binary64
346×associate-*l*_binary64
219×fma-neg_binary64
217×*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
016626
143626
286626
3191626
4463626
51421626
62490626
74521626
Stop Event
node limit
Counts
150 → 90

prune99.0ms (2%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New1131114
Fresh033
Picked011
Done011
Total1136119
Error
0.0b
Counts
119 → 6
Alt Table
StatusErrorProgram
0.1b
(+.f64 (cos.f64 y) (-.f64 x (*.f64 z (sin.f64 y))))
0.3b
(+.f64 (cos.f64 y) (fma.f64 (*.f64 (neg.f64 z) (pow.f64 (cbrt.f64 (sin.f64 y)) 2)) (cbrt.f64 (sin.f64 y)) x))
33.3b
(fma.f64 (*.f64 (neg.f64 z) (sqrt.f64 (sin.f64 y))) (sqrt.f64 (sin.f64 y)) (+.f64 x (cos.f64 y)))
0.7b
(fma.f64 (*.f64 (neg.f64 z) (cbrt.f64 (pow.f64 (sin.f64 y) 2))) (cbrt.f64 (sin.f64 y)) (+.f64 x (cos.f64 y)))
0.3b
(+.f64 (cos.f64 y) (fma.f64 (*.f64 (neg.f64 z) (pow.f64 (cbrt.f64 (sin.f64 y)) 2)) (pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 y))) 3) x))
21.5b
(-.f64 x (fma.f64 y z -1))
Compiler

Compiled 2187 to 871 computations (60.2% saved)

localize14.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(pow.f64 (cbrt.f64 (sin.f64 y)) 2)
0.6b
(cbrt.f64 (sin.f64 y))
0.6b
(cbrt.f64 (cbrt.f64 (sin.f64 y)))
0.7b
(pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 y))) 3)

series263.0ms (5.4%)

Counts
2 → 24
Calls

2 calls:

136.0ms
(pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 y))) 3)
127.0ms
(cbrt.f64 (cbrt.f64 (sin.f64 y)))

rewrite40.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
473×log1p-expm1-u_binary64
473×expm1-log1p-u_binary64
385×unpow-prod-down_binary64
234×log-prod_binary64
136×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0712
113612
2134712
Stop Event
node limit
Counts
2 → 82
Calls

2 calls:

38.0ms
(cbrt.f64 (cbrt.f64 (sin.f64 y)))
38.0ms
(pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 y))) 3)

simplify36.0ms (0.7%)

Algorithm
egg-herbie
Rules
511×fma-def_binary64
427×distribute-rgt-neg-in_binary64
353×distribute-lft-neg-in_binary64
279×fma-neg_binary64
264×sub-neg_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
047384
1141382
2359378
31066372
43493284
Stop Event
node limit
Counts
106 → 100

prune191.0ms (3.9%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1661167
Fresh033
Picked101
Done112
Total1685173
Error
0b
Counts
173 → 5
Alt Table
StatusErrorProgram
0.1b
(+.f64 (cos.f64 y) (-.f64 x (*.f64 z (sin.f64 y))))
0.4b
(+.f64 (cos.f64 y) (fma.f64 (*.f64 (neg.f64 z) (pow.f64 (cbrt.f64 (sin.f64 y)) 2)) (*.f64 (pow.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 y)) 2) (pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 y))) 2)) 1/3) (cbrt.f64 (cbrt.f64 (cbrt.f64 (sin.f64 y))))) x))
33.3b
(fma.f64 (*.f64 (neg.f64 z) (sqrt.f64 (sin.f64 y))) (sqrt.f64 (sin.f64 y)) (+.f64 x (cos.f64 y)))
0.7b
(fma.f64 (*.f64 (neg.f64 z) (cbrt.f64 (pow.f64 (sin.f64 y) 2))) (cbrt.f64 (sin.f64 y)) (+.f64 x (cos.f64 y)))
21.5b
(-.f64 x (fma.f64 y z -1))
Compiler

Compiled 4239 to 1949 computations (54% saved)

regimes434.0ms (8.9%)

Accuracy

Total 0.0b remaining (43.9%)

Threshold costs 0.0b (43.9%)

Counts
96 → 1
Compiler

Compiled 7948 to 5338 computations (32.8% 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
11614
22814
33414
43814
53914
Stop Event
saturated

end95.0ms (1.9%)

Compiler

Compiled 117 to 75 computations (35.9% saved)

Profiling

Loading profile data...