Details

Time bar (total: 20.9s)

analyze2.7s (13.1%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%98.2%1.8%7
0%92%8%8
0%91.2%8.8%9
0.4%89.3%10.3%10
7.1%79.2%13.6%11
11.9%70.2%17.9%12
13.8%67.4%18.7%13
16.6%63.3%20.1%14
Compiler

Compiled 45 to 33 computations (26.7% saved)

sample158.0ms (0.8%)

Algorithm
intervals
Results
26.0ms188×body128valid
19.0ms27×body1024valid
17.0ms30×body1024nan
15.0ms20×body2048nan
12.0ms87×body128nan
10.0ms24×body512nan
8.0ms14×body256valid
8.0ms19×body512valid
6.0msbody2048valid
5.0ms19×body256nan
Compiler

Compiled 93 to 69 computations (25.8% saved)

simplify52.0ms (0.3%)

Algorithm
egg-herbie
Rules
759×neg-mul-1_binary64
493×associate-*l*_binary64
463×associate-*r*_binary64
420×distribute-rgt-in_binary64
410×distribute-lft-in_binary64
Counts
1 → 1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02361
16161
217161
362061
4244061
5474061
6539661

prune5.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112
Error
51.0b
Counts
2 → 1
Alt Table
StatusErrorProgram
51.0b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
Compiler

Compiled 132 to 91 computations (31.1% saved)

localize22.0ms (0.1%)

Local error

Found 4 expressions with local error:

7.0b
(*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)
15.5b
(sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))
22.8b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
33.9b
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))

rewrite1.1s (5.1%)

Algorithm
rewrite-expression-head
Error
50.8b
Rules
66×sqrt-div_binary64
40×associate-*r/_binary64
39×*-un-lft-identity_binary64
36×times-frac_binary64
35×add-sqr-sqrt_binary64
Counts
4 → 158
Calls

4 calls:

28.0ms
(sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))
20.0ms
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
12.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))
8.0ms
(*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)
Compiler

Compiled 11279 to 7235 computations (35.9% saved)

series1.6s (7.6%)

Error
31.3b
Counts
4 → 79
Calls

4 calls:

856.0ms
(sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))
381.0ms
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
129.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))
84.0ms
(*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)
Compiler

Compiled 16633 to 12143 computations (27% saved)

simplify327.0ms (1.6%)

Algorithm
egg-herbie
Rules
998×times-frac_binary64
312×*-commutative_binary64
252×distribute-rgt-in_binary64
244×distribute-lft-in_binary64
132×associate-*r*_binary64
Counts
237 → 212
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
082315809
1223315350
2489515347
3600615347

prune398.0ms (1.9%)

Pruning

18 alts after pruning (18 fresh and 0 done)

PrunedKeptTotal
New19418212
Fresh000
Picked101
Done000
Total19518213
Error
31.2b
Counts
213 → 18
Alt Table
StatusErrorProgram
51.7b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (exp.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
58.5b
(/.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 F (-.f64 A (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 A A)))))) (*.f64 B (sqrt.f64 2)))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
63.3b
(neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F A)))))
52.0b
(/.f64 (neg.f64 (-.f64 (neg.f64 (*.f64 (*.f64 A (sqrt.f64 2)) (sqrt.f64 (*.f64 -8 (*.f64 C F))))) (/.f64 (*.f64 (*.f64 B B) (*.f64 F (sqrt.f64 2))) (sqrt.f64 (*.f64 -8 (*.f64 C F)))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
58.5b
(neg.f64 (*.f64 (/.f64 (sqrt.f64 2) B) (sqrt.f64 (*.f64 F (-.f64 A (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 A A))))))))
55.5b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (neg.f64 A))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
51.2b
(/.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))) (*.f64 (cbrt.f64 (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))) (cbrt.f64 (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))))) (cbrt.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))))
51.6b
(/.f64 (neg.f64 (neg.f64 (*.f64 (*.f64 A (sqrt.f64 2)) (sqrt.f64 (*.f64 -8 (*.f64 C F)))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
58.6b
(/.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 F (-.f64 C (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 C C)))))) (*.f64 B (sqrt.f64 2)))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
48.2b
(neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F C)))))
59.1b
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -4 (*.f64 C (*.f64 A (*.f64 F (-.f64 (+.f64 C A) (sqrt.f64 (-.f64 (+.f64 (*.f64 C C) (*.f64 A A)) (*.f64 2 (*.f64 C A)))))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
57.4b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (*.f64 (+.f64 A C) (+.f64 A C)) (*.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (*.f64 (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)) (sqrt.f64 (+.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))))))
51.1b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (*.f64 (fabs.f64 (cbrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))) (sqrt.f64 (cbrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
51.0b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))) (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
60.9b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 A C) 4) (pow.f64 B 4))) (sqrt.f64 (-.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
51.9b
(/.f64 (neg.f64 (exp.f64 (log.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
56.7b
(cbrt.f64 (pow.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))) (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))) 3))
53.9b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (cbrt.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))) 3)))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
Compiler

