Details

Time bar (total: 15.5s)

analyze2.5s (16.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)

sample8.5s (55.1%)

Results
3.0s16356×body128invalid
2.0s2193×body4096valid
1.4s1202×body8192valid
1.0s1351×body2048valid
459.0ms2421×body128valid
386.0ms630×body1024valid
134.0ms304×body512valid
54.0ms75×body2048invalid
53.0ms155×body256valid
37.0ms49×body1024invalid
15.0ms32×body512invalid
9.0ms11×body4096invalid
9.0msbody8192exit
7.0ms15×body256invalid
Compiler

Compiled 118 to 44 computations (62.7% saved)

preprocess47.0ms (0.3%)

Algorithm
egg-herbie
Rules
506×times-frac_binary64
396×fma-neg_binary64
336×associate-/r*_binary64
250×associate-*r/_binary64
250×associate-*l/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01591248
17261184
240951184
066
Stop Event
saturated
node limit
Compiler

Compiled 58 to 21 computations (63.8% saved)

simplify30.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

prune4.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
59.6b
Counts
3 → 2
Alt Table
StatusErrorProgram
63.3b
(*.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)))))
59.9b
(*.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 134 computations (58.3% saved)

localize19.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
13.1b
(*.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.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)))
15.0b
(/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D)))
29.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))))

series858.0ms (5.5%)

Counts
4 → 276
Calls

69 calls:

54.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)))))
d
inf
32.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)))))
d
-inf
27.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)))))
D
0
22.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))))
d
inf
22.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)))))
c0
-inf

rewrite54.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

simplify171.0ms (1.1%)

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

prune355.0ms (2.3%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New23612248
Fresh101
Picked101
Done000
Total23812250
Error
17.2b
Counts
250 → 12
Alt Table
StatusErrorProgram
60.1b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (/.f64 (*.f64 (pow.f64 d 2) c0) (*.f64 (pow.f64 D 2) (*.f64 w h)))))
50.4b
(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 (*.f64 c0 c0) (*.f64 D D)) (/.f64 (*.f64 d d) (*.f64 w (*.f64 w h))))
61.3b
(/.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.9b
(/.f64 (*.f64 (pow.f64 d 2) (pow.f64 c0 2)) (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 w 2) h)))
59.7b
(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))
36.3b
(*.f64 1/4 (/.f64 (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 M 2) h)) (pow.f64 d 2)))
38.3b
(*.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))))
57.5b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (*.f64 (*.f64 (/.f64 d D) (/.f64 d D)) (/.f64 c0 (*.f64 w h)))))
52.2b
(*.f64 1/2 (/.f64 (*.f64 (sqrt.f64 (neg.f64 (pow.f64 M 2))) c0) w))
25.6b
(*.f64 1/4 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (*.f64 M (*.f64 M h))))
61.8b
(*.f64 (/.f64 c0 (*.f64 2 w)) (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (cbrt.f64 (pow.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M)) 3/2))))
Compiler

Compiled 14337 to 6041 computations (57.9% saved)

localize8.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f64 M (*.f64 M h))
0.3b
(*.f64 (/.f64 D d) (/.f64 D d))
14.7b
(*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (*.f64 M (*.f64 M h)))

series129.0ms (0.8%)

Counts
3 → 96
Calls

24 calls:

11.0ms
(*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (*.f64 M (*.f64 M h)))
h
-inf
11.0ms
(*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (*.f64 M (*.f64 M h)))
h
0
10.0ms
(*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (*.f64 M (*.f64 M h)))
D
0
9.0ms
(*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (*.f64 M (*.f64 M h)))
M
-inf
9.0ms
(*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (*.f64 M (*.f64 M h)))
D
-inf

rewrite50.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

simplify107.0ms (0.7%)

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

prune138.0ms (0.9%)

Pruning

24 alts after pruning (24 fresh and 0 done)

