Details

Time bar (total: 2.7s)

analyze181.0ms (6.8%)

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

Compiled 17 to 11 computations (35.3% saved)

sample26.0ms (1%)

Algorithm
intervals
Results
9.0ms256×pre128true
6.0ms256×body128valid
Compiler

Compiled 30 to 20 computations (33.3% saved)

simplify76.0ms (2.8%)

Algorithm
egg-herbie
Rules
530×div-sub_binary64
326×times-frac_binary64
174×associate-/l/_binary64
166×sub-neg_binary64
160×associate-/l*_binary64
Counts
1 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
11310
22110
33510
45910
510510
619810
737110
866410
999810
10110010
11111710
12108810
13109510
14109710
15110510
16110510
17100310

prune2.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

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

Compiled 20 to 12 computations (40% saved)

localize5.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

rewrite36.0ms (1.3%)

Algorithm
rewrite-expression-head
Error
62.0b
Rules
37×add-sqr-sqrt_binary64 *-un-lft-identity_binary64
25×times-frac_binary64
13×add-cube-cbrt_binary64
12×difference-of-squares_binary64 distribute-lft-out--_binary64
associate-/l*_binary64 associate-/r*_binary64
Counts
1 → 52
Calls

1 calls:

8.0ms
(/.f64 (-.f64 x lo) (-.f64 hi lo))
Compiler

Compiled 683 to 156 computations (77.2% saved)

series30.0ms (1.1%)

Error
51.8b
Counts
1 → 10
Calls

1 calls:

19.0ms
(/.f64 (-.f64 x lo) (-.f64 hi lo))
Compiler

Compiled 304 to 187 computations (38.5% saved)

simplify82.0ms (3.1%)

Algorithm
egg-herbie
Rules
661×unsub-neg_binary64
431×times-frac_binary64
413×associate-/l*_binary64
381×distribute-rgt-in_binary64
358×distribute-lft-in_binary64
Counts
62 → 24
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01061103
12621061
26001055
314611055
442061055
551171055

