Details

Time bar (total: 17.0s)

analyze2.6s (15.2%)

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)

sample178.0ms (1%)

Algorithm
intervals
Results
31.0ms53×body4096valid
27.0ms281×body128nan
26.0ms50×body2048valid
21.0ms29×body8192valid
11.0ms111×body128invalid
8.0ms88×body128valid
8.0ms22×body1024valid
4.0ms13×body512valid
1.0msbody8192exit
1.0msbody2048invalid
0.0msbody1024invalid
0.0msbody512invalid
0.0msbody256valid
0.0msbody256invalid
Compiler

Compiled 123 to 49 computations (60.2% saved)

simplify50.0ms (0.3%)

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 → 1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02278
16474
229674
3310367
4421867
5536567

prune4.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
58.6b
Counts
2 → 2
Alt Table
StatusErrorProgram
61.3b
(*.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)))))
59.2b
(*.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 269 to 120 computations (55.4% saved)

localize23.0ms (0.1%)

Local error

Found 4 expressions with local error:

19.8b
(/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))
19.8b
(/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))
19.8b
(/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))
24.6b
(+.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))))

rewrite455.0ms (2.7%)

Algorithm
rewrite-expression-head
Error
58.6b
Rules
50×add-exp-log_binary64
30×prod-exp_binary64
24×add-cbrt-cube_binary64
22×add-cube-cbrt_binary64
16×pow1_binary64
Counts
4 → 181
Calls

4 calls:

41.0ms
(/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))
24.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))))
23.0ms
(/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))
22.0ms
(/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))
Compiler

Compiled 10324 to 1203 computations (88.3% saved)

series374.0ms (2.2%)

Error
37.9b
Counts
4 → 71
Calls

4 calls:

125.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))))
84.0ms
(/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))
77.0ms
(/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))
75.0ms
(/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))
Compiler

Compiled 7042 to 3820 computations (45.8% saved)

simplify200.0ms (1.2%)

Algorithm
egg-herbie
Rules
824×fma-neg_binary64
348×cancel-sign-sub-inv_binary64
200×associate-*l*_binary64
193×times-frac_binary64
189×cube-prod_binary64
Counts
252 → 182
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01407474
14316325
225335959
349095959
451585959

prune166.0ms (1%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New1757182
Fresh011
Picked101
Done000
Total1768184
Error
39.1b
Counts
184 → 8
Alt Table
StatusErrorProgram
60.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 (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))) (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h))))) (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h))))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M)))))
62.8b
(*.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)))))
53.9b
(*.f64 (/.f64 c0 (*.f64 2 w)) (sqrt.f64 (neg.f64 (*.f64 M M))))
61.3b
(*.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)))))
46.5b
(*.f64 (/.f64 c0 (*.f64 2 w)) (/.f64 (*.f64 M M) (-.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h))) (sqrt.f64 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))) 6) (*.f64 M M))))))
61.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 (*.f64 (cbrt.f64 (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))) 6) (*.f64 M M))))) (cbrt.f64 (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))) 6) (*.f64 M M)))))) (cbrt.f64 (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))) 6) (*.f64 M M)))))))
44.3b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (*.f64 (*.f64 D D) (*.f64 (*.f64 M M) (*.f64 w h))) (*.f64 (*.f64 d d) c0))))
60.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))))
Compiler

Compiled 6506 to 1377 computations (78.8% saved)

localize16.0ms (0.1%)

Local error

Found 4 expressions with local error:

10.9b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (*.f64 (*.f64 D D) (*.f64 (*.f64 M M) (*.f64 w h))) (*.f64 (*.f64 d d) c0))))
11.2b
(*.f64 (*.f64 D D) (*.f64 (*.f64 M M) (*.f64 w h)))
11.7b
(*.f64 (*.f64 M M) (*.f64 w h))
18.7b
(/.f64 (*.f64 (*.f64 D D) (*.f64 (*.f64 M M) (*.f64 w h))) (*.f64 (*.f64 d d) c0))

rewrite334.0ms (2%)

Algorithm
rewrite-expression-head
Error
32.2b
Rules
72×add-exp-log_binary64
50×prod-exp_binary64
30×pow1_binary64
24×add-sqr-sqrt_binary64
22×add-cbrt-cube_binary64
Counts
4 → 162
Calls