Compiled 14114 to 7473 computations (47.1% saved)

localize8.0ms (0%)

Local error

Found 3 expressions with local error:

0.0b
(*.f64 -1/2 (/.f64 F C))
0.4b
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F C))))
14.2b
(sqrt.f64 (*.f64 -1/2 (/.f64 F C)))

rewrite116.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
28.9b
Rules
23×add-sqr-sqrt_binary64
17×associate-*r*_binary64
15×pow1_binary64
14×add-cube-cbrt_binary64 *-un-lft-identity_binary64
10×add-exp-log_binary64 add-cbrt-cube_binary64 times-frac_binary64
Counts
3 → 72
Calls

3 calls:

9.0ms
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F C))))
7.0ms
(*.f64 -1/2 (/.f64 F C))
4.0ms
(sqrt.f64 (*.f64 -1/2 (/.f64 F C)))
Compiler

Compiled 1066 to 739 computations (30.7% saved)

series55.0ms (0.3%)

Error
31.2b
Counts
3 → 18
Calls

3 calls:

21.0ms
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F C))))
17.0ms
(sqrt.f64 (*.f64 -1/2 (/.f64 F C)))
16.0ms
(*.f64 -1/2 (/.f64 F C))
Compiler

Compiled 660 to 562 computations (14.8% saved)

simplify148.0ms (0.7%)

Algorithm
egg-herbie
Rules
670×associate-*r/_binary64
353×associate-*l*_binary64
288×associate-/r/_binary64
284×associate-/l/_binary64
276×associate-*r*_binary64
Counts
90 → 42
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01301103
12801045
27641045
318381045
434551045
538081045
644361045
747111045
849011045
948451045

prune87.0ms (0.4%)

Pruning

27 alts after pruning (27 fresh and 0 done)

