Details

Time bar (total: 10.3s)

analyze793.0ms (7.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)

sample4.3s (42.4%)

Results
1.9s1365×body1024valid
1.7s5866×body128valid
512.0ms673×body512valid
178.0ms350×body256valid
8.0msbody2048valid
Compiler

Compiled 38 to 26 computations (31.6% saved)

simplify31.0ms (0.3%)

Algorithm
egg-herbie
Rules
230×fma-def_binary64
171×fma-neg_binary64
66×cancel-sign-sub-inv_binary64
44×associate--r+_binary64
44×distribute-rgt-in_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0914
11814
23414
35914
49914
515514
624714
729214
837814
941014
1044414
1145414
1243114

prune3.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 36 to 24 computations (33.3% saved)

localize15.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

series49.0ms (0.5%)

Counts
3 → 64
Calls

3 calls:

26.0ms
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
19.0ms
(*.f64 z (sin.f64 y))
3.0ms
(sin.f64 y)

rewrite111.0ms (1.1%)

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
Counts
3 → 170
Calls

3 calls:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0923
120223
2274623
3552223
000
100

simplify115.0ms (1.1%)

Algorithm
egg-herbie
Rules
611×associate-*l*_binary64
507×fma-neg_binary64
462×distribute-rgt-neg-in_binary64
453×distribute-lft-neg-in_binary64
373×sub-neg_binary64
Counts
234 → 200
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
053715
1162699
2440683
31261677
42904677
54750677
64908677

prune315.0ms (3.1%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New1928200
Fresh000
Picked101
Done000
Total1938201
Error
0b
Counts
201 → 8
Alt Table
StatusErrorProgram
0.1b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (expm1.f64 (log1p.f64 (sin.f64 y)))))
1.8b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (cbrt.f64 (pow.f64 (sin.f64 y) 3))))
5.1b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (-.f64 (exp.f64 (log1p.f64 (sin.f64 y))) 1)))
0.4b
(-.f64 (+.f64 x (cos.f64 y)) (pow.f64 (cbrt.f64 (*.f64 z (sin.f64 y))) 3))
25.5b
(pow.f64 (sqrt.f64 (-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))) 2)
5.4b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (sin.f64 y))) (cbrt.f64 (exp.f64 (sin.f64 y))))) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 y)))))))
0.4b
(fma.f64 (*.f64 (neg.f64 z) (pow.f64 (cbrt.f64 (sin.f64 y)) 2)) (cbrt.f64 (sin.f64 y)) (+.f64 x (cos.f64 y)))
5.1b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (log.f64 (+.f64 1 (expm1.f64 (sin.f64 y))))))
Compiler

Compiled 3803 to 1111 computations (70.8% saved)

localize52.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sin.f64 y)
0.1b
(*.f64 z (expm1.f64 (log1p.f64 (sin.f64 y))))
0.1b
(expm1.f64 (log1p.f64 (sin.f64 y)))
0.2b
(log1p.f64 (sin.f64 y))

series344.0ms (3.4%)

Counts
3 → 48
Calls

3 calls:

327.0ms
(log1p.f64 (sin.f64 y))
13.0ms
(*.f64 z (expm1.f64 (log1p.f64 (sin.f64 y))))
5.0ms
(expm1.f64 (log1p.f64 (sin.f64 y)))

rewrite106.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
497×expm1-log1p-u_binary64
496×log1p-expm1-u_binary64
333×unpow-prod-down_binary64
280×log-prod_binary64
270×prod-diff_binary64
Counts
3 → 81
Calls

3 calls:

103.0ms
(*.f64 z (expm1.f64 (log1p.f64 (sin.f64 y))))
103.0ms
(expm1.f64 (log1p.f64 (sin.f64 y)))
103.0ms
(log1p.f64 (sin.f64 y))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0714
111614
2130714
3492314
4530814
000
100

simplify94.0ms (0.9%)

Algorithm
egg-herbie
Rules
749×unswap-sqr_binary64
523×fma-neg_binary64
507×sub-neg_binary64
417×distribute-rgt-neg-in_binary64
348×*-commutative_binary64
Counts
129 → 104
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
052374
1144358
2395340
31212336
42447336
54199336
65187336

prune287.0ms (2.8%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New1321133
Fresh167
Picked011
Done000
Total1338141
Error
0b
Counts
141 → 8
Alt Table
StatusErrorProgram
0.1b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (expm1.f64 (log1p.f64 (sin.f64 y)))))
1.8b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (cbrt.f64 (pow.f64 (sin.f64 y) 3))))
5.1b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (-.f64 (exp.f64 (log1p.f64 (sin.f64 y))) 1)))
0.4b
(-.f64 (+.f64 x (cos.f64 y)) (pow.f64 (cbrt.f64 (*.f64 z (sin.f64 y))) 3))
25.5b
(pow.f64 (sqrt.f64 (-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))) 2)
0.6b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 y))) 2) 3) (cbrt.f64 (sin.f64 y)))))
0.4b
(fma.f64 (*.f64 (neg.f64 z) (pow.f64 (cbrt.f64 (sin.f64 y)) 2)) (cbrt.f64 (sin.f64 y)) (+.f64 x (cos.f64 y)))
5.1b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (log.f64 (+.f64 1 (expm1.f64 (sin.f64 y))))))
Compiler

Compiled 2434 to 1156 computations (52.5% saved)

