Details

Time bar (total: 14.6s)

analyze2.1s (14.6%)

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%81.1%18.9%7
0%68.6%31.4%8
0%59.2%40.8%9
0%59.2%40.8%10
0%59.2%40.8%11
0.4%49.5%50.1%12
0.8%44.4%54.8%13
1.4%39.9%58.7%14
Compiler

Compiled 41 to 32 computations (22% saved)

sample5.4s (37.2%)

Results
3.3s13813×body128invalid
2.1s8256×body128valid
Compiler

Compiled 82 to 64 computations (22% saved)

preprocess41.0ms (0.3%)

Algorithm
egg-herbie
Rules
775×associate-*r/_binary64
448×*-commutative_binary64
230×associate-/l*_binary64
205×distribute-rgt-neg-in_binary64
185×distribute-lft-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0122451
1419451
21543429
055
155
Stop Event
unsound
node limit
Symmetry

(sort M D)

Compiler

Compiled 40 to 31 computations (22.5% saved)

simplify15.0ms (0.1%)

Algorithm
egg-herbie
Rules
425×associate-/l*_binary64
398×*-commutative_binary64
236×associate-/l/_binary64
214×associate-/r/_binary64
203×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02441
16241
219539
3130939
Stop Event
node limit
Counts
1 → 2

prune5.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
25.6b
Counts
3 → 2
Alt Table
StatusErrorProgram
25.9b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
26.7b
(*.f64 (sqrt.f64 (/.f64 d h)) (*.f64 (sqrt.f64 (/.f64 d l)) (fma.f64 (/.f64 h l) (*.f64 (pow.f64 (*.f64 M (/.f64 (/.f64 D d) 2)) 2) -1/2) 1)))
Compiler

Compiled 208 to 151 computations (27.4% saved)

localize24.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
6.7b
(/.f64 (*.f64 M D) (*.f64 2 d))
11.3b
(pow.f64 (/.f64 d l) (/.f64 1 2))
11.4b
(pow.f64 (/.f64 d h) (/.f64 1 2))
12.2b
(*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))

series210.0ms (1.4%)

Counts
4 → 96
Calls

36 calls:

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

rewrite38.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
203×add-sqr-sqrt_binary64
193×log1p-expm1-u_binary64
193×expm1-log1p-u_binary64
189×add-cbrt-cube_binary64
189×add-log-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02144
143144
Stop Event
node limit
Counts
4 → 112

simplify112.0ms (0.8%)

Algorithm
egg-herbie
Rules
680×unswap-sqr_binary64
535×associate-/l/_binary64
493×associate-/r/_binary64
349×*-commutative_binary64
216×times-frac_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0291860
1871860
22611860
315791860
434281860
537041860
648151860
748971860
849961860
Stop Event
node limit
Counts
208 → 119

prune269.0ms (1.8%)

Pruning

21 alts after pruning (21 fresh and 0 done)

