Details

Time bar (total: 4.0s)

analyze365.0ms (9.2%)

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.1s (28.1%)

Results
923.0ms8256×body128valid
154.0ms1472×body128invalid
Compiler

Compiled 41 to 32 computations (22% saved)

simplify6.0ms (0.2%)

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)

localize6.0ms (0.2%)

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))

series21.0ms (0.5%)

Counts
2 → 16
Calls

2 calls:

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

rewrite9.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:

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

simplify109.0ms (2.8%)

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

prune53.0ms (1.3%)

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
0.6b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 (cbrt.f64 y) (cbrt.f64 y)) (*.f64 (cbrt.f64 y) (sqrt.f64 z)))))
0.6b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 (cbrt.f64 (*.f64 y (sqrt.f64 z))) (cbrt.f64 (*.f64 y (sqrt.f64 z)))) (cbrt.f64 (*.f64 y (sqrt.f64 z))))))
45.0b
(*.f64 (/.f64 1 2) (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 y (sqrt.f64 z)) 3)) (+.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 y (sqrt.f64 z)) (*.f64 y (sqrt.f64 z))) (*.f64 x (*.f64 y (sqrt.f64 z)))))))
0.3b
(*.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 (sqrt.f64 (sqrt.f64 z))) (sqrt.f64 (sqrt.f64 z)))))
0.1b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 y (sqrt.f64 z))))
30.1b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (sqrt.f64 z)))))
Compiler

Compiled 1085 to 557 computations (48.7% 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.2b
(sqrt.f64 (sqrt.f64 z))
0.2b
(*.f64 y (sqrt.f64 (sqrt.f64 z)))
0.3b
(*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (sqrt.f64 (sqrt.f64 z)))

series298.0ms (7.5%)

Counts
4 → 65
Calls

4 calls:

256.0ms
(*.f64 y (sqrt.f64 (sqrt.f64 z)))
19.0ms
(sqrt.f64 (sqrt.f64 z))
11.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)))

rewrite22.0ms (0.5%)

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:

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

simplify151.0ms (3.8%)

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

prune138.0ms (3.5%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New1353138
Fresh145
Picked101
Done011
Total1378145
Error
0b
Counts
145 → 8
Alt Table
StatusErrorProgram
0.3b
(*.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 (*.f64 y (sqrt.f64 (sqrt.f64 (sqrt.f64 z)))) (sqrt.f64 (sqrt.f64 (sqrt.f64 z)))) (sqrt.f64 (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)))))
45.0b
(*.f64 (/.f64 1 2) (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 (*.f64 y (sqrt.f64 z)) 3)) (+.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 y (sqrt.f64 z)) (*.f64 y (sqrt.f64 z))) (*.f64 x (*.f64 y (sqrt.f64 z)))))))
0.2b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (pow.f64 z 1/4))))
0.3b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 (*.f64 y (sqrt.f64 (fabs.f64 (cbrt.f64 z)))) (sqrt.f64 (sqrt.f64 (cbrt.f64 z)))) (sqrt.f64 (sqrt.f64 z)))))
0.1b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 y (sqrt.f64 z))))
30.1b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (sqrt.f64 z)))))
Compiler

Compiled 3054 to 1303 computations (57.3% saved)

localize11.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (pow.f64 z 1/4)))
0.2b
(sqrt.f64 (sqrt.f64 z))
0.2b
(*.f64 y (sqrt.f64 (sqrt.f64 z)))
0.3b
(*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (pow.f64 z 1/4))

series33.0ms (0.8%)

Counts
2 → 37
Calls

2 calls:

20.0ms
(+.f64 x (*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (pow.f64 z 1/4)))
12.0ms
(*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (pow.f64 z 1/4))

rewrite10.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
15×add-exp-log_binary64
prod-exp_binary64
associate-*r*_binary64
add-cbrt-cube_binary64
*-un-lft-identity_binary64
Counts
2 → 42
Calls

2 calls:

6.0ms
(*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (pow.f64 z 1/4))
2.0ms
(+.f64 x (*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (pow.f64 z 1/4)))

simplify76.0ms (1.9%)

Algorithm
egg-herbie
Rules
747×unswap-sqr_binary64
691×fma-neg_binary64
434×*-commutative_binary64
321×cancel-sign-sub-inv_binary64
285×distribute-rgt-neg-in_binary64
Counts
79 → 67
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
087978
1219920
2734899
31613622
42662621
54850621
65021621

