Details

Time bar (total: 4.8s)

analyze237.0ms (5%)

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
34.3%40.6%25.1%7
35.9%39%25.1%8
42.1%32.8%25.1%9
42.9%19.5%37.6%10
43.3%19.1%37.6%11
45%17.5%37.6%12
45.1%10.3%44.6%13
45.2%10.2%44.6%14
Compiler

Compiled 14 to 11 computations (21.4% saved)

sample1.2s (25.2%)

Results
1.0s8256×body128valid
167.0ms1518×body128invalid
Compiler

Compiled 41 to 32 computations (22% saved)

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Rules
10×*-commutative_binary64
10×fma-def_binary64
associate-*r*_binary64
associate-*l*_binary64
distribute-lft-in_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01212
12310
23510
34110
43910

prune5.0ms (0.1%)

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 1 2) (+.f64 x (*.f64 y (sqrt.f64 z))))
Compiler

Compiled 46 to 33 computations (28.3% saved)

localize7.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (*.f64 y (sqrt.f64 z)))
0.3b
(*.f64 y (sqrt.f64 z))

series23.0ms (0.5%)

Counts
2 → 16
Calls

2 calls:

12.0ms
(+.f64 x (*.f64 y (sqrt.f64 z)))
11.0ms
(*.f64 y (sqrt.f64 z))

rewrite8.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
10×add-sqr-sqrt_binary64
associate-*r*_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
sqrt-prod_binary64
Counts
2 → 40
Calls

2 calls:

3.0ms
(+.f64 x (*.f64 y (sqrt.f64 z)))
3.0ms
(*.f64 y (sqrt.f64 z))

simplify106.0ms (2.2%)

Algorithm
egg-herbie
Rules
895×fma-neg_binary64
773×fma-def_binary64
544×distribute-rgt-in_binary64
537×unsub-neg_binary64
453×distribute-lft-in_binary64
Counts
56 → 52
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
063469
1148454
2387452
3951452
42044452
53250452
64140452
74878452
84998452
94834452

prune47.0ms (1%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New46652
Fresh000
Picked011
Done000
Total46753
Error
0.0b
Counts
53 → 7
Alt Table
StatusErrorProgram
33.4b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (sqrt.f64 z)))))
0.6b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (cbrt.f64 y) (sqrt.f64 z)))))
33.4b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 (sqrt.f64 y) (sqrt.f64 (sqrt.f64 z))) (*.f64 (sqrt.f64 y) (sqrt.f64 (sqrt.f64 z))))))
0.1b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 y (sqrt.f64 z))))
30.0b
(*.f64 (/.f64 1 2) (/.f64 (-.f64 (*.f64 x x) (*.f64 y (*.f64 y z))) (-.f64 x (*.f64 y (sqrt.f64 z)))))
0.4b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (fabs.f64 (cbrt.f64 z))) (sqrt.f64 (cbrt.f64 z)))))
0.3b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (sqrt.f64 (sqrt.f64 z)))))
Compiler

Compiled 1047 to 547 computations (47.8% saved)

localize9.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (sqrt.f64 (sqrt.f64 z))))
0.1b
(sqrt.f64 (sqrt.f64 z))
0.3b
(*.f64 y (sqrt.f64 (sqrt.f64 z)))
0.3b
(*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (sqrt.f64 (sqrt.f64 z)))

series274.0ms (5.7%)

Counts
4 → 65
Calls

4 calls:

232.0ms
(*.f64 y (sqrt.f64 (sqrt.f64 z)))
18.0ms
(sqrt.f64 (sqrt.f64 z))
12.0ms
(+.f64 x (*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (sqrt.f64 (sqrt.f64 z))))
11.0ms
(*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (sqrt.f64 (sqrt.f64 z)))

rewrite21.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
31×sqrt-prod_binary64
22×add-sqr-sqrt_binary64
18×associate-*r*_binary64
14×*-un-lft-identity_binary64
14×add-cube-cbrt_binary64
Counts
4 → 91
Calls

4 calls:

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

simplify152.0ms (3.2%)