prune14.0ms (0.5%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New22224
Fresh000
Picked101
Done000
Total23225
Error
51.9b
Counts
25 → 2
Alt Table
StatusErrorProgram
52.0b
(-.f64 1 (/.f64 x lo))
58.0b
(+.f64 (/.f64 (*.f64 lo x) (*.f64 hi hi)) (/.f64 (-.f64 x lo) hi))
Compiler

Compiled 269 to 99 computations (63.2% saved)

localize4.0ms (0.1%)

rewrite1.0ms (0%)

Algorithm
rewrite-expression-head
Error
51.9b
Counts
0 → 0
Compiler

Compiled 0 to 0 computations (0% saved)

series0.0ms (0%)

Error
51.9b
Counts
0 → 0
Compiler

Compiled 0 to 0 computations (0% saved)

simplify7.0ms (0.3%)

Algorithm
egg-herbie
Counts
0 → 0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
100

prune2.0ms (0.1%)

Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New000
Fresh011
Picked011
Done000
Total022
Error
51.9b
Counts
2 → 2
Alt Table
StatusErrorProgram
52.0b
(-.f64 1 (/.f64 x lo))
58.0b
(+.f64 (/.f64 (*.f64 lo x) (*.f64 hi hi)) (/.f64 (-.f64 x lo) hi))
Compiler

Compiled 40 to 24 computations (40% saved)

localize8.0ms (0.3%)

Local error

Found 3 expressions with local error:

0.0b
(+.f64 (/.f64 (*.f64 lo x) (*.f64 hi hi)) (/.f64 (-.f64 x lo) hi))
0.0b
(/.f64 (-.f64 x lo) hi)
32.0b
(/.f64 (*.f64 lo x) (*.f64 hi hi))

rewrite68.0ms (2.5%)

Algorithm
rewrite-expression-head
Error
51.8b
Rules
23×*-un-lft-identity_binary64
21×add-sqr-sqrt_binary64
17×add-exp-log_binary64 add-cbrt-cube_binary64
16×times-frac_binary64
13×add-cube-cbrt_binary64
Counts
3 → 73
Calls

3 calls:

14.0ms
(+.f64 (/.f64 (*.f64 lo x) (*.f64 hi hi)) (/.f64 (-.f64 x lo) hi))
5.0ms
(/.f64 (-.f64 x lo) hi)
5.0ms
(/.f64 (*.f64 lo x) (*.f64 hi hi))
Compiler

Compiled 1450 to 276 computations (81% saved)

series110.0ms (4.1%)

Error
51.8b
Counts
3 → 34
Calls

3 calls:

42.0ms
(+.f64 (/.f64 (*.f64 lo x) (*.f64 hi hi)) (/.f64 (-.f64 x lo) hi))
35.0ms
(/.f64 (*.f64 lo x) (*.f64 hi hi))
23.0ms
(/.f64 (-.f64 x lo) hi)
Compiler

Compiled 1134 to 658 computations (42% saved)

simplify65.0ms (2.4%)

Algorithm
egg-herbie
Rules
836×associate-/l*_binary64
590×associate-*l/_binary64
381×associate-/r*_binary64
351×distribute-rgt-in_binary64
319×distribute-lft-in_binary64
Counts
107 → 66
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01521545
13941483
213351480
352641480

prune37.0ms (1.4%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New57966
Fresh000
Picked101
Done011
Total581068
Error
51.8b
Counts
68 → 10
Alt Table
StatusErrorProgram
58.0b
(*.f64 (sqrt.f64 (+.f64 (/.f64 (*.f64 x lo) (*.f64 hi hi)) (/.f64 (-.f64 x lo) hi))) (sqrt.f64 (+.f64 (/.f64 (*.f64 x lo) (*.f64 hi hi)) (/.f64 (-.f64 x lo) hi))))
58.0b
(+.f64 (/.f64 (*.f64 lo x) (*.f64 hi hi)) (*.f64 (*.f64 (cbrt.f64 (-.f64 x lo)) (cbrt.f64 (-.f64 x lo))) (/.f64 (cbrt.f64 (-.f64 x lo)) hi)))
58.0b
(*.f64 (*.f64 (cbrt.f64 (+.f64 (/.f64 (*.f64 x lo) (*.f64 hi hi)) (/.f64 (-.f64 x lo) hi))) (cbrt.f64 (+.f64 (/.f64 (*.f64 x lo) (*.f64 hi hi)) (/.f64 (-.f64 x lo) hi)))) (cbrt.f64 (+.f64 (/.f64 (*.f64 x lo) (*.f64 hi hi)) (/.f64 (-.f64 x lo) hi))))
58.0b
(+.f64 (/.f64 (*.f64 lo x) (*.f64 hi hi)) (cbrt.f64 (pow.f64 (/.f64 (-.f64 x lo) hi) 3)))
58.0b
(log.f64 (exp.f64 (+.f64 (/.f64 (*.f64 x lo) (*.f64 hi hi)) (/.f64 (-.f64 x lo) hi))))
52.0b
(+.f64 (/.f64 lo (/.f64 hi (/.f64 x hi))) (/.f64 (-.f64 x lo) hi))
58.0b
(+.f64 (/.f64 (*.f64 lo x) (*.f64 hi hi)) (*.f64 (sqrt.f64 (-.f64 x lo)) (/.f64 (sqrt.f64 (-.f64 x lo)) hi)))
52.0b
(-.f64 1 (/.f64 x lo))
52.0b
(*.f64 (/.f64 lo hi) (+.f64 -1 (/.f64 x hi)))
58.0b
(/.f64 (+.f64 (*.f64 (/.f64 (*.f64 x lo) (pow.f64 hi 4)) (*.f64 x lo)) (/.f64 (/.f64 (-.f64 lo x) hi) (/.f64 hi (-.f64 x lo)))) (+.f64 (/.f64 (*.f64 x lo) (*.f64 hi hi)) (/.f64 (-.f64 lo x) hi)))
Compiler

Compiled 1119 to 360 computations (67.8% saved)

localize8.0ms (0.3%)

Local error

Found 3 expressions with local error:

0.0b
(+.f64 (/.f64 lo (/.f64 hi (/.f64 x hi))) (/.f64 (-.f64 x lo) hi))
0.0b
(/.f64 (-.f64 x lo) hi)
30.9b
(/.f64 lo (/.f64 hi (/.f64 x hi)))

rewrite299.0ms (11.1%)

Algorithm
rewrite-expression-head
Error
51.8b
Rules
415×times-frac_binary64
217×*-un-lft-identity_binary64
206×add-sqr-sqrt_binary64
198×add-cube-cbrt_binary64
47×associate-/r*_binary64
Counts
3 → 250
Calls

3 calls:

119.0ms
(+.f64 (/.f64 lo (/.f64 hi (/.f64 x hi))) (/.f64 (-.f64 x lo) hi))
12.0ms
(/.f64 lo (/.f64 hi (/.f64 x hi)))
6.0ms
(/.f64 (-.f64 x lo) hi)
Compiler

Compiled 6265 to 1369 computations (78.1% saved)

series107.0ms (4%)

Error
51.8b
Counts
3 → 34
Calls

3 calls:

42.0ms
(+.f64 (/.f64 lo (/.f64 hi (/.f64 x hi))) (/.f64 (-.f64 x lo) hi))
34.0ms
(/.f64 lo (/.f64 hi (/.f64 x hi)))
24.0ms
(/.f64 (-.f64 x lo) hi)
Compiler

Compiled 1134 to 645 computations (43.1% saved)

simplify269.0ms (10%)

Algorithm
egg-herbie
Rules
576×associate-/r/_binary64
414×associate-/l/_binary64
364×associate-*r/_binary64
342×associate-*l/_binary64
323×*-commutative_binary64
Counts
284 → 225
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
05146441
111566094
239625941
347485893
449915893
549885893

prune84.0ms (3.1%)

Pruning

10 alts after pruning (8 fresh and 2 done)

PrunedKeptTotal
New2205225
Fresh538
Picked011
Done011
Total22510235
Error
51.8b
Counts
235 → 10
Alt Table
StatusErrorProgram
52.0b
(+.f64 (/.f64 lo (/.f64 hi (/.f64 x hi))) (*.f64 (-.f64 x lo) (/.f64 1 (*.f64 (sqrt.f64 hi) (sqrt.f64 hi)))))
52.0b
(*.f64 lo (-.f64 (/.f64 x (*.f64 hi hi)) (/.f64 1 hi)))
58.0b
(*.f64 (*.f64 (cbrt.f64 (+.f64 (/.f64 (*.f64 x lo) (*.f64 hi hi)) (/.f64 (-.f64 x lo) hi))) (cbrt.f64 (+.f64 (/.f64 (*.f64 x lo) (*.f64 hi hi)) (/.f64 (-.f64 x lo) hi)))) (cbrt.f64 (+.f64 (/.f64 (*.f64 x lo) (*.f64 hi hi)) (/.f64 (-.f64 x lo) hi))))
52.0b
(+.f64 (/.f64 lo (/.f64 hi (/.f64 x hi))) (*.f64 (sqrt.f64 (-.f64 x lo)) (/.f64 (sqrt.f64 (-.f64 x lo)) hi)))
52.0b
(+.f64 (/.f64 lo (/.f64 hi (/.f64 x hi))) (/.f64 (-.f64 x lo) hi))
52.0b
(+.f64 (/.f64 lo (/.f64 hi (/.f64 x hi))) (*.f64 (*.f64 (cbrt.f64 (-.f64 x lo)) (cbrt.f64 (-.f64 x lo))) (/.f64 (cbrt.f64 (-.f64 x lo)) hi)))
52.0b
(+.f64 (/.f64 lo (/.f64 hi (/.f64 x hi))) (cbrt.f64 (pow.f64 (/.f64 (-.f64 x lo) hi) 3)))
52.0b
(-.f64 1 (/.f64 x lo))
52.0b
(*.f64 (/.f64 lo hi) (+.f64 -1 (/.f64 x hi)))
58.0b
(/.f64 (+.f64 (*.f64 (/.f64 (*.f64 x lo) (pow.f64 hi 4)) (*.f64 x lo)) (/.f64 (/.f64 (-.f64 lo x) hi) (/.f64 hi (-.f64 x lo)))) (+.f64 (/.f64 (*.f64 x lo) (*.f64 hi hi)) (/.f64 (-.f64 lo x) hi)))
Compiler

Compiled 3850 to 783 computations (79.7% saved)

regimes337.0ms (12.5%)

Accuracy

Total 0.2b remaining (0.3%)

Threshold costs 0.2b (0.3%)

Compiler

Compiled 5918 to 3088 computations (47.8% saved)

simplify3.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01325
11825
22625
33025
43225
53225

end1.0ms (0%)

Compiler

Compiled 19 to 12 computations (36.8% saved)

sample825.0ms (30.7%)

Algorithm
intervals
Results
181.0ms8000×body128valid
151.0ms8000×pre128true
Compiler

Compiled 266 to 136 computations (48.9% saved)

Profiling

Loading profile data...