PrunedKeptTotal
New9821119
Fresh101
Picked101
Done000
Total10021121
Error
13.1b
Counts
121 → 21
Alt Table
StatusErrorProgram
41.7b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 (sqrt.f64 (neg.f64 d)) (sqrt.f64 (neg.f64 l)))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
26.0b
(*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 d h) 1/4) (pow.f64 (/.f64 d h) 1/4)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
36.1b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (log.f64 (pow.f64 (exp.f64 (/.f64 M 2)) (/.f64 D d))) 2)) (/.f64 h l))))
43.3b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 (sqrt.f64 d) (sqrt.f64 l))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
43.4b
(*.f64 (*.f64 (*.f64 (sqrt.f64 d) (sqrt.f64 (/.f64 1 h))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
26.0b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (pow.f64 (/.f64 d l) 1/4) (pow.f64 (/.f64 d l) 1/4))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
26.2b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (/.f64 d h)) (cbrt.f64 (sqrt.f64 (/.f64 d h)))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
32.0b
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 d h) 3/2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
29.0b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2) (/.f64 h l))) 3))))
41.4b
(*.f64 (*.f64 (/.f64 (sqrt.f64 (neg.f64 d)) (sqrt.f64 (neg.f64 h))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
25.4b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
27.1b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 M D) 2)) 2) (/.f64 (cbrt.f64 (*.f64 M D)) d)) 2)) (/.f64 h l))))
43.4b
(*.f64 (*.f64 (/.f64 (sqrt.f64 d) (sqrt.f64 h)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
25.7b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) (/.f64 l h))))
25.9b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 1 (sqrt.f64 (/.f64 l d)))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
43.3b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (sqrt.f64 d) (sqrt.f64 (/.f64 1 l)))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
26.2b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (cbrt.f64 (/.f64 d l)) (cbrt.f64 (sqrt.f64 (/.f64 d l))))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
33.6b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (log.f64 (pow.f64 (exp.f64 (/.f64 h l)) (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2))))))
25.5b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (pow.f64 (*.f64 (sqrt.f64 (/.f64 h l)) (*.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) (sqrt.f64 1/2))) 2)))
25.7b
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 (/.f64 h d))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
35.4b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (cbrt.f64 (pow.f64 (/.f64 d l) 3/2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
Compiler

Compiled 6156 to 4111 computations (33.2% saved)

localize22.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
6.2b
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)
6.6b
(*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h)
11.3b
(pow.f64 (/.f64 d l) (/.f64 1 2))
11.4b
(pow.f64 (/.f64 d h) (/.f64 1 2))

series282.0ms (1.9%)

Counts
2 → 108
Calls

27 calls:

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

rewrite61.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
292×log1p-udef_binary64
163×add-sqr-sqrt_binary64
155×log1p-expm1-u_binary64
155×expm1-log1p-u_binary64
153×add-cube-cbrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01541
133241
2451941
Stop Event
node limit
Counts
2 → 62

simplify142.0ms (1%)

Algorithm
egg-herbie
Rules
623×associate-/l/_binary64
595×associate-/r/_binary64
440×unswap-sqr_binary64
356×*-commutative_binary64
231×times-frac_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0292556
1872556
22612556
316262556
437242556
539522556
646372556
747192556
848162556
949422556
Stop Event
node limit
Counts
170 → 70

prune278.0ms (1.9%)

Pruning

27 alts after pruning (27 fresh and 0 done)

PrunedKeptTotal
New9517112
Fresh101020
Picked101
Done000
Total10627133
Error
8.5b
Counts
133 → 27
Alt Table
StatusErrorProgram
41.7b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 (sqrt.f64 (neg.f64 d)) (sqrt.f64 (neg.f64 l)))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
36.1b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (log.f64 (pow.f64 (exp.f64 (/.f64 M 2)) (/.f64 D d))) 2)) (/.f64 h l))))
43.3b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (sqrt.f64 d) (sqrt.f64 (/.f64 1 l)))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
25.7b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (/.f64 d h)) (cbrt.f64 (sqrt.f64 (/.f64 d h)))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
34.7b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 1/8 (*.f64 D (*.f64 (/.f64 D (*.f64 d l)) (*.f64 (*.f64 M M) (/.f64 h d)))))))
41.9b
(*.f64 (*.f64 (*.f64 (sqrt.f64 d) (sqrt.f64 (/.f64 1 h))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
33.1b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 1/8 (*.f64 D (*.f64 (/.f64 D d) (*.f64 (*.f64 M M) (/.f64 h d))))) l)))
25.7b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (cbrt.f64 (/.f64 d l)) (cbrt.f64 (sqrt.f64 (/.f64 d l))))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
25.5b
(*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 d h) 1/4) (pow.f64 (/.f64 d h) 1/4)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
40.6b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h)) (pow.f64 d 2))) l)))
29.0b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2) (/.f64 h l))) 3))))
42.6b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (sqrt.f64 d) (sqrt.f64 (/.f64 1 l)))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
24.0b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M (*.f64 1/2 D)) d) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h))) 2)))
33.6b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (log.f64 (pow.f64 (exp.f64 (/.f64 h l)) (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2))))))
25.5b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (pow.f64 (/.f64 d l) 1/4) (pow.f64 (/.f64 d l) 1/4))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
41.9b
(*.f64 (*.f64 (/.f64 (sqrt.f64 d) (sqrt.f64 h)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
25.4b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 1 (sqrt.f64 (/.f64 l d)))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
40.9b
(*.f64 (*.f64 (/.f64 (sqrt.f64 (neg.f64 d)) (sqrt.f64 (neg.f64 h))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
41.4b
(*.f64 (*.f64 (/.f64 (sqrt.f64 (neg.f64 d)) (sqrt.f64 (neg.f64 h))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
42.6b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 (sqrt.f64 d) (sqrt.f64 l))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
27.1b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 M D) 2)) 2) (/.f64 (cbrt.f64 (*.f64 M D)) d)) 2)) (/.f64 h l))))
25.7b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) (/.f64 l h))))
41.3b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 (sqrt.f64 (neg.f64 d)) (sqrt.f64 (neg.f64 l)))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
44.0b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (pow.f64 (*.f64 (sqrt.f64 h) (*.f64 (/.f64 (*.f64 M (*.f64 1/2 D)) d) (sqrt.f64 1/2))) 2) l)))
25.7b
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 (/.f64 h d))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
31.7b
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 d h) 3/2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
35.4b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (cbrt.f64 (pow.f64 (/.f64 d l) 3/2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
Compiler

Compiled 6236 to 4244 computations (31.9% saved)

localize25.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
6.7b
(/.f64 (*.f64 M (*.f64 1/2 D)) d)
11.3b
(pow.f64 (/.f64 d l) (/.f64 1 2))
11.4b
(pow.f64 (/.f64 d h) (/.f64 1 2))
15.3b
(sqrt.f64 (/.f64 l h))

series26.0ms (0.2%)

Counts
2 → 36
Calls

15 calls:

3.0ms
(/.f64 (*.f64 M (*.f64 1/2 D)) d)
D
inf
2.0ms
(sqrt.f64 (/.f64 l h))
l
0
2.0ms
(sqrt.f64 (/.f64 l h))
h
-inf
2.0ms
(sqrt.f64 (/.f64 l h))
h
inf
2.0ms
(sqrt.f64 (/.f64 l h))
l
-inf

rewrite51.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
704×log-prod_binary64
228×expm1-udef_binary64
228×log1p-udef_binary64
209×log-pow_binary64
140×log-div_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01216
125216
2337716
Stop Event
node limit
Counts
2 → 84

simplify16.0ms (0.1%)

Algorithm
egg-herbie
Rules
15×associate-/l*_binary64
14×*-commutative_binary64
11×associate-/r/_binary64
10×associate-*r*_binary64
associate-*l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08360
114360
229360
355360
485360
596360
Stop Event
saturated
Counts
120 → 86

prune322.0ms (2.2%)

Pruning

27 alts after pruning (27 fresh and 0 done)

PrunedKeptTotal
New1226128
Fresh52126
Picked101
Done000
Total12827155
Error
8.0b
Counts
155 → 27
Alt Table
StatusErrorProgram
41.7b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 (sqrt.f64 (neg.f64 d)) (sqrt.f64 (neg.f64 l)))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
42.1b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 (sqrt.f64 d) (sqrt.f64 l))) (-.f64 1 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M (*.f64 1/2 D)) d) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h))) 2)))
36.1b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (log.f64 (pow.f64 (exp.f64 (/.f64 M 2)) (/.f64 D d))) 2)) (/.f64 h l))))
40.5b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 (sqrt.f64 (neg.f64 d)) (sqrt.f64 (neg.f64 l)))) (-.f64 1 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M (*.f64 1/2 D)) d) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h))) 2)))
44.0b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (pow.f64 (*.f64 (sqrt.f64 h) (*.f64 (/.f64 (*.f64 M (*.f64 1/2 D)) d) (sqrt.f64 1/2))) 2) l)))
43.3b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (sqrt.f64 d) (sqrt.f64 (/.f64 1 l)))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
25.7b
(*.f64 (*.f64 (*.f64 (cbrt.f64 (/.f64 d h)) (cbrt.f64 (sqrt.f64 (/.f64 d h)))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
34.4b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (cbrt.f64 (pow.f64 (/.f64 d l) 3/2))) (-.f64 1 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M (*.f64 1/2 D)) d) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h))) 2)))
34.7b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 1/8 (*.f64 D (*.f64 (/.f64 D (*.f64 d l)) (*.f64 (*.f64 M M) (/.f64 h d)))))))
41.9b
(*.f64 (*.f64 (*.f64 (sqrt.f64 d) (sqrt.f64 (/.f64 1 h))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
33.1b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 1/8 (*.f64 D (*.f64 (/.f64 D d) (*.f64 (*.f64 M M) (/.f64 h d))))) l)))
25.7b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (cbrt.f64 (/.f64 d l)) (cbrt.f64 (sqrt.f64 (/.f64 d l))))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
25.5b
(*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 d h) 1/4) (pow.f64 (/.f64 d h) 1/4)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
40.6b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h)) (pow.f64 d 2))) l)))
29.0b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2) (/.f64 h l))) 3))))
42.6b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (sqrt.f64 d) (sqrt.f64 (/.f64 1 l)))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
33.6b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (log.f64 (pow.f64 (exp.f64 (/.f64 h l)) (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2))))))
25.5b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (pow.f64 (/.f64 d l) 1/4) (pow.f64 (/.f64 d l) 1/4))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
41.9b
(*.f64 (*.f64 (/.f64 (sqrt.f64 d) (sqrt.f64 h)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
40.4b
(*.f64 (*.f64 (/.f64 (sqrt.f64 (neg.f64 d)) (sqrt.f64 (neg.f64 h))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M (*.f64 1/2 D)) d) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h))) 2)))
25.4b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 1 (sqrt.f64 (/.f64 l d)))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
40.9b
(*.f64 (*.f64 (/.f64 (sqrt.f64 (neg.f64 d)) (sqrt.f64 (neg.f64 h))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
41.3b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 (sqrt.f64 (neg.f64 d)) (sqrt.f64 (neg.f64 l)))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
30.1b
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 d h) 3/2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M (*.f64 1/2 D)) d) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h))) 2)))
27.1b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 M D) 2)) 2) (/.f64 (cbrt.f64 (*.f64 M D)) d)) 2)) (/.f64 h l))))
25.7b
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 (/.f64 h d))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
26.2b
(*.f64 (*.f64 (exp.f64 (log.f64 (sqrt.f64 (/.f64 d h)))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M (*.f64 1/2 D)) d) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h))) 2)))
Compiler