4 calls:

22.0ms
(/.f64 (*.f64 (*.f64 D D) (*.f64 (*.f64 M M) (*.f64 w h))) (*.f64 (*.f64 d d) c0))
20.0ms
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (*.f64 (*.f64 D D) (*.f64 (*.f64 M M) (*.f64 w h))) (*.f64 (*.f64 d d) c0))))
20.0ms
(*.f64 (*.f64 D D) (*.f64 (*.f64 M M) (*.f64 w h)))
15.0ms
(*.f64 (*.f64 M M) (*.f64 w h))
Compiler

Compiled 4468 to 1280 computations (71.4% saved)

series287.0ms (1.7%)

Error
32.1b
Counts
4 → 57
Calls

4 calls:

104.0ms
(/.f64 (*.f64 (*.f64 D D) (*.f64 (*.f64 M M) (*.f64 w h))) (*.f64 (*.f64 d d) c0))
98.0ms
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (*.f64 (*.f64 D D) (*.f64 (*.f64 M M) (*.f64 w h))) (*.f64 (*.f64 d d) c0))))
50.0ms
(*.f64 (*.f64 D D) (*.f64 (*.f64 M M) (*.f64 w h)))
22.0ms
(*.f64 (*.f64 M M) (*.f64 w h))
Compiler

Compiled 3360 to 2463 computations (26.7% saved)

simplify153.0ms (0.9%)

Algorithm
egg-herbie
Rules
335×associate-*r*_binary64
322×associate-*l*_binary64
285×log-prod_binary64
267×times-frac_binary64
186×exp-prod_binary64
Counts
219 → 156
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01904682
15404090
232554049
349514049
449994049

prune133.0ms (0.8%)

Pruning

15 alts after pruning (15 fresh and 0 done)

PrunedKeptTotal
New1479156
Fresh167
Picked101
Done000
Total14915164
Error
29.2b
Counts
164 → 15
Alt Table
StatusErrorProgram
36.5b
(*.f64 1/4 (/.f64 (*.f64 (*.f64 D D) (*.f64 h (*.f64 M M))) (*.f64 d d)))
53.9b
(*.f64 (/.f64 c0 (*.f64 2 w)) (sqrt.f64 (neg.f64 (*.f64 M M))))
61.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 (*.f64 (cbrt.f64 (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))) 6) (*.f64 M M))))) (cbrt.f64 (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))) 6) (*.f64 M M)))))) (cbrt.f64 (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))) 6) (*.f64 M M)))))))
44.9b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (log.f64 (pow.f64 (exp.f64 (*.f64 w (*.f64 h (*.f64 M M)))) (*.f64 D D))) (*.f64 (*.f64 d d) c0))))
60.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 (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))) (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h))))) (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h))))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M)))))
62.8b
(*.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)))))
59.1b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (*.f64 (*.f64 D D) (*.f64 w (*.f64 h (*.f64 M M)))) (exp.f64 (fma.f64 2 (log.f64 d) (log.f64 c0))))))
39.7b
(/.f64 c0 (*.f64 (/.f64 w 1/4) (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w (*.f64 h (*.f64 M M)))))))
61.3b
(*.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)))))
40.8b
(*.f64 (*.f64 c0 1/2) (*.f64 (/.f64 (/.f64 1/2 w) (*.f64 d d)) (*.f64 (*.f64 D D) (/.f64 (*.f64 w (*.f64 h (*.f64 M M))) c0))))
41.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (*.f64 D (*.f64 D (*.f64 w (*.f64 h (*.f64 M M))))) (*.f64 (*.f64 d d) c0))))
49.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (*.f64 (*.f64 D (fabs.f64 (*.f64 M (sqrt.f64 (*.f64 w h))))) (*.f64 D (fabs.f64 (*.f64 M (sqrt.f64 (*.f64 w h)))))) (*.f64 (*.f64 d d) c0))))
49.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (*.f64 (fabs.f64 (*.f64 (*.f64 D M) (sqrt.f64 (*.f64 w h)))) (fabs.f64 (*.f64 (*.f64 D M) (sqrt.f64 (*.f64 w h))))) (*.f64 (*.f64 d d) c0))))
50.4b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (*.f64 (*.f64 D D) (*.f64 (fabs.f64 (*.f64 M (sqrt.f64 (*.f64 w h)))) (fabs.f64 (*.f64 M (sqrt.f64 (*.f64 w h)))))) (*.f64 (*.f64 d d) c0))))
60.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))))
Compiler

