Details

Time bar (total: 20.3s)

analyze2.2s (10.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%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.8s (28.6%)

Alt Table
StatusErrorProgram
25.2b
(*.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))))
Symmetry

(sort M D)

Results
3.5s13402×body128invalid
2.2s8256×body128valid
Compiler

Compiled 202 to 157 computations (22.3% saved)

localize22.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
4.8b
(*.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))))
10.4b
(pow.f64 (/.f64 d l) (/.f64 1 2))
10.9b
(pow.f64 (/.f64 d h) (/.f64 1 2))
11.8b
(*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))

series1.3s (6.6%)

Counts
4 → 144
Calls

4 calls:

400.0ms
(pow.f64 (/.f64 d l) (/.f64 1 2))
381.0ms
(pow.f64 (/.f64 d h) (/.f64 1 2))
331.0ms
(*.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))))
219.0ms
(*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))

rewrite72.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
427×log1p-udef_binary64
242×add-sqr-sqrt_binary64
232×log1p-expm1-u_binary64
232×expm1-log1p-u_binary64
227×add-cbrt-cube_binary64
Counts
4 → 65
Calls

4 calls:

69.0ms
(*.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))))
69.0ms
(pow.f64 (/.f64 d l) (/.f64 1 2))
69.0ms
(pow.f64 (/.f64 d h) (/.f64 1 2))
69.0ms
(*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02474
150773
2469873
3555573
000
100

prune306.0ms (1.5%)

Pruning

16 alts after pruning (16 fresh and 0 done)

PrunedKeptTotal
New19316209
Fresh000
Picked101
Done000
Total19416210
Error
9.3b
Counts
210 → 16
Alt Table
StatusErrorProgram
25.3b
(*.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))))
61.0b
(*.f64 -1/8 (*.f64 (/.f64 (*.f64 (pow.f64 D 2) (pow.f64 M 2)) d) (sqrt.f64 (/.f64 h (pow.f64 l 3)))))
61.2b
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 d h) (/.f64 d l)))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l)))))
34.2b
(pow.f64 (*.f64 (sqrt.f64 (*.f64 (/.f64 d h) (/.f64 d l))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l)))) 1)
25.5b
(*.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))))
25.3b
(*.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))))
42.1b
(*.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))))
45.2b
(*.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))))
39.5b
(*.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))))
24.8b
(*.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)) h) l)))
39.6b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (sqrt.f64 d) (pow.f64 (/.f64 1 l) 1/2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
39.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 D) (*.f64 2 d)) 2)) (/.f64 h l))))
25.5b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 d l)) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 d l)) 1/2))) (-.f64 1 (*.f64 (*.f64 (/.f64 1 2) (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))))
25.2b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (pow.f64 (sqrt.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l))) 2)))
42.8b
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 l h))) d)
25.4b
(*.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 d h)) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 d h)) 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))))
Compiler

Compiled 8220 to 5442 computations (33.8% saved)

localize24.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
4.8b
(*.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)) h) l)))
5.9b
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) h) l)
10.4b
(pow.f64 (/.f64 d l) (/.f64 1 2))
10.9b
(pow.f64 (/.f64 d h) (/.f64 1 2))

series1.4s (6.9%)

Counts
4 → 144
Calls

4 calls:

463.0ms
(pow.f64 (/.f64 d l) (/.f64 1 2))
421.0ms
(pow.f64 (/.f64 d h) (/.f64 1 2))
270.0ms
(*.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)) h) l)))
252.0ms
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) h) l)

rewrite71.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
241×add-sqr-sqrt_binary64
231×log1p-expm1-u_binary64
231×expm1-log1p-u_binary64
226×add-cbrt-cube_binary64
226×add-log-exp_binary64
Counts
4 → 73
Calls

4 calls:

69.0ms
(*.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)) h) l)))
69.0ms
(/.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) h) l)
69.0ms
(pow.f64 (/.f64 d l) (/.f64 1 2))
69.0ms
(pow.f64 (/.f64 d h) (/.f64 1 2))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02474
150573
2475673
3488473
000
100

prune313.0ms (1.5%)

Pruning

17 alts after pruning (17 fresh and 0 done)

