Details

Time bar (total: 4.8s)

analyze701.0ms (14.6%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
12.5%87.4%0.1%5
18.7%81.1%0.1%6
18.7%76.5%4.8%7
28.1%66.3%5.6%8
35.1%55%9.9%9
36.3%50.9%12.8%10
42.1%42.4%15.5%11
47.5%33.8%18.7%12
48.8%30.7%20.6%13
51.8%25.6%22.5%14
Compiler

Compiled 17 to 11 computations (35.3% saved)

sample1.9s (39.6%)

Results
621.0ms5391×body128valid
504.0ms1134×body2048valid
269.0ms749×body1024valid
216.0ms399×body4096valid
123.0ms1076×body128invalid
119.0ms410×body512valid
34.0ms173×body256valid
Compiler

Compiled 34 to 22 computations (35.3% saved)

preprocess34.0ms (0.7%)

Algorithm
egg-herbie
Rules
869×fma-neg_binary64
440×times-frac_binary64
394×fma-def_binary64
350×cancel-sign-sub-inv_binary64
345×div-sub_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03080
18280
216780
339080
469480
5124980
6326380
033
Stop Event
saturated
node limit
Compiler

Compiled 16 to 10 computations (37.5% saved)

simplify115.0ms (2.4%)

Algorithm
egg-herbie
Rules
518×div-sub_binary64
428×fma-neg_binary64
208×associate-/l*_binary64
205×fma-def_binary64
181×times-frac_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01120
12720
25720
312620
421620
539220
666220
7100820
8121420
9159920
10312620
11389920
12399720
13400520
14401320
15401320
16407120
17410720
18413720
19414920
Stop Event
saturated
Counts
1 → 1

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
37.1b
Counts
2 → 1
Alt Table
StatusErrorProgram
37.1b
(/.f64 (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) a)
Compiler

Compiled 48 to 30 computations (37.5% saved)

localize8.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) a)
0.8b
(-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))
1.2b
(-.f64 (*.f64 b_2 b_2) (*.f64 a c))
23.1b
(sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))

series128.0ms (2.7%)

Counts
4 → 96
Calls

36 calls:

22.0ms
(-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))
c
-inf
9.0ms
(/.f64 (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) a)
a
inf
9.0ms
(/.f64 (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) a)
a
-inf
7.0ms
(/.f64 (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) a)
c
-inf
7.0ms
(/.f64 (-.f64 (neg.f64 b_2) (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) a)
c
inf

rewrite72.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
352×fma-neg_binary64
218×expm1-udef_binary64
218×log1p-udef_binary64
192×egg-rr
133×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01159
126255
2401855
Stop Event
node limit
Counts
4 → 192

simplify63.0ms (1.3%)

Algorithm
egg-herbie
Rules
740×times-frac_binary64
496×associate-/l*_binary64
400×associate-/r*_binary64
370×fma-def_binary64
143×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01242047
14092003
214391977
Stop Event
node limit
Counts
288 → 268

prune149.0ms (3.1%)

Pruning

11 alts after pruning (11 fresh and 0 done)

PrunedKeptTotal
New25711268
Fresh000
Picked101
Done000
Total25811269
Error
5.1b
Counts
269 → 11
Alt Table
StatusErrorProgram
47.8b
(*.f64 (/.f64 -2 a) b_2)
37.2b
(fma.f64 -1 (/.f64 b_2 a) (neg.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))) a)))
38.1b
(/.f64 (-.f64 (neg.f64 b_2) (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) 3)) a)
47.1b
(/.f64 (fma.f64 (sqrt.f64 b_2) (neg.f64 (sqrt.f64 b_2)) (neg.f64 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))) a)
39.8b
(/.f64 (*.f64 (/.f64 a (/.f64 b_2 c)) -1/2) a)
46.5b
(*.f64 (-.f64 b_2 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) (/.f64 1 a))
47.7b
(/.f64 (*.f64 -2 b_2) a)
46.8b
(/.f64 (/.f64 (neg.f64 (+.f64 (fma.f64 b_2 b_2 (*.f64 b_2 b_2)) (*.f64 a c))) (-.f64 b_2 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))) a)
36.4b
(*.f64 -1/2 (/.f64 c b_2))
55.4b
(/.f64 (-.f64 (neg.f64 b_2) (neg.f64 b_2)) a)
47.8b
(-.f64 (*.f64 1/2 (/.f64 c b_2)) (*.f64 2 (/.f64 b_2 a)))
Compiler

