Details

Time bar (total: 4.6s)

analyze535.0ms (11.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
0%99.9%0.1%6
12.5%87.4%0.1%7
31.2%68.6%0.1%8
34.3%62.4%3.3%9
42.1%49.9%7.9%10
53.8%37.8%8.3%11
56.2%33%10.9%12
60.3%25.6%14.1%13
66.4%19.4%14.2%14
Compiler

Compiled 13 to 10 computations (23.1% saved)

sample1.1s (24.6%)

Results
824.0ms8256×body128valid
111.0ms712×body128invalid
Compiler

Compiled 38 to 29 computations (23.7% saved)

simplify42.0ms (0.9%)

Algorithm
egg-herbie
Rules
710×fma-def_binary64
419×fma-neg_binary64
210×distribute-rgt-in_binary64
164×distribute-lft-in_binary64
139×unsub-neg_binary64
Counts
1 → 2
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0913
12013
24711
313211
433411
564011
696511
7125411
8126211
9126211
10119111

prune3.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
5.3b
Counts
3 → 1
Alt Table
StatusErrorProgram
5.3b
(*.f64 x (-.f64 (fma.f64 y z 1) z))
Compiler

Compiled 42 to 27 computations (35.7% saved)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
5.0b
(*.f64 x (-.f64 (fma.f64 y z 1) z))

series10.0ms (0.2%)

Counts
1 → 36
Calls

1 calls:

10.0ms
(*.f64 x (-.f64 (fma.f64 y z 1) z))

rewrite11.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
21×add-sqr-sqrt_binary64
19×*-un-lft-identity_binary64
18×prod-diff_binary64
17×add-cube-cbrt_binary64
14×distribute-lft-in_binary64
Counts
1 → 52
Calls

1 calls:

7.0ms
(*.f64 x (-.f64 (fma.f64 y z 1) z))

simplify93.0ms (2%)

Algorithm
egg-herbie
Rules
412×unsub-neg_binary64
396×exp-prod_binary64
359×distribute-rgt-in_binary64
334×distribute-lft-in_binary64
331×fma-def_binary64
Counts
88 → 75
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01341249
12251167
27841113
323581057
439411057
549821057
649091057

prune68.0ms (1.5%)

Pruning

5 alts after pruning (5 fresh and 0 done)

PrunedKeptTotal
New70575
Fresh000
Picked101
Done000
Total71576
Error
0.0b
Counts
76 → 5
Alt Table
StatusErrorProgram
23.7b
(*.f64 (*.f64 x (sqrt.f64 (-.f64 (fma.f64 y z 1) z))) (sqrt.f64 (-.f64 (fma.f64 y z 1) z)))
5.6b
(+.f64 (*.f64 (fma.f64 (*.f64 (cbrt.f64 (fma.f64 y z 1)) (cbrt.f64 (fma.f64 y z 1))) (cbrt.f64 (fma.f64 y z 1)) (neg.f64 (*.f64 z 1))) x) (*.f64 (fma.f64 (neg.f64 z) 1 (*.f64 z 1)) x))
6.5b
(*.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))) (cbrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z)))) (cbrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))))
1.8b
(-.f64 (+.f64 (*.f64 y (*.f64 z x)) x) (*.f64 z x))
5.3b
(*.f64 (*.f64 x 1) (-.f64 (fma.f64 y z 1) z))
Compiler

Compiled 1632 to 788 computations (51.7% saved)

localize6.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 y (*.f64 z x)) x)
0.0b
(-.f64 (+.f64 (*.f64 y (*.f64 z x)) x) (*.f64 z x))
3.8b
(*.f64 y (*.f64 z x))

series34.0ms (0.8%)

Counts
3 → 60
Calls

3 calls:

12.0ms
(*.f64 y (*.f64 z x))
12.0ms
(+.f64 (*.f64 y (*.f64 z x)) x)
10.0ms
(-.f64 (+.f64 (*.f64 y (*.f64 z x)) x) (*.f64 z x))