PrunedKeptTotal
New741690
Fresh3811
Picked101
Done000
Total7824102
Error
12.2b
Counts
102 → 24
Alt Table
StatusErrorProgram
57.5b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (*.f64 (*.f64 (/.f64 d D) (/.f64 d D)) (/.f64 c0 (*.f64 w h)))))
33.1b
(*.f64 1/4 (*.f64 (/.f64 1 (/.f64 (*.f64 d d) (*.f64 D D))) (*.f64 M (*.f64 M h))))
29.9b
(*.f64 1/4 (*.f64 (*.f64 D D) (*.f64 (*.f64 (/.f64 M d) M) (/.f64 h d))))
60.1b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (/.f64 (*.f64 (pow.f64 d 2) c0) (*.f64 (pow.f64 D 2) (*.f64 w h)))))
50.4b
(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))))))
26.1b
(*.f64 1/4 (*.f64 (/.f64 1 (*.f64 (/.f64 d D) (/.f64 d D))) (*.f64 M (*.f64 M h))))
61.0b
(*.f64 (/.f64 (*.f64 c0 c0) (*.f64 D D)) (/.f64 (*.f64 d d) (*.f64 w (*.f64 w h))))
61.3b
(/.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))
25.8b
(*.f64 1/4 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 D d)) 2) 3) (*.f64 M (*.f64 M h))))
27.4b
(*.f64 1/4 (*.f64 (/.f64 D (*.f64 (/.f64 d D) d)) (*.f64 M (*.f64 M h))))
60.9b
(/.f64 (*.f64 (pow.f64 d 2) (pow.f64 c0 2)) (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 w 2) h)))
59.7b
(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))
32.3b
(*.f64 1/4 (*.f64 (pow.f64 (pow.f64 (pow.f64 (/.f64 D d) 2) 3) 1/3) (*.f64 M (*.f64 M h))))
43.9b
(*.f64 1/4 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (pow.f64 (*.f64 M (sqrt.f64 h)) 2)))
45.8b
(*.f64 1/4 (cbrt.f64 (pow.f64 (pow.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h))) 2) 3)))
27.2b
(*.f64 1/4 (*.f64 (/.f64 (/.f64 (*.f64 D (/.f64 D d)) (pow.f64 (cbrt.f64 d) 2)) (cbrt.f64 d)) (*.f64 M (*.f64 M h))))
31.1b
(*.f64 1/4 (/.f64 (*.f64 (*.f64 D (/.f64 D d)) (*.f64 h (*.f64 M M))) d))
25.7b
(*.f64 1/4 (*.f64 (expm1.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2))) (*.f64 M (*.f64 M h))))
31.7b
(*.f64 1/4 (*.f64 (*.f64 D (/.f64 D (*.f64 d d))) (*.f64 M (*.f64 M h))))
47.8b
(*.f64 1/4 (exp.f64 (*.f64 2 (log.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h)))))))
40.6b
(*.f64 1/4 (pow.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h))) 2))
40.6b
(*.f64 1/4 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h))) 2)) 3))
28.5b
(*.f64 1/4 (/.f64 (*.f64 (/.f64 D d) (*.f64 h (*.f64 M M))) (/.f64 d D)))
61.8b
(*.f64 (/.f64 c0 (*.f64 2 w)) (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (cbrt.f64 (pow.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M)) 3/2))))
Compiler

Compiled 2803 to 1446 computations (48.4% saved)

localize10.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(pow.f64 (/.f64 D d) 2)
0.6b
(expm1.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2)))
1.5b
(log1p.f64 (pow.f64 (/.f64 D d) 2))
14.7b
(*.f64 (expm1.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2))) (*.f64 M (*.f64 M h)))

series158.0ms (1%)

Counts
4 → 120
Calls

30 calls:

16.0ms
(*.f64 (expm1.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2))) (*.f64 M (*.f64 M h)))
D
0
14.0ms
(*.f64 (expm1.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2))) (*.f64 M (*.f64 M h)))
h
-inf
11.0ms
(*.f64 (expm1.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2))) (*.f64 M (*.f64 M h)))
M
inf
10.0ms
(*.f64 (expm1.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2))) (*.f64 M (*.f64 M h)))
h
0
9.0ms
(*.f64 (expm1.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2))) (*.f64 M (*.f64 M h)))
D
-inf

