Details

Time bar (total: 19.2s)

analyze2.6s (13.5%)

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
0%98.1%1.9%13
0%98.1%1.9%14
Compiler

Compiled 59 to 22 computations (62.7% saved)

sample296.0ms (1.5%)

Algorithm
intervals
Results
45.0ms394×body128nan
39.0ms63×body4096valid
27.0ms31×body8192valid
23.0ms45×body2048valid
12.0ms74×body128valid
12.0ms118×body128invalid
10.0ms26×body1024valid
7.0msbody256valid
3.0ms10×body512valid
1.0msbody1024invalid
1.0msbody2048invalid
1.0msbody8192exit
0.0msbody512invalid
Compiler

Compiled 123 to 49 computations (60.2% saved)

simplify43.0ms (0.2%)

Algorithm
egg-herbie
Rules
599×times-frac_binary64
518×distribute-neg-frac_binary64
416×fma-def_binary64
304×associate-/l*_binary64
217×cancel-sign-sub-inv_binary64
Counts
1 → 2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02278
16474
229674
3310367
4421867
5536567

prune7.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
57.8b
Counts
3 → 2
Alt Table
StatusErrorProgram
61.0b
(*.f64 (/.f64 c0 (*.f64 2 w)) (fma.f64 (*.f64 d d) (/.f64 c0 (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (*.f64 (*.f64 (/.f64 d D) (pow.f64 (/.f64 d D) 3)) (/.f64 c0 (*.f64 w h)))) (*.f64 M M)))))
58.0b
(*.f64 (/.f64 c0 (*.f64 2 w)) (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M)))))
Compiler

Compiled 321 to 130 computations (59.5% saved)

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
12.0b
(*.f64 (/.f64 c0 (*.f64 2 w)) (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M)))))
13.1b
(sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M)))
19.5b
(/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))
29.9b
(+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M))))

series1.4s (7.1%)

Counts
4 → 276
Calls

4 calls:

533.0ms
(*.f64 (/.f64 c0 (*.f64 2 w)) (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M)))))
305.0ms
(+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M))))
299.0ms
(sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M)))
218.0ms
(/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))

rewrite178.0ms (0.9%)

Algorithm
rewrite-expression-head
Rules
82×add-cbrt-cube_binary64
82×add-exp-log_binary64
43×cbrt-unprod_binary64
43×prod-exp_binary64
17×cbrt-undiv_binary64
Counts
4 → 124
Calls

4 calls:

67.0ms
(+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M))))
46.0ms
(*.f64 (/.f64 c0 (*.f64 2 w)) (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M)))))
27.0ms
(sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M)))
12.0ms
(/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))

simplify358.0ms (1.9%)

Algorithm
egg-herbie
Rules
550×associate-/r*_binary64
531×associate-/l*_binary64
317×associate-*l/_binary64
229×fma-def_binary64
172×*-commutative_binary64
Counts
400 → 312
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
053724212
1164921889
2500721889

prune606.0ms (3.1%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New4239432
Fresh011
Picked101
Done000
Total42410434
Error
28.4b
Counts
434 → 10
Alt Table
StatusErrorProgram
35.1b
(*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h)) (pow.f64 d 2)))
61.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (neg.f64 (*.f64 M M)))))
50.2b
(*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 (neg.f64 (pow.f64 M 2))) c0) w))
58.4b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (/.f64 (*.f64 (pow.f64 d 2) c0) (*.f64 (pow.f64 D 2) (*.f64 w h)))))
58.6b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 (sqrt.f64 (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M))))) (sqrt.f64 (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M)))))))
41.5b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 w (*.f64 h (pow.f64 M 2)))) (*.f64 (pow.f64 d 2) c0))))
61.0b
(*.f64 (/.f64 c0 (*.f64 2 w)) (fma.f64 (*.f64 d d) (/.f64 c0 (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (*.f64 (*.f64 (/.f64 d D) (pow.f64 (/.f64 d D) 3)) (/.f64 c0 (*.f64 w h)))) (*.f64 M M)))))
60.2b
(log.f64 (pow.f64 (exp.f64 (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (/.f64 (/.f64 (*.f64 (pow.f64 d 4) (*.f64 c0 c0)) (*.f64 (*.f64 w h) (*.f64 w h))) (pow.f64 D 4)) (*.f64 M M))))) (/.f64 c0 (*.f64 2 w))))
59.1b
(/.f64 (*.f64 (pow.f64 d 2) (pow.f64 c0 2)) (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 w 2) h)))
60.5b
(*.f64 (/.f64 c0 (*.f64 2 w)) (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (*.f64 (sqrt.f64 (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) M)) (sqrt.f64 (-.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) M)))))
Compiler