Algorithm
egg-herbie
Rules
776×fma-def_binary64
518×distribute-rgt-in_binary64
436×distribute-lft-in_binary64
278×unsub-neg_binary64
230×fma-neg_binary64
Counts
156 → 116
Iterations

Useful iterations: 7 (0.0ms)

IterNodesCost
01031305
12321272
26891265
313151265
426931265
542691265
644921265
748451247
849961247
948191247

prune119.0ms (2.5%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New1362138
Fresh145
Picked011
Done011
Total1378145
Error
0.0b
Counts
145 → 8
Alt Table
StatusErrorProgram
33.4b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (sqrt.f64 z)))))
33.4b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 (sqrt.f64 y) (sqrt.f64 (sqrt.f64 z))) (*.f64 (sqrt.f64 y) (sqrt.f64 (sqrt.f64 z))))))
0.3b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (pow.f64 (sqrt.f64 (sqrt.f64 z)) 3/2)) (sqrt.f64 (sqrt.f64 (sqrt.f64 z))))))
0.6b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (*.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 z))) (cbrt.f64 (sqrt.f64 (sqrt.f64 z))))) (cbrt.f64 (sqrt.f64 (sqrt.f64 z))))))
0.1b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 y (sqrt.f64 z))))
30.0b
(*.f64 (/.f64 1 2) (/.f64 (-.f64 (*.f64 x x) (*.f64 y (*.f64 y z))) (-.f64 x (*.f64 y (sqrt.f64 z)))))
0.4b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (fabs.f64 (cbrt.f64 z))) (sqrt.f64 (cbrt.f64 z)))))
0.3b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (sqrt.f64 (sqrt.f64 z)))))
Compiler

Compiled 3014 to 1273 computations (57.8% saved)

localize14.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(sqrt.f64 (sqrt.f64 (sqrt.f64 z)))
0.3b
(*.f64 y (pow.f64 (sqrt.f64 (sqrt.f64 z)) 3/2))
0.4b
(pow.f64 (sqrt.f64 (sqrt.f64 z)) 3/2)
0.4b
(*.f64 (*.f64 y (pow.f64 (sqrt.f64 (sqrt.f64 z)) 3/2)) (sqrt.f64 (sqrt.f64 (sqrt.f64 z))))

series669.0ms (14%)

Counts
4 → 48
Calls

4 calls:

427.0ms
(*.f64 y (pow.f64 (sqrt.f64 (sqrt.f64 z)) 3/2))
210.0ms
(pow.f64 (sqrt.f64 (sqrt.f64 z)) 3/2)
21.0ms
(sqrt.f64 (sqrt.f64 (sqrt.f64 z)))
11.0ms
(*.f64 (*.f64 y (pow.f64 (sqrt.f64 (sqrt.f64 z)) 3/2)) (sqrt.f64 (sqrt.f64 (sqrt.f64 z))))

rewrite26.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
60×sqrt-prod_binary64
32×add-sqr-sqrt_binary64
25×associate-*r*_binary64
21×unpow-prod-down_binary64
20×*-un-lft-identity_binary64
Counts
4 → 122
Calls

4 calls:

8.0ms
(*.f64 (*.f64 y (pow.f64 (sqrt.f64 (sqrt.f64 z)) 3/2)) (sqrt.f64 (sqrt.f64 (sqrt.f64 z))))
6.0ms
(*.f64 y (pow.f64 (sqrt.f64 (sqrt.f64 z)) 3/2))
4.0ms
(pow.f64 (sqrt.f64 (sqrt.f64 z)) 3/2)
2.0ms
(sqrt.f64 (sqrt.f64 (sqrt.f64 z)))

simplify152.0ms (3.2%)

Algorithm
egg-herbie
Rules
780×associate-/l*_binary64
402×sqr-pow_binary64
322×*-commutative_binary64
287×associate-+l+_binary64
226×fma-def_binary64
Counts
170 → 150
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01362134
12622041
27632041
310631875
418701781
535471669
650751669

