Details

Time bar (total: 11.2s)

analyze2.8s (25%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.7%0.3%0
0%99.7%0.3%1
0%99.7%0.3%2
0%99.7%0.3%3
0%99.7%0.3%4
0%99.7%0.3%5
0%99.7%0.3%6
0%99.7%0.3%7
0%99.7%0.3%8
0%99.7%0.3%9
0%99.7%0.3%10
0%99.7%0.3%11
0%99.7%0.3%12
4.3%95.4%0.3%13
6.6%93.1%0.3%14
Compiler

Compiled 25 to 19 computations (24% saved)

sample2.3s (20.7%)

Results
1.5s8256×body128valid
758.0ms4455×body128invalid
Compiler

Compiled 50 to 38 computations (24% saved)

preprocess43.0ms (0.4%)

Algorithm
egg-herbie
Rules
668×times-frac_binary64
300×associate-/l*_binary64
278×*-commutative_binary64
260×neg-sub0_binary64
260×neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0125432
1394432
21216432
33619432
066
166
Stop Event
unsound
node limit
Symmetry

(sort M D)

Compiler

Compiled 24 to 18 computations (25% saved)

simplify21.0ms (0.2%)

Algorithm
egg-herbie
Rules
418×associate-/l*_binary64
372×cancel-sign-sub-inv_binary64
251×associate-/l/_binary64
229×*-commutative_binary64
227×times-frac_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01827
14227
211527
384627
4381727
Stop Event
node limit
Counts
1 → 2

prune6.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
13.8b
Counts
3 → 1
Alt Table
StatusErrorProgram
13.8b
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 2 d))) 2) (/.f64 h l)))))
Compiler

Compiled 90 to 65 computations (27.8% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
2.9b
(*.f64 M (/.f64 D (*.f64 2 d)))
3.1b
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 2 d))) 2) (/.f64 h l)))))
5.4b
(sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 2 d))) 2) (/.f64 h l))))
8.1b
(*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 2 d))) 2) (/.f64 h l))

series557.0ms (5%)

Counts
4 → 204
Calls

57 calls:

23.0ms
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 2 d))) 2) (/.f64 h l)))))
w0
-inf
23.0ms
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 2 d))) 2) (/.f64 h l)))))
w0
0
23.0ms
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 2 d))) 2) (/.f64 h l)))))
w0
inf
17.0ms
(*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 2 d))) 2) (/.f64 h l))
M
-inf
17.0ms
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 2 d))) 2) (/.f64 h l)))))
l
0

rewrite39.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
188×add-sqr-sqrt_binary64
179×log1p-expm1-u_binary64
179×expm1-log1p-u_binary64
177×add-cbrt-cube_binary64
175×add-cube-cbrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01880
138680
Stop Event
node limit
Counts
4 → 92

simplify135.0ms (1.2%)

Algorithm
egg-herbie
Rules
638×fma-def_binary64
262×times-frac_binary64
244×associate-/r*_binary64
230×associate-*r*_binary64
226×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03108076
112408010
240707948
Stop Event
node limit
Counts
296 → 212

prune223.0ms (2%)

Pruning

12 alts after pruning (11 fresh and 1 done)