PrunedKeptTotal
New20611217
Fresh9615
Picked101
Done000
Total21617233
Error
8.1b
Counts
233 → 17
Alt Table
StatusErrorProgram
24.8b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (pow.f64 (/.f64 l (*.f64 h (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)))) -1)))
25.1b
(*.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)) h) l)))
61.0b
(*.f64 -1/8 (*.f64 (/.f64 (*.f64 (pow.f64 D 2) (pow.f64 M 2)) d) (sqrt.f64 (/.f64 h (pow.f64 l 3)))))
24.4b
(*.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 D) (*.f64 d 2)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h))) 2)))
45.5b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (exp.f64 (*.f64 1/2 (+.f64 (log.f64 (/.f64 -1 l)) (log.f64 (neg.f64 d)))))) (-.f64 1 (/.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) h) l)))
24.9b
(*.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)) h) l)))
42.8b
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 l h))) d)
33.8b
(pow.f64 (*.f64 (sqrt.f64 (*.f64 (/.f64 d h) (/.f64 d l))) (-.f64 1 (/.f64 (*.f64 h (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2))) l))) 1)
25.4b
(*.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 d h)) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 d h)) 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))))
39.1b
(*.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)) h) l)))
39.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 D) (*.f64 2 d)) 2)) (/.f64 h l))))
61.2b
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 d h) (/.f64 d l)))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l)))))
41.7b
(*.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)) h) l)))
39.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)) h) l)))
24.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)) h) l)))
44.0b
(*.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)) h) l)))
45.2b
(*.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))))
Compiler

Compiled 8407 to 5608 computations (33.3% saved)

localize28.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
4.9b
(/.f64 (*.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h)))
10.4b
(pow.f64 (/.f64 d l) (/.f64 1 2))
10.9b
(pow.f64 (/.f64 d h) (/.f64 1 2))
16.1b
(sqrt.f64 (/.f64 l h))

series1.0s (5%)

Counts
4 → 84
Calls

4 calls:

439.0ms
(pow.f64 (/.f64 d l) (/.f64 1 2))
399.0ms
(pow.f64 (/.f64 d h) (/.f64 1 2))
153.0ms
(/.f64 (*.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h)))
18.0ms
(sqrt.f64 (/.f64 l h))

rewrite76.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
213×add-sqr-sqrt_binary64
202×log1p-expm1-u_binary64
202×expm1-log1p-u_binary64
200×add-log-exp_binary64
199×add-cbrt-cube_binary64
Counts
4 → 101
Calls

4 calls:

74.0ms
(/.f64 (*.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h)))
74.0ms
(pow.f64 (/.f64 d l) (/.f64 1 2))
74.0ms
(pow.f64 (/.f64 d h) (/.f64 1 2))
74.0ms
(sqrt.f64 (/.f64 l h))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02241
145039
2486539
3511239
000
100

prune244.0ms (1.2%)

Pruning

20 alts after pruning (20 fresh and 0 done)

PrunedKeptTotal
New1778185
Fresh41216
Picked101
Done000
Total18220202
Error
6.3b
Counts
202 → 20
Alt Table
StatusErrorProgram
25.1b
(*.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)) h) l)))
61.0b
(*.f64 -1/8 (*.f64 (/.f64 (*.f64 (pow.f64 D 2) (pow.f64 M 2)) d) (sqrt.f64 (/.f64 h (pow.f64 l 3)))))
41.4b
(*.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 D) (*.f64 d 2)) (sqrt.f64 1/2)) (*.f64 (sqrt.f64 l) (sqrt.f64 (/.f64 1 h)))) 2)))
61.2b
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 d h) (/.f64 d l)))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l)))))
23.8b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 D M)) d) (sqrt.f64 (/.f64 h l)))) 2)))
39.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)) h) l)))
24.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 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h))) 2)))
24.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 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) (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 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) (sqrt.f64 1/2)) (/.f64 (sqrt.f64 (neg.f64 l)) (sqrt.f64 (neg.f64 h)))) 2)))
33.8b
(pow.f64 (*.f64 (sqrt.f64 (*.f64 (/.f64 d h) (/.f64 d l))) (-.f64 1 (/.f64 (*.f64 h (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2))) l))) 1)
25.4b
(*.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 d h)) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 d h)) 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))))
41.4b
(*.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 D) (*.f64 d 2)) (sqrt.f64 1/2)) (/.f64 (sqrt.f64 l) (sqrt.f64 h))) 2)))
44.2b
(*.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 D) (*.f64 d 2)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h))) 2)))
39.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 D) (*.f64 2 d)) 2)) (/.f64 h l))))
39.2b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (sqrt.f64 d) (sqrt.f64 (/.f64 1 l)))) (-.f64 1 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) (sqrt.f64 1/2)) (sqrt.f64 (/.f64 l h))) 2)))
41.7b
(*.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)) h) l)))
24.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)) h) l)))
44.0b
(*.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)) h) l)))
45.2b
(*.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.8b
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 l h))) d)
Compiler

Compiled 8475 to 5425 computations (36% saved)

localize31.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
4.9b
(*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 D M)) d) (sqrt.f64 (/.f64 h l)))
10.4b
(pow.f64 (/.f64 d l) (/.f64 1 2))
10.9b
(pow.f64 (/.f64 d h) (/.f64 1 2))
15.2b
(sqrt.f64 (/.f64 h l))

series890.0ms (4.4%)

Counts
4 → 64
Calls

4 calls:

