Details

Time bar (total: 10.8s)

analyze988.0ms (9.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%74.9%25.1%8
6.2%68.6%25.1%9
7.8%67.1%25.1%10
10.1%64.7%25.1%11
14.8%47.6%37.6%12
15.8%36.8%47.4%13
16.6%35.1%48.3%14
Compiler

Compiled 22 to 17 computations (22.7% saved)

sample3.9s (36.3%)

Results
2.3s10875×body128invalid
1.6s8256×body128valid
Compiler

Compiled 65 to 50 computations (23.1% saved)

simplify129.0ms (1.2%)

Algorithm
egg-herbie
Rules
898×fma-neg_binary64
522×fma-def_binary64
417×neg-sub0_binary64
408×neg-mul-1_binary64
378×prod-exp_binary64
Counts
1 → 2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01625
12925
25125
310225
421925
546425
6122525
7241625
8370325
9471425
10487425
11422425
12460825
13455525
14494225

prune7.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.3b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.3b
(*.f64 (*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2))) (exp.f64 (/.f64 (*.f64 t t) 2)))
0.3b
(*.f64 (*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2))) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
Compiler

Compiled 119 to 89 computations (25.2% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(pow.f64 (sqrt.f64 (exp.f64 t)) t)
0.0b
(sqrt.f64 (exp.f64 t))
0.0b
(*.f64 (*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2))) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
0.2b
(*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2)))

series204.0ms (1.9%)

Counts
4 → 68
Calls

4 calls:

174.0ms
(*.f64 (*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2))) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
25.0ms
(*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2)))
2.0ms
(sqrt.f64 (exp.f64 t))
2.0ms
(pow.f64 (sqrt.f64 (exp.f64 t)) t)

rewrite74.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
571×prod-diff_binary64
284×log1p-udef_binary64
161×add-sqr-sqrt_binary64
153×log1p-expm1-u_binary64
153×expm1-log1p-u_binary64
Counts
4 → 83
Calls

4 calls:

73.0ms
(pow.f64 (sqrt.f64 (exp.f64 t)) t)
73.0ms
(sqrt.f64 (exp.f64 t))
73.0ms
(*.f64 (*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2))) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
73.0ms
(*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01653
133153
2381653
3531353
000
100

simplify117.0ms (1.1%)

Algorithm
egg-herbie
Rules
714×associate-*l*_binary64
667×fma-def_binary64
347×sub-neg_binary64
327×distribute-lft-neg-in_binary64
326×distribute-rgt-neg-in_binary64
Counts
151 → 116
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0972373
12982025
210111558
336931553
449811553
549931553
649691553

prune139.0ms (1.3%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New1097116
Fresh101
Picked101
Done000
Total1117118
Error
0.0b
Counts
118 → 7
Alt Table
StatusErrorProgram
1.3b
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2)))) 3) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
0.5b
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y))) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
28.1b
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2)))) 2) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
28.9b
(*.f64 (/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 y y)) (sqrt.f64 (*.f64 z 2))) (fma.f64 x 1/2 y)) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
0.5b
(*.f64 (*.f64 (-.f64 (*.f64 1/2 x) y) (*.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 (exp.f64 t)) t))) (sqrt.f64 z))
1.5b
(fma.f64 (sqrt.f64 z) (*.f64 (*.f64 (sqrt.f64 2) x) (+.f64 (*.f64 1/4 (*.f64 t t)) (*.f64 1/16 (pow.f64 t 4)))) (-.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) 1/2)) (-.f64 x (*.f64 y (*.f64 t t)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 z)) (+.f64 (*.f64 1/8 (*.f64 y (pow.f64 t 4))) y))))
0.3b
(*.f64 (*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2))) (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 t)) t)) (cbrt.f64 (pow.f64 (exp.f64 t) t))))
Compiler

Compiled 2954 to 1830 computations (38.1% saved)

localize17.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(cbrt.f64 (pow.f64 (exp.f64 t) t))
0.0b
(pow.f64 (exp.f64 t) t)
0.0b
(cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 t)) t))
0.2b
(*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2)))

series412.0ms (3.8%)

Counts
3 → 36
Calls

3 calls:

205.0ms
(cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 t)) t))
204.0ms
(cbrt.f64 (pow.f64 (exp.f64 t) t))
3.0ms
(pow.f64 (exp.f64 t) t)