Compiled 30571 to 7931 computations (74.1% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h)) (pow.f64 d 2)))
7.8b
(*.f64 (pow.f64 M 2) h)
12.6b
(*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h))
16.9b
(/.f64 (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h)) (pow.f64 d 2))

series339.0ms (1.8%)

Counts
4 → 72
Calls

4 calls:

155.0ms
(*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h)) (pow.f64 d 2)))
137.0ms
(/.f64 (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h)) (pow.f64 d 2))
36.0ms
(*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h))
10.0ms
(*.f64 (pow.f64 M 2) h)

rewrite56.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
290×add-exp-log_binary64
190×prod-exp_binary64
78×div-exp_binary64
76×pow-exp_binary64
76×pow-to-exp_binary64
Counts
4 → 205
Calls

4 calls:

12.0ms
(*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h)) (pow.f64 d 2)))
9.0ms
(/.f64 (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h)) (pow.f64 d 2))
6.0ms
(*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h))
4.0ms
(*.f64 (pow.f64 M 2) h)

simplify160.0ms (0.8%)

Algorithm
egg-herbie
Rules
506×*-commutative_binary64
444×associate-/l/_binary64
380×fma-def_binary64
373×associate-/r/_binary64
294×log-prod_binary64
Counts
277 → 231
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02175669
14225071
216725018
339364789
450064789

prune418.0ms (2.2%)

Pruning

21 alts after pruning (21 fresh and 0 done)