PrunedKeptTotal
New20111212
Fresh000
Picked011
Done000
Total20112213
Error
5.5b
Counts
213 → 12
Alt Table
StatusErrorProgram
13.8b
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 2 d))) 2) (/.f64 h l)))))
15.8b
w0
60.8b
(*.f64 -1 (*.f64 (sqrt.f64 (neg.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) h) (*.f64 (pow.f64 d 2) l))))) (*.f64 w0 M)))
37.3b
(fma.f64 (/.f64 (*.f64 D D) (/.f64 (*.f64 d d) (/.f64 (*.f64 (*.f64 M M) w0) (/.f64 l h)))) -1/8 w0)
58.2b
(*.f64 w0 (*.f64 D (sqrt.f64 (*.f64 (*.f64 -1/4 (/.f64 h l)) (*.f64 (/.f64 M d) (/.f64 M d))))))
14.0b
(*.f64 w0 (exp.f64 (*.f64 1/2 (log1p.f64 (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) (neg.f64 (/.f64 h l)))))))
12.0b
(*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h) l))))
13.8b
(*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) (/.f64 l h)))))
62.6b
(neg.f64 (fma.f64 D (*.f64 (sqrt.f64 (*.f64 (*.f64 -1/4 (/.f64 h l)) (*.f64 (/.f64 M d) (/.f64 M d)))) w0) (/.f64 (/.f64 (*.f64 1/2 w0) D) (sqrt.f64 (*.f64 (*.f64 -1/4 (/.f64 h l)) (*.f64 (/.f64 M d) (/.f64 M d)))))))
57.7b
(*.f64 D (*.f64 (sqrt.f64 (*.f64 (*.f64 -1/4 (/.f64 h l)) (*.f64 (/.f64 M d) (/.f64 M d)))) w0))
61.0b
(*.f64 D (*.f64 (sqrt.f64 (neg.f64 (*.f64 1/4 (/.f64 (*.f64 h (pow.f64 M 2)) (*.f64 (pow.f64 d 2) l))))) w0))
62.0b
(-.f64 (*.f64 (/.f64 1/8 (pow.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 (*.f64 h D) D) (*.f64 l (*.f64 d d))) -1/4)) 3)) (/.f64 w0 (pow.f64 M 3))) (fma.f64 M (*.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 (*.f64 h D) D) (*.f64 l (*.f64 d d))) -1/4)) w0) (*.f64 1/2 (/.f64 w0 (*.f64 M (sqrt.f64 (*.f64 (/.f64 (*.f64 (*.f64 h D) D) (*.f64 l (*.f64 d d))) -1/4)))))))
Compiler

Compiled 8902 to 5487 computations (38.4% saved)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
3.1b
(*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h) l))))
4.2b
(/.f64 (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h) l)
5.2b
(*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h)
5.4b
(sqrt.f64 (-.f64 1 (/.f64 (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h) l)))

series696.0ms (6.2%)

Counts
4 → 216
Calls

60 calls:

45.0ms
(*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h)
D
inf
24.0ms
(*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h) l))))
w0
-inf
22.0ms
(*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h) l))))
w0
inf
22.0ms
(*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h) l))))
w0
0
19.0ms
(/.f64 (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h) l)
D
-inf

rewrite45.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
194×add-sqr-sqrt_binary64
185×log1p-expm1-u_binary64
185×expm1-log1p-u_binary64
183×add-cbrt-cube_binary64
181×add-cube-cbrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01986
140486
Stop Event
node limit
Counts
4 → 95

simplify179.0ms (1.6%)

Algorithm
egg-herbie
Rules
610×fma-def_binary64
263×times-frac_binary64
246×associate-/r*_binary64
239×fma-neg_binary64
229×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03098766
112418706
240518644
Stop Event
node limit
Counts
311 → 216

prune238.0ms (2.1%)

Pruning

13 alts after pruning (11 fresh and 2 done)

