Details

Time bar (total: 3.4s)

analyze2.0ms (0.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%0%100%0
0%0%100%1
Compiler

Compiled 17 to 11 computations (35.3% saved)

sample829.0ms (24.7%)

Results
784.0ms8256×body128valid
Compiler

Compiled 44 to 28 computations (36.4% saved)

simplify59.0ms (1.7%)

Algorithm
egg-herbie
Rules
649×fma-neg_binary64
496×div-sub_binary64
481×fma-def_binary64
322×times-frac_binary64
160×associate-/l/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
11310
22110
33710
47210
512710
626510
754710
8135310
9275010
10366410
11402610
12415110
13417810
14418810
15419610
16419610
Stop Event
saturated
Counts
1 → 2

prune2.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
62.0b
Counts
3 → 1
Alt Table
StatusErrorProgram
62.0b
(/.f64 (-.f64 x lo) (-.f64 hi lo))
Compiler

Compiled 37 to 21 computations (43.2% saved)

localize4.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
62.0b
(/.f64 (-.f64 x lo) (-.f64 hi lo))

series16.0ms (0.5%)

Counts
1 → 36
Calls

1 calls:

16.0ms
(/.f64 (-.f64 x lo) (-.f64 hi lo))

rewrite100.0ms (3%)

Algorithm
batch-egg-rewrite
Rules
952×prod-diff_binary64
233×egg-rr
166×expm1-udef_binary64
166×log1p-udef_binary64
90×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
116710
2265410
Stop Event
node limit
Counts
1 → 233
Calls

1 calls:

90.0ms
(/.f64 (-.f64 x lo) (-.f64 hi lo))

simplify48.0ms (1.4%)

Algorithm
egg-herbie
Rules
722×sub-neg_binary64
402×associate--l+_binary64
330×fma-def_binary64
327×associate--r+_binary64
299×associate-+l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0781093
12361075
2863919
34691913
Stop Event
node limit
Counts
269 → 265

prune136.0ms (4%)

Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New2614265
Fresh000
Picked101
Done000
Total2624266
Error
51.3b
Counts
266 → 4
Alt Table
StatusErrorProgram
57.5b
(+.f64 (+.f64 (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo)) (-.f64 (pow.f64 (/.f64 hi lo) 3) (*.f64 (/.f64 x lo) (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo))))) (-.f64 1 (/.f64 x lo)))
51.9b
(+.f64 (/.f64 hi lo) (+.f64 1 (-.f64 (*.f64 (/.f64 hi lo) (-.f64 (/.f64 hi lo) (/.f64 x lo))) (/.f64 x lo))))
51.9b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (pow.f64 (/.f64 lo hi) 3))))
51.9b
(-.f64 (+.f64 (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo)) (-.f64 1 (*.f64 (/.f64 x lo) (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo))))) (/.f64 x lo))
Compiler

Compiled 12683 to 3428 computations (73% saved)

localize15.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))
0.8b
(pow.f64 (/.f64 lo hi) 3)
1.7b
(+.f64 (/.f64 lo hi) 1)
2.4b
(fma.f64 (/.f64 lo hi) (/.f64 lo hi) (pow.f64 (/.f64 lo hi) 3))

series46.0ms (1.4%)

Counts
4 → 96
Calls

4 calls:

17.0ms
(fma.f64 (/.f64 lo hi) (/.f64 lo hi) (pow.f64 (/.f64 lo hi) 3))
14.0ms
(pow.f64 (/.f64 lo hi) 3)
11.0ms
(*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))
4.0ms
(+.f64 (/.f64 lo hi) 1)

rewrite58.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
430×prod-diff_binary64
255×fma-def_binary64
194×egg-rr
178×log1p-udef_binary64
177×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01044
121643
2278543
Stop Event
node limit
Counts
4 → 194
Calls

4 calls:

