Details

Time bar (total: 7.9s)

analyze926.0ms (11.7%)

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)

sample2.7s (34.7%)

Results
1.5s10999×body128invalid
1.1s8256×body128valid
Compiler

Compiled 65 to 50 computations (23.1% saved)

simplify27.0ms (0.3%)

Algorithm
egg-herbie
Rules
519×fma-def_binary64
314×associate-*l*_binary64
304×*-commutative_binary64
272×fma-neg_binary64
248×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01625
12925
25225
311625
428625
563225
6179325
7372525
Stop Event
node limit
Counts
1 → 2

prune5.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 x 1/2) y) (*.f64 (sqrt.f64 (*.f64 z 2)) (pow.f64 (sqrt.f64 (exp.f64 t)) t)))
0.3b
(*.f64 (*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 z 2))) (exp.f64 (/.f64 (*.f64 t t) 2)))
Compiler

Compiled 119 to 89 computations (25.2% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

series192.0ms (2.4%)

Counts
4 → 56
Calls

4 calls:

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

rewrite60.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
571×prod-diff_binary64
161×add-sqr-sqrt_binary64
153×log1p-expm1-u_binary64
153×expm1-log1p-u_binary64
151×add-cbrt-cube_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01654
133350
2410350
Stop Event
node limit
Counts
4 → 77
Calls

4 calls:

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

simplify59.0ms (0.7%)

Algorithm
egg-herbie
Rules
779×fma-def_binary64
340×sub-neg_binary64
296×*-commutative_binary64
275×cancel-sign-sub-inv_binary64
256×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01061914
13231788
211461581
340091581
Stop Event
node limit
Counts
133 → 115

prune119.0ms (1.5%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New1078115
Fresh101
Picked101
Done000
Total1098117
Error
0.0b
Counts
117 → 8
Alt Table
StatusErrorProgram
0.3b
(*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (*.f64 (*.f64 z 2) (pow.f64 (exp.f64 t) t))))
1.4b
(*.f64 (-.f64 (*.f64 x 1/2) y) (*.f64 (sqrt.f64 2) (sqrt.f64 z)))
0.3b
(*.f64 (-.f64 (*.f64 x 1/2) y) (*.f64 (sqrt.f64 (*.f64 z 2)) (*.f64 (pow.f64 (cbrt.f64 (exp.f64 t)) t) (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 t))) t))))
0.5b
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 2) (-.f64 (*.f64 1/2 (*.f64 (pow.f64 (sqrt.f64 (exp.f64 t)) t) x)) (*.f64 y (pow.f64 (sqrt.f64 (exp.f64 t)) t)))))
48.1b
(sqrt.f64 (*.f64 (*.f64 (*.f64 z 2) (pow.f64 (exp.f64 t) t)) (pow.f64 (-.f64 (*.f64 x 1/2) y) 2)))
17.7b
(*.f64 (-.f64 (*.f64 x 1/2) y) (cbrt.f64 (*.f64 (pow.f64 (*.f64 z 2) 3/2) (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 t)) t) 3))))
0.5b
(*.f64 (-.f64 (*.f64 x 1/2) y) (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (*.f64 z 2) (pow.f64 (exp.f64 t) t)))) 2))
1.4b
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y)))
Compiler

Compiled 2908 to 1853 computations (36.3% saved)

localize13.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

series367.0ms (4.7%)

Counts
3 → 72
Calls

3 calls:

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

rewrite54.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
571×prod-diff_binary64
272×log1p-udef_binary64
153×add-sqr-sqrt_binary64
145×log1p-expm1-u_binary64
145×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01541
131441
2383941
Stop Event
node limit
Counts
3 → 54
Calls

3 calls:

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

simplify39.0ms (0.5%)

Algorithm
egg-herbie
Rules
700×fma-def_binary64
550×associate-*r*_binary64
514×associate-*l*_binary64
250×cancel-sign-sub-inv_binary64
227×*-commutative_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0941984
12891953
210271407
Stop Event
node limit
Counts
126 → 87

prune98.0ms (1.2%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New85287
Fresh167
Picked101
Done000
Total87895
Error
0.0b
Counts
95 → 8
Alt Table
StatusErrorProgram
0.5b
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (exp.f64 t) t) z)) (*.f64 (sqrt.f64 2) (-.f64 (*.f64 1/2 x) y)))
0.5b
(*.f64 (-.f64 (*.f64 x 1/2) y) (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (*.f64 z 2) (pow.f64 (exp.f64 t) t)))) 2))
0.3b
(*.f64 (-.f64 (*.f64 x 1/2) y) (*.f64 (sqrt.f64 (*.f64 z 2)) (*.f64 (pow.f64 (cbrt.f64 (exp.f64 t)) t) (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 t))) t))))
48.1b
(sqrt.f64 (*.f64 (*.f64 (*.f64 z 2) (pow.f64 (exp.f64 t) t)) (pow.f64 (-.f64 (*.f64 x 1/2) y) 2)))
0.9b
(*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 z 2) (pow.f64 (exp.f64 t) t))) 3)))
17.7b
(*.f64 (-.f64 (*.f64 x 1/2) y) (cbrt.f64 (*.f64 (pow.f64 (*.f64 z 2) 3/2) (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 t)) t) 3))))
1.4b
(*.f64 (-.f64 (*.f64 x 1/2) y) (*.f64 (sqrt.f64 2) (sqrt.f64 z)))
1.4b
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y)))
Compiler

Compiled 2230 to 1456 computations (34.7% saved)

localize18.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

series600.0ms (7.6%)

Counts
3 → 60
Calls

3 calls:

