Details

Time bar (total: 12.6s)

analyze849.0ms (6.7%)

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
0%99.9%0.1%5
18.7%81.1%0.1%6
26.5%67.1%6.4%7
35.1%58.5%6.4%8
41.3%49.9%8.7%9
46.4%40.2%13.4%10
50.8%34.2%15%11
55.2%26.7%18.1%12
57.4%22%20.6%13
59.8%17.9%22.3%14
Compiler

Compiled 42 to 27 computations (35.7% saved)

sample48.0ms (0.4%)

Algorithm
intervals
Results
32.0ms256×body128valid
3.0ms23×body128nan
1.0ms10×body128invalid
Compiler

Compiled 86 to 56 computations (34.9% saved)

simplify158.0ms (1.3%)

Algorithm
egg-herbie
Rules
1753×fma-neg_binary64
1288×fma-def_binary64
631×div-sub_binary64
512×times-frac_binary64
430×associate-/l*_binary64
Counts
1 → 2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02258
14752
211852
326950
442950
574350
6131550
7173850
8217650
9285350
10406650
11352350
12357550
13354350
14355750
15451050
16462250
17476150

prune5.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
20.7b
Counts
3 → 2
Alt Table
StatusErrorProgram
21.0b
(if (>=.f64 b 0) (*.f64 -1/2 (/.f64 (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))) a)) (/.f64 (*.f64 c 2) (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b)))
20.8b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
Compiler

Compiled 231 to 143 computations (38.1% saved)

localize24.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.6b
(/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))
1.2b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
1.2b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
24.4b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 1530 to 1275 computations (16.7% saved)

series396.0ms (3.1%)

Counts
4 → 96
Calls

4 calls:

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

rewrite28.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 → 89
Calls

4 calls:

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

simplify120.0ms (0.9%)

Algorithm
egg-herbie
Rules
844×fma-neg_binary64
316×cancel-sign-sub-inv_binary64
212×distribute-rgt-neg-in_binary64
188×distribute-lft-neg-in_binary64
154×associate-*r*_binary64
Counts
185 → 207
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02434100
16843745
224753603
345213581
449893581

prune572.0ms (4.5%)

Pruning

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New28010290
Fresh101
Picked101
Done000
Total28210292
Error
5.5b
Counts
292 → 10
Alt Table
StatusErrorProgram
34.0b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (cbrt.f64 (*.f64 (*.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)) (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))) (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
23.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
23.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (exp.f64 (log.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) b)))))
20.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (*.f64 (/.f64 2 (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) (/.f64 c (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))))
24.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) b) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
22.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (*.f64 (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)) (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
23.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))))))
18.5b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (*.f64 -1 (/.f64 c b)))
21.0b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (*.f64 (fabs.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))) (sqrt.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
20.9b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (*.f64 (fabs.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))) (sqrt.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b))))))))
Compiler

Compiled 14408 to 8320 computations (42.3% saved)

localize34.0ms (0.3%)

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.3b
(-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
1.2b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
24.4b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 1530 to 1275 computations (16.7% saved)

series222.0ms (1.8%)

Counts
2 → 40
Calls

2 calls:

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

rewrite62.0ms (0.5%)

Algorithm
rewrite-expression-head
Rules
60×prod-diff_binary64
59×*-un-lft-identity_binary64
59×add-sqr-sqrt_binary64
47×add-cube-cbrt_binary64
36×sqrt-prod_binary64
Counts
2 → 129
Calls

2 calls:

18.0ms
(/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
16.0ms
(-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))

simplify257.0ms (2%)

Algorithm
egg-herbie
Rules
753×fma-def_binary64
403×fma-neg_binary64
343×div-sub_binary64
204×cancel-sign-sub-inv_binary64
136×sub-neg_binary64
Counts
169 → 194
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02627107
16755059
223513973
345563951
450993951

prune779.0ms (6.2%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New2734277
Fresh459
Picked101
Done000
Total2789287
Error
5.3b
Counts
287 → 9
Alt Table
StatusErrorProgram
18.6b
(if (>=.f64 b 0) (*.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (/.f64 1/2 a)) (*.f64 -1 (/.f64 c b)))
22.1b
(if (>=.f64 b 0) (-.f64 (/.f64 c b) (/.f64 b a)) (*.f64 -1 (/.f64 c b)))
18.6b
(if (>=.f64 b 0) (/.f64 1 (/.f64 (*.f64 2 a) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) (*.f64 -1 (/.f64 c b)))
23.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))))))
23.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (exp.f64 (log.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) b)))))
20.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (*.f64 (/.f64 2 (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) (/.f64 c (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))))
22.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (*.f64 (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)) (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
22.2b
(if (>=.f64 b 0) (*.f64 -1 (/.f64 b a)) (*.f64 -1 (/.f64 c b)))
20.9b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (*.f64 (fabs.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))) (sqrt.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b))))))))
Compiler

Compiled 12900 to 7333 computations (43.2% saved)