PrunedKeptTotal
New321042
Fresh01717
Picked101
Done000
Total332760
Error
28.9b
Counts
60 → 27
Alt Table
StatusErrorProgram
43.9b
(neg.f64 (/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 F -1/2))) (sqrt.f64 C)))
51.7b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (exp.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
58.5b
(/.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 F (-.f64 A (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 A A)))))) (*.f64 B (sqrt.f64 2)))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
63.3b
(neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F A)))))
48.3b
(neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (*.f64 -1/2 (*.f64 (cbrt.f64 F) (cbrt.f64 F))) (/.f64 (cbrt.f64 F) C)))))
52.0b
(/.f64 (neg.f64 (-.f64 (neg.f64 (*.f64 (*.f64 A (sqrt.f64 2)) (sqrt.f64 (*.f64 -8 (*.f64 C F))))) (/.f64 (*.f64 (*.f64 B B) (*.f64 F (sqrt.f64 2))) (sqrt.f64 (*.f64 -8 (*.f64 C F)))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
58.5b
(neg.f64 (*.f64 (/.f64 (sqrt.f64 2) B) (sqrt.f64 (*.f64 F (-.f64 A (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 A A))))))))
62.0b
(neg.f64 (log.f64 (pow.f64 (exp.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 F C)))) (sqrt.f64 2))))
55.5b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (neg.f64 A))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
51.2b
(/.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))) (*.f64 (cbrt.f64 (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))) (cbrt.f64 (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))))) (cbrt.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))))
51.6b
(/.f64 (neg.f64 (neg.f64 (*.f64 (*.f64 A (sqrt.f64 2)) (sqrt.f64 (*.f64 -8 (*.f64 C F)))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
58.6b
(/.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 F (-.f64 C (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 C C)))))) (*.f64 B (sqrt.f64 2)))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
48.3b
(neg.f64 (*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 F C)))) (sqrt.f64 (sqrt.f64 2))) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 F C)))) (sqrt.f64 (sqrt.f64 2)))))
59.1b
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -4 (*.f64 C (*.f64 A (*.f64 F (-.f64 (+.f64 C A) (sqrt.f64 (-.f64 (+.f64 (*.f64 C C) (*.f64 A A)) (*.f64 2 (*.f64 C A)))))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
48.3b
(neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (/.f64 -1/2 (*.f64 (cbrt.f64 C) (cbrt.f64 C))) (/.f64 F (cbrt.f64 C))))))
49.1b
(neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (exp.f64 (log.f64 (*.f64 -1/2 (/.f64 F C)))))))
48.1b
(neg.f64 (sqrt.f64 (neg.f64 (/.f64 F C))))
52.7b
(neg.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (pow.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 F C))) 3))))
57.4b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (*.f64 (+.f64 A C) (+.f64 A C)) (*.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (*.f64 (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)) (sqrt.f64 (+.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))))))
51.1b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (*.f64 (fabs.f64 (cbrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))) (sqrt.f64 (cbrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
51.0b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))) (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
44.0b
(neg.f64 (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C))))
60.9b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 A C) 4) (pow.f64 B 4))) (sqrt.f64 (-.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
48.2b
(neg.f64 (*.f64 (sqrt.f64 (sqrt.f64 2)) (*.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 F C))) (sqrt.f64 (sqrt.f64 2)))))
51.9b
(/.f64 (neg.f64 (exp.f64 (log.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
56.7b
(cbrt.f64 (pow.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))) (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))) 3))
53.9b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (cbrt.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))) 3)))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
Compiler

Compiled 2193 to 1567 computations (28.5% saved)

localize8.0ms (0%)

Local error

Found 2 expressions with local error:

0.3b
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 F -1/2))) (sqrt.f64 C))
0.4b
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 F -1/2)))

rewrite94.0ms (0.5%)

Algorithm
rewrite-expression-head
Error
28.9b
Rules
13×add-sqr-sqrt_binary64
11×sqrt-prod_binary64
pow1_binary64 add-exp-log_binary64 add-cbrt-cube_binary64 add-cube-cbrt_binary64 *-un-lft-identity_binary64
associate-*l*_binary64 times-frac_binary64 associate-/r*_binary64
pow-prod-down_binary64
Counts
2 → 55
Calls

2 calls:

9.0ms
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 F -1/2))) (sqrt.f64 C))
8.0ms
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 F -1/2)))
Compiler

Compiled 847 to 633 computations (25.3% saved)

series33.0ms (0.2%)

Error
28.9b
Counts
2 → 9
Calls

2 calls:

23.0ms
(/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 F -1/2))) (sqrt.f64 C))
9.0ms
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 F -1/2)))
Compiler

Compiled 378 to 330 computations (12.7% saved)

simplify98.0ms (0.5%)

Algorithm
egg-herbie
Rules
633×times-frac_binary64
597×associate-/l*_binary64
332×div-sub_binary64
291×neg-mul-1_binary64
284×associate-*l*_binary64
Counts
64 → 34
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01021100
1208974
2755969
33240969
43341969
54161969
65011969

prune84.0ms (0.4%)

Pruning

30 alts after pruning (30 fresh and 0 done)