55.0ms
(*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))
55.0ms
(pow.f64 (/.f64 lo hi) 3)
55.0ms
(+.f64 (/.f64 lo hi) 1)
54.0ms
(fma.f64 (/.f64 lo hi) (/.f64 lo hi) (pow.f64 (/.f64 lo hi) 3))

simplify59.0ms (1.7%)

Algorithm
egg-herbie
Rules
1251×fma-def_binary64
495×unswap-sqr_binary64
349×times-frac_binary64
221×associate-/l*_binary64
220×*-commutative_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0161167
1391167
286942
3311942
41943906
53474906
64419906
Stop Event
node limit
Counts
290 → 204

prune156.0ms (4.6%)

Pruning

16 alts after pruning (16 fresh and 0 done)

PrunedKeptTotal
New19113204
Fresh033
Picked101
Done000
Total19216208
Error
51.1b
Counts
208 → 16
Alt Table
StatusErrorProgram
51.9b
(+.f64 (/.f64 hi lo) (+.f64 1 (-.f64 (*.f64 (/.f64 hi lo) (-.f64 (/.f64 hi lo) (/.f64 x lo))) (/.f64 x lo))))
51.9b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (cbrt.f64 (pow.f64 (pow.f64 (/.f64 lo hi) 3) 3)))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (/.f64 lo hi) 2)) 2))))
51.9b
(-.f64 (+.f64 (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo)) (-.f64 1 (*.f64 (/.f64 x lo) (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo))))) (/.f64 x lo))
51.9b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 (/.f64 lo hi) 3))) (exp.f64 (pow.f64 (/.f64 lo hi) 2))))))
57.5b
(+.f64 (+.f64 (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo)) (-.f64 (pow.f64 (/.f64 hi lo) 3) (*.f64 (/.f64 x lo) (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo))))) (-.f64 1 (/.f64 x lo)))
51.9b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (log.f64 (+.f64 1 (expm1.f64 (pow.f64 (/.f64 lo hi) 3)))))))
51.9b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (/.f64 1 (pow.f64 (/.f64 hi lo) 3)))))
55.5b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (*.f64 (*.f64 (pow.f64 (/.f64 lo hi) 2) lo) (/.f64 1 hi)))))
51.9b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) 3) (/.f64 lo hi)))))
51.9b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (*.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) (*.f64 (cbrt.f64 (/.f64 lo hi)) (pow.f64 (/.f64 lo hi) 2))))))
52.5b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (-.f64 (exp.f64 (log1p.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (/.f64 lo hi) 2)))) 1)))
51.9b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (*.f64 lo (*.f64 (/.f64 1 hi) (pow.f64 (/.f64 lo hi) 2))))))
51.9b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (/.f64 lo hi) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (pow.f64 (/.f64 lo hi) 3))))
51.9b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (log.f64 (*.f64 (exp.f64 (pow.f64 (/.f64 lo hi) 3)) (exp.f64 (pow.f64 (/.f64 lo hi) 2))))))
51.9b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (fma.f64 (/.f64 lo hi) (/.f64 lo hi) (fma.f64 (*.f64 (cbrt.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) 1)) (cbrt.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) 1))) (cbrt.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) 1)) -1))))
Compiler

Compiled 8834 to 3204 computations (63.7% saved)

localize17.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.6b
(pow.f64 (/.f64 lo hi) 2)
0.8b
(pow.f64 (/.f64 lo hi) 3)
1.7b
(+.f64 (/.f64 lo hi) 1)
1.8b
(+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (/.f64 lo hi) 2))

series42.0ms (1.2%)

Counts
2 → 48
Calls

2 calls:

32.0ms
(+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (/.f64 lo hi) 2))
10.0ms
(pow.f64 (/.f64 lo hi) 2)

rewrite46.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
430×log-prod_binary64
309×fma-def_binary64
169×fma-neg_binary64
162×pow1/3_binary64
162×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0923
120923
2262523
Stop Event
node limit
Counts
2 → 109
Calls

2 calls:

44.0ms
(pow.f64 (/.f64 lo hi) 2)
44.0ms
(+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (/.f64 lo hi) 2))