localize35.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1 (/.f64 (*.f64 2 a) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
0.3b
(-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
1.2b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
24.4b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 1530 to 1275 computations (16.7% saved)

series124.0ms (1%)

Counts
1 → 20
Calls

1 calls:

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

rewrite37.0ms (0.3%)

Algorithm
rewrite-expression-head
Rules
67×times-frac_binary64
39×*-un-lft-identity_binary64
39×add-sqr-sqrt_binary64
23×add-cube-cbrt_binary64
22×add-exp-log_binary64
Counts
1 → 82
Calls

1 calls:

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

simplify172.0ms (1.4%)

Algorithm
egg-herbie
Rules
655×associate-/l*_binary64
321×fma-def_binary64
293×fma-neg_binary64
268×associate-/r/_binary64
191×distribute-rgt-in_binary64
Counts
102 → 123
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01743540
14393295
215373091
346973085
449153085

prune904.0ms (7.2%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New3272329
Fresh178
Picked101
Done000
Total3299338
Error
5.3b
Counts
338 → 9
Alt Table
StatusErrorProgram
18.6b
(if (>=.f64 b 0) (*.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (/.f64 1/2 a)) (*.f64 -1 (/.f64 c b)))
22.1b
(if (>=.f64 b 0) (-.f64 (/.f64 c b) (/.f64 b a)) (*.f64 -1 (/.f64 c b)))
29.7b
(if (>=.f64 b 0) (/.f64 (*.f64 (*.f64 4 (*.f64 a c)) (/.f64 1/2 a)) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (*.f64 -1 (/.f64 c b)))
23.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))))))
23.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (exp.f64 (log.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) b)))))
20.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (*.f64 (/.f64 2 (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) (/.f64 c (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))))
22.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (*.f64 (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)) (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
22.3b
(if (>=.f64 b 0) (/.f64 1 (/.f64 (*.f64 2 a) (*.f64 b -2))) (*.f64 -1 (/.f64 c b)))
20.9b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (*.f64 (fabs.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))) (sqrt.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b))))))))
Compiler

Compiled 15793 to 9317 computations (41% saved)

localize34.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (/.f64 1/2 a))
0.3b
(-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
1.2b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
24.4b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 1530 to 1275 computations (16.7% saved)

series120.0ms (0.9%)

Counts
1 → 20
Calls

1 calls:

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

rewrite27.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
18×add-sqr-sqrt_binary64
13×associate-*r*_binary64
13×*-un-lft-identity_binary64
10×times-frac_binary64
add-cube-cbrt_binary64
Counts
1 → 42
Calls

1 calls:

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

simplify125.0ms (1%)

Algorithm
egg-herbie
Rules
694×times-frac_binary64
396×fma-neg_binary64
350×fma-def_binary64
286×distribute-rgt-in_binary64
124×distribute-rgt-neg-out_binary64
Counts
62 → 91
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01601900
14421745
216151658
345831656
449261656

prune800.0ms (6.3%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New2961297
Fresh088
Picked011
Done000
Total29610306
Error
5.3b
Counts
306 → 10
Alt Table
StatusErrorProgram
22.3b
(if (>=.f64 b 0) (*.f64 (*.f64 b -2) (/.f64 1/2 a)) (*.f64 -1 (/.f64 c b)))
22.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (*.f64 (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)) (sqrt.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))
18.6b
(if (>=.f64 b 0) (*.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (/.f64 1/2 a)) (*.f64 -1 (/.f64 c b)))
22.1b
(if (>=.f64 b 0) (-.f64 (/.f64 c b) (/.f64 b a)) (*.f64 -1 (/.f64 c b)))
29.7b
(if (>=.f64 b 0) (/.f64 (*.f64 (*.f64 4 (*.f64 a c)) (/.f64 1/2 a)) (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (*.f64 -1 (/.f64 c b)))
23.4b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (exp.f64 (log.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))))))
23.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (exp.f64 (log.f64 (-.f64 (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) b)))))
20.6b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (*.f64 (/.f64 2 (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))))) (/.f64 c (sqrt.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))))))
22.3b
(if (>=.f64 b 0) (/.f64 1 (/.f64 (*.f64 2 a) (*.f64 b -2))) (*.f64 -1 (/.f64 c b)))
20.9b
(if (>=.f64 b 0) (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (*.f64 (fabs.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)))) (sqrt.f64 (cbrt.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b))))))))
Compiler

Compiled 13330 to 7604 computations (43% saved)

regimes3.4s (27.2%)

Accuracy

Total 1.1b remaining (16.8%)

Threshold costs 0b (0%)

Counts
177 → 3
Compiler

Compiled 24214 to 16786 computations (30.7% saved)

bsearch113.0ms (0.9%)

Steps
ItersRangePoint
8
2.746859577346239e+89
1.8623847742151241e+93
1.422349730838436e+93
7
-4.294781295811677e+61
-4.351231731861997e+59
-3.96398836197757e+61
Compiler

Compiled 4 to 3 computations (25% saved)

simplify41.0ms (0.3%)

Algorithm
egg-herbie
Rules
24×*-commutative_binary64
22×+-commutative_binary64
19×sub-neg_binary64
16×neg-sub0_binary64
15×neg-mul-1_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
046124
182122
2130120
3165120
4183120
5189120
6190120
7186120

end2.0ms (0%)

Compiler

Compiled 83 to 50 computations (39.8% saved)

sample3.1s (24.6%)

Algorithm
intervals
Results
1.9s8000×body128valid
133.0ms621×body128nan
126.0ms386×body128invalid
Compiler

Compiled 491 to 321 computations (34.6% saved)

Profiling

Loading profile data...