PrunedKeptTotal
New27734
Fresh32326
Picked101
Done000
Total313061
Error
28.9b
Counts
61 → 30
Alt Table
StatusErrorProgram
44.0b
(neg.f64 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 2)) (*.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 (sqrt.f64 2)))) (sqrt.f64 C)))
51.7b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (exp.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
58.5b
(/.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 F (-.f64 A (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 A A)))))) (*.f64 B (sqrt.f64 2)))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
63.3b
(neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F A)))))
48.3b
(neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (*.f64 -1/2 (*.f64 (cbrt.f64 F) (cbrt.f64 F))) (/.f64 (cbrt.f64 F) C)))))
43.9b
(neg.f64 (/.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))) (*.f64 (sqrt.f64 (*.f64 F -1/2)) (cbrt.f64 (sqrt.f64 2)))) (sqrt.f64 C)))
52.0b
(/.f64 (neg.f64 (-.f64 (neg.f64 (*.f64 (*.f64 A (sqrt.f64 2)) (sqrt.f64 (*.f64 -8 (*.f64 C F))))) (/.f64 (*.f64 (*.f64 B B) (*.f64 F (sqrt.f64 2))) (sqrt.f64 (*.f64 -8 (*.f64 C F)))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
58.5b
(neg.f64 (*.f64 (/.f64 (sqrt.f64 2) B) (sqrt.f64 (*.f64 F (-.f64 A (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 A A))))))))
43.9b
(neg.f64 (/.f64 (sqrt.f64 (neg.f64 F)) (sqrt.f64 C)))
62.0b
(neg.f64 (log.f64 (pow.f64 (exp.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 F C)))) (sqrt.f64 2))))
55.5b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (neg.f64 A))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
51.2b
(/.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))) (*.f64 (cbrt.f64 (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))) (cbrt.f64 (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))))) (cbrt.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))))
51.6b
(/.f64 (neg.f64 (neg.f64 (*.f64 (*.f64 A (sqrt.f64 2)) (sqrt.f64 (*.f64 -8 (*.f64 C F)))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
58.6b
(/.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 F (-.f64 C (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 C C)))))) (*.f64 B (sqrt.f64 2)))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
48.3b
(neg.f64 (*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 F C)))) (sqrt.f64 (sqrt.f64 2))) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 F C)))) (sqrt.f64 (sqrt.f64 2)))))
49.2b
(neg.f64 (/.f64 (cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 F -1/2))) 3)) (sqrt.f64 C)))
59.1b
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -4 (*.f64 C (*.f64 A (*.f64 F (-.f64 (+.f64 C A) (sqrt.f64 (-.f64 (+.f64 (*.f64 C C) (*.f64 A A)) (*.f64 2 (*.f64 C A)))))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
48.3b
(neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 (/.f64 -1/2 (*.f64 (cbrt.f64 C) (cbrt.f64 C))) (/.f64 F (cbrt.f64 C))))))
49.1b
(neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (exp.f64 (log.f64 (*.f64 -1/2 (/.f64 F C)))))))
48.1b
(neg.f64 (sqrt.f64 (neg.f64 (/.f64 F C))))
57.4b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (*.f64 (+.f64 A C) (+.f64 A C)) (*.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (*.f64 (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)) (sqrt.f64 (+.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))))))
44.0b
(neg.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 F -1/2)) (/.f64 (sqrt.f64 2) (sqrt.f64 (sqrt.f64 C)))) (sqrt.f64 (sqrt.f64 C))))
51.1b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (*.f64 (fabs.f64 (cbrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))) (sqrt.f64 (cbrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
51.0b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))) (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
44.2b
(neg.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 F -1/2)) (/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 (sqrt.f64 C)) (cbrt.f64 (sqrt.f64 C))))) (cbrt.f64 (sqrt.f64 C))))
60.9b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 A C) 4) (pow.f64 B 4))) (sqrt.f64 (-.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
44.1b
(neg.f64 (*.f64 (/.f64 (sqrt.f64 2) (fabs.f64 (cbrt.f64 C))) (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 (cbrt.f64 C)))))
51.9b
(/.f64 (neg.f64 (exp.f64 (log.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
56.7b
(cbrt.f64 (pow.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))) (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))) 3))
53.9b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (cbrt.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))) 3)))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
Compiler

Compiled 2234 to 1592 computations (28.7% saved)

localize6.0ms (0%)

Local error

Found 1 expressions with local error:

0.3b
(/.f64 (sqrt.f64 (neg.f64 F)) (sqrt.f64 C))

rewrite122.0ms (0.6%)

Algorithm
rewrite-expression-head
Error
28.9b
Rules
112×sqrt-prod_binary64
78×times-frac_binary64
59×add-sqr-sqrt_binary64
57×add-cube-cbrt_binary64 *-un-lft-identity_binary64
21×distribute-rgt-neg-in_binary64 distribute-lft-neg-in_binary64
Counts
1 → 111
Calls