rewrite64.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
642×log-prod_binary64
215×expm1-udef_binary64
215×log1p-udef_binary64
198×log-pow_binary64
132×egg-rr
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01339
124938
2305138
Stop Event
node limit
Counts
4 → 132

simplify62.0ms (0.4%)

Algorithm
egg-herbie
Rules
576×fma-neg_binary64
310×sub-neg_binary64
213×fma-def_binary64
206×times-frac_binary64
198×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0782209
12272153
26982099
331112097
Stop Event
node limit
Counts
252 → 119

prune186.0ms (1.2%)

Pruning

26 alts after pruning (26 fresh and 0 done)

PrunedKeptTotal
New1145119
Fresh22123
Picked101
Done000
Total11726143
Error
12.2b
Counts
143 → 26
Alt Table
StatusErrorProgram
26.3b
(*.f64 1/4 (*.f64 (expm1.f64 (exp.f64 (log.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2))))) (*.f64 M (*.f64 M h))))
32.6b
(*.f64 1/4 (*.f64 (/.f64 (*.f64 M M) (/.f64 d (*.f64 D D))) (/.f64 h d)))
57.5b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (*.f64 (*.f64 (/.f64 d D) (/.f64 d D)) (/.f64 c0 (*.f64 w h)))))
33.1b
(*.f64 1/4 (*.f64 (/.f64 1 (/.f64 (*.f64 d d) (*.f64 D D))) (*.f64 M (*.f64 M h))))
29.9b
(*.f64 1/4 (*.f64 (*.f64 D D) (*.f64 (*.f64 (/.f64 M d) M) (/.f64 h d))))
60.1b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (/.f64 (*.f64 (pow.f64 d 2) c0) (*.f64 (pow.f64 D 2) (*.f64 w h)))))
50.4b
(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))))))
26.1b
(*.f64 1/4 (*.f64 (/.f64 1 (*.f64 (/.f64 d D) (/.f64 d D))) (*.f64 M (*.f64 M h))))
61.0b
(*.f64 (/.f64 (*.f64 c0 c0) (*.f64 D D)) (/.f64 (*.f64 d d) (*.f64 w (*.f64 w h))))
61.3b
(/.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))
27.4b
(*.f64 1/4 (*.f64 (/.f64 D (*.f64 (/.f64 d D) d)) (*.f64 M (*.f64 M h))))
60.9b
(/.f64 (*.f64 (pow.f64 d 2) (pow.f64 c0 2)) (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 w 2) h)))
59.7b
(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))
33.1b
(*.f64 1/4 (*.f64 (fma.f64 (*.f64 (cbrt.f64 (+.f64 (pow.f64 (/.f64 D d) 2) 1)) (cbrt.f64 (+.f64 (pow.f64 (/.f64 D d) 2) 1))) (cbrt.f64 (+.f64 (pow.f64 (/.f64 D d) 2) 1)) -1) (*.f64 M (*.f64 M h))))
32.3b
(*.f64 1/4 (*.f64 (pow.f64 (pow.f64 (pow.f64 (/.f64 D d) 2) 3) 1/3) (*.f64 M (*.f64 M h))))
43.9b
(*.f64 1/4 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (pow.f64 (*.f64 M (sqrt.f64 h)) 2)))
45.8b
(*.f64 1/4 (cbrt.f64 (pow.f64 (pow.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h))) 2) 3)))
27.2b
(*.f64 1/4 (*.f64 (/.f64 (/.f64 (*.f64 D (/.f64 D d)) (pow.f64 (cbrt.f64 d) 2)) (cbrt.f64 d)) (*.f64 M (*.f64 M h))))
31.1b
(*.f64 1/4 (/.f64 (*.f64 (*.f64 D (/.f64 D d)) (*.f64 h (*.f64 M M))) d))
39.9b
(*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 (/.f64 D d)) (*.f64 (sqrt.f64 (/.f64 D d)) (/.f64 D d))) (*.f64 M (*.f64 M h))))
28.5b
(*.f64 1/4 (/.f64 (*.f64 (/.f64 D d) (*.f64 h (*.f64 M M))) (/.f64 d D)))
25.9b
(*.f64 1/4 (*.f64 (expm1.f64 (expm1.f64 (log1p.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2))))) (*.f64 M (*.f64 M h))))
47.8b
(*.f64 1/4 (exp.f64 (*.f64 2 (log.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h)))))))
40.6b
(*.f64 1/4 (pow.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h))) 2))
40.6b
(*.f64 1/4 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h))) 2)) 3))
61.8b
(*.f64 (/.f64 c0 (*.f64 2 w)) (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (cbrt.f64 (pow.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M)) 3/2))))
Compiler