rewrite17.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
10×add-log-exp_binary64
add-cbrt-cube_binary64
add-exp-log_binary64
pow1_binary64
*-un-lft-identity_binary64
Counts
3 → 56
Calls

3 calls:

7.0ms
(-.f64 (+.f64 (*.f64 y (*.f64 z x)) x) (*.f64 z x))
4.0ms
(+.f64 (*.f64 y (*.f64 z x)) x)
4.0ms
(*.f64 y (*.f64 z x))

simplify83.0ms (1.8%)

Algorithm
egg-herbie
Rules
816×fma-neg_binary64
502×fma-def_binary64
318×cancel-sign-sub-inv_binary64
279×distribute-rgt-in_binary64
247×distribute-lft-in_binary64
Counts
116 → 103
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01081397
12851233
28961196
327521195
444871195
549631195

prune104.0ms (2.3%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New994103
Fresh314
Picked011
Done000
Total1026108
Error
0.0b
Counts
108 → 6
Alt Table
StatusErrorProgram
1.8b
(-.f64 (+.f64 (*.f64 y (*.f64 z x)) x) (*.f64 z x))
5.3b
(-.f64 (+.f64 (*.f64 (*.f64 y z) x) x) (*.f64 z x))
28.2b
(*.f64 (-.f64 (*.f64 y x) x) z)
42.3b
(/.f64 (*.f64 (*.f64 x x) (-.f64 (*.f64 (fma.f64 z y 1) (fma.f64 z y 1)) (*.f64 z z))) (*.f64 x (+.f64 z (fma.f64 z y 1))))
6.5b
(*.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))) (cbrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z)))) (cbrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))))
2.2b
(-.f64 (+.f64 (*.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (cbrt.f64 y) (*.f64 z x))) x) (*.f64 z x))
Compiler

Compiled 1950 to 556 computations (71.5% saved)

localize9.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(*.f64 (cbrt.f64 y) (cbrt.f64 y))
0.6b
(cbrt.f64 y)
2.0b
(*.f64 (cbrt.f64 y) (*.f64 z x))
2.1b
(*.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (cbrt.f64 y) (*.f64 z x)))

series571.0ms (12.5%)

Counts
4 → 96
Calls

4 calls:

476.0ms
(*.f64 (cbrt.f64 y) (*.f64 z x))
40.0ms
(*.f64 (cbrt.f64 y) (cbrt.f64 y))
30.0ms
(cbrt.f64 y)
25.0ms
(*.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (cbrt.f64 y) (*.f64 z x)))

rewrite26.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
37×pow1_binary64
32×add-exp-log_binary64
23×add-sqr-sqrt_binary64
22×cbrt-prod_binary64
20×pow-prod-down_binary64
Counts
4 → 108
Calls

4 calls:

10.0ms
(*.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (cbrt.f64 y) (*.f64 z x)))
5.0ms
(*.f64 (cbrt.f64 y) (*.f64 z x))
4.0ms
(*.f64 (cbrt.f64 y) (cbrt.f64 y))
1.0ms
(cbrt.f64 y)

simplify92.0ms (2%)

Algorithm
egg-herbie
Rules
775×fma-def_binary64
621×distribute-rgt-in_binary64
464×*-commutative_binary64
327×sqr-pow_binary64
233×associate-*l*_binary64
Counts
204 → 146
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01171885
12391657
29141619
316201605
429501511
549291511

prune139.0ms (3%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1802182
Fresh134
Picked101
Done011
Total1826188
Error
0b
Counts
188 → 6
Alt Table
StatusErrorProgram
1.8b
(-.f64 (+.f64 (*.f64 y (*.f64 z x)) x) (*.f64 z x))
5.3b
(-.f64 (+.f64 (*.f64 (*.f64 y z) x) x) (*.f64 z x))
28.2b
(*.f64 (-.f64 (*.f64 y x) x) z)
6.5b
(*.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))) (cbrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z)))) (cbrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))))
31.0b
(-.f64 (+.f64 (*.f64 (*.f64 (cbrt.f64 y) (*.f64 (cbrt.f64 (sqrt.f64 y)) (cbrt.f64 (sqrt.f64 y)))) (*.f64 (cbrt.f64 y) (*.f64 z x))) x) (*.f64 z x))
1.3b
(-.f64 (+.f64 (*.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (*.f64 (cbrt.f64 y) z) x)) x) (*.f64 z x))
Compiler

