Details

Time bar (total: 16.3s)

analyze3.2s (19.6%)

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)

sample8.7s (53.2%)

Results
3.0s16205×body128invalid
2.0s2194×body4096valid
1.4s1223×body8192valid
1.0s1356×body2048valid
482.0ms2486×body128valid
360.0ms596×body1024valid
130.0ms261×body512valid
47.0ms140×body256valid
41.0ms56×body1024invalid
39.0ms56×body2048invalid
18.0ms41×body512invalid
10.0ms12×body4096invalid
6.0ms21×body256invalid
5.0msbody8192exit
Compiler

Compiled 176 to 65 computations (63.1% saved)

simplify31.0ms (0.2%)

Algorithm
egg-herbie
Rules
599×times-frac_binary64
416×fma-def_binary64
302×associate-/l*_binary64
217×fma-neg_binary64
189×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02278
16474
231474
3357267
4469567
Stop Event
node limit
Counts
1 → 2

prune6.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
60.0b
Counts
3 → 2
Alt Table
StatusErrorProgram
60.3b
(*.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)))))
62.1b
(*.f64 (/.f64 c0 (*.f64 2 w)) (fma.f64 (*.f64 d d) (/.f64 (/.f64 (/.f64 c0 (*.f64 D D)) h) w) (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)))))
Compiler

Compiled 321 to 134 computations (58.3% saved)

localize17.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
12.8b
(*.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)))))
14.8b
(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)))
18.3b
(/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))
26.5b
(+.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))))

series909.0ms (5.6%)

Counts
4 → 276
Calls

4 calls:

347.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)))))
218.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))))
193.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)))
150.0ms
(/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))

rewrite46.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
251×add-sqr-sqrt_binary64
240×log1p-expm1-u_binary64
240×expm1-log1p-u_binary64
239×add-cbrt-cube_binary64
236×add-log-exp_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
022160
1503156
Stop Event
node limit
Counts
4 → 82
Calls

4 calls:

43.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)))))
43.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)))
43.0ms
(/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))
43.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))))

simplify144.0ms (0.9%)

Algorithm
egg-herbie
Rules
477×associate-*r*_binary64
441×times-frac_binary64
330×associate-*l*_binary64
298×associate-/r*_binary64
266×associate-/l*_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
030715852
1118015734
Stop Event
node limit
Counts
358 → 208

prune280.0ms (1.7%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New23513248
Fresh101
Picked101
Done000
Total23713250
Error
16.5b
Counts
250 → 13
Alt Table
StatusErrorProgram
61.9b
(*.f64 (/.f64 c0 (*.f64 2 w)) (/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 3) (pow.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M)) 3/2)) (+.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (-.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M)) (*.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) (sqrt.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M))))))))
40.6b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (/.f64 (*.f64 h (*.f64 w (*.f64 M M))) c0))))
50.9b
(*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 (neg.f64 (pow.f64 M 2))) c0) w))
61.5b
(*.f64 (/.f64 c0 (*.f64 2 w)) (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 d 2) c0) (*.f64 (pow.f64 D 2) (*.f64 w h))))))
49.9b
(log.f64 (pow.f64 (exp.f64 (/.f64 c0 (*.f64 w 2))) (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M))))))
61.0b
(/.f64 (*.f64 c0 (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M))))) (*.f64 w 2))
60.6b
(*.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 1 (*.f64 w (*.f64 h (*.f64 D D)))))) (*.f64 M M)))))
54.2b
(*.f64 (/.f64 c0 (*.f64 2 w)) (fma.f64 2 (*.f64 (*.f64 (/.f64 d D) (/.f64 d D)) (/.f64 c0 (*.f64 w h))) (*.f64 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (/.f64 (*.f64 h (*.f64 w (*.f64 M M))) c0)) -1/2)))
53.9b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (*.f64 (*.f64 (/.f64 d D) (/.f64 d D)) (/.f64 c0 (*.f64 w h)))))
59.8b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (/.f64 (*.f64 (pow.f64 d 2) c0) (*.f64 (pow.f64 D 2) (*.f64 w h)))))
27.2b
(*.f64 1/4 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (*.f64 M (*.f64 M h))))
36.5b
(*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h)) (pow.f64 d 2)))
56.1b
(fma.f64 (*.f64 (/.f64 d D) (/.f64 d D)) (*.f64 (/.f64 c0 h) (/.f64 c0 (*.f64 w w))) (*.f64 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (*.f64 M (*.f64 M h))) -1/4))
Compiler