Compiled 3497 to 1321 computations (62.2% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

7.9b
(*.f64 h (*.f64 M M))
11.7b
(*.f64 (*.f64 D D) (*.f64 h (*.f64 M M)))
17.2b
(/.f64 (*.f64 (*.f64 D D) (*.f64 h (*.f64 M M))) (*.f64 d d))

rewrite197.0ms (1.2%)

Algorithm
rewrite-expression-head
Error
24.4b
Rules
36×add-exp-log_binary64
22×prod-exp_binary64
17×add-cbrt-cube_binary64
16×add-sqr-sqrt_binary64
14×pow1_binary64
Counts
3 → 116
Calls

3 calls:

17.0ms
(/.f64 (*.f64 (*.f64 D D) (*.f64 h (*.f64 M M))) (*.f64 d d))
15.0ms
(*.f64 (*.f64 D D) (*.f64 h (*.f64 M M)))
14.0ms
(*.f64 h (*.f64 M M))
Compiler

Compiled 2009 to 502 computations (75% saved)

series105.0ms (0.6%)

Error
29.2b
Counts
3 → 27
Calls

3 calls:

58.0ms
(/.f64 (*.f64 (*.f64 D D) (*.f64 h (*.f64 M M))) (*.f64 d d))
25.0ms
(*.f64 (*.f64 D D) (*.f64 h (*.f64 M M)))
12.0ms
(*.f64 h (*.f64 M M))
Compiler

Compiled 1230 to 938 computations (23.7% saved)

simplify95.0ms (0.6%)

Algorithm
egg-herbie
Rules
865×unswap-sqr_binary64
240×associate-/l/_binary64
226×associate-/r/_binary64
162×associate-*r*_binary64
161×associate-*l*_binary64
Counts
143 → 67
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01201942
13011692
214421678
349031678
450011678

prune56.0ms (0.3%)

Pruning

15 alts after pruning (14 fresh and 1 done)

PrunedKeptTotal
New63467
Fresh41014
Picked011
Done000
Total671582
Error
25.4b
Counts
82 → 15
Alt Table
StatusErrorProgram
50.0b
(*.f64 1/4 (/.f64 (*.f64 (*.f64 D D) (*.f64 (*.f64 M (sqrt.f64 h)) (*.f64 M (sqrt.f64 h)))) (*.f64 d d)))
39.7b
(/.f64 c0 (*.f64 (/.f64 w 1/4) (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w (*.f64 h (*.f64 M M)))))))
61.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 (*.f64 (cbrt.f64 (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))) 6) (*.f64 M M))))) (cbrt.f64 (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))) 6) (*.f64 M M)))))) (cbrt.f64 (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))) 6) (*.f64 M M)))))))
44.9b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (log.f64 (pow.f64 (exp.f64 (*.f64 w (*.f64 h (*.f64 M M)))) (*.f64 D D))) (*.f64 (*.f64 d d) c0))))
60.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 (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))) (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h))))) (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h))))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M)))))
62.8b
(*.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)))))
36.5b
(*.f64 1/4 (/.f64 (*.f64 (*.f64 D D) (*.f64 h (*.f64 M M))) (*.f64 d d)))
61.3b
(*.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)))))
47.7b
(*.f64 1/4 (/.f64 (*.f64 (*.f64 D (fabs.f64 (*.f64 M (sqrt.f64 h)))) (*.f64 D (fabs.f64 (*.f64 M (sqrt.f64 h))))) (*.f64 d d)))
33.3b
(*.f64 1/4 (/.f64 (*.f64 (*.f64 D D) (/.f64 (*.f64 h (*.f64 M M)) d)) d))
33.9b
(*.f64 1/4 (/.f64 (*.f64 D D) (/.f64 d (/.f64 (*.f64 h (*.f64 M M)) d))))
49.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (*.f64 (*.f64 D (fabs.f64 (*.f64 M (sqrt.f64 (*.f64 w h))))) (*.f64 D (fabs.f64 (*.f64 M (sqrt.f64 (*.f64 w h)))))) (*.f64 (*.f64 d d) c0))))
49.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (*.f64 (fabs.f64 (*.f64 (*.f64 D M) (sqrt.f64 (*.f64 w h)))) (fabs.f64 (*.f64 (*.f64 D M) (sqrt.f64 (*.f64 w h))))) (*.f64 (*.f64 d d) c0))))
50.4b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (*.f64 (*.f64 D D) (*.f64 (fabs.f64 (*.f64 M (sqrt.f64 (*.f64 w h)))) (fabs.f64 (*.f64 M (sqrt.f64 (*.f64 w h)))))) (*.f64 (*.f64 d d) c0))))
60.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))))
Compiler