PrunedKeptTotal
New2106216
Fresh5510
Picked011
Done011
Total21513228
Error
4.4b
Counts
228 → 13
Alt Table
StatusErrorProgram
13.8b
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (*.f64 M (/.f64 D (*.f64 2 d))) 2) (/.f64 h l)))))
15.8b
w0
60.8b
(*.f64 w0 (*.f64 D (sqrt.f64 (*.f64 (*.f64 (/.f64 h (*.f64 d d)) (/.f64 M (/.f64 l M))) -1/4))))
62.0b
(-.f64 (*.f64 (/.f64 1/8 (pow.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 (*.f64 h D) D) (*.f64 l (*.f64 d d))) -1/4)) 3)) (/.f64 w0 (pow.f64 M 3))) (fma.f64 M (*.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 (*.f64 h D) D) (*.f64 l (*.f64 d d))) -1/4)) w0) (*.f64 1/2 (/.f64 w0 (*.f64 M (sqrt.f64 (*.f64 (/.f64 (*.f64 (*.f64 h D) D) (*.f64 l (*.f64 d d))) -1/4)))))))
61.9b
(*.f64 w0 (neg.f64 (+.f64 (*.f64 1/2 (/.f64 1 (*.f64 (sqrt.f64 (neg.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) h) (*.f64 (pow.f64 d 2) l))))) M))) (*.f64 (sqrt.f64 (neg.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) h) (*.f64 l (pow.f64 d 2)))))) M))))
35.8b
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (/.f64 (*.f64 (*.f64 (*.f64 M (/.f64 1/2 d)) D) (sqrt.f64 h)) 1) (/.f64 (*.f64 (*.f64 (*.f64 M (/.f64 1/2 d)) D) (sqrt.f64 h)) l)))))
13.0b
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (/.f64 (pow.f64 (*.f64 (*.f64 M (/.f64 1/2 d)) D) 2) l) h))))
58.2b
(*.f64 w0 (*.f64 D (sqrt.f64 (*.f64 (*.f64 -1/4 (/.f64 h l)) (*.f64 (/.f64 M d) (/.f64 M d))))))
60.5b
(*.f64 D (*.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 h (*.f64 d d)) (/.f64 M (/.f64 l M))) -1/4)) w0))
12.0b
(*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h) l))))
62.6b
(neg.f64 (fma.f64 D (*.f64 (sqrt.f64 (*.f64 (*.f64 -1/4 (/.f64 h l)) (*.f64 (/.f64 M d) (/.f64 M d)))) w0) (/.f64 (/.f64 (*.f64 1/2 w0) D) (sqrt.f64 (*.f64 (*.f64 -1/4 (/.f64 h l)) (*.f64 (/.f64 M d) (/.f64 M d)))))))
57.7b
(*.f64 D (*.f64 (sqrt.f64 (*.f64 (*.f64 -1/4 (/.f64 h l)) (*.f64 (/.f64 M d) (/.f64 M d)))) w0))
24.2b
(*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 (*.f64 1/4 (*.f64 (/.f64 D (/.f64 (*.f64 d d) D)) (*.f64 M (*.f64 M h)))) l))))
Compiler

Compiled 9247 to 5786 computations (37.4% saved)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
3.9b
(*.f64 (/.f64 (pow.f64 (*.f64 (*.f64 M (/.f64 1/2 d)) D) 2) l) h)
5.4b
(sqrt.f64 (-.f64 1 (*.f64 (/.f64 (pow.f64 (*.f64 (*.f64 M (/.f64 1/2 d)) D) 2) l) h)))
6.7b
(/.f64 (pow.f64 (*.f64 (*.f64 M (/.f64 1/2 d)) D) 2) l)
7.2b
(*.f64 (*.f64 M (/.f64 1/2 d)) D)

series466.0ms (4.2%)

Counts
4 → 192
Calls

51 calls:

21.0ms
(sqrt.f64 (-.f64 1 (*.f64 (/.f64 (pow.f64 (*.f64 (*.f64 M (/.f64 1/2 d)) D) 2) l) h)))
h
-inf
21.0ms
(*.f64 (/.f64 (pow.f64 (*.f64 (*.f64 M (/.f64 1/2 d)) D) 2) l) h)
M
-inf
15.0ms
(*.f64 (/.f64 (pow.f64 (*.f64 (*.f64 M (/.f64 1/2 d)) D) 2) l) h)
l
0
14.0ms
(*.f64 (/.f64 (pow.f64 (*.f64 (*.f64 M (/.f64 1/2 d)) D) 2) l) h)
h
0
14.0ms
(*.f64 (/.f64 (pow.f64 (*.f64 (*.f64 M (/.f64 1/2 d)) D) 2) l) h)
h
inf

rewrite74.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
527×prod-diff_binary64
176×add-sqr-sqrt_binary64
169×log1p-expm1-u_binary64
169×expm1-log1p-u_binary64
167×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01769
136869
2464169
Stop Event
node limit
Counts
4 → 104

simplify100.0ms (0.9%)

Algorithm
egg-herbie
Rules
266×associate-/r/_binary64
252×fma-def_binary64
249×unswap-sqr_binary64
203×distribute-neg-frac_binary64
188×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01885700
17115662
223665644
Stop Event
node limit
Counts
296 → 169

prune205.0ms (1.8%)

Pruning

12 alts after pruning (10 fresh and 2 done)