1 calls:

8.0ms
(/.f64 (sqrt.f64 (neg.f64 F)) (sqrt.f64 C))
Compiler

Compiled 1365 to 408 computations (70.1% saved)

series18.0ms (0.1%)

Error
28.9b
Counts
1 → 6
Calls

1 calls:

18.0ms
(/.f64 (sqrt.f64 (neg.f64 F)) (sqrt.f64 C))
Compiler

Compiled 192 to 152 computations (20.8% saved)

simplify222.0ms (1.1%)

Algorithm
egg-herbie
Rules
658×div-sub_binary64
583×neg-mul-1_binary64
506×times-frac_binary64
483×associate-/l*_binary64
321×distribute-frac-neg_binary64
Counts
117 → 64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01472308
12162266
23942266
37002266
414412266
518192266
623582266
726002266
830382266
945422266
1046932266

prune71.0ms (0.3%)

Pruning

31 alts after pruning (31 fresh and 0 done)

PrunedKeptTotal
New55964
Fresh72229
Picked101
Done000
Total633194
Error
28.9b
Counts
94 → 31
Alt Table
StatusErrorProgram
44.0b
(neg.f64 (/.f64 (*.f64 (sqrt.f64 (sqrt.f64 2)) (*.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 (sqrt.f64 2)))) (sqrt.f64 C)))
51.7b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (exp.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
58.5b
(/.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 F (-.f64 A (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 A A)))))) (*.f64 B (sqrt.f64 2)))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
63.3b
(neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F A)))))
44.1b
(neg.f64 (*.f64 (fabs.f64 (cbrt.f64 F)) (/.f64 (sqrt.f64 (neg.f64 (cbrt.f64 F))) (sqrt.f64 C))))
52.0b
(/.f64 (neg.f64 (-.f64 (neg.f64 (*.f64 (*.f64 A (sqrt.f64 2)) (sqrt.f64 (*.f64 -8 (*.f64 C F))))) (/.f64 (*.f64 (*.f64 B B) (*.f64 F (sqrt.f64 2))) (sqrt.f64 (*.f64 -8 (*.f64 C F)))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
58.5b
(neg.f64 (*.f64 (/.f64 (sqrt.f64 2) B) (sqrt.f64 (*.f64 F (-.f64 A (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 A A))))))))
62.0b
(neg.f64 (log.f64 (pow.f64 (exp.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 F C)))) (sqrt.f64 2))))
44.1b
(neg.f64 (*.f64 (/.f64 (fabs.f64 (cbrt.f64 F)) (sqrt.f64 (sqrt.f64 C))) (/.f64 (sqrt.f64 (neg.f64 (cbrt.f64 F))) (sqrt.f64 (sqrt.f64 C)))))
55.5b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (neg.f64 A))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
51.2b
(/.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))) (*.f64 (cbrt.f64 (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))) (cbrt.f64 (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))))) (cbrt.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C))))
51.6b
(/.f64 (neg.f64 (neg.f64 (*.f64 (*.f64 A (sqrt.f64 2)) (sqrt.f64 (*.f64 -8 (*.f64 C F)))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
58.6b
(/.f64 (neg.f64 (*.f64 (sqrt.f64 (*.f64 F (-.f64 C (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 C C)))))) (*.f64 B (sqrt.f64 2)))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
48.3b
(neg.f64 (*.f64 (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 F C)))) (sqrt.f64 (sqrt.f64 2))) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 F C)))) (sqrt.f64 (sqrt.f64 2)))))
44.2b
(neg.f64 (*.f64 (/.f64 (fabs.f64 (cbrt.f64 F)) (*.f64 (cbrt.f64 (sqrt.f64 C)) (cbrt.f64 (sqrt.f64 C)))) (/.f64 (sqrt.f64 (neg.f64 (cbrt.f64 F))) (cbrt.f64 (sqrt.f64 C)))))
59.1b
(/.f64 (neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -4 (*.f64 C (*.f64 A (*.f64 F (-.f64 (+.f64 C A) (sqrt.f64 (-.f64 (+.f64 (*.f64 C C) (*.f64 A A)) (*.f64 2 (*.f64 C A)))))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
49.1b
(neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (exp.f64 (log.f64 (*.f64 -1/2 (/.f64 F C)))))))
48.1b
(neg.f64 (sqrt.f64 (neg.f64 (/.f64 F C))))
44.0b
(neg.f64 (/.f64 (/.f64 (sqrt.f64 (neg.f64 F)) (fabs.f64 (cbrt.f64 C))) (sqrt.f64 (cbrt.f64 C))))
44.0b
(neg.f64 (*.f64 (/.f64 1 (fabs.f64 (cbrt.f64 C))) (/.f64 (sqrt.f64 (neg.f64 F)) (sqrt.f64 (cbrt.f64 C)))))
44.0b
(neg.f64 (*.f64 (sqrt.f64 (sqrt.f64 (neg.f64 F))) (/.f64 (sqrt.f64 (sqrt.f64 (neg.f64 F))) (sqrt.f64 C))))
57.4b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (*.f64 (+.f64 A C) (+.f64 A C)) (*.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2))) (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (*.f64 (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)) (sqrt.f64 (+.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))))))
44.1b
(neg.f64 (*.f64 (/.f64 (sqrt.f64 (sqrt.f64 (neg.f64 F))) (fabs.f64 (cbrt.f64 C))) (/.f64 (sqrt.f64 (sqrt.f64 (neg.f64 F))) (sqrt.f64 (cbrt.f64 C)))))
51.1b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (*.f64 (fabs.f64 (cbrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))) (sqrt.f64 (cbrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
51.0b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (*.f64 (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))) (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
44.2b
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (neg.f64 F))) (cbrt.f64 (sqrt.f64 (neg.f64 F)))) (/.f64 (cbrt.f64 (sqrt.f64 (neg.f64 F))) (sqrt.f64 C))))
60.9b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 A C) 4) (pow.f64 B 4))) (sqrt.f64 (-.f64 (pow.f64 (-.f64 A C) 2) (*.f64 B B)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
44.2b
(neg.f64 (*.f64 (/.f64 (*.f64 (cbrt.f64 (sqrt.f64 (neg.f64 F))) (cbrt.f64 (sqrt.f64 (neg.f64 F)))) (fabs.f64 (cbrt.f64 C))) (/.f64 (cbrt.f64 (sqrt.f64 (neg.f64 F))) (sqrt.f64 (cbrt.f64 C)))))
51.9b
(/.f64 (neg.f64 (exp.f64 (log.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
56.7b
(cbrt.f64 (pow.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))))))) (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))) 3))
53.9b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)) F)) (-.f64 (+.f64 A C) (cbrt.f64 (pow.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2))) 3)))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
Compiler