Compiled 14683 to 6155 computations (58.1% saved)

localize8.0ms (0%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f64 M (*.f64 M h))
0.2b
(*.f64 (/.f64 D d) (/.f64 D d))
11.3b
(*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (*.f64 M (*.f64 M h)))

series134.0ms (0.8%)

Counts
3 → 96
Calls

3 calls:

100.0ms
(*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (*.f64 M (*.f64 M h)))
25.0ms
(*.f64 (/.f64 D d) (/.f64 D d))
8.0ms
(*.f64 M (*.f64 M h))

rewrite48.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
626×log-prod_binary64
190×expm1-udef_binary64
190×log1p-udef_binary64
176×log-pow_binary64
125×associate-*r*_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01030
121229
2292029
Stop Event
node limit
Counts
3 → 82
Calls

3 calls:

46.0ms
(*.f64 M (*.f64 M h))
46.0ms
(*.f64 (/.f64 D d) (/.f64 D d))
46.0ms
(*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (*.f64 M (*.f64 M h)))

simplify103.0ms (0.6%)

Algorithm
egg-herbie
Rules
627×times-frac_binary64
444×associate-/l*_binary64
295×associate-*l*_binary64
293×unswap-sqr_binary64
236×associate-/r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0161320
1371320
21051320
34641320
437031320
542691320
643631320
745101320
846741320
948521320
Stop Event
node limit
Counts
178 → 90

prune110.0ms (0.7%)

Pruning

18 alts after pruning (17 fresh and 1 done)

PrunedKeptTotal
New801090
Fresh5712
Picked011
Done000
Total8518103
Error
11.4b
Counts
103 → 18
Alt Table
StatusErrorProgram
27.9b
(*.f64 1/4 (*.f64 (/.f64 D (*.f64 (/.f64 d D) d)) (*.f64 M (*.f64 M h))))
31.2b
(*.f64 1/4 (*.f64 (*.f64 D D) (*.f64 (*.f64 (/.f64 M d) M) (/.f64 h d))))
29.3b
(*.f64 1/4 (/.f64 (*.f64 (/.f64 D d) (*.f64 h (*.f64 M M))) (/.f64 d D)))
49.9b
(log.f64 (pow.f64 (exp.f64 (/.f64 c0 (*.f64 w 2))) (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M))))))
42.5b
(*.f64 1/4 (*.f64 (exp.f64 (*.f64 2 (log.f64 (/.f64 D d)))) (*.f64 M (*.f64 M h))))
27.2b
(*.f64 1/4 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (*.f64 M (*.f64 M h))))
30.9b
(*.f64 1/4 (*.f64 (sqrt.f64 (pow.f64 (/.f64 D d) 4)) (*.f64 M (*.f64 M h))))
31.7b
(*.f64 1/4 (*.f64 (*.f64 D (/.f64 D (*.f64 d d))) (*.f64 M (*.f64 M h))))
42.8b
(*.f64 1/4 (expm1.f64 (log1p.f64 (pow.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h))) 2))))
42.7b
(*.f64 1/4 (pow.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h))) 2))
42.8b
(*.f64 1/4 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h))) 2)) 3))
30.7b
(*.f64 1/4 (/.f64 (*.f64 D (*.f64 (/.f64 D d) (*.f64 h (*.f64 M M)))) d))
61.0b
(/.f64 (*.f64 c0 (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M))))) (*.f64 w 2))
60.6b
(*.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 1 (*.f64 w (*.f64 h (*.f64 D D)))))) (*.f64 M M)))))
61.9b
(*.f64 (/.f64 c0 (*.f64 2 w)) (/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 3) (pow.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M)) 3/2)) (+.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (-.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M)) (*.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) (sqrt.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M))))))))
54.2b
(*.f64 (/.f64 c0 (*.f64 2 w)) (fma.f64 2 (*.f64 (*.f64 (/.f64 d D) (/.f64 d D)) (/.f64 c0 (*.f64 w h))) (*.f64 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (/.f64 (*.f64 h (*.f64 w (*.f64 M M))) c0)) -1/2)))
59.8b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (/.f64 (*.f64 (pow.f64 d 2) c0) (*.f64 (pow.f64 D 2) (*.f64 w h)))))
56.1b
(fma.f64 (*.f64 (/.f64 d D) (/.f64 d D)) (*.f64 (/.f64 c0 h) (/.f64 c0 (*.f64 w w))) (*.f64 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (*.f64 M (*.f64 M h))) -1/4))
Compiler