PrunedKeptTotal
New21516231
Fresh459
Picked101
Done000
Total22021241
Error
19.6b
Counts
241 → 21
Alt Table
StatusErrorProgram
52.9b
(*.f64 1/4 (exp.f64 (-.f64 (+.f64 (*.f64 (log.f64 D) 2) (+.f64 (log.f64 (pow.f64 M 2)) (log.f64 h))) (log.f64 (pow.f64 d 2)))))
57.9b
(exp.f64 (+.f64 (log.f64 1/4) (-.f64 (+.f64 (*.f64 (log.f64 D) 2) (+.f64 (*.f64 (log.f64 M) 2) (log.f64 h))) (log.f64 (pow.f64 d 2)))))
30.8b
(*.f64 1/4 (*.f64 (/.f64 (*.f64 D D) d) (/.f64 (*.f64 h (*.f64 M M)) d)))
54.8b
(*.f64 1/4 (exp.f64 (fma.f64 2 (log.f64 (*.f64 D M)) (fma.f64 (log.f64 d) -2 (log.f64 h)))))
35.7b
(*.f64 1/4 (/.f64 (*.f64 (*.f64 (pow.f64 D 2) (pow.f64 M 2)) h) (pow.f64 d 2)))
33.0b
(*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 M (*.f64 M h))) (pow.f64 d 2)))
61.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (neg.f64 (*.f64 M M)))))
58.6b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 (sqrt.f64 (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M))))) (sqrt.f64 (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M)))))))
53.0b
(*.f64 1/4 (/.f64 (exp.f64 (+.f64 (*.f64 (log.f64 D) 2) (+.f64 (log.f64 (pow.f64 M 2)) (log.f64 h)))) (pow.f64 d 2)))
31.1b
(*.f64 1/4 (/.f64 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h)) d) d))
46.8b
(*.f64 1/4 (exp.f64 (-.f64 (+.f64 (log.f64 (pow.f64 D 2)) (+.f64 (log.f64 (pow.f64 M 2)) (log.f64 h))) (log.f64 (pow.f64 d 2)))))
50.8b
(*.f64 1/4 (/.f64 (exp.f64 (fma.f64 2 (log.f64 (*.f64 D M)) (log.f64 h))) (pow.f64 d 2)))
60.5b
(*.f64 (/.f64 c0 (*.f64 2 w)) (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (*.f64 (sqrt.f64 (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) M)) (sqrt.f64 (-.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) M)))))
47.4b
(*.f64 1/4 (/.f64 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h)) (pow.f64 (sqrt.f64 d) 2)) (pow.f64 (sqrt.f64 d) 2)))
32.2b
(*.f64 1/4 (/.f64 (pow.f64 D 2) (/.f64 d (/.f64 (*.f64 h (*.f64 M M)) d))))
54.8b
(exp.f64 (fma.f64 (log.f64 d) -2 (fma.f64 2 (log.f64 (*.f64 D M)) (log.f64 (*.f64 h 1/4)))))
61.0b
(*.f64 (/.f64 c0 (*.f64 2 w)) (fma.f64 (*.f64 d d) (/.f64 c0 (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (*.f64 (*.f64 (/.f64 d D) (pow.f64 (/.f64 d D) 3)) (/.f64 c0 (*.f64 w h)))) (*.f64 M M)))))
32.6b
(*.f64 1/4 (/.f64 (*.f64 D (*.f64 D (*.f64 (pow.f64 M 2) h))) (pow.f64 d 2)))
59.1b
(/.f64 (*.f64 (pow.f64 d 2) (pow.f64 c0 2)) (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 w 2) h)))
57.5b
(*.f64 1/4 (exp.f64 (-.f64 (+.f64 (log.f64 (pow.f64 D 2)) (+.f64 (*.f64 (log.f64 M) 2) (log.f64 h))) (*.f64 (log.f64 d) 2))))
32.9b
(*.f64 1/4 (/.f64 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h)) (pow.f64 (*.f64 (cbrt.f64 d) (cbrt.f64 d)) 2)) (pow.f64 (cbrt.f64 d) 2)))
Compiler