prune204.0ms (5.2%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New1181119
Fresh246
Picked011
Done011
Total1207127
Error
0b
Counts
127 → 7
Alt Table
StatusErrorProgram
0.3b
(*.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 (*.f64 y (sqrt.f64 (sqrt.f64 (sqrt.f64 z)))) (sqrt.f64 (sqrt.f64 (sqrt.f64 z)))) (sqrt.f64 (sqrt.f64 z)))))
0.3b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (pow.f64 (pow.f64 z 1/8) 3)) (sqrt.f64 (pow.f64 z 1/4)))))
30.1b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (sqrt.f64 z)))))
0.2b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (pow.f64 z 1/4))))
0.3b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 (*.f64 y (sqrt.f64 (fabs.f64 (cbrt.f64 z)))) (sqrt.f64 (sqrt.f64 (cbrt.f64 z)))) (sqrt.f64 (sqrt.f64 z)))))
0.1b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 y (sqrt.f64 z))))
Compiler

Compiled 2616 to 1476 computations (43.6% saved)

localize10.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(sqrt.f64 (sqrt.f64 z))
0.2b
(*.f64 y (sqrt.f64 (sqrt.f64 (sqrt.f64 z))))
0.3b
(*.f64 (*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 (sqrt.f64 z)))) (sqrt.f64 (sqrt.f64 (sqrt.f64 z)))) (sqrt.f64 (sqrt.f64 z)))
0.3b
(*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 (sqrt.f64 z)))) (sqrt.f64 (sqrt.f64 (sqrt.f64 z))))

series485.0ms (12.3%)

Counts
3 → 52
Calls

3 calls:

245.0ms
(*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 (sqrt.f64 z)))) (sqrt.f64 (sqrt.f64 (sqrt.f64 z))))
230.0ms
(*.f64 y (sqrt.f64 (sqrt.f64 (sqrt.f64 z))))
10.0ms
(*.f64 (*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 (sqrt.f64 z)))) (sqrt.f64 (sqrt.f64 (sqrt.f64 z)))) (sqrt.f64 (sqrt.f64 z)))

rewrite35.0ms (0.9%)

Algorithm
rewrite-expression-head
Rules
51×sqrt-prod_binary64
33×associate-*r*_binary64
23×add-sqr-sqrt_binary64
19×add-cbrt-cube_binary64
19×add-exp-log_binary64
Counts
3 → 90
Calls

3 calls:

11.0ms
(*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 (sqrt.f64 z)))) (sqrt.f64 (sqrt.f64 (sqrt.f64 z))))
11.0ms
(*.f64 (*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 (sqrt.f64 z)))) (sqrt.f64 (sqrt.f64 (sqrt.f64 z)))) (sqrt.f64 (sqrt.f64 z)))
6.0ms
(*.f64 y (sqrt.f64 (sqrt.f64 (sqrt.f64 z))))

simplify129.0ms (3.2%)

Algorithm
egg-herbie
Rules
420×associate-*r/_binary64
367×unswap-sqr_binary64
364×*-commutative_binary64
364×associate-*l/_binary64
254×associate-*l*_binary64
Counts
142 → 110
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01041756
12301437
27481437
310121437
413461437
520361437
641221437
749921437
849151437

prune183.0ms (4.6%)

Pruning

7 alts after pruning (4 fresh and 3 done)

PrunedKeptTotal
New1760176
Fresh044
Picked011
Done022
Total1767183
Error
0b
Counts
183 → 7
Alt Table
StatusErrorProgram
0.3b
(*.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 (*.f64 y (sqrt.f64 (sqrt.f64 (sqrt.f64 z)))) (sqrt.f64 (sqrt.f64 (sqrt.f64 z)))) (sqrt.f64 (sqrt.f64 z)))))
0.3b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (pow.f64 (pow.f64 z 1/8) 3)) (sqrt.f64 (pow.f64 z 1/4)))))
30.1b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (sqrt.f64 z)))))
0.2b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 y (sqrt.f64 (sqrt.f64 z))) (pow.f64 z 1/4))))
0.3b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 (*.f64 (*.f64 y (sqrt.f64 (fabs.f64 (cbrt.f64 z)))) (sqrt.f64 (sqrt.f64 (cbrt.f64 z)))) (sqrt.f64 (sqrt.f64 z)))))
0.1b
(*.f64 (/.f64 1 2) (+.f64 x (*.f64 y (sqrt.f64 z))))
Compiler

Compiled 4691 to 1649 computations (64.8% saved)

regimes364.0ms (9.2%)

Accuracy

Total 0.1b remaining (78.5%)

Threshold costs 0.1b (78.5%)

Counts
48 → 1
Compiler

Compiled 7512 to 4779 computations (36.4% 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

end113.0ms (2.9%)

Compiler

Compiled 157 to 114 computations (27.4% saved)

Profiling

Loading profile data...