rewrite84.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
567×log1p-expm1-u_binary64
567×expm1-log1p-u_binary64
314×log-prod_binary64
169×pow2_binary64
138×log-pow_binary64
Counts
3 → 87
Calls

3 calls:

82.0ms
(cbrt.f64 (pow.f64 (exp.f64 t) t))
82.0ms
(pow.f64 (exp.f64 t) t)
82.0ms
(cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 t)) t))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0824
115323
2153023
3497123
4496923
000
100

simplify74.0ms (0.7%)

Algorithm
egg-herbie
Rules
554×fma-def_binary64
473×distribute-rgt-out_binary64
418×associate-*l*_binary64
384×distribute-lft-out_binary64
322×associate-*r*_binary64
Counts
123 → 110
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
047387
1113375
2262321
3661321
41919321
53997321
64908321
74968321

prune177.0ms (1.6%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1371138
Fresh156
Picked011
Done000
Total1387145
Error
0.0b
Counts
145 → 7
Alt Table
StatusErrorProgram
1.3b
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2)))) 3) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
0.5b
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y))) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
28.1b
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2)))) 2) (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 t)) t)) (cbrt.f64 (pow.f64 (exp.f64 t) t))))
28.9b
(*.f64 (/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 y y)) (sqrt.f64 (*.f64 z 2))) (fma.f64 x 1/2 y)) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
0.5b
(*.f64 (*.f64 (-.f64 (*.f64 1/2 x) y) (*.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 (exp.f64 t)) t))) (sqrt.f64 z))
1.5b
(fma.f64 (sqrt.f64 z) (*.f64 (*.f64 (sqrt.f64 2) x) (+.f64 (*.f64 1/4 (*.f64 t t)) (*.f64 1/16 (pow.f64 t 4)))) (-.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) 1/2)) (-.f64 x (*.f64 y (*.f64 t t)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 z)) (+.f64 (*.f64 1/8 (*.f64 y (pow.f64 t 4))) y))))
0.3b
(*.f64 (*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2))) (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 t)) t)) (cbrt.f64 (pow.f64 (exp.f64 t) t))))
Compiler

Compiled 4257 to 2163 computations (49.2% saved)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y))) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
0.0b
(sqrt.f64 (exp.f64 t))
0.2b
(*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y))
0.4b
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y)))

series254.0ms (2.3%)

Counts
3 → 84
Calls

3 calls:

204.0ms
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y))) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
31.0ms
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y)))
18.0ms
(*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y))

rewrite75.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
571×prod-diff_binary64
169×add-sqr-sqrt_binary64
161×log1p-expm1-u_binary64
161×expm1-log1p-u_binary64
159×add-log-exp_binary64
Counts
3 → 58
Calls

3 calls:

74.0ms
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y))) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
74.0ms
(*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y))
74.0ms
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01756
135052
2402752
3502452
000
100

simplify95.0ms (0.9%)

Algorithm
egg-herbie
Rules
619×associate-*r*_binary64
594×associate-*l*_binary64
567×fma-def_binary64
430×distribute-rgt-neg-in_binary64
422×distribute-lft-neg-in_binary64
Counts
142 → 82
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0842635
12642293
28941742
338861742
451011742

prune111.0ms (1%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New1111112
Fresh055
Picked011
Done011
Total1118119
Error
0.0b
Counts
119 → 8
Alt Table
StatusErrorProgram
1.3b
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2)))) 3) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
0.5b
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y))) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
28.1b
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2)))) 2) (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 t)) t)) (cbrt.f64 (pow.f64 (exp.f64 t) t))))
28.9b
(*.f64 (/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 y y)) (sqrt.f64 (*.f64 z 2))) (fma.f64 x 1/2 y)) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
38.8b
(*.f64 (cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y)) 3))) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
0.5b
(*.f64 (*.f64 (-.f64 (*.f64 1/2 x) y) (*.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 (exp.f64 t)) t))) (sqrt.f64 z))
1.5b
(fma.f64 (sqrt.f64 z) (*.f64 (*.f64 (sqrt.f64 2) x) (+.f64 (*.f64 1/4 (*.f64 t t)) (*.f64 1/16 (pow.f64 t 4)))) (-.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) 1/2)) (-.f64 x (*.f64 y (*.f64 t t)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 z)) (+.f64 (*.f64 1/8 (*.f64 y (pow.f64 t 4))) y))))
0.3b
(*.f64 (*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2))) (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 t)) t)) (cbrt.f64 (pow.f64 (exp.f64 t) t))))
Compiler