Compiled 6308 to 3908 computations (38% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
6.3b
(/.f64 (*.f64 h (*.f64 M M)) d)
7.0b
(/.f64 (*.f64 D D) d)
7.8b
(*.f64 h (*.f64 M M))
11.6b
(*.f64 (/.f64 (*.f64 D D) d) (/.f64 (*.f64 h (*.f64 M M)) d))

series185.0ms (1%)

Counts
4 → 132
Calls

4 calls:

128.0ms
(*.f64 (/.f64 (*.f64 D D) d) (/.f64 (*.f64 h (*.f64 M M)) d))
32.0ms
(/.f64 (*.f64 h (*.f64 M M)) d)
13.0ms
(*.f64 h (*.f64 M M))
11.0ms
(/.f64 (*.f64 D D) d)

rewrite38.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
77×add-cbrt-cube_binary64
77×add-exp-log_binary64
32×cbrt-unprod_binary64
32×prod-exp_binary64
22×cbrt-undiv_binary64
Counts
4 → 123
Calls

4 calls:

12.0ms
(*.f64 (/.f64 (*.f64 D D) d) (/.f64 (*.f64 h (*.f64 M M)) d))
5.0ms
(/.f64 (*.f64 h (*.f64 M M)) d)
4.0ms
(*.f64 h (*.f64 M M))
4.0ms
(/.f64 (*.f64 D D) d)

simplify145.0ms (0.8%)

Algorithm
egg-herbie
Rules
637×associate-/r*_binary64
534×associate-/r/_binary64
461×*-commutative_binary64
309×log-div_binary64
218×log-prod_binary64
Counts
255 → 160
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01704137
14003453
215763453
340693451
448653451
550263451

prune281.0ms (1.5%)

Pruning

28 alts after pruning (28 fresh and 0 done)

PrunedKeptTotal
New14614160
Fresh61420
Picked101
Done000
Total15328181
Error
16.1b
Counts
181 → 28
Alt Table
StatusErrorProgram
57.9b
(exp.f64 (+.f64 (log.f64 1/4) (-.f64 (+.f64 (*.f64 (log.f64 D) 2) (+.f64 (*.f64 (log.f64 M) 2) (log.f64 h))) (log.f64 (pow.f64 d 2)))))
45.4b
(*.f64 1/4 (*.f64 (/.f64 D (sqrt.f64 d)) (*.f64 (/.f64 D (sqrt.f64 d)) (/.f64 (*.f64 h (*.f64 M M)) d))))
54.8b
(exp.f64 (fma.f64 (log.f64 d) -2 (fma.f64 2 (log.f64 (*.f64 D M)) (log.f64 (*.f64 h 1/4)))))
25.3b
(*.f64 1/4 (*.f64 (/.f64 D (*.f64 (cbrt.f64 d) (cbrt.f64 d))) (*.f64 (/.f64 D (cbrt.f64 d)) (/.f64 (*.f64 h (*.f64 M M)) d))))
54.8b
(*.f64 1/4 (exp.f64 (fma.f64 2 (log.f64 (*.f64 D M)) (fma.f64 (log.f64 d) -2 (log.f64 h)))))
47.2b
(*.f64 1/4 (*.f64 (exp.f64 (-.f64 (log.f64 (*.f64 D D)) (log.f64 d))) (/.f64 (*.f64 h (*.f64 M M)) d)))
40.4b
(*.f64 1/4 (*.f64 (exp.f64 (log.f64 (/.f64 (*.f64 D D) d))) (/.f64 (*.f64 h (*.f64 M M)) d)))
32.6b
(*.f64 1/4 (/.f64 (*.f64 D (*.f64 D (*.f64 (pow.f64 M 2) h))) (pow.f64 d 2)))
33.0b
(*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 M (*.f64 M h))) (pow.f64 d 2)))
61.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (neg.f64 (*.f64 M M)))))
28.3b
(*.f64 1/4 (*.f64 (/.f64 (*.f64 D D) d) (/.f64 (*.f64 (*.f64 h M) M) d)))
59.1b
(/.f64 (*.f64 (pow.f64 d 2) (pow.f64 c0 2)) (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 w 2) h)))
43.9b
(*.f64 1/4 (*.f64 (/.f64 (*.f64 D D) d) (/.f64 (*.f64 (*.f64 (sqrt.f64 h) M) (*.f64 (sqrt.f64 h) M)) d)))
58.6b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 (sqrt.f64 (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M))))) (sqrt.f64 (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M)))))))
30.6b
(*.f64 1/4 (*.f64 (/.f64 (*.f64 D D) d) (*.f64 h (/.f64 (*.f64 M M) d))))
57.4b
(*.f64 1/4 (exp.f64 (+.f64 (-.f64 (log.f64 (*.f64 D D)) (log.f64 d)) (-.f64 (+.f64 (log.f64 h) (+.f64 (log.f64 M) (log.f64 M))) (log.f64 d)))))
31.1b
(*.f64 1/4 (/.f64 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h)) d) d))
46.8b
(*.f64 1/4 (exp.f64 (-.f64 (+.f64 (log.f64 (pow.f64 D 2)) (+.f64 (log.f64 (pow.f64 M 2)) (log.f64 h))) (log.f64 (pow.f64 d 2)))))
57.6b
(*.f64 1/4 (exp.f64 (+.f64 (-.f64 (+.f64 (log.f64 D) (log.f64 D)) (log.f64 d)) (-.f64 (+.f64 (log.f64 h) (log.f64 (*.f64 M M))) (log.f64 d)))))
50.8b
(*.f64 1/4 (/.f64 (exp.f64 (fma.f64 2 (log.f64 (*.f64 D M)) (log.f64 h))) (pow.f64 d 2)))
32.0b
(*.f64 1/4 (*.f64 (/.f64 (*.f64 D D) d) (expm1.f64 (log1p.f64 (/.f64 (*.f64 h (*.f64 M M)) d)))))
60.5b
(*.f64 (/.f64 c0 (*.f64 2 w)) (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (*.f64 (sqrt.f64 (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) M)) (sqrt.f64 (-.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) M)))))
57.5b
(*.f64 1/4 (exp.f64 (-.f64 (+.f64 (log.f64 (pow.f64 D 2)) (+.f64 (*.f64 (log.f64 M) 2) (log.f64 h))) (*.f64 (log.f64 d) 2))))
27.9b
(*.f64 1/4 (*.f64 (/.f64 D (/.f64 d D)) (/.f64 (*.f64 h (*.f64 M M)) d)))
31.8b
(*.f64 1/4 (*.f64 (*.f64 (/.f64 (*.f64 D D) d) (/.f64 h (*.f64 (cbrt.f64 d) (cbrt.f64 d)))) (/.f64 (*.f64 M M) (cbrt.f64 d))))
25.9b
(*.f64 1/4 (*.f64 (/.f64 D 1) (*.f64 (/.f64 D d) (/.f64 (*.f64 h (*.f64 M M)) d))))
61.0b
(*.f64 (/.f64 c0 (*.f64 2 w)) (fma.f64 (*.f64 d d) (/.f64 c0 (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (*.f64 (*.f64 (/.f64 d D) (pow.f64 (/.f64 d D) 3)) (/.f64 c0 (*.f64 w h)))) (*.f64 M M)))))
45.0b
(*.f64 1/4 (*.f64 (/.f64 (*.f64 D D) d) (/.f64 (exp.f64 (+.f64 (log.f64 h) (log.f64 (*.f64 M M)))) d)))
Compiler

