Details

Time bar (total: 13.3s)

analyze316.0ms (2.4%)

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
25%74.9%0.1%4
37.4%62.4%0.1%5
37.4%62.4%0.1%6
37.4%56.2%6.4%7
45.2%48.4%6.4%8
49.1%42.1%8.7%9
51.5%35.1%13.4%10
58.1%27.7%14.2%11
60.8%22.6%16.5%12
62.3%18.7%19%13
66.2%14.4%19.4%14
Compiler

Compiled 21 to 15 computations (28.6% saved)

sample2.0s (14.8%)

Infinites
8.6% of outputs are infinite.
Results
728.0ms5548×body128valid
412.0ms1051×body2048valid
351.0ms720×body1024valid
174.0ms376×body4096valid
97.0ms400×body512valid
66.0ms647×body128invalid
28.0ms161×body256valid
Compiler

Compiled 62 to 44 computations (29% saved)

simplify258.0ms (1.9%)

Algorithm
egg-herbie
Rules
1743×fma-neg_binary64
1393×fma-def_binary64
800×div-sub_binary64
619×times-frac_binary64
473×associate-/r/_binary64
Counts
1 → 2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01526
13322
26722
313822
420422
533822
655822
792422
8138822
9160422
10237522
11274222
12253322
13262122
14317122
15331322
16387322
17367922
18402922
19431722
20448522
21456122
22480522
23479322
24479722
25479722
26494822

prune4.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
29.7b
Counts
3 → 2
Alt Table
StatusErrorProgram
29.8b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
29.8b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b) (/.f64 1/2 a))
Compiler

Compiled 111 to 74 computations (33.3% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
0.9b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
1.0b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
23.8b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))

series183.0ms (1.4%)

Counts
4 → 96
Calls

4 calls:

80.0ms
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
51.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
41.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
10.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))

rewrite29.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
22×*-un-lft-identity_binary64
11×add-sqr-sqrt_binary64
10×fma-def_binary64
10×add-cube-cbrt_binary64
10×add-log-exp_binary64
Counts
4 → 90
Calls

4 calls:

10.0ms
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
8.0ms
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
4.0ms
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
3.0ms
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))

simplify121.0ms (0.9%)

Algorithm
egg-herbie
Rules
701×fma-neg_binary64
334×cancel-sign-sub-inv_binary64
215×distribute-rgt-neg-in_binary64
159×associate-*r*_binary64
150×distribute-rgt-neg-out_binary64
Counts
186 → 207
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02434208
16953858
225123724
346943704
450313704

prune504.0ms (3.8%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New19710207
Fresh101
Picked101
Done000
Total19910209
Error
3.2b
Counts
209 → 10
Alt Table
StatusErrorProgram
30.2b
(*.f64 (/.f64 (*.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) 2) (/.f64 (cbrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) a))
38.4b
(/.f64 (/.f64 (*.f64 4 (*.f64 c a)) (-.f64 (neg.f64 b) (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))) (*.f64 2 a))
40.3b
(neg.f64 (/.f64 c b))
29.9b
(*.f64 (/.f64 (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) 2) (/.f64 (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) a))
29.8b
(/.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2) a)
44.4b
(/.f64 (+.f64 (pow.f64 (neg.f64 b) 3) (pow.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) 3)) (*.f64 (*.f64 2 a) (+.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))))
37.0b
(/.f64 (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)))) (*.f64 2 a))
41.4b
(-.f64 (/.f64 c b) (/.f64 b a))
41.4b
(/.f64 (neg.f64 b) a)
29.8b
(/.f64 1 (/.f64 (*.f64 2 a) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
Compiler

Compiled 5811 to 3393 computations (41.6% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2) a)
0.9b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
1.0b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
23.8b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))

series92.0ms (0.7%)

Counts
1 → 20
Calls

1 calls:

92.0ms
(/.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2) a)

rewrite25.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
117×times-frac_binary64
105×*-un-lft-identity_binary64
57×add-sqr-sqrt_binary64
57×add-cube-cbrt_binary64
24×distribute-lft-out_binary64
Counts
1 → 97
Calls

1 calls:

11.0ms
(/.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2) a)

simplify123.0ms (0.9%)

Algorithm
egg-herbie
Rules
761×div-sub_binary64
548×times-frac_binary64
476×associate-/r*_binary64
438×associate-/l*_binary64
368×associate-/l/_binary64
Counts
117 → 156
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02234616
15504206
215024048
345944048
463854048