PrunedKeptTotal
New1645169
Fresh5510
Picked011
Done112
Total17012182
Error
3.9b
Counts
182 → 12
Alt Table
StatusErrorProgram
11.5b
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (pow.f64 l -1))) h))))
62.6b
(neg.f64 (fma.f64 D (*.f64 (sqrt.f64 (*.f64 (*.f64 -1/4 (/.f64 h l)) (*.f64 (/.f64 M d) (/.f64 M d)))) w0) (/.f64 (/.f64 (*.f64 1/2 w0) D) (sqrt.f64 (*.f64 (*.f64 -1/4 (/.f64 h l)) (*.f64 (/.f64 M d) (/.f64 M d)))))))
57.7b
(*.f64 D (*.f64 (sqrt.f64 (*.f64 (*.f64 -1/4 (/.f64 h l)) (*.f64 (/.f64 M d) (/.f64 M d)))) w0))
60.0b
(*.f64 w0 (*.f64 D (sqrt.f64 (*.f64 (*.f64 (/.f64 M (/.f64 l M)) (/.f64 (/.f64 h d) d)) -1/4))))
62.0b
(-.f64 (*.f64 (/.f64 1/8 (pow.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 (*.f64 h D) D) (*.f64 l (*.f64 d d))) -1/4)) 3)) (/.f64 w0 (pow.f64 M 3))) (fma.f64 M (*.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 (*.f64 h D) D) (*.f64 l (*.f64 d d))) -1/4)) w0) (*.f64 1/2 (/.f64 w0 (*.f64 M (sqrt.f64 (*.f64 (/.f64 (*.f64 (*.f64 h D) D) (*.f64 l (*.f64 d d))) -1/4)))))))
60.7b
(*.f64 w0 (*.f64 -1 (*.f64 (sqrt.f64 (neg.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) h) (*.f64 (pow.f64 d 2) l))))) M)))
20.9b
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (*.f64 (*.f64 1/4 (*.f64 (/.f64 D d) (/.f64 D d))) (/.f64 M (/.f64 l M))) h))))
13.0b
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (/.f64 (pow.f64 (*.f64 (*.f64 M (/.f64 1/2 d)) D) 2) l) h))))
15.8b
w0
60.5b
(*.f64 D (*.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 h (*.f64 d d)) (/.f64 M (/.f64 l M))) -1/4)) w0))
12.0b
(*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h) l))))
58.7b
(*.f64 w0 (*.f64 M (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (/.f64 h l)) -1/4)))))
Compiler

Compiled 6229 to 3975 computations (36.2% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
3.8b
(*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (pow.f64 l -1))
3.9b
(*.f64 (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (pow.f64 l -1))) h)
4.8b
(/.f64 (*.f64 (*.f64 M 1/2) D) d)
5.4b
(sqrt.f64 (-.f64 1 (*.f64 (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (pow.f64 l -1))) h)))

series345.0ms (3.1%)

Counts
4 → 192
Calls

51 calls:

14.0ms
(*.f64 (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (pow.f64 l -1))) h)
l
0
14.0ms
(*.f64 (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (pow.f64 l -1))) h)
h
-inf
14.0ms
(*.f64 (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (pow.f64 l -1))) h)
h
inf
14.0ms
(*.f64 (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (pow.f64 l -1))) h)
l
-inf
14.0ms
(*.f64 (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (pow.f64 l -1))) h)
h
0

rewrite40.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
187×add-sqr-sqrt_binary64
174×add-cbrt-cube_binary64
174×log1p-expm1-u_binary64
174×expm1-log1p-u_binary64
172×add-log-exp_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01893
138266
Stop Event
node limit
Counts
4 → 128

simplify91.0ms (0.8%)

Algorithm
egg-herbie
Rules
265×associate-/r/_binary64
254×fma-def_binary64
245×unswap-sqr_binary64
203×distribute-neg-frac_binary64
188×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01895268
17155230
223605212
Stop Event
node limit
Counts
320 → 193

prune300.0ms (2.7%)

Pruning

13 alts after pruning (10 fresh and 3 done)