Compiled 5183 to 1835 computations (64.6% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
2.7b
(*.f64 (/.f64 D (*.f64 (cbrt.f64 d) (cbrt.f64 d))) (*.f64 (/.f64 D (cbrt.f64 d)) (/.f64 (*.f64 h (*.f64 M M)) d)))
5.3b
(*.f64 (/.f64 D (cbrt.f64 d)) (/.f64 (*.f64 h (*.f64 M M)) d))
6.3b
(/.f64 (*.f64 h (*.f64 M M)) d)
7.8b
(*.f64 h (*.f64 M M))

series1.6s (8.3%)

Counts
2 → 96
Calls

2 calls:

1.4s
(*.f64 (/.f64 D (cbrt.f64 d)) (/.f64 (*.f64 h (*.f64 M M)) d))
178.0ms
(*.f64 (/.f64 D (*.f64 (cbrt.f64 d) (cbrt.f64 d))) (*.f64 (/.f64 D (cbrt.f64 d)) (/.f64 (*.f64 h (*.f64 M M)) d)))

rewrite67.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
187×add-exp-log_binary64
153×add-cbrt-cube_binary64
92×cbrt-unprod_binary64
92×prod-exp_binary64
58×cbrt-undiv_binary64
Counts
2 → 143
Calls

2 calls:

17.0ms
(*.f64 (/.f64 D (cbrt.f64 d)) (/.f64 (*.f64 h (*.f64 M M)) d))
17.0ms
(*.f64 (/.f64 D (*.f64 (cbrt.f64 d) (cbrt.f64 d))) (*.f64 (/.f64 D (cbrt.f64 d)) (/.f64 (*.f64 h (*.f64 M M)) d)))

simplify168.0ms (0.9%)

Algorithm
egg-herbie
Rules
610×associate-/r/_binary64
350×associate-*r*_binary64
307×associate-*l/_binary64
307×times-frac_binary64
295×associate-*r/_binary64
Counts
239 → 209
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02497889
15884982
226264964
348784964
449654964

prune559.0ms (2.9%)

Pruning

28 alts after pruning (28 fresh and 0 done)

PrunedKeptTotal
New25610266
Fresh91827
Picked101
Done000
Total26628294
Error
14.5b
Counts
294 → 28
Alt Table
StatusErrorProgram
24.8b
(*.f64 1/4 (*.f64 (/.f64 D (*.f64 (cbrt.f64 d) (cbrt.f64 d))) (*.f64 (*.f64 (/.f64 D (cbrt.f64 d)) (*.f64 h (*.f64 M M))) (/.f64 1 d))))
57.9b
(exp.f64 (+.f64 (log.f64 1/4) (-.f64 (+.f64 (*.f64 (log.f64 D) 2) (+.f64 (*.f64 (log.f64 M) 2) (log.f64 h))) (log.f64 (pow.f64 d 2)))))
41.9b
(*.f64 1/4 (*.f64 (/.f64 D (*.f64 (cbrt.f64 d) (cbrt.f64 d))) (*.f64 (/.f64 D (cbrt.f64 d)) (/.f64 (exp.f64 (+.f64 (log.f64 h) (log.f64 (*.f64 M M)))) d))))
24.9b
(*.f64 1/4 (*.f64 (/.f64 D (*.f64 (cbrt.f64 d) (cbrt.f64 d))) (*.f64 (*.f64 h (/.f64 D (cbrt.f64 d))) (/.f64 (*.f64 M M) d))))
54.8b
(exp.f64 (fma.f64 (log.f64 d) -2 (fma.f64 2 (log.f64 (*.f64 D M)) (log.f64 (*.f64 h 1/4)))))
22.0b
(*.f64 1/4 (*.f64 (/.f64 D (*.f64 (cbrt.f64 d) (cbrt.f64 d))) (*.f64 (/.f64 D (cbrt.f64 d)) (/.f64 (*.f64 (*.f64 h M) M) d))))
25.9b
(*.f64 1/4 (*.f64 D (/.f64 (*.f64 D (/.f64 (*.f64 (*.f64 M M) h) d)) d)))
61.0b
(*.f64 (/.f64 c0 (*.f64 2 w)) (fma.f64 (*.f64 d d) (/.f64 c0 (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (*.f64 (*.f64 (/.f64 d D) (pow.f64 (/.f64 d D) 3)) (/.f64 c0 (*.f64 w h)))) (*.f64 M M)))))
24.1b
(*.f64 1/4 (*.f64 (/.f64 D (*.f64 (cbrt.f64 d) (cbrt.f64 d))) (*.f64 (*.f64 (/.f64 D d) h) (/.f64 (*.f64 M M) (cbrt.f64 d)))))
26.7b
(*.f64 1/4 (/.f64 (*.f64 (/.f64 D (*.f64 (cbrt.f64 d) (cbrt.f64 d))) (*.f64 (/.f64 D (cbrt.f64 d)) (*.f64 h (*.f64 M M)))) d))
47.2b
(*.f64 1/4 (*.f64 (exp.f64 (-.f64 (log.f64 (*.f64 D D)) (log.f64 d))) (/.f64 (*.f64 h (*.f64 M M)) d)))
25.3b
(*.f64 1/4 (*.f64 (/.f64 D (*.f64 (cbrt.f64 d) (cbrt.f64 d))) (*.f64 (*.f64 (/.f64 D (cbrt.f64 d)) (/.f64 h (*.f64 (cbrt.f64 d) (cbrt.f64 d)))) (/.f64 (*.f64 M M) (cbrt.f64 d)))))
40.4b
(*.f64 1/4 (*.f64 (exp.f64 (log.f64 (/.f64 (*.f64 D D) d))) (/.f64 (*.f64 h (*.f64 M M)) d)))
33.0b
(*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 M (*.f64 M h))) (pow.f64 d 2)))
61.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (neg.f64 (*.f64 M M)))))
28.3b
(*.f64 1/4 (*.f64 (/.f64 (*.f64 D D) d) (/.f64 (*.f64 (*.f64 h M) M) d)))
59.1b
(/.f64 (*.f64 (pow.f64 d 2) (pow.f64 c0 2)) (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 w 2) h)))
27.5b
(*.f64 1/4 (/.f64 (*.f64 D (*.f64 D (/.f64 (*.f64 (*.f64 M M) h) d))) d))
58.6b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 (sqrt.f64 (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M))))) (sqrt.f64 (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (sqrt.f64 (-.f64 (*.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M)))))))
30.6b
(*.f64 1/4 (*.f64 (/.f64 (*.f64 D D) d) (*.f64 h (/.f64 (*.f64 M M) d))))
57.4b
(*.f64 1/4 (exp.f64 (+.f64 (-.f64 (log.f64 (*.f64 D D)) (log.f64 d)) (-.f64 (+.f64 (log.f64 h) (+.f64 (log.f64 M) (log.f64 M))) (log.f64 d)))))
46.8b
(*.f64 1/4 (exp.f64 (-.f64 (+.f64 (log.f64 (pow.f64 D 2)) (+.f64 (log.f64 (pow.f64 M 2)) (log.f64 h))) (log.f64 (pow.f64 d 2)))))
48.7b
(*.f64 1/4 (*.f64 (/.f64 D (*.f64 (cbrt.f64 d) (cbrt.f64 d))) (exp.f64 (+.f64 (log.f64 (/.f64 D (cbrt.f64 d))) (log.f64 (/.f64 (*.f64 h (*.f64 M M)) d))))))
50.8b
(*.f64 1/4 (/.f64 (exp.f64 (fma.f64 2 (log.f64 (*.f64 D M)) (log.f64 h))) (pow.f64 d 2)))
57.5b
(*.f64 1/4 (exp.f64 (-.f64 (+.f64 (log.f64 (pow.f64 D 2)) (+.f64 (*.f64 (log.f64 M) 2) (log.f64 h))) (*.f64 (log.f64 d) 2))))
27.9b
(*.f64 1/4 (*.f64 (/.f64 D (/.f64 d D)) (/.f64 (*.f64 h (*.f64 M M)) d)))
25.9b
(*.f64 1/4 (*.f64 (/.f64 D 1) (*.f64 (/.f64 D d) (/.f64 (*.f64 h (*.f64 M M)) d))))
60.5b
(*.f64 (/.f64 c0 (*.f64 2 w)) (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (*.f64 (sqrt.f64 (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) M)) (sqrt.f64 (-.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) M)))))
Compiler