Compiled 4000 to 2301 computations (42.5% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(pow.f64 (/.f64 D d) 2)
0.6b
(expm1.f64 (expm1.f64 (log1p.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2)))))
1.5b
(log1p.f64 (pow.f64 (/.f64 D d) 2))
14.7b
(*.f64 (expm1.f64 (expm1.f64 (log1p.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2))))) (*.f64 M (*.f64 M h)))

series153.0ms (1%)

Counts
2 → 72
Calls

18 calls:

50.0ms
(*.f64 (expm1.f64 (expm1.f64 (log1p.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2))))) (*.f64 M (*.f64 M h)))
d
inf
11.0ms
(*.f64 (expm1.f64 (expm1.f64 (log1p.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2))))) (*.f64 M (*.f64 M h)))
h
inf
10.0ms
(*.f64 (expm1.f64 (expm1.f64 (log1p.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2))))) (*.f64 M (*.f64 M h)))
h
0
10.0ms
(*.f64 (expm1.f64 (expm1.f64 (log1p.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2))))) (*.f64 M (*.f64 M h)))
h
-inf
10.0ms
(*.f64 (expm1.f64 (expm1.f64 (log1p.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2))))) (*.f64 M (*.f64 M h)))
D
inf

rewrite49.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
680×log-prod_binary64
230×expm1-udef_binary64
230×log1p-udef_binary64
213×log-pow_binary64
144×prod-diff_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01523
129122
2327822
Stop Event
node limit
Counts
2 → 66

simplify115.0ms (0.7%)

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
0161152
1371152
21051152
34641152
437031152
542691152
643631152
745101152
846741152
948521152
Stop Event
node limit
Counts
138 → 71

prune180.0ms (1.2%)

Pruning

26 alts after pruning (25 fresh and 1 done)