PrunedKeptTotal
New2392241
Fresh189
Picked011
Done022
Total24013253
Error
3.7b
Counts
253 → 13
Alt Table
StatusErrorProgram
13.0b
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (/.f64 (pow.f64 (*.f64 (*.f64 M (/.f64 1/2 d)) D) 2) l) h))))
11.9b
(*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 (*.f64 (*.f64 M 1/2) (*.f64 (/.f64 (*.f64 M 1/2) (*.f64 l (/.f64 d D))) h)) (/.f64 d D)))))
12.6b
(*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 (*.f64 (/.f64 (*.f64 M 1/2) (*.f64 l (/.f64 d D))) h) (/.f64 (/.f64 d M) (*.f64 1/2 D))))))
15.8b
w0
11.5b
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (*.f64 (/.f64 (*.f64 (*.f64 M 1/2) D) d) (pow.f64 l -1))) h))))
62.6b
(neg.f64 (fma.f64 D (*.f64 (sqrt.f64 (*.f64 (*.f64 -1/4 (/.f64 h l)) (*.f64 (/.f64 M d) (/.f64 M d)))) w0) (/.f64 (/.f64 (*.f64 1/2 w0) D) (sqrt.f64 (*.f64 (*.f64 -1/4 (/.f64 h l)) (*.f64 (/.f64 M d) (/.f64 M d)))))))
57.7b
(*.f64 D (*.f64 (sqrt.f64 (*.f64 (*.f64 -1/4 (/.f64 h l)) (*.f64 (/.f64 M d) (/.f64 M d)))) w0))
60.0b
(*.f64 w0 (*.f64 D (sqrt.f64 (*.f64 (*.f64 (/.f64 M (/.f64 l M)) (/.f64 (/.f64 h d) d)) -1/4))))
62.0b
(-.f64 (*.f64 (/.f64 1/8 (pow.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 (*.f64 h D) D) (*.f64 l (*.f64 d d))) -1/4)) 3)) (/.f64 w0 (pow.f64 M 3))) (fma.f64 M (*.f64 (sqrt.f64 (*.f64 (/.f64 (*.f64 (*.f64 h D) D) (*.f64 l (*.f64 d d))) -1/4)) w0) (*.f64 1/2 (/.f64 w0 (*.f64 M (sqrt.f64 (*.f64 (/.f64 (*.f64 (*.f64 h D) D) (*.f64 l (*.f64 d d))) -1/4)))))))
60.7b
(*.f64 w0 (*.f64 -1 (*.f64 (sqrt.f64 (neg.f64 (*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) h) (*.f64 (pow.f64 d 2) l))))) M)))
60.5b
(*.f64 D (*.f64 (sqrt.f64 (*.f64 (*.f64 (/.f64 h (*.f64 d d)) (/.f64 M (/.f64 l M))) -1/4)) w0))
12.0b
(*.f64 w0 (sqrt.f64 (-.f64 1 (/.f64 (*.f64 (pow.f64 (*.f64 M (*.f64 D (/.f64 1/2 d))) 2) h) l))))
58.7b
(*.f64 w0 (*.f64 M (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (/.f64 h l)) -1/4)))))
Compiler

Compiled 8578 to 5277 computations (38.5% saved)

regimes1.8s (16.3%)

Accuracy

Total 4.7b remaining (58.9%)

Threshold costs 0b (0%)

Counts
91 → 4
Compiler

Compiled 39075 to 28103 computations (28.1% saved)

bsearch4.0ms (0%)

Algorithm
left-value
Calls

3 calls:

0.0ms
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2) (/.f64 h l)))))
0.0ms
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2) (/.f64 h l)))))
0.0ms
(*.f64 w0 (sqrt.f64 (-.f64 1 (*.f64 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2) (/.f64 h l)))))
Steps
ItersPointRange
#hash((type . real) (value . +inf))
∈ [
#hash((type . real) (value . +inf))
,
#hash((type . real) (value . NaN))
]
1.6820622892440524e+307
∈ [
1.6820622892440524e+307
,
#hash((type . real) (value . +inf))
]
#hash((type . real) (value . -inf))
∈ [
#hash((type . real) (value . -inf))
,
-7.66985279987438e+297
]
Compiler

Compiled 24 to 18 computations (25% saved)

simplify9.0ms (0.1%)

Algorithm
egg-herbie
Rules
38×*-commutative_binary64
19×+-commutative_binary64
19×sub-neg_binary64
17×neg-sub0_binary64
17×neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
062215
1101215
2137215
3172215
4205215
5220215
6226215
7227215
Stop Event
saturated

end376.0ms (3.4%)

Stop Event
fuel
Compiler

Compiled 977 to 605 computations (38.1% saved)

Profiling

Loading profile data...