localize20.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sin.f64 y)
0.1b
(*.f64 z (sin.f64 y))
0.7b
(pow.f64 (cbrt.f64 (*.f64 z (sin.f64 y))) 3)
7.9b
(cbrt.f64 (*.f64 z (sin.f64 y)))

series1.5s (14.2%)

Counts
2 → 48
Calls

2 calls:

747.0ms
(pow.f64 (cbrt.f64 (*.f64 z (sin.f64 y))) 3)
705.0ms
(cbrt.f64 (*.f64 z (sin.f64 y)))

rewrite102.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
596×log1p-expm1-u_binary64
596×expm1-log1p-u_binary64
319×log-prod_binary64
121×expm1-udef_binary64
121×log1p-udef_binary64
Counts
2 → 60
Calls

2 calls:

98.0ms
(pow.f64 (cbrt.f64 (*.f64 z (sin.f64 y))) 3)
98.0ms
(cbrt.f64 (*.f64 z (sin.f64 y)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0814
114614
2157614
3491614
4490114
000
100

simplify96.0ms (0.9%)

Algorithm
egg-herbie
Rules
887×fma-neg_binary64
531×distribute-rgt-neg-in_binary64
470×unswap-sqr_binary64
335×associate-*r*_binary64
313×associate-*l*_binary64
Counts
108 → 86
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0701122
12031054
2579848
32387501
44921501
54937501

prune276.0ms (2.7%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1381139
Fresh156
Picked101
Done011
Total1407147
Error
0b
Counts
147 → 7
Alt Table
StatusErrorProgram
0.1b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (expm1.f64 (log1p.f64 (sin.f64 y)))))
1.8b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (cbrt.f64 (pow.f64 (sin.f64 y) 3))))
25.5b
(pow.f64 (sqrt.f64 (-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))) 2)
0.1b
(-.f64 (+.f64 x (cos.f64 y)) (neg.f64 (/.f64 (sin.f64 y) (/.f64 -1 z))))
0.6b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 y))) 2) 3) (cbrt.f64 (sin.f64 y)))))
0.4b
(fma.f64 (*.f64 (neg.f64 z) (pow.f64 (cbrt.f64 (sin.f64 y)) 2)) (cbrt.f64 (sin.f64 y)) (+.f64 x (cos.f64 y)))
5.1b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (log.f64 (+.f64 1 (expm1.f64 (sin.f64 y))))))
Compiler

Compiled 2743 to 1238 computations (54.9% saved)

localize25.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (+.f64 x (cos.f64 y)) (neg.f64 (/.f64 (sin.f64 y) (/.f64 -1 z))))
0.0b
(sin.f64 y)
0.3b
(/.f64 (sin.f64 y) (/.f64 -1 z))

series37.0ms (0.4%)

Counts
2 → 60
Calls

2 calls:

23.0ms
(-.f64 (+.f64 x (cos.f64 y)) (neg.f64 (/.f64 (sin.f64 y) (/.f64 -1 z))))
14.0ms
(/.f64 (sin.f64 y) (/.f64 -1 z))

rewrite122.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
396×fma-def_binary64
232×fma-neg_binary64
226×expm1-udef_binary64
226×log1p-udef_binary64
201×egg-rr
Counts
2 → 201
Calls

2 calls:

115.0ms
(-.f64 (+.f64 x (cos.f64 y)) (neg.f64 (/.f64 (sin.f64 y) (/.f64 -1 z))))
115.0ms
(/.f64 (sin.f64 y) (/.f64 -1 z))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01228
127124
2337122
3494322
000
100

simplify113.0ms (1.1%)

Algorithm
egg-herbie
Rules
553×distribute-rgt-neg-in_binary64
480×distribute-lft-neg-in_binary64
407×fma-neg_binary64
392×cancel-sign-sub-inv_binary64
358×associate-*l*_binary64
Counts
261 → 225
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
046701
1138695
2359681
3964675
42632675
54521675
64944675

prune449.0ms (4.4%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New2522254
Fresh235
Picked011
Done011
Total2547261
Error
0b
Counts
261 → 7
Alt Table
StatusErrorProgram
0.1b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (expm1.f64 (log1p.f64 (sin.f64 y)))))
1.8b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (cbrt.f64 (pow.f64 (sin.f64 y) 3))))
0.1b
(-.f64 (+.f64 x (cos.f64 y)) (neg.f64 (pow.f64 (/.f64 (/.f64 -1 z) (sin.f64 y)) -1)))
0.1b
(fma.f64 (sin.f64 y) (neg.f64 z) (+.f64 x (cos.f64 y)))
0.1b
(-.f64 (+.f64 x (cos.f64 y)) (neg.f64 (/.f64 (sin.f64 y) (/.f64 -1 z))))
0.6b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (sin.f64 y))) 2) 3) (cbrt.f64 (sin.f64 y)))))
5.1b
(-.f64 (+.f64 x (cos.f64 y)) (*.f64 z (log.f64 (+.f64 1 (expm1.f64 (sin.f64 y))))))
Compiler

Compiled 4613 to 1436 computations (68.9% saved)

regimes694.0ms (6.8%)

Accuracy

Total 0.0b remaining (59.9%)

Threshold costs 0.0b (59.9%)

Counts
103 → 1
Compiler

Compiled 6317 to 4431 computations (29.9% saved)

simplify4.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
11414
21614
31714
41714

end202.0ms (2%)

Compiler

Compiled 135 to 96 computations (28.9% saved)

Profiling

Loading profile data...