Compiled 2752 to 1285 computations (53.3% saved)

localize9.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 M (*.f64 M h))
0.1b
(*.f64 (/.f64 d D) d)
3.3b
(/.f64 D (*.f64 (/.f64 d D) d))
11.3b
(*.f64 (/.f64 D (*.f64 (/.f64 d D) d)) (*.f64 M (*.f64 M h)))

series135.0ms (0.8%)

Counts
3 → 96
Calls

3 calls:

97.0ms
(*.f64 (/.f64 D (*.f64 (/.f64 d D) d)) (*.f64 M (*.f64 M h)))
26.0ms
(/.f64 D (*.f64 (/.f64 d D) d))
12.0ms
(*.f64 (/.f64 d D) d)

rewrite54.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
751×log-prod_binary64
215×expm1-udef_binary64
215×log1p-udef_binary64
199×log-pow_binary64
155×log-div_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01136
123529
2338629
Stop Event
node limit
Counts
3 → 102
Calls

3 calls:

53.0ms
(*.f64 (/.f64 d D) d)
53.0ms
(/.f64 D (*.f64 (/.f64 d D) d))
53.0ms
(*.f64 (/.f64 D (*.f64 (/.f64 d D) d)) (*.f64 M (*.f64 M h)))

simplify106.0ms (0.6%)

Algorithm
egg-herbie
Rules
642×times-frac_binary64
448×associate-/l*_binary64
301×unswap-sqr_binary64
290×associate-*l*_binary64
240×associate-*r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0171320
1381320
21061320
34671320
437391320
543211320
644151320
745621320
847261320
949041320
Stop Event
node limit
Counts
198 → 108

prune169.0ms (1%)

Pruning

17 alts after pruning (16 fresh and 1 done)