prune298.0ms (2.2%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New2951296
Fresh279
Picked011
Done000
Total2979306
Error
3.2b
Counts
306 → 9
Alt Table
StatusErrorProgram
40.3b
(neg.f64 (/.f64 c b))
38.4b
(/.f64 (/.f64 (*.f64 4 (*.f64 c a)) (-.f64 (neg.f64 b) (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))) (*.f64 2 a))
29.8b
(/.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2) a)
29.9b
(/.f64 (sqrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2)) (/.f64 a (sqrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2))))
44.4b
(/.f64 (+.f64 (pow.f64 (neg.f64 b) 3) (pow.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) 3)) (*.f64 (*.f64 2 a) (+.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (-.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))))
37.0b
(/.f64 (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)))) (*.f64 2 a))
41.4b
(-.f64 (/.f64 c b) (/.f64 b a))
41.4b
(/.f64 (neg.f64 b) a)
29.8b
(/.f64 1 (/.f64 (*.f64 2 a) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
Compiler

Compiled 8888 to 5272 computations (40.7% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 1 (/.f64 (*.f64 2 a) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
0.9b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
1.0b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
23.8b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))

series95.0ms (0.7%)

Counts
1 → 20
Calls

1 calls:

95.0ms
(/.f64 1 (/.f64 (*.f64 2 a) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))

rewrite20.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
53×times-frac_binary64
37×*-un-lft-identity_binary64
22×add-exp-log_binary64
21×add-sqr-sqrt_binary64
21×add-cube-cbrt_binary64
Counts
1 → 74
Calls

1 calls:

11.0ms
(/.f64 1 (/.f64 (*.f64 2 a) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))

simplify101.0ms (0.8%)

Algorithm
egg-herbie
Rules
665×associate-/l*_binary64
599×div-sub_binary64
349×fma-def_binary64
295×fma-neg_binary64
265×associate-/r/_binary64
Counts
94 → 117
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01643247
14392847
215172670
345952670
461782670

prune240.0ms (1.8%)

Pruning

9 alts after pruning (7 fresh and 2 done)

PrunedKeptTotal
New2561257
Fresh167
Picked011
Done011
Total2579266
Error
3.2b
Counts
266 → 9
Alt Table
StatusErrorProgram
37.6b
(*.f64 (*.f64 (*.f64 4 (*.f64 c a)) (/.f64 1/2 a)) (/.f64 1 (-.f64 (neg.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -4)))))))
41.4b
(-.f64 (/.f64 c b) (/.f64 b a))
40.3b
(neg.f64 (/.f64 c b))
38.4b
(/.f64 (/.f64 (*.f64 4 (*.f64 c a)) (-.f64 (neg.f64 b) (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))) (*.f64 2 a))
29.8b
(/.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2) a)
29.9b
(/.f64 (sqrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2)) (/.f64 a (sqrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2))))
37.0b
(/.f64 (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)))) (*.f64 2 a))
41.4b
(/.f64 (neg.f64 b) a)
29.8b
(/.f64 1 (/.f64 (*.f64 2 a) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
Compiler

Compiled 7760 to 4754 computations (38.7% saved)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (sqrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2)) (/.f64 a (sqrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2))))
0.9b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
1.0b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
23.8b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))

series132.0ms (1%)

Counts
1 → 20
Calls

1 calls:

132.0ms
(/.f64 (sqrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2)) (/.f64 a (sqrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2))))

rewrite1.0s (7.6%)

Algorithm
rewrite-expression-head
Rules
5195×times-frac_binary64
3632×*-un-lft-identity_binary64
2679×sqrt-prod_binary64
1940×add-sqr-sqrt_binary64
1940×add-cube-cbrt_binary64
Counts
1 → 1673
Calls

1 calls:

55.0ms
(/.f64 (sqrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2)) (/.f64 a (sqrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2))))

simplify2.2s (16.4%)

Algorithm
egg-herbie
Rules
1062×associate-/r/_binary64
765×associate-/l*_binary64
268×associate-*l*_binary64
130×times-frac_binary64
112×associate-/r*_binary64
Counts
1693 → 1484
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01407162744
12922144157
24989144157

prune2.2s (16.8%)

Pruning

9 alts after pruning (6 fresh and 3 done)

PrunedKeptTotal
New176311764
Fresh156
Picked011
Done022
Total176491773
Error
3.2b
Counts
1773 → 9
Alt Table
StatusErrorProgram
37.6b
(*.f64 (*.f64 (*.f64 4 (*.f64 c a)) (/.f64 1/2 a)) (/.f64 1 (-.f64 (neg.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -4)))))))
41.4b
(-.f64 (/.f64 c b) (/.f64 b a))
41.7b
(*.f64 -2 (/.f64 (*.f64 (pow.f64 (sqrt.f64 1/2) 2) b) a))
29.8b
(/.f64 1 (/.f64 (*.f64 2 a) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
40.3b
(neg.f64 (/.f64 c b))
38.4b
(/.f64 (/.f64 (*.f64 4 (*.f64 c a)) (-.f64 (neg.f64 b) (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))) (*.f64 2 a))
29.8b
(/.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2) a)
29.9b
(/.f64 (sqrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2)) (/.f64 a (sqrt.f64 (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) 2))))
37.0b
(/.f64 (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)))) (*.f64 2 a))
Compiler

Compiled 116033 to 70137 computations (39.6% saved)

regimes3.1s (23.6%)

Accuracy

Total 4.6b remaining (47.4%)

Threshold costs 0b (0%)

Counts
275 → 3
Compiler

Compiled 29502 to 20646 computations (30% saved)

bsearch38.0ms (0.3%)

Steps
ItersRangePoint
2
3.027844432563723e-29
3.6064234738026667e-29
3.100166812718591e-29
6
-2.859172542401454e+165
-2.407018843767758e+164
-2.47012258144473e+164
Compiler

Compiled 4 to 3 computations (25% saved)

simplify4.0ms (0%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02955
14855
27255
38655
49455
59655
69355

end131.0ms (1%)

Compiler

Compiled 260 to 182 computations (30% saved)

Profiling

Loading profile data...