Compiled 6095 to 2037 computations (66.6% saved)

localize3.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 -1/2 (/.f64 c b_2))

series6.0ms (0.1%)

Counts
1 → 0
Calls

6 calls:

1.0ms
(*.f64 -1/2 (/.f64 c b_2))
c
0
1.0ms
(*.f64 -1/2 (/.f64 c b_2))
c
inf
1.0ms
(*.f64 -1/2 (/.f64 c b_2))
c
-inf
1.0ms
(*.f64 -1/2 (/.f64 c b_2))
b_2
-inf
1.0ms
(*.f64 -1/2 (/.f64 c b_2))
b_2
inf

rewrite34.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
606×log1p-expm1-u_binary64
606×expm1-log1p-u_binary64
317×log-prod_binary64
116×expm1-udef_binary64
116×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
067
11277
216227
Stop Event
node limit
Counts
1 → 25

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
25 → 25

prune32.0ms (0.7%)

Pruning

12 alts after pruning (12 fresh and 0 done)

PrunedKeptTotal
New22325
Fresh1910
Picked101
Done000
Total241236
Error
5.1b
Counts
36 → 12
Alt Table
StatusErrorProgram
47.8b
(*.f64 (/.f64 -2 a) b_2)
37.2b
(fma.f64 -1 (/.f64 b_2 a) (neg.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))) a)))
38.1b
(/.f64 (-.f64 (neg.f64 b_2) (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) 3)) a)
47.1b
(/.f64 (fma.f64 (sqrt.f64 b_2) (neg.f64 (sqrt.f64 b_2)) (neg.f64 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))) a)
47.4b
(exp.f64 (log.f64 (/.f64 (*.f64 -1/2 c) b_2)))
46.5b
(*.f64 (-.f64 b_2 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) (/.f64 1 a))
47.7b
(/.f64 (*.f64 -2 b_2) a)
36.8b
(pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 c) b_2)) 3)
46.8b
(/.f64 (/.f64 (neg.f64 (+.f64 (fma.f64 b_2 b_2 (*.f64 b_2 b_2)) (*.f64 a c))) (-.f64 b_2 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))) a)
36.4b
(/.f64 (*.f64 -1/2 c) b_2)
55.4b
(/.f64 (-.f64 (neg.f64 b_2) (neg.f64 b_2)) a)
47.8b
(-.f64 (*.f64 1/2 (/.f64 c b_2)) (*.f64 2 (/.f64 b_2 a)))
Compiler

Compiled 562 to 376 computations (33.1% saved)

localize3.0ms (0.1%)

prune12.0ms (0.3%)

Pruning

12 alts after pruning (11 fresh and 1 done)

PrunedKeptTotal
New000
Fresh01111
Picked011
Done000
Total01212
Error
5.1b
Counts
12 → 12
Alt Table
StatusErrorProgram
47.8b
(*.f64 (/.f64 -2 a) b_2)
37.2b
(fma.f64 -1 (/.f64 b_2 a) (neg.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))) a)))
38.1b
(/.f64 (-.f64 (neg.f64 b_2) (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) 3)) a)
47.1b
(/.f64 (fma.f64 (sqrt.f64 b_2) (neg.f64 (sqrt.f64 b_2)) (neg.f64 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))) a)
47.4b
(exp.f64 (log.f64 (/.f64 (*.f64 -1/2 c) b_2)))
46.5b
(*.f64 (-.f64 b_2 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) (/.f64 1 a))
47.7b
(/.f64 (*.f64 -2 b_2) a)
36.8b
(pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 c) b_2)) 3)
46.8b
(/.f64 (/.f64 (neg.f64 (+.f64 (fma.f64 b_2 b_2 (*.f64 b_2 b_2)) (*.f64 a c))) (-.f64 b_2 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))) a)
36.4b
(/.f64 (*.f64 -1/2 c) b_2)
55.4b
(/.f64 (-.f64 (neg.f64 b_2) (neg.f64 b_2)) a)
47.8b
(-.f64 (*.f64 1/2 (/.f64 c b_2)) (*.f64 2 (/.f64 b_2 a)))
Compiler