Compiled 2894 to 1748 computations (39.6% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (exp.f64 t))
0.0b
(*.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
0.4b
(*.f64 (*.f64 (-.f64 (*.f64 1/2 x) y) (*.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 (exp.f64 t)) t))) (sqrt.f64 z))
0.4b
(*.f64 (-.f64 (*.f64 1/2 x) y) (*.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 (exp.f64 t)) t)))

series300.0ms (2.8%)

Counts
3 → 60
Calls

3 calls:

166.0ms
(*.f64 (*.f64 (-.f64 (*.f64 1/2 x) y) (*.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 (exp.f64 t)) t))) (sqrt.f64 z))
126.0ms
(*.f64 (-.f64 (*.f64 1/2 x) y) (*.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 (exp.f64 t)) t)))
6.0ms
(*.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 (exp.f64 t)) t))

rewrite69.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
571×prod-diff_binary64
169×add-sqr-sqrt_binary64
161×log1p-expm1-u_binary64
161×expm1-log1p-u_binary64
159×add-log-exp_binary64
Counts
3 → 55
Calls

3 calls:

68.0ms
(*.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
68.0ms
(*.f64 (*.f64 (-.f64 (*.f64 1/2 x) y) (*.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 (exp.f64 t)) t))) (sqrt.f64 z))
68.0ms
(*.f64 (-.f64 (*.f64 1/2 x) y) (*.f64 (sqrt.f64 2) (pow.f64 (sqrt.f64 (exp.f64 t)) t)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01762
135056
2402256
3501956
000
100

simplify105.0ms (1%)

Algorithm
egg-herbie
Rules
653×sub-neg_binary64
508×cancel-sign-sub-inv_binary64
336×*-commutative_binary64
332×distribute-rgt-neg-in_binary64
314×distribute-lft-neg-in_binary64
Counts
115 → 88
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01052431
13462267
212961627
337851627
448831627
549851627

prune134.0ms (1.2%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New1162118
Fresh145
Picked101
Done022
Total1188126
Error
0.0b
Counts
126 → 8
Alt Table
StatusErrorProgram
1.3b
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2)))) 3) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
0.5b
(*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y))) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
0.6b
(*.f64 (*.f64 (-.f64 (*.f64 1/2 x) y) (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 2 (pow.f64 (exp.f64 t) t)))) 2)) (sqrt.f64 z))
0.5b
(*.f64 (*.f64 (-.f64 (*.f64 1/2 x) y) (pow.f64 (sqrt.f64 (*.f64 2 (pow.f64 (exp.f64 t) t))) 1)) (sqrt.f64 z))
28.9b
(*.f64 (/.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) 1/4) (*.f64 y y)) (sqrt.f64 (*.f64 z 2))) (fma.f64 x 1/2 y)) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
38.8b
(*.f64 (cbrt.f64 (*.f64 (*.f64 2 (sqrt.f64 2)) (pow.f64 (*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y)) 3))) (pow.f64 (sqrt.f64 (exp.f64 t)) t))
1.5b
(fma.f64 (sqrt.f64 z) (*.f64 (*.f64 (sqrt.f64 2) x) (+.f64 (*.f64 1/4 (*.f64 t t)) (*.f64 1/16 (pow.f64 t 4)))) (-.f64 (*.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) 1/2)) (-.f64 x (*.f64 y (*.f64 t t)))) (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 z)) (+.f64 (*.f64 1/8 (*.f64 y (pow.f64 t 4))) y))))
0.3b
(*.f64 (*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2))) (*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (exp.f64 t)) t)) (cbrt.f64 (pow.f64 (exp.f64 t) t))))
Compiler

Compiled 3018 to 1896 computations (37.2% saved)

regimes3.1s (28.7%)

Accuracy

Total 0.3b remaining (89.3%)

Threshold costs 0.3b (89.3%)

Counts
146 → 1
Compiler

Compiled 57294 to 43178 computations (24.6% saved)

simplify3.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
01825
12625
23025
33225
43325
53225

end182.0ms (1.7%)

Compiler

Compiled 265 to 196 computations (26% saved)

Profiling

Loading profile data...