Compiled 1669 to 762 computations (54.3% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

3.4b
(/.f64 (*.f64 (*.f64 D D) (/.f64 (*.f64 h (*.f64 M M)) d)) d)
7.6b
(/.f64 (*.f64 h (*.f64 M M)) d)
7.9b
(*.f64 h (*.f64 M M))
13.3b
(*.f64 (*.f64 D D) (/.f64 (*.f64 h (*.f64 M M)) d))

rewrite313.0ms (1.8%)

Algorithm
rewrite-expression-head
Error
22.0b
Rules
48×add-exp-log_binary64
29×add-cube-cbrt_binary64
24×prod-exp_binary64
24×add-cbrt-cube_binary64
20×add-sqr-sqrt_binary64
Counts
4 → 170
Calls

4 calls:

18.0ms
(/.f64 (*.f64 (*.f64 D D) (/.f64 (*.f64 h (*.f64 M M)) d)) d)
16.0ms
(*.f64 (*.f64 D D) (/.f64 (*.f64 h (*.f64 M M)) d))
15.0ms
(/.f64 (*.f64 h (*.f64 M M)) d)
14.0ms
(*.f64 h (*.f64 M M))
Compiler

Compiled 3028 to 801 computations (73.5% saved)

series144.0ms (0.8%)

Error
25.4b
Counts
4 → 39
Calls

4 calls:

49.0ms
(/.f64 (*.f64 (*.f64 D D) (/.f64 (*.f64 h (*.f64 M M)) d)) d)
46.0ms
(*.f64 (*.f64 D D) (/.f64 (*.f64 h (*.f64 M M)) d))
24.0ms
(/.f64 (*.f64 h (*.f64 M M)) d)
16.0ms
(*.f64 h (*.f64 M M))
Compiler

Compiled 1734 to 1307 computations (24.6% saved)

simplify87.0ms (0.5%)

Algorithm
egg-herbie
Rules
808×associate-/l/_binary64
657×unswap-sqr_binary64
167×times-frac_binary64
165×associate-*l*_binary64
152×associate-*r*_binary64
Counts
209 → 111
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01632821
13992515
218592507
357722507

prune87.0ms (0.5%)

Pruning

19 alts after pruning (19 fresh and 0 done)

PrunedKeptTotal
New1029111
Fresh31013
Picked101
Done101
Total10719126
Error
23.7b
Counts
126 → 19
Alt Table
StatusErrorProgram
40.0b
(*.f64 1/4 (/.f64 (*.f64 (*.f64 D D) (exp.f64 (log.f64 (/.f64 (*.f64 h (*.f64 M M)) d)))) d))
34.4b
(*.f64 1/4 (/.f64 (expm1.f64 (log1p.f64 (/.f64 (*.f64 (*.f64 D D) (*.f64 h (*.f64 M M))) d))) d))
47.6b
(*.f64 1/4 (/.f64 (*.f64 (*.f64 D D) (/.f64 (*.f64 (*.f64 M (sqrt.f64 h)) (*.f64 M (sqrt.f64 h))) d)) d))
39.7b
(/.f64 c0 (*.f64 (/.f64 w 1/4) (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w (*.f64 h (*.f64 M M)))))))
33.3b
(*.f64 1/4 (neg.f64 (*.f64 (/.f64 (*.f64 h (*.f64 M M)) (neg.f64 d)) (/.f64 (*.f64 D D) d))))
47.7b
(*.f64 1/4 (/.f64 (*.f64 (*.f64 D (fabs.f64 (*.f64 M (sqrt.f64 h)))) (*.f64 D (fabs.f64 (*.f64 M (sqrt.f64 h))))) (*.f64 d d)))
37.8b
(*.f64 1/4 (/.f64 (*.f64 (fabs.f64 (*.f64 D (sqrt.f64 (/.f64 (*.f64 h (*.f64 M M)) d)))) (fabs.f64 (*.f64 D (sqrt.f64 (/.f64 (*.f64 h (*.f64 M M)) d))))) d))
49.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (*.f64 (*.f64 D (fabs.f64 (*.f64 M (sqrt.f64 (*.f64 w h))))) (*.f64 D (fabs.f64 (*.f64 M (sqrt.f64 (*.f64 w h)))))) (*.f64 (*.f64 d d) c0))))
33.4b
(*.f64 1/4 (/.f64 (*.f64 (*.f64 D D) (/.f64 (*.f64 (*.f64 M M) (/.f64 h (*.f64 (cbrt.f64 d) (cbrt.f64 d)))) (cbrt.f64 d))) d))
36.8b
(*.f64 1/4 (/.f64 (-.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 (*.f64 D D) (*.f64 h (*.f64 M M))) d))) 1) d))
60.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 (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))) (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h))))) (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h))))) (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))) (*.f64 M M)))))
62.8b
(*.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)))))
61.3b
(*.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)))))
49.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (*.f64 (fabs.f64 (*.f64 (*.f64 D M) (sqrt.f64 (*.f64 w h)))) (fabs.f64 (*.f64 (*.f64 D M) (sqrt.f64 (*.f64 w h))))) (*.f64 (*.f64 d d) c0))))
61.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 (*.f64 (cbrt.f64 (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))) 6) (*.f64 M M))))) (cbrt.f64 (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))) 6) (*.f64 M M)))))) (cbrt.f64 (fma.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D)) (sqrt.f64 (-.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))) 6) (*.f64 M M)))))))
34.5b
(*.f64 1/4 (log.f64 (pow.f64 (exp.f64 (/.f64 (*.f64 h (*.f64 M M)) d)) (/.f64 (*.f64 D D) d))))
35.6b
(*.f64 1/4 (/.f64 (cbrt.f64 (pow.f64 (/.f64 (*.f64 (*.f64 D D) (*.f64 h (*.f64 M M))) d) 3)) d))
50.4b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 1/2 (/.f64 (*.f64 (*.f64 D D) (*.f64 (fabs.f64 (*.f64 M (sqrt.f64 (*.f64 w h)))) (fabs.f64 (*.f64 M (sqrt.f64 (*.f64 w h)))))) (*.f64 (*.f64 d d) c0))))
60.7b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (/.f64 (*.f64 (*.f64 d d) c0) (*.f64 (*.f64 D D) (*.f64 w h)))))
Compiler