397.0ms
(pow.f64 (/.f64 d h) (/.f64 1 2))
389.0ms
(pow.f64 (/.f64 d l) (/.f64 1 2))
86.0ms
(*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 D M)) d) (sqrt.f64 (/.f64 h l)))
18.0ms
(sqrt.f64 (/.f64 h l))

rewrite87.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
195×add-sqr-sqrt_binary64
185×log1p-expm1-u_binary64
185×expm1-log1p-u_binary64
183×add-log-exp_binary64
182×add-cbrt-cube_binary64
Counts
4 → 113
Calls

4 calls:

82.0ms
(*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 D M)) d) (sqrt.f64 (/.f64 h l)))
82.0ms
(pow.f64 (/.f64 d l) (/.f64 1 2))
82.0ms
(pow.f64 (/.f64 d h) (/.f64 1 2))
82.0ms
(sqrt.f64 (/.f64 h l))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02138
141838
2488238
3496838
000
100

prune219.0ms (1.1%)

Pruning

20 alts after pruning (20 fresh and 0 done)

PrunedKeptTotal
New1716177
Fresh51419
Picked101
Done000
Total17720197
Error
5.9b
Counts
197 → 20
Alt Table
StatusErrorProgram
39.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 D) (*.f64 2 d)) 2)) (/.f64 h l))))
24.1b
(*.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 (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 D M)) d) (sqrt.f64 (/.f64 h l)))) 2)))
41.7b
(*.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)) h) l)))
38.6b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (*.f64 (sqrt.f64 d) (sqrt.f64 (/.f64 1 l)))) (-.f64 1 (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 D M)) d) (sqrt.f64 (/.f64 h l)))) 2)))
35.3b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (pow.f64 (*.f64 1/2 (log.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 h l))) (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 D M)) d)))) 2)))
44.0b
(*.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)) h) l)))
45.2b
(*.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))))
44.0b
(*.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 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 D M)) d) (sqrt.f64 (/.f64 h l)))) 2)))
24.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 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) (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 (pow.f64 (/.f64 (*.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) (sqrt.f64 1/2)) (/.f64 (sqrt.f64 (neg.f64 l)) (sqrt.f64 (neg.f64 h)))) 2)))
24.1b
(*.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 (pow.f64 (*.f64 1/2 (*.f64 (/.f64 (*.f64 (sqrt.f64 1/2) (*.f64 D M)) d) (sqrt.f64 (/.f64 h l)))) 2)))
33.8b
(pow.f64 (*.f64 (sqrt.f64 (*.f64 (/.f64 d h) (/.f64 d l))) (-.f64 1 (/.f64 (*.f64 h (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2))) l))) 1)
25.4b
(*.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 d h)) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 d h)) 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))))
41.4b
(*.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 D) (*.f64 d 2)) (sqrt.f64 1/2)) (/.f64 (sqrt.f64 l) (sqrt.f64 h))) 2)))
61.0b
(*.f64 -1/8 (*.f64 (/.f64 (*.f64 (pow.f64 D 2) (pow.f64 M 2)) d) (sqrt.f64 (/.f64 h (pow.f64 l 3)))))
61.2b
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 d h) (/.f64 d l)))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 2 d)) 2)) (/.f64 h l)))))
41.4b
(*.f64 (*.f64 (pow.f64 (/.f64 d h) (/.f64 1 2)) (pow.f64 (/.f64 d l) (/.f64 1 2))) (-.f64 1 (pow.f64 (*.f64 1/2 (/.f64 (sqrt.f64 h) (*.f64 (/.f64 d (*.f64 (sqrt.f64 1/2) (*.f64 D M))) (sqrt.f64 l)))) 2)))
39.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)) h) l)))
24.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)) h) l)))
42.8b
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 l h))) d)
Compiler

Compiled 7340 to 4603 computations (37.3% saved)

regimes3.6s (17.6%)

Accuracy

Total 6.8b remaining (43.9%)

Threshold costs 0b (0%)

Counts
169 → 6
Compiler

Compiled 51767 to 39529 computations (23.6% saved)

bsearch2.0s (10%)

Steps
ItersRangePoint
9
1.622865278006966e+247
1.645179643507673e+252
1.6302922045807467e+252
6
2.923164361140824e+178
2.4767195465292648e+179
2.962503803557255e+178
11
4.313123919949746e-121
2.4463303372999564e-100
2.7669274764063216e-116
10
-9.321270622984603e-302
1.0199301877728507e-297
-5.3271081112533e-310
9
-3.165679778567944e-42
-1.291320244133197e-48
-1.4693568850199418e-48
Compiler

Compiled 6 to 5 computations (16.7% saved)

simplify13.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
072314
1106314
2135314
3157314
4167314
5170314
6167314

end584.0ms (2.9%)

Remove

(sort M D)

Compiler

Compiled 1590 to 1079 computations (32.1% saved)

Profiling

Loading profile data...