prune233.0ms (4.9%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New1473150
Fresh235
Picked101
Done022
Total1508158
Error
0b
Counts
158 → 8
Alt Table
StatusErrorProgram
0.6b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (*.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 z))) (cbrt.f64 (sqrt.f64 (sqrt.f64 z))))) (cbrt.f64 (sqrt.f64 (sqrt.f64 z))))))
0.4b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (pow.f64 (sqrt.f64 (sqrt.f64 z)) 3/2)) (cbrt.f64 (pow.f64 (sqrt.f64 (sqrt.f64 z)) 3/2)))))
0.2b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (pow.f64 z 3/8)) (sqrt.f64 (sqrt.f64 (sqrt.f64 z))))))
0.1b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 y (sqrt.f64 z))))
33.4b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 (sqrt.f64 y) (sqrt.f64 (sqrt.f64 z))) (*.f64 (sqrt.f64 y) (sqrt.f64 (sqrt.f64 z))))))
0.4b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (pow.f64 (sqrt.f64 (sqrt.f64 z)) 3/2)) (*.f64 (fabs.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 z)))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 z))))))))
0.4b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (fabs.f64 (cbrt.f64 z))) (sqrt.f64 (cbrt.f64 z)))))
0.3b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (sqrt.f64 (sqrt.f64 z)))))
Compiler

Compiled 3819 to 2018 computations (47.2% saved)

localize13.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(sqrt.f64 (sqrt.f64 z))
0.2b
(sqrt.f64 (sqrt.f64 (sqrt.f64 z)))
0.3b
(*.f64 y (pow.f64 z 3/8))
0.4b
(*.f64 (*.f64 y (pow.f64 z 3/8)) (sqrt.f64 (sqrt.f64 (sqrt.f64 z))))

series378.0ms (7.9%)

Counts
2 → 36
Calls

2 calls:

359.0ms
(*.f64 y (pow.f64 z 3/8))
19.0ms
(*.f64 (*.f64 y (pow.f64 z 3/8)) (sqrt.f64 (sqrt.f64 (sqrt.f64 z))))

rewrite16.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
19×associate-*r*_binary64
18×sqrt-prod_binary64
17×add-exp-log_binary64
14×add-sqr-sqrt_binary64
10×prod-exp_binary64
Counts
2 → 57
Calls

2 calls:

7.0ms
(*.f64 (*.f64 y (pow.f64 z 3/8)) (sqrt.f64 (sqrt.f64 (sqrt.f64 z))))
6.0ms
(*.f64 y (pow.f64 z 3/8))

simplify101.0ms (2.1%)

Algorithm
egg-herbie
Rules
759×fma-def_binary64
434×unswap-sqr_binary64
355×*-commutative_binary64
308×sqr-pow_binary64
162×associate-*l*_binary64
Counts
93 → 65
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01101164
12291098
27051086
310001086
415901086
531081086
645631086
749131086

prune143.0ms (3%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New1162118
Fresh325
Picked101
Done112
Total1215126
Error
0b
Counts
126 → 5
Alt Table
StatusErrorProgram
0.4b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (pow.f64 (sqrt.f64 (sqrt.f64 z)) 3/2)) (cbrt.f64 (pow.f64 (sqrt.f64 (sqrt.f64 z)) 3/2)))))
0.1b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 y (sqrt.f64 z))))
0.4b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 (*.f64 y (pow.f64 z 3/8)) (fabs.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 z))))) (sqrt.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 z)))))))
0.4b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (fabs.f64 (cbrt.f64 z))) (sqrt.f64 (cbrt.f64 z)))))
0.2b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (pow.f64 z 3/8)) (sqrt.f64 (pow.f64 z 1/4)))))
Compiler

Compiled 2637 to 1549 computations (41.3% saved)

regimes722.0ms (15.1%)

Accuracy

Total 0.1b remaining (69.3%)

Threshold costs 0.1b (69.3%)

Counts
93 → 1
Compiler

Compiled 14211 to 10820 computations (23.9% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01212
11712
21512

end92.0ms (1.9%)

Compiler

Compiled 121 to 89 computations (26.4% saved)

Profiling

Loading profile data...