simplify48.0ms (1.4%)

Algorithm
egg-herbie
Rules
1227×fma-def_binary64
495×unswap-sqr_binary64
349×times-frac_binary64
223×*-commutative_binary64
221×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
012696
132696
282597
3310597
41933597
53463597
64346597
Stop Event
node limit
Counts
157 → 114

prune159.0ms (4.7%)

Pruning

17 alts after pruning (17 fresh and 0 done)

PrunedKeptTotal
New19214206
Fresh12315
Picked101
Done000
Total20517222
Error
50.7b
Counts
222 → 17
Alt Table
StatusErrorProgram
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 1 (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (/.f64 lo hi) 2)) 2))))
57.5b
(+.f64 (+.f64 (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo)) (-.f64 (pow.f64 (/.f64 hi lo) 3) (*.f64 (/.f64 x lo) (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo))))) (-.f64 1 (/.f64 x lo)))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (/.f64 lo hi) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (/.f64 lo hi) 2)) 2))))
51.9b
(+.f64 (/.f64 hi lo) (+.f64 1 (-.f64 (*.f64 (/.f64 hi lo) (-.f64 (/.f64 hi lo) (/.f64 x lo))) (/.f64 x lo))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) 3) (/.f64 lo hi)) (pow.f64 (/.f64 lo hi) 2)) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (*.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) (*.f64 (cbrt.f64 (/.f64 lo hi)) (/.f64 lo hi)))) 2))))
57.2b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (pow.f64 (/.f64 lo hi) 3) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (log.f64 (+.f64 1 (expm1.f64 (pow.f64 (/.f64 lo hi) 3)))) (pow.f64 (/.f64 lo hi) 2)) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (fma.f64 (*.f64 (/.f64 lo hi) (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2)) (cbrt.f64 (/.f64 lo hi)) (pow.f64 (/.f64 lo hi) 3)) 2))))
51.9b
(-.f64 (+.f64 (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo)) (-.f64 1 (*.f64 (/.f64 x lo) (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo))))) (/.f64 x lo))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (fma.f64 lo (*.f64 (/.f64 1 hi) (pow.f64 (/.f64 lo hi) 2)) (pow.f64 (/.f64 lo hi) 2)) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (fma.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)) (pow.f64 (/.f64 lo hi) 3)) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (*.f64 lo (*.f64 (/.f64 1 hi) (pow.f64 (/.f64 lo hi) 2))) (pow.f64 (/.f64 lo hi) 2)) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (/.f64 1 (pow.f64 (/.f64 hi lo) 3)) (pow.f64 (/.f64 lo hi) 2)) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 lo hi) 2))) (cbrt.f64 (exp.f64 (pow.f64 (/.f64 lo hi) 2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 lo hi) 2)))))) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (fma.f64 (cbrt.f64 (pow.f64 (/.f64 lo hi) 4)) (*.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) (/.f64 lo hi)) (pow.f64 (/.f64 lo hi) 2)) 2))))
Compiler

Compiled 9545 to 4306 computations (54.9% saved)

localize19.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.8b
(pow.f64 (/.f64 lo hi) 3)
1.0b
(*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))
1.7b
(+.f64 (/.f64 lo hi) 1)
1.8b
(+.f64 (pow.f64 (/.f64 lo hi) 3) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi))))

series56.0ms (1.7%)

Counts
2 → 48
Calls

2 calls:

32.0ms
(+.f64 (pow.f64 (/.f64 lo hi) 3) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi))))
24.0ms
(*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))

rewrite52.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
467×fma-def_binary64
238×fma-neg_binary64
190×expm1-udef_binary64
190×log1p-udef_binary64
171×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01129
124623
2328923
Stop Event
node limit
Counts
2 → 110
Calls

2 calls:

50.0ms
(*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))
50.0ms
(+.f64 (pow.f64 (/.f64 lo hi) 3) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi))))

simplify49.0ms (1.4%)

