Details

Time bar (total: 7.3s)

analyze82.0ms (1.1%)

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
49.9%49.9%0.1%4
49.9%49.9%0.1%5
49.9%49.9%0.1%6
74.9%25%0.1%7
74.9%25%0.1%8
74.9%25%0.1%9
87.4%12.5%0.1%10
87.4%12.5%0.1%11
87.4%12.5%0.1%12
93.6%6.2%0.1%13
93.6%6.2%0.1%14
Compiler

Compiled 11 to 7 computations (36.4% saved)

sample815.0ms (11.2%)

Results
611.0ms8256×body128valid
Compiler

Compiled 32 to 20 computations (37.5% saved)

simplify170.0ms (2.3%)

Algorithm
egg-herbie
Rules
907×associate-/l*_binary64
740×associate-/l/_binary64
677×fma-def_binary64
607×associate-/r/_binary64
557×associate-*l/_binary64
Counts
1 → 2
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
0710
11710
22310
33610
44110
54710
6518
7618
82288
97618
108518
119648
129758
139808
149858
1522318
1622888
1726378
1826898
1929018
2030318
2132788
2237008
2341098
2441578
2548728
2649978
2748898

prune3.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.1b
Counts
3 → 2
Alt Table
StatusErrorProgram
9.1b
(/.f64 (*.f64 x (+.f64 y z)) z)
1.7b
(fma.f64 x (/.f64 y z) x)
Compiler

Compiled 54 to 30 computations (44.4% saved)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
1.7b
(fma.f64 x (/.f64 y z) x)

series13.0ms (0.2%)

Counts
1 → 36
Calls

1 calls:

13.0ms
(fma.f64 x (/.f64 y z) x)

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 x (/.f64 y z) x)

simplify76.0ms (1%)

Algorithm
egg-herbie
Rules
635×fma-def_binary64
449×associate-/l/_binary64
410×distribute-rgt-in_binary64
404×distribute-rgt-out_binary64
400×unswap-sqr_binary64
Counts
46 → 24
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
022451
132374
263374
3171374
4650374
52482374
63613374
73881374
84329374
95248374

prune14.0ms (0.2%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New22224
Fresh011
Picked011
Done000
Total22426
Error
0.0b
Counts
26 → 4
Alt Table
StatusErrorProgram
9.1b
(/.f64 (*.f64 x (+.f64 y z)) z)
1.7b
(fma.f64 x (/.f64 y z) x)
35.7b
(*.f64 (sqrt.f64 (fma.f64 x (/.f64 y z) x)) (sqrt.f64 (fma.f64 x (/.f64 y z) x)))
2.8b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
Compiler

Compiled 351 to 99 computations (71.8% saved)

localize9.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
0.5b
(*.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
1.7b
(fma.f64 x (/.f64 y z) x)
10.3b
(cbrt.f64 (fma.f64 x (/.f64 y z) x))

series1.5s (20.5%)

Counts
3 → 108
Calls

3 calls:

855.0ms
(*.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
607.0ms
(cbrt.f64 (fma.f64 x (/.f64 y z) x))
27.0ms
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))

rewrite41.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
29×pow1_binary64
24×add-sqr-sqrt_binary64
23×cbrt-prod_binary64
16×pow1/3_binary64
14×*-un-lft-identity_binary64
Counts
3 → 93
Calls

3 calls:

14.0ms
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
11.0ms
(*.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
1.0ms
(cbrt.f64 (fma.f64 x (/.f64 y z) x))

simplify270.0ms (3.7%)

Algorithm
egg-herbie
Rules
884×times-frac_binary64
509×fma-def_binary64
305×fma-neg_binary64
168×cancel-sign-sub-inv_binary64
153×associate-*r*_binary64
Counts
201 → 188
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02675248
16974885
219194145
347584117
450064117

prune357.0ms (4.9%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New3524356
Fresh022
Picked011
Done011
Total3528360
Error
0.0b
Counts
360 → 8
Alt Table
StatusErrorProgram
35.7b
(*.f64 (sqrt.f64 (fma.f64 x (/.f64 y z) x)) (sqrt.f64 (fma.f64 x (/.f64 y z) x)))
3.0b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))) (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
3.0b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))) (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))))
9.1b
(/.f64 (*.f64 x (+.f64 y z)) z)
1.7b
(fma.f64 x (/.f64 y z) x)
2.8b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
22.9b
(*.f64 (cbrt.f64 (*.f64 (fma.f64 x (/.f64 y z) x) (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
36.0b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (sqrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))))
Compiler

Compiled 12735 to 3446 computations (72.9% saved)

localize25.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
0.5b
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))))
1.7b
(fma.f64 x (/.f64 y z) x)
10.3b
(cbrt.f64 (fma.f64 x (/.f64 y z) x))