PrunedKeptTotal
New1263129
Fresh31316
Picked101
Done011
Total13017147
Error
11.4b
Counts
147 → 17
Alt Table
StatusErrorProgram
32.1b
(*.f64 1/4 (*.f64 (*.f64 M M) (*.f64 (/.f64 (/.f64 D d) d) (*.f64 D h))))
61.0b
(/.f64 (*.f64 c0 (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M))))) (*.f64 w 2))
42.5b
(*.f64 1/4 (*.f64 (exp.f64 (*.f64 2 (log.f64 (/.f64 D d)))) (*.f64 M (*.f64 M h))))
27.2b
(*.f64 1/4 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (*.f64 M (*.f64 M h))))
31.2b
(*.f64 1/4 (*.f64 (*.f64 D D) (*.f64 (*.f64 (/.f64 M d) M) (/.f64 h d))))
42.8b
(*.f64 1/4 (expm1.f64 (log1p.f64 (pow.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h))) 2))))
42.8b
(*.f64 1/4 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h))) 2)) 3))
30.7b
(*.f64 1/4 (/.f64 (*.f64 D (*.f64 (/.f64 D d) (*.f64 h (*.f64 M M)))) d))
29.3b
(*.f64 1/4 (/.f64 (*.f64 (/.f64 D d) (*.f64 h (*.f64 M M))) (/.f64 d D)))
60.6b
(*.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 1 (*.f64 w (*.f64 h (*.f64 D D)))))) (*.f64 M M)))))
61.9b
(*.f64 (/.f64 c0 (*.f64 2 w)) (/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 3) (pow.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M)) 3/2)) (+.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (-.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M)) (*.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) (sqrt.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M))))))))
28.7b
(*.f64 1/4 (/.f64 D (/.f64 (*.f64 d (/.f64 d D)) (*.f64 M (*.f64 M h)))))
54.2b
(*.f64 (/.f64 c0 (*.f64 2 w)) (fma.f64 2 (*.f64 (*.f64 (/.f64 d D) (/.f64 d D)) (/.f64 c0 (*.f64 w h))) (*.f64 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (/.f64 (*.f64 h (*.f64 w (*.f64 M M))) c0)) -1/2)))
27.8b
(*.f64 1/4 (/.f64 (/.f64 (*.f64 D (*.f64 M (*.f64 M h))) (/.f64 d D)) d))
59.8b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (/.f64 (*.f64 (pow.f64 d 2) c0) (*.f64 (pow.f64 D 2) (*.f64 w h)))))
31.7b
(*.f64 1/4 (*.f64 (*.f64 D (/.f64 D (*.f64 d d))) (*.f64 M (*.f64 M h))))
56.1b
(fma.f64 (*.f64 (/.f64 d D) (/.f64 d D)) (*.f64 (/.f64 c0 h) (/.f64 c0 (*.f64 w w))) (*.f64 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (*.f64 M (*.f64 M h))) -1/4))
Compiler

Compiled 3463 to 1529 computations (55.8% saved)

localize11.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 M (*.f64 M h))
4.3b
(*.f64 D (*.f64 M (*.f64 M h)))
4.7b
(/.f64 (/.f64 (*.f64 D (*.f64 M (*.f64 M h))) (/.f64 d D)) d)
5.5b
(/.f64 (*.f64 D (*.f64 M (*.f64 M h))) (/.f64 d D))

series198.0ms (1.2%)

Counts
3 → 132
Calls

3 calls:

126.0ms
(/.f64 (/.f64 (*.f64 D (*.f64 M (*.f64 M h))) (/.f64 d D)) d)
52.0ms
(/.f64 (*.f64 D (*.f64 M (*.f64 M h))) (/.f64 d D))
19.0ms
(*.f64 D (*.f64 M (*.f64 M h)))

rewrite63.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
227×expm1-udef_binary64
227×log1p-udef_binary64
207×log-pow_binary64
138×times-frac_binary64
130×associate-*r*_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01145
124242
2382642
Stop Event
node limit
Counts
3 → 121
Calls

3 calls:

61.0ms
(*.f64 D (*.f64 M (*.f64 M h)))
61.0ms
(/.f64 (/.f64 (*.f64 D (*.f64 M (*.f64 M h))) (/.f64 d D)) d)
61.0ms
(/.f64 (*.f64 D (*.f64 M (*.f64 M h))) (/.f64 d D))

simplify114.0ms (0.7%)

Algorithm
egg-herbie
Rules
711×times-frac_binary64
488×associate-/l*_binary64
333×associate-*l*_binary64
322×unswap-sqr_binary64
278×associate-/r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0192040
1482040
21252040
35152040
441742040
547822040
648692040
749992040
Stop Event
node limit
Counts
253 → 130

prune227.0ms (1.4%)

Pruning

19 alts after pruning (19 fresh and 0 done)