467.0ms
(*.f64 (-.f64 (*.f64 x 1/2) y) (*.f64 (sqrt.f64 (*.f64 z 2)) (*.f64 (pow.f64 (cbrt.f64 (exp.f64 t)) t) (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 t))) t))))
117.0ms
(cbrt.f64 (sqrt.f64 (exp.f64 t)))
16.0ms
(cbrt.f64 (exp.f64 t))

rewrite34.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
191×add-sqr-sqrt_binary64
188×log1p-expm1-u_binary64
188×expm1-log1p-u_binary64
184×add-cbrt-cube_binary64
181×add-cube-cbrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02046
141434
Stop Event
node limit
Counts
3 → 70
Calls

3 calls:

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

simplify61.0ms (0.8%)

Algorithm
egg-herbie
Rules
641×fma-def_binary64
359×*-commutative_binary64
340×sub-neg_binary64
268×cancel-sign-sub-inv_binary64
261×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01092265
13262151
211961872
341551872
Stop Event
node limit
Counts
130 → 102

prune175.0ms (2.2%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New1300130
Fresh077
Picked011
Done000
Total1308138
Error
0.0b
Counts
138 → 8
Alt Table
StatusErrorProgram
0.5b
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (exp.f64 t) t) z)) (*.f64 (sqrt.f64 2) (-.f64 (*.f64 1/2 x) y)))
0.5b
(*.f64 (-.f64 (*.f64 x 1/2) y) (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (*.f64 z 2) (pow.f64 (exp.f64 t) t)))) 2))
0.3b
(*.f64 (-.f64 (*.f64 x 1/2) y) (*.f64 (sqrt.f64 (*.f64 z 2)) (*.f64 (pow.f64 (cbrt.f64 (exp.f64 t)) t) (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 t))) t))))
48.1b
(sqrt.f64 (*.f64 (*.f64 (*.f64 z 2) (pow.f64 (exp.f64 t) t)) (pow.f64 (-.f64 (*.f64 x 1/2) y) 2)))
0.9b
(*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 z 2) (pow.f64 (exp.f64 t) t))) 3)))
17.7b
(*.f64 (-.f64 (*.f64 x 1/2) y) (cbrt.f64 (*.f64 (pow.f64 (*.f64 z 2) 3/2) (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 t)) t) 3))))
1.4b
(*.f64 (-.f64 (*.f64 x 1/2) y) (*.f64 (sqrt.f64 2) (sqrt.f64 z)))
1.4b
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y)))
Compiler

Compiled 3877 to 2265 computations (41.6% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

series338.0ms (4.3%)

Counts
3 → 84
Calls

3 calls:

179.0ms
(*.f64 (pow.f64 (exp.f64 t) t) z)
151.0ms
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (exp.f64 t) t) z)) (*.f64 (sqrt.f64 2) (-.f64 (*.f64 1/2 x) y)))
8.0ms
(*.f64 (sqrt.f64 2) (-.f64 (*.f64 1/2 x) y))

rewrite57.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
571×prod-diff_binary64
160×add-sqr-sqrt_binary64
152×log1p-expm1-u_binary64
152×expm1-log1p-u_binary64
150×add-cbrt-cube_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01646
133344
2404544
Stop Event
node limit
Counts
3 → 56
Calls

3 calls:

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

simplify62.0ms (0.8%)

Algorithm
egg-herbie
Rules
660×fma-def_binary64
534×associate-*r*_binary64
518×associate-*l*_binary64
340×sub-neg_binary64
252×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0861711
12701597
29681519
348491519
Stop Event
node limit
Counts
140 → 86

prune102.0ms (1.3%)

Pruning

9 alts after pruning (7 fresh and 2 done)

PrunedKeptTotal
New1111112
Fresh066
Picked011
Done011
Total1119120
Error
0b
Counts
120 → 9
Alt Table
StatusErrorProgram
32.9b
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (exp.f64 t) t) z)) (pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 2) (-.f64 (*.f64 1/2 x) y))) 2))
0.3b
(*.f64 (-.f64 (*.f64 x 1/2) y) (*.f64 (sqrt.f64 (*.f64 z 2)) (*.f64 (pow.f64 (cbrt.f64 (exp.f64 t)) t) (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 t))) t))))
0.5b
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (exp.f64 t) t) z)) (*.f64 (sqrt.f64 2) (-.f64 (*.f64 1/2 x) y)))
0.5b
(*.f64 (-.f64 (*.f64 x 1/2) y) (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 (*.f64 z 2) (pow.f64 (exp.f64 t) t)))) 2))
48.1b
(sqrt.f64 (*.f64 (*.f64 (*.f64 z 2) (pow.f64 (exp.f64 t) t)) (pow.f64 (-.f64 (*.f64 x 1/2) y) 2)))
0.9b
(*.f64 (-.f64 (*.f64 x 1/2) y) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 z 2) (pow.f64 (exp.f64 t) t))) 3)))
17.7b
(*.f64 (-.f64 (*.f64 x 1/2) y) (cbrt.f64 (*.f64 (pow.f64 (*.f64 z 2) 3/2) (pow.f64 (pow.f64 (sqrt.f64 (exp.f64 t)) t) 3))))
1.4b
(*.f64 (-.f64 (*.f64 x 1/2) y) (*.f64 (sqrt.f64 2) (sqrt.f64 z)))
1.4b
(*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 z) (-.f64 (*.f64 1/2 x) y)))
Compiler

Compiled 2617 to 1595 computations (39.1% saved)

regimes1.6s (19.9%)

Accuracy

Total 0.3b remaining (83.9%)

Threshold costs 0.3b (83.9%)

Counts
94 → 1
Compiler

Compiled 30979 to 23534 computations (24% 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
01723
12523
22923
33123
43223
Stop Event
saturated

end152.0ms (1.9%)

Compiler

Compiled 227 to 173 computations (23.8% saved)

Profiling

Loading profile data...