Details

Time bar (total: 20.3s)

analyze1.9s (9.4%)

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 36 to 32 computations (11.1% saved)

sample140.0ms (0.7%)

Algorithm
intervals
Results
45.0ms256×body80valid
38.0ms233×body80nan
28.0ms155×body80invalid
Compiler

Compiled 71 to 68 computations (4.2% saved)

simplify64.0ms (0.3%)

Algorithm
egg-herbie
Counts
1 → 1
Iterations

Useful iterations: 0 (48.0ms)

IterNodesCost
0514041

prune6.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New011
Fresh101
Picked000
Done000
Total112

Merged error: 27.3b

Counts
2 → 1
Compiler

Compiled 54 to 46 computations (14.8% saved)

localize22.0ms (0.1%)

Local error

Found 4 expressions with local error:

6.8b
(*.f64 (*.f64 (sqrt.f64 (/.f64 d h)) (sqrt.f64 (/.f64 d l))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
9.9b
(sqrt.f64 (/.f64 d h))
12.8b
(sqrt.f64 (/.f64 d l))
15.4b
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))

rewrite48.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
77×add-exp-log_binary64
41×prod-exp_binary64
32×add-sqr-sqrt_binary64
29×times-frac_binary64
26×*-un-lft-identity_binary64 add-cube-cbrt_binary64 sqrt-prod_binary64
21×add-cbrt-cube_binary64
16×associate-*r*_binary64 div-exp_binary64
14×sqrt-div_binary64
13×pow1_binary64
10×pow-exp_binary64
cbrt-unprod_binary64 frac-times_binary64
associate-*r/_binary64 associate-*l/_binary64
pow-prod-down_binary64 add-log-exp_binary64 flip3--_binary64 rem-sqrt-square_binary64 insert-posit16 flip--_binary64
div-inv_binary64
pow-to-exp_binary64 sub-neg_binary64 pow1/2_binary64 cbrt-undiv_binary64 associate-*l*_binary64 sqrt-pow1_binary64 *-commutative_binary64
distribute-lft-in_binary64 distribute-rgt-in_binary64
Counts
4 → 129
Calls

4 calls:

20.0ms
(*.f64 (*.f64 (sqrt.f64 (/.f64 d h)) (sqrt.f64 (/.f64 d l))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
14.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
4.0ms
(sqrt.f64 (/.f64 d h))
4.0ms
(sqrt.f64 (/.f64 d l))

series878.0ms (4.3%)

Counts
4 → 12
Calls

4 calls:

549.0ms
(*.f64 (*.f64 (sqrt.f64 (/.f64 d h)) (sqrt.f64 (/.f64 d l))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
172.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
80.0ms
(sqrt.f64 (/.f64 d h))
76.0ms
(sqrt.f64 (/.f64 d l))

simplify178.0ms (0.9%)

Algorithm
egg-herbie
Counts
141 → 141
Iterations

Useful iterations: 0 (129.0ms)

IterNodesCost
049713574
149713574

prune294.0ms (1.5%)

Pruning

21 alts after pruning (21 fresh and 0 done)

PrunedKeptTotal
New12021141
Fresh000
Picked101
Done000
Total12121142

Merged error: 14.1b

Counts
142 → 21
Compiler

Compiled 5513 to 2762 computations (49.9% saved)

localize27.0ms (0.1%)

Local error

Found 4 expressions with local error:

5.3b
(/.f64 (*.f64 M D) (*.f64 d 2))
6.8b
(*.f64 (*.f64 (sqrt.f64 (/.f64 d h)) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (sqrt.f64 (/.f64 d (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
9.9b
(sqrt.f64 (/.f64 d h))
15.4b
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))

rewrite70.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
93×add-exp-log_binary64
48×prod-exp_binary64
37×add-cbrt-cube_binary64 sqrt-div_binary64
29×frac-times_binary64
22×add-sqr-sqrt_binary64
20×times-frac_binary64 div-exp_binary64
19×*-un-lft-identity_binary64 add-cube-cbrt_binary64
18×associate-*r/_binary64
16×pow1_binary64 cbrt-unprod_binary64 associate-*r*_binary64 associate-*l/_binary64
13×sqrt-prod_binary64
10×pow-exp_binary64
flip3--_binary64 flip--_binary64
pow-prod-down_binary64
cbrt-undiv_binary64
add-log-exp_binary64 insert-posit16
div-inv_binary64
pow-to-exp_binary64 sub-neg_binary64 associate-*l*_binary64 rem-sqrt-square_binary64 *-commutative_binary64
associate-/r*_binary64 pow1/2_binary64 distribute-lft-in_binary64 distribute-rgt-in_binary64 sqrt-pow1_binary64 clear-num_binary64 frac-2neg_binary64 associate-/l*_binary64
Counts
4 → 140
Calls

4 calls:

36.0ms
(*.f64 (*.f64 (sqrt.f64 (/.f64 d h)) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (sqrt.f64 (/.f64 d (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
14.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
8.0ms
(/.f64 (*.f64 M D) (*.f64 d 2))
4.0ms
(sqrt.f64 (/.f64 d h))

series1.9s (9.5%)

Counts
4 → 12
Calls

4 calls:

1.6s
(*.f64 (*.f64 (sqrt.f64 (/.f64 d h)) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (sqrt.f64 (/.f64 d (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
169.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
84.0ms
(sqrt.f64 (/.f64 d h))
44.0ms
(/.f64 (*.f64 M D) (*.f64 d 2))

simplify136.0ms (0.7%)

Algorithm
egg-herbie
Counts
152 → 152
Iterations

Useful iterations: 0 (76.0ms)

IterNodesCost
051285224

prune334.0ms (1.6%)

Pruning

27 alts after pruning (27 fresh and 0 done)

PrunedKeptTotal
New14111152
Fresh41620
Picked101
Done000
Total14627173

Merged error: 11.3b

Counts
173 → 27
Compiler

Compiled 7797 to 3898 computations (50% saved)

localize33.0ms (0.2%)

Local error

Found 4 expressions with local error:

3.1b
(sqrt.f64 (/.f64 d (cbrt.f64 l)))
5.3b
(/.f64 (*.f64 M D) (*.f64 d 2))
6.8b
(*.f64 (*.f64 (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h)))) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (sqrt.f64 (/.f64 d (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
15.4b
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))

rewrite80.0ms (0.4%)

Algorithm
rewrite-expression-head
Rules
102×add-exp-log_binary64
55×prod-exp_binary64
46×add-cbrt-cube_binary64
37×sqrt-div_binary64
30×associate-*r/_binary64 add-sqr-sqrt_binary64 times-frac_binary64
29×frac-times_binary64
25×*-un-lft-identity_binary64 pow1_binary64 add-cube-cbrt_binary64
23×cbrt-unprod_binary64
22×sqrt-prod_binary64
20×div-exp_binary64
16×associate-*r*_binary64 associate-*l/_binary64
14×pow-prod-down_binary64
10×cbrt-prod_binary64 pow-exp_binary64
flip3--_binary64 flip--_binary64
cbrt-undiv_binary64
add-log-exp_binary64 insert-posit16
rem-sqrt-square_binary64 div-inv_binary64
pow-to-exp_binary64 sub-neg_binary64 associate-*l*_binary64 *-commutative_binary64
associate-/r*_binary64 pow1/2_binary64 distribute-lft-in_binary64 distribute-rgt-in_binary64 sqrt-pow1_binary64 clear-num_binary64 frac-2neg_binary64 associate-/l*_binary64
Counts
4 → 156
Calls

4 calls:

42.0ms
(*.f64 (*.f64 (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h)))) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (sqrt.f64 (/.f64 d (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
14.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
8.0ms
(/.f64 (*.f64 M D) (*.f64 d 2))
5.0ms
(sqrt.f64 (/.f64 d (cbrt.f64 l)))

series3.0s (14.8%)

Counts
4 → 12
Calls

4 calls:

2.6s
(*.f64 (*.f64 (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h)))) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (sqrt.f64 (/.f64 d (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))))
186.0ms
(sqrt.f64 (/.f64 d (cbrt.f64 l)))
168.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (/.f64 h l))
45.0ms
(/.f64 (*.f64 M D) (*.f64 d 2))

simplify186.0ms (0.9%)

Algorithm
egg-herbie
Counts
168 → 168
Iterations

Useful iterations: 0 (109.0ms)

IterNodesCost
049637167
149637167

prune431.0ms (2.1%)

Pruning

31 alts after pruning (31 fresh and 0 done)

PrunedKeptTotal
New1599168
Fresh42226
Picked101
Done000
Total16431195

Merged error: 9.9b

Counts
195 → 31
Compiler

Compiled 10636 to 4594 computations (56.8% saved)

localize37.0ms (0.2%)

Local error

Found 4 expressions with local error:

4.5b
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h)))
5.3b
(/.f64 (*.f64 M D) (*.f64 d 2))
6.8b
(*.f64 (*.f64 (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h)))) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (sqrt.f64 (/.f64 d (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h))) (/.f64 (cbrt.f64 h) l))))
11.4b
(*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h))) (/.f64 (cbrt.f64 h) l))

rewrite111.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
291×add-exp-log_binary64
189×prod-exp_binary64
70×add-cbrt-cube_binary64
51×cbrt-unprod_binary64
45×div-exp_binary64
36×pow1_binary64 sqrt-div_binary64
30×associate-*r/_binary64 pow-exp_binary64
29×frac-times_binary64
26×associate-*r*_binary64
22×pow-prod-down_binary64
19×times-frac_binary64
18×*-un-lft-identity_binary64 add-cube-cbrt_binary64 add-sqr-sqrt_binary64
16×associate-*l/_binary64
cbrt-undiv_binary64 cbrt-prod_binary64
flip3--_binary64 flip--_binary64
pow-to-exp_binary64
add-log-exp_binary64 insert-posit16
associate-*l*_binary64 *-commutative_binary64
sub-neg_binary64 div-inv_binary64
associate-/r*_binary64 distribute-lft-in_binary64 distribute-rgt-in_binary64 clear-num_binary64 frac-2neg_binary64 associate-/l*_binary64
Counts
4 → 188
Calls

4 calls:

44.0ms
(*.f64 (*.f64 (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h)))) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (sqrt.f64 (/.f64 d (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h))) (/.f64 (cbrt.f64 h) l))))
25.0ms
(*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h))) (/.f64 (cbrt.f64 h) l))
15.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h)))
8.0ms
(/.f64 (*.f64 M D) (*.f64 d 2))