PrunedKeptTotal
New1210121
Fresh02525
Picked011
Done000
Total12126147
Error
12.2b
Counts
147 → 26
Alt Table
StatusErrorProgram
26.3b
(*.f64 1/4 (*.f64 (expm1.f64 (exp.f64 (log.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2))))) (*.f64 M (*.f64 M h))))
32.6b
(*.f64 1/4 (*.f64 (/.f64 (*.f64 M M) (/.f64 d (*.f64 D D))) (/.f64 h d)))
57.5b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (*.f64 (*.f64 (/.f64 d D) (/.f64 d D)) (/.f64 c0 (*.f64 w h)))))
33.1b
(*.f64 1/4 (*.f64 (/.f64 1 (/.f64 (*.f64 d d) (*.f64 D D))) (*.f64 M (*.f64 M h))))
29.9b
(*.f64 1/4 (*.f64 (*.f64 D D) (*.f64 (*.f64 (/.f64 M d) M) (/.f64 h d))))
60.1b
(*.f64 (/.f64 c0 (*.f64 2 w)) (*.f64 2 (/.f64 (*.f64 (pow.f64 d 2) c0) (*.f64 (pow.f64 D 2) (*.f64 w h)))))
50.4b
(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))))))
26.1b
(*.f64 1/4 (*.f64 (/.f64 1 (*.f64 (/.f64 d D) (/.f64 d D))) (*.f64 M (*.f64 M h))))
61.0b
(*.f64 (/.f64 (*.f64 c0 c0) (*.f64 D D)) (/.f64 (*.f64 d d) (*.f64 w (*.f64 w h))))
61.3b
(/.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))
27.4b
(*.f64 1/4 (*.f64 (/.f64 D (*.f64 (/.f64 d D) d)) (*.f64 M (*.f64 M h))))
60.9b
(/.f64 (*.f64 (pow.f64 d 2) (pow.f64 c0 2)) (*.f64 (pow.f64 D 2) (*.f64 (pow.f64 w 2) h)))
59.7b
(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))
33.1b
(*.f64 1/4 (*.f64 (fma.f64 (*.f64 (cbrt.f64 (+.f64 (pow.f64 (/.f64 D d) 2) 1)) (cbrt.f64 (+.f64 (pow.f64 (/.f64 D d) 2) 1))) (cbrt.f64 (+.f64 (pow.f64 (/.f64 D d) 2) 1)) -1) (*.f64 M (*.f64 M h))))
32.3b
(*.f64 1/4 (*.f64 (pow.f64 (pow.f64 (pow.f64 (/.f64 D d) 2) 3) 1/3) (*.f64 M (*.f64 M h))))
43.9b
(*.f64 1/4 (*.f64 (*.f64 (/.f64 D d) (/.f64 D d)) (pow.f64 (*.f64 M (sqrt.f64 h)) 2)))
45.8b
(*.f64 1/4 (cbrt.f64 (pow.f64 (pow.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h))) 2) 3)))
27.2b
(*.f64 1/4 (*.f64 (/.f64 (/.f64 (*.f64 D (/.f64 D d)) (pow.f64 (cbrt.f64 d) 2)) (cbrt.f64 d)) (*.f64 M (*.f64 M h))))
31.1b
(*.f64 1/4 (/.f64 (*.f64 (*.f64 D (/.f64 D d)) (*.f64 h (*.f64 M M))) d))
39.9b
(*.f64 1/4 (*.f64 (*.f64 (sqrt.f64 (/.f64 D d)) (*.f64 (sqrt.f64 (/.f64 D d)) (/.f64 D d))) (*.f64 M (*.f64 M h))))
28.5b
(*.f64 1/4 (/.f64 (*.f64 (/.f64 D d) (*.f64 h (*.f64 M M))) (/.f64 d D)))
25.9b
(*.f64 1/4 (*.f64 (expm1.f64 (expm1.f64 (log1p.f64 (log1p.f64 (pow.f64 (/.f64 D d) 2))))) (*.f64 M (*.f64 M h))))
47.8b
(*.f64 1/4 (exp.f64 (*.f64 2 (log.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h)))))))
40.6b
(*.f64 1/4 (pow.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h))) 2))
40.6b
(*.f64 1/4 (pow.f64 (cbrt.f64 (pow.f64 (*.f64 (/.f64 D d) (*.f64 M (sqrt.f64 h))) 2)) 3))
61.8b
(*.f64 (/.f64 c0 (*.f64 2 w)) (+.f64 (/.f64 (*.f64 c0 (*.f64 d d)) (*.f64 (*.f64 w h) (*.f64 D D))) (cbrt.f64 (pow.f64 (-.f64 (pow.f64 (*.f64 (/.f64 c0 (*.f64 w h)) (/.f64 (*.f64 d d) (*.f64 D D))) 2) (*.f64 M M)) 3/2))))
Compiler

Compiled 3435 to 1954 computations (43.1% saved)

regimes1.1s (7.2%)

Accuracy

Total 10.5b remaining (49.7%)

Threshold costs 0b (0%)

Counts
65 → 2
Compiler

Compiled 21171 to 13021 computations (38.5% saved)

bsearch36.0ms (0.2%)

Algorithm
binary-search
Calls

1 calls:

31.0ms
h
Steps
ItersPointRange
1.6452659381703685e-298
∈ [
2.193308326067954e-300
,
7.414742103011921e-293
]
Compiler

Compiled 7 to 6 computations (14.3% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02243
12943
Stop Event
saturated

end324.0ms (2.1%)

Stop Event
fuel
Compiler

Compiled 765 to 507 computations (33.7% saved)

Profiling

Loading profile data...