Compiled 4304 to 1122 computations (73.9% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(*.f64 (cbrt.f64 y) (cbrt.f64 y))
0.6b
(cbrt.f64 y)
2.1b
(*.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (*.f64 (cbrt.f64 y) z) x))
2.2b
(*.f64 (*.f64 (cbrt.f64 y) z) x)

series471.0ms (10.3%)

Counts
2 → 72
Calls

2 calls:

441.0ms
(*.f64 (*.f64 (cbrt.f64 y) z) x)
29.0ms
(*.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (*.f64 (cbrt.f64 y) z) x))

rewrite17.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
28×add-exp-log_binary64
28×pow1_binary64
19×add-cbrt-cube_binary64
18×cbrt-unprod_binary64
18×prod-exp_binary64
Counts
2 → 50
Calls

2 calls:

9.0ms
(*.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (*.f64 (cbrt.f64 y) z) x))
4.0ms
(*.f64 (*.f64 (cbrt.f64 y) z) x)

simplify81.0ms (1.8%)

Algorithm
egg-herbie
Rules
542×fma-def_binary64
430×*-commutative_binary64
291×distribute-rgt-in_binary64
280×distribute-lft-in_binary64
267×unswap-sqr_binary64
Counts
122 → 65
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0801691
12101081
27581075
313971075
426341075
549221075

prune128.0ms (2.8%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New1750175
Fresh044
Picked011
Done011
Total1756181
Error
0b
Counts
181 → 6
Alt Table
StatusErrorProgram
1.8b
(-.f64 (+.f64 (*.f64 y (*.f64 z x)) x) (*.f64 z x))
5.3b
(-.f64 (+.f64 (*.f64 (*.f64 y z) x) x) (*.f64 z x))
28.2b
(*.f64 (-.f64 (*.f64 y x) x) z)
6.5b
(*.f64 (*.f64 (cbrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))) (cbrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z)))) (cbrt.f64 (*.f64 x (-.f64 (fma.f64 y z 1) z))))
31.0b
(-.f64 (+.f64 (*.f64 (*.f64 (cbrt.f64 y) (*.f64 (cbrt.f64 (sqrt.f64 y)) (cbrt.f64 (sqrt.f64 y)))) (*.f64 (cbrt.f64 y) (*.f64 z x))) x) (*.f64 z x))
1.3b
(-.f64 (+.f64 (*.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (*.f64 (cbrt.f64 y) z) x)) x) (*.f64 z x))
Compiler

Compiled 4040 to 1041 computations (74.2% saved)

regimes778.0ms (17%)

Accuracy

Total 0.1b remaining (84.2%)

Threshold costs 0.1b (84.2%)

Counts
96 → 3
Compiler

Compiled 14228 to 8090 computations (43.1% saved)

bsearch5.0ms (0.1%)

Compiler

Compiled 10 to 8 computations (20% saved)

simplify12.0ms (0.3%)

Algorithm
egg-herbie
Rules
48×distribute-rgt-neg-in_binary64
44×cancel-sign-sub-inv_binary64
32×distribute-lft-neg-in_binary64
30×distribute-lft-neg-out_binary64
30×neg-sub0_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02153
14153
26153
37753
49153
510253
611853
713353
814653
916453
1019153
1121153
1222953
1324653
1425353
1525553
1625153

end96.0ms (2.1%)

Compiler

Compiled 195 to 119 computations (39% saved)

Profiling

Loading profile data...