Compiled 334 to 218 computations (34.7% saved)

localize5.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.5b
(pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 c) b_2)) 3)
16.2b
(cbrt.f64 (/.f64 (*.f64 -1/2 c) b_2))

series141.0ms (2.9%)

Counts
2 → 0
Calls

12 calls:

22.0ms
(pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 c) b_2)) 3)
c
inf
21.0ms
(pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 c) b_2)) 3)
b_2
0
21.0ms
(pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 c) b_2)) 3)
c
0
20.0ms
(pow.f64 (cbrt.f64 (/.f64 (*.f64 -1/2 c) b_2)) 3)
b_2
inf
12.0ms
(cbrt.f64 (/.f64 (*.f64 -1/2 c) b_2))
c
inf

rewrite42.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
812×log1p-expm1-u_binary64
812×expm1-log1p-u_binary64
91×egg-rr
83×add-sqr-sqrt_binary64
79×add-cbrt-cube_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0916
118916
2220716
Stop Event
node limit
Counts
2 → 91

simplify6.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
91 → 91

prune53.0ms (1.1%)

Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New88391
Fresh1910
Picked101
Done011
Total9013103
Error
5.1b
Counts
103 → 13
Alt Table
StatusErrorProgram
47.8b
(*.f64 (/.f64 -2 a) b_2)
37.2b
(fma.f64 -1 (/.f64 b_2 a) (neg.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))) a)))
47.5b
(pow.f64 (exp.f64 (*.f64 (log.f64 (*.f64 -1/2 (/.f64 c b_2))) 1/3)) 3)
38.1b
(/.f64 (-.f64 (neg.f64 b_2) (pow.f64 (cbrt.f64 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) 3)) a)
47.1b
(/.f64 (fma.f64 (sqrt.f64 b_2) (neg.f64 (sqrt.f64 b_2)) (neg.f64 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))) a)
47.5b
(pow.f64 (pow.f64 (pow.f64 (*.f64 -1/2 (/.f64 c b_2)) 1/6) 2) 3)
47.7b
(/.f64 (*.f64 -2 b_2) a)
46.5b
(*.f64 (-.f64 b_2 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c)))) (/.f64 1 a))
46.8b
(/.f64 (/.f64 (neg.f64 (+.f64 (fma.f64 b_2 b_2 (*.f64 b_2 b_2)) (*.f64 a c))) (-.f64 b_2 (sqrt.f64 (-.f64 (*.f64 b_2 b_2) (*.f64 a c))))) a)
38.1b
(pow.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 c b_2)))) (pow.f64 (pow.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 c b_2))) 2) 1/3)) 3)
36.4b
(/.f64 (*.f64 -1/2 c) b_2)
55.4b
(/.f64 (-.f64 (neg.f64 b_2) (neg.f64 b_2)) a)
47.8b
(-.f64 (*.f64 1/2 (/.f64 c b_2)) (*.f64 2 (/.f64 b_2 a)))
Compiler

Compiled 1238 to 829 computations (33% saved)

regimes1.1s (21.8%)

Accuracy

Total 4.5b remaining (44.5%)

Threshold costs 0b (0%)

Counts
66 → 3
Compiler

Compiled 4664 to 2994 computations (35.8% saved)

bsearch70.0ms (1.5%)

Algorithm
binary-search
Calls

2 calls:

46.0ms
b_2
22.0ms
b_2
Steps
ItersPointRange
1.1253871947171223e+114
∈ [
5.214570015592262e+110
,
1.6176298619418202e+115
]
-6.800448154136341e-99
∈ [
-1.8672352006382376e-98
,
-2.170351639190422e-105
]
Compiler

Compiled 4 to 3 computations (25% saved)

simplify6.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02959
14959
27159
38659
49659
510059
610159
Stop Event
saturated

end161.0ms (3.3%)

Stop Event
fuel
Compiler

Compiled 287 to 191 computations (33.4% saved)

Profiling

Loading profile data...