series1.4s (19%)

Counts
2 → 72
Calls

2 calls:

779.0ms
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))))
599.0ms
(cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))

rewrite30.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
63×cbrt-prod_binary64
34×add-sqr-sqrt_binary64
16×*-un-lft-identity_binary64
16×add-cube-cbrt_binary64
associate-*r*_binary64
Counts
2 → 72
Calls

2 calls:

14.0ms
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))))
2.0ms
(cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))

simplify279.0ms (3.8%)

Algorithm
egg-herbie
Rules
884×times-frac_binary64
515×fma-def_binary64
365×fma-neg_binary64
176×cancel-sign-sub-inv_binary64
173×associate-/r/_binary64
Counts
144 → 156
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02645396
16915014
218624354
348714345
450864345

prune696.0ms (9.6%)

Pruning

8 alts after pruning (5 fresh and 3 done)

PrunedKeptTotal
New6160616
Fresh055
Picked011
Done022
Total6168624
Error
0.0b
Counts
624 → 8
Alt Table
StatusErrorProgram
35.7b
(*.f64 (sqrt.f64 (fma.f64 x (/.f64 y z) x)) (sqrt.f64 (fma.f64 x (/.f64 y z) x)))
3.0b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))) (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
3.0b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))) (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))))
9.1b
(/.f64 (*.f64 x (+.f64 y z)) z)
1.7b
(fma.f64 x (/.f64 y z) x)
2.8b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
22.9b
(*.f64 (cbrt.f64 (*.f64 (fma.f64 x (/.f64 y z) x) (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
36.0b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (sqrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))))
Compiler

Compiled 35372 to 7347 computations (79.2% saved)

localize30.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
0.5b
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))))
1.7b
(fma.f64 x (/.f64 y z) x)
10.3b
(cbrt.f64 (fma.f64 x (/.f64 y z) x))

prune916.0ms (12.6%)

Pruning

8 alts after pruning (4 fresh and 4 done)

PrunedKeptTotal
New6160616
Fresh044
Picked011
Done033
Total6168624
Error
0.0b
Counts
624 → 8
Alt Table
StatusErrorProgram
35.7b
(*.f64 (sqrt.f64 (fma.f64 x (/.f64 y z) x)) (sqrt.f64 (fma.f64 x (/.f64 y z) x)))
3.0b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))) (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
3.0b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))) (cbrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))))
9.1b
(/.f64 (*.f64 x (+.f64 y z)) z)
1.7b
(fma.f64 x (/.f64 y z) x)
2.8b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
22.9b
(*.f64 (cbrt.f64 (*.f64 (fma.f64 x (/.f64 y z) x) (fma.f64 x (/.f64 y z) x))) (cbrt.f64 (fma.f64 x (/.f64 y z) x)))
36.0b
(*.f64 (*.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)) (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (*.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x))) (sqrt.f64 (cbrt.f64 (fma.f64 x (/.f64 y z) x)))))
Compiler

Compiled 35238 to 7423 computations (78.9% saved)

regimes408.0ms (5.6%)

Accuracy

Total 2.6b remaining (98.8%)

Threshold costs 0b (0%)

Counts
62 → 1
Compiler

Compiled 8316 to 2966 computations (64.3% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
168

end155.0ms (2.1%)

Compiler

Compiled 232 to 77 computations (66.8% saved)

Profiling

Loading profile data...