Compiled 1683 to 671 computations (60.1% saved)

regimes3.6s (21.4%)

Accuracy

Total 7.2b remaining (26.1%)

Threshold costs 0b (0%)

Compiler

Compiled 95077 to 45887 computations (51.7% saved)

bsearch287.0ms (1.7%)

Steps
ItersRangePoint
3
1.5132507775240846e-148
1.8986746086504874e-148
1.5268851672651507e-148
9
-2.0160570971864837e-212
-1.9414303447365172e-218
-1.9928696319416464e-212
5
-2.37775222137082e-173
-9.247374792415089e-174
-1.57845886360931e-173
3
-1.0930365122342454e+133
-3.511782758971964e+124
-9.879018091396131e+131
Compiler

Compiled 7 to 6 computations (14.3% saved)

simplify5.0ms (0%)

Algorithm
egg-herbie
Rules
10×*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
043138
153138
253138

end1.0ms (0%)

Compiler

Compiled 99 to 48 computations (51.5% saved)

sample7.0s (41.3%)

Algorithm
intervals
Results
1.4s2150×body4096valid
1.3s11691×body128nan
1.0s1207×body8192valid
648.0ms1283×body2048valid
427.0ms3879×body128invalid
350.0ms2303×body128valid
218.0ms578×body1024valid
94.0ms316×body512valid
36.0ms163×body256valid
33.0ms66×body2048invalid
21.0ms54×body1024invalid
12.0msbody8192exit
11.0ms35×body512invalid
11.0ms19×body4096invalid
5.0ms28×body256invalid
Compiler

Compiled 880 to 450 computations (48.9% saved)

Profiling

Loading profile data...