Compiled 9258 to 2033 computations (78% saved)

regimes2.0s (10.5%)

Accuracy

Total 6.9b remaining (28.2%)

Threshold costs 0b (0%)

Counts
122 → 3
Compiler

Compiled 38234 to 24700 computations (35.4% saved)

bsearch312.0ms (1.6%)

Steps
ItersRangePoint
8
2.0398302160041486e+73
5.4522540986684987e+76
2.071342702714757e+76
7
-1.6853368466510034e+176
-3.5653889882806348e+174
-3.6081226175982936e+174
Compiler

Compiled 7 to 6 computations (14.3% saved)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
if-if-or-not_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03082
14282
24282

end1.0ms (0%)

Compiler

Compiled 59 to 32 computations (45.8% saved)

sample7.4s (38.6%)

Algorithm
intervals
Results
1.6s2118×body4096valid
1.3s12116×body128nan
974.0ms1157×body8192valid
681.0ms1291×body2048valid
447.0ms4200×body128invalid
266.0ms640×body1024valid
251.0ms2371×body128valid
123.0ms273×body512valid
30.0ms150×body256valid
30.0ms59×body2048invalid
20.0ms51×body1024invalid
12.0ms41×body512invalid
8.0ms13×body4096invalid
4.0ms21×body256invalid
4.0msbody8192exit
Compiler

Compiled 978 to 568 computations (41.9% saved)

Profiling

Loading profile data...