series3.2s (15.8%)

Counts
4 → 12
Calls

4 calls:

2.7s
(*.f64 (*.f64 (*.f64 (fabs.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h))) (sqrt.f64 (/.f64 (cbrt.f64 d) (cbrt.f64 h)))) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (cbrt.f64 l) (cbrt.f64 l)))) (sqrt.f64 (/.f64 d (cbrt.f64 l))))) (-.f64 1 (*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h))) (/.f64 (cbrt.f64 h) l))))
314.0ms
(*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h)))
189.0ms
(*.f64 (*.f64 (*.f64 1/2 (pow.f64 (/.f64 (*.f64 M D) (*.f64 d 2)) 2)) (*.f64 (cbrt.f64 h) (cbrt.f64 h))) (/.f64 (cbrt.f64 h) l))
46.0ms
(/.f64 (*.f64 M D) (*.f64 d 2))

simplify201.0ms (1%)

Algorithm
egg-herbie
Counts
200 → 200
Iterations

Useful iterations: 0 (108.0ms)

IterNodesCost
050058434

prune458.0ms (2.3%)

Pruning

35 alts after pruning (35 fresh and 0 done)

PrunedKeptTotal
New1946200
Fresh12930
Picked101
Done000
Total19635231

Merged error: 9.7b

Counts
231 → 35
Compiler

Compiled 11279 to 4196 computations (62.8% saved)

regimes892.0ms (4.4%)

Compiler

Compiled 11197 to 7914 computations (29.3% saved)

bsearch163.0ms (0.8%)

Steps
ItersRangePoint
7
3.7129633916499706e-28
6.142878123306293e-27
4.34839696867144e-28
Compiler

Compiled 1 to 5 computations (-400% saved)

simplify13.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (5.0ms)

IterNodesCost
0182160
1182160

end0.0ms (0%)

sample5.4s (26.8%)

Algorithm
intervals
Results
1.4s8000×body80valid
1.2s8345×body80nan
860.0ms4783×body80invalid
Compiler

Compiled 1755 to 1233 computations (29.7% saved)

Profiling

Loading profile data...