Compiled 1524 to 863 computations (43.4% saved)

regimes7.7s (37%)

Accuracy

Total 4.1b remaining (13.2%)

Threshold costs 0b (0%)

Compiler

Compiled 75024 to 52859 computations (29.5% saved)

bsearch20.0ms (0.1%)

Compiler

Compiled 44 to 32 computations (27.3% saved)

simplify62.0ms (0.3%)

Algorithm
egg-herbie
Rules
150×distribute-rgt-neg-in_binary64
109×distribute-lft-neg-in_binary64
107×cancel-sign-sub-inv_binary64
100×neg-sub0_binary64
99×neg-mul-1_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
079430
1146427
2222427
3291427
4334427
5360427
6390427
7420427
8439427
9457427
10481427
11514427
12547427
13591427
14631427
15692427
16749427
17781427
18807427
19818427
20820427
21807427

end25.0ms (0.1%)

Compiler

Compiled 834 to 567 computations (32% saved)

sample5.5s (26.4%)

Algorithm
intervals
Results
783.0ms5475×body128valid
506.0ms666×body2048valid
505.0ms863×body1024valid
443.0ms776×body1024nan
432.0ms566×body2048nan
343.0ms2445×body128nan
262.0ms637×body512valid
240.0ms583×body512nan
107.0ms356×body256nan
98.0ms358×body256valid
1.0msbody4096valid
Compiler

Compiled 1352 to 933 computations (31% saved)

Profiling

Loading profile data...