PrunedKeptTotal
New1438151
Fresh41115
Picked101
Done101
Total14919168
Error
11.1b
Counts
168 → 19
Alt Table
StatusErrorProgram
29.2b
(*.f64 1/4 (/.f64 (*.f64 (*.f64 D D) (*.f64 (/.f64 M d) (*.f64 M h))) d))
42.8b
(*.f64 1/4 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h))) 2)) 3))
32.6b
(*.f64 1/4 (/.f64 (/.f64 (expm1.f64 (log1p.f64 (*.f64 D (*.f64 h (*.f64 M M))))) (/.f64 d D)) d))
29.3b
(*.f64 1/4 (/.f64 (*.f64 (/.f64 D d) (*.f64 h (*.f64 M M))) (/.f64 d D)))
35.8b
(*.f64 1/4 (/.f64 (/.f64 (log.f64 (pow.f64 (exp.f64 D) (*.f64 h (*.f64 M M)))) (/.f64 d D)) d))
61.0b
(/.f64 (*.f64 c0 (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M))))) (*.f64 w 2))
35.8b
(*.f64 1/4 (/.f64 (exp.f64 (log.f64 (*.f64 D (/.f64 (*.f64 h (*.f64 M M)) (/.f64 d D))))) d))
61.9b
(*.f64 (/.f64 c0 (*.f64 2 w)) (/.f64 (+.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 3) (pow.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M)) 3/2)) (+.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (-.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M)) (*.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) (sqrt.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M))))))))
30.7b
(*.f64 1/4 (/.f64 (*.f64 (*.f64 (/.f64 (*.f64 h (*.f64 M M)) (/.f64 d D)) (pow.f64 (cbrt.f64 D) 2)) (cbrt.f64 D)) d))
54.2b
(*.f64 (/.f64 c0 (*.f64 2 w)) (fma.f64 2 (*.f64 (*.f64 (/.f64 d D) (/.f64 d D)) (/.f64 c0 (*.f64 w h))) (*.f64 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (/.f64 (*.f64 h (*.f64 w (*.f64 M M))) c0)) -1/2)))
24.3b
(*.f64 1/4 (/.f64 (*.f64 (*.f64 D M) (*.f64 (*.f64 M h) (/.f64 D d))) d))
56.1b
(fma.f64 (*.f64 (/.f64 d D) (/.f64 d D)) (*.f64 (/.f64 c0 h) (/.f64 c0 (*.f64 w w))) (*.f64 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (*.f64 M (*.f64 M h))) -1/4))
31.2b
(*.f64 1/4 (*.f64 (*.f64 D D) (*.f64 (*.f64 (/.f64 M d) M) (/.f64 h d))))
42.8b
(*.f64 1/4 (expm1.f64 (log1p.f64 (pow.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h))) 2))))
30.3b
(*.f64 1/4 (/.f64 (/.f64 (*.f64 h (*.f64 D (*.f64 M M))) (/.f64 d D)) d))
60.6b
(*.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 1 (*.f64 w (*.f64 h (*.f64 D D)))))) (*.f64 M M)))))
28.7b
(*.f64 1/4 (/.f64 D (/.f64 (*.f64 d (/.f64 d D)) (*.f64 M (*.f64 M h)))))
59.8b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (/.f64 (*.f64 (pow.f64 d 2) c0) (*.f64 (pow.f64 D 2) (*.f64 w h)))))
24.4b
(*.f64 1/4 (/.f64 (*.f64 (/.f64 (*.f64 D M) d) (/.f64 (*.f64 M h) (/.f64 1 D))) d))
Compiler

Compiled 3592 to 1431 computations (60.2% saved)

regimes1.1s (6.8%)

Accuracy

Total 10.2b remaining (50.8%)

Threshold costs 0b (0%)

Counts
68 → 2
Compiler

Compiled 21157 to 13142 computations (37.9% saved)

bsearch145.0ms (0.9%)

Steps
ItersRangePoint
9
9.61302668559806e-309
6.75437064033358e-303
4.0293615430633335e-307
Compiler

Compiled 7 to 6 computations (14.3% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
1-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02649
13549
Stop Event
saturated

end278.0ms (1.7%)

Compiler

Compiled 700 to 405 computations (42.1% saved)

Profiling

Loading profile data...