Compiled 7077 to 4702 computations (33.6% saved)

localize23.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
6.2b
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)
6.6b
(*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h)
11.4b
(pow.f64 (/.f64 d h) (/.f64 1 2))
11.6b
(sqrt.f64 (/.f64 l d))

series11.0ms (0.1%)

Counts
1 → 0
Calls

6 calls:

2.0ms
(sqrt.f64 (/.f64 l d))
l
0
2.0ms
(sqrt.f64 (/.f64 l d))
d
-inf
2.0ms
(sqrt.f64 (/.f64 l d))
d
inf
2.0ms
(sqrt.f64 (/.f64 l d))
l
-inf
2.0ms
(sqrt.f64 (/.f64 l d))
l
inf

rewrite34.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
505×log1p-expm1-u_binary64
505×expm1-log1p-u_binary64
420×unpow-prod-down_binary64
265×log-prod_binary64
136×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056
11056
213796
Stop Event
node limit
Counts
1 → 60

simplify6.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
60 → 60

prune281.0ms (1.9%)

Pruning

28 alts after pruning (28 fresh and 0 done)

PrunedKeptTotal
New1429151
Fresh71926
Picked101
Done000
Total15028178
Error
7.9b
Counts
178 → 28
Alt Table
StatusErrorProgram
41.7b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 (sqrt.f64 (neg.f64 d)) (sqrt.f64 (neg.f64 l)))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
40.3b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 1 (sqrt.f64 (/.f64 l d)))) (-.f64 1 (/.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 h (pow.f64 M 2))) (pow.f64 d 2))) l)))
41.1b
(*.f64 (*.f64 (/.f64 (sqrt.f64 (neg.f64 d)) (sqrt.f64 (neg.f64 h))) (/.f64 1 (sqrt.f64 (/.f64 l d)))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
42.1b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 (sqrt.f64 d) (sqrt.f64 l))) (-.f64 1 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M (*.f64 1/2 D)) d) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h))) 2)))
36.1b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (log.f64 (pow.f64 (exp.f64 (/.f64 M 2)) (/.f64 D d))) 2)) (/.f64 h l))))
43.3b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (sqrt.f64 d) (sqrt.f64 (/.f64 1 l)))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
34.7b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 1/8 (*.f64 D (*.f64 (/.f64 D (*.f64 d l)) (*.f64 (*.f64 M M) (/.f64 h d)))))))
41.9b
(*.f64 (*.f64 (*.f64 (sqrt.f64 d) (sqrt.f64 (/.f64 1 h))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
33.1b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (/.f64 (*.f64 1/8 (*.f64 D (*.f64 (/.f64 D d) (*.f64 (*.f64 M M) (/.f64 h d))))) l)))
29.0b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (cbrt.f64 (pow.f64 (*.f64 1/2 (*.f64 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2) (/.f64 h l))) 3))))
42.6b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (sqrt.f64 d) (sqrt.f64 (/.f64 1 l)))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
33.6b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (log.f64 (pow.f64 (exp.f64 (/.f64 h l)) (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2))))))
25.5b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (pow.f64 (/.f64 d l) 1/4) (pow.f64 (/.f64 d l) 1/4))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
40.4b
(*.f64 (*.f64 (/.f64 (sqrt.f64 (neg.f64 d)) (sqrt.f64 (neg.f64 h))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M (*.f64 1/2 D)) d) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h))) 2)))
25.5b
(*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 d h) 1/4) (pow.f64 (/.f64 d h) 1/4)) (/.f64 1 (sqrt.f64 (/.f64 l d)))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
21.1b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 1 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (cbrt.f64 d) 2)) 1/2) (pow.f64 (/.f64 l (cbrt.f64 d)) 1/2)))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
41.3b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 (sqrt.f64 (neg.f64 d)) (sqrt.f64 (neg.f64 l)))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
30.1b
(*.f64 (*.f64 (cbrt.f64 (pow.f64 (/.f64 d h) 3/2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M (*.f64 1/2 D)) d) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h))) 2)))
25.7b
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 (/.f64 h d))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
41.3b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 1 (*.f64 (sqrt.f64 (neg.f64 l)) (pow.f64 (/.f64 1 (neg.f64 d)) 1/2)))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
25.7b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 1 (*.f64 (sqrt.f64 (cbrt.f64 (/.f64 l d))) (cbrt.f64 (/.f64 l d))))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
26.2b
(*.f64 (*.f64 (exp.f64 (log.f64 (sqrt.f64 (/.f64 d h)))) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M (*.f64 1/2 D)) d) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h))) 2)))
40.5b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 (sqrt.f64 (neg.f64 d)) (sqrt.f64 (neg.f64 l)))) (-.f64 1 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M (*.f64 1/2 D)) d) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h))) 2)))
43.8b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (/.f64 1 (sqrt.f64 (/.f64 l d)))) (-.f64 1 (/.f64 (pow.f64 (*.f64 (sqrt.f64 h) (*.f64 (/.f64 (*.f64 M (*.f64 1/2 D)) d) (sqrt.f64 1/2))) 2) l)))
25.7b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (cbrt.f64 (/.f64 d l)) (cbrt.f64 (sqrt.f64 (/.f64 d l))))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
27.1b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (*.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 M D) 2)) 2) (/.f64 (cbrt.f64 (*.f64 M D)) d)) 2)) (/.f64 h l))))
25.7b
(*.f64 (*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 d h)) 2)) (sqrt.f64 (cbrt.f64 (/.f64 d h)))) (/.f64 1 (sqrt.f64 (/.f64 l d)))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
41.8b
(*.f64 (*.f64 (/.f64 (sqrt.f64 d) (sqrt.f64 h)) (/.f64 1 (sqrt.f64 (/.f64 l d)))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (*.f64 (/.f64 M 2) (/.f64 D d)) 2)) h) l)))
Compiler

Compiled 6737 to 4298 computations (36.2% saved)

regimes3.1s (21.2%)

Accuracy

Total 6.9b remaining (45.1%)

Threshold costs 0b (0%)

Counts
171 → 4
Compiler

Compiled 48776 to 37115 computations (23.9% saved)

bsearch824.0ms (5.7%)

Algorithm
binary-search
Calls

3 calls:

412.0ms
d
279.0ms
d
123.0ms
d
Steps
ItersPointRange
3.8e+19
∈ [
2.216891818828465e+19
,
1.7970597579082522e+21
]
0.0
∈ [
-5.433679355272953e-306
,
1.946412183473344e-302
]
-1.35e+52
∈ [
-4.088152873346991e+52
,
-4.665354514458615e+50
]
Compiler

Compiled 6 to 5 computations (16.7% saved)

simplify8.0ms (0.1%)

Algorithm
egg-herbie
Rules
22×*-commutative_binary64
10×+-commutative_binary64
10×sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
064214
190214
2104214
3118214
4131214
5136214
6139214
7140214
Stop Event
saturated

end813.0ms (5.6%)

Stop Event
fuel
Compiler

Compiled 1703 to 1231 computations (27.7% saved)

Profiling

Loading profile data...