Algorithm
egg-herbie
Rules
1227×fma-def_binary64
495×unswap-sqr_binary64
349×times-frac_binary64
223×*-commutative_binary64
221×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
012696
132696
282597
3310597
41933597
53463597
64346597
Stop Event
node limit
Counts
158 → 116

prune158.0ms (4.7%)

Pruning

21 alts after pruning (21 fresh and 0 done)

PrunedKeptTotal
New19612208
Fresh7916
Picked101
Done000
Total20421225
Error
50.7b
Counts
225 → 21
Alt Table
StatusErrorProgram
57.5b
(+.f64 (+.f64 (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo)) (-.f64 (pow.f64 (/.f64 hi lo) 3) (*.f64 (/.f64 x lo) (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo))))) (-.f64 1 (/.f64 x lo)))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (*.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) (*.f64 (cbrt.f64 (/.f64 lo hi)) (pow.f64 (/.f64 lo hi) 2))) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2))))
51.9b
(+.f64 (/.f64 hi lo) (+.f64 1 (-.f64 (*.f64 (/.f64 hi lo) (-.f64 (/.f64 hi lo) (/.f64 x lo))) (/.f64 x lo))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) 3) (/.f64 lo hi)) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (/.f64 lo hi) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (/.f64 lo hi) 2)) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (fma.f64 lo (*.f64 (/.f64 1 hi) (pow.f64 (/.f64 lo hi) 2)) (pow.f64 (/.f64 lo hi) 2)) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (/.f64 1 (pow.f64 (/.f64 hi lo) 3)) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (fma.f64 (*.f64 (/.f64 lo hi) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) 2)) (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) (pow.f64 (/.f64 lo hi) 2)) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) 3) (/.f64 lo hi)) (pow.f64 (/.f64 lo hi) 2)) 2))))
57.2b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (pow.f64 (/.f64 lo hi) 3) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (cbrt.f64 (pow.f64 (pow.f64 (/.f64 lo hi) 3) 3)) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 lo hi) 2))) (cbrt.f64 (exp.f64 (pow.f64 (/.f64 lo hi) 2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 lo hi) 2)))))) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 1 (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) 3)) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) 2) (*.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) (/.f64 lo hi)) (pow.f64 (/.f64 lo hi) 2)) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (fma.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 lo hi)) 2) 2) (pow.f64 (/.f64 lo hi) 3)) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (log.f64 (+.f64 1 (expm1.f64 (pow.f64 (/.f64 lo hi) 3)))) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (/.f64 1 (pow.f64 (/.f64 hi lo) 3)) (pow.f64 (/.f64 lo hi) 2)) 2))))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (/.f64 lo hi) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (/.f64 lo hi) 3) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2))))
51.9b
(-.f64 (+.f64 (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo)) (-.f64 1 (*.f64 (/.f64 x lo) (*.f64 (+.f64 1 (/.f64 hi lo)) (/.f64 hi lo))))) (/.f64 x lo))
51.3b
(+.f64 (*.f64 (/.f64 x hi) (*.f64 (+.f64 (/.f64 lo hi) 1) (/.f64 lo hi))) (-.f64 (/.f64 (-.f64 x lo) hi) (sqrt.f64 (pow.f64 (+.f64 (*.f64 lo (*.f64 (/.f64 1 hi) (pow.f64 (/.f64 lo hi) 2))) (*.f64 lo (*.f64 (/.f64 1 hi) (/.f64 lo hi)))) 2))))
Compiler

Compiled 9507 to 4258 computations (55.2% saved)

regimes772.0ms (23%)

Accuracy

Total 0.6b remaining (1.1%)

Threshold costs 0.6b (1.1%)

Counts
146 → 1
Compiler

Compiled 23342 to 13144 computations (43.7% saved)

simplify3.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
+-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02676
14176
24876
35276
45476
Stop Event
saturated

end411.0ms (12.2%)

Compiler

Compiled 990 to 555 computations (43.9% saved)

Profiling

Loading profile data...