Details

Time bar (total: 23.4s)

analyze3.9s (16.6%)

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)

sample198.0ms (0.8%)

Algorithm
intervals
Results
34.0ms166×body128valid
29.0ms40×body1024valid
24.0ms32×body1024nan
23.0ms24×body2048valid
19.0ms66×body128nan
13.0ms20×body512valid
11.0ms18×body512nan
10.0ms11×body2048nan
3.0msbody256nan
2.0msbody256valid
Compiler

Compiled 93 to 69 computations (25.8% saved)

simplify61.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

prune3.0ms (0%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New101
Fresh011
Picked000
Done000
Total112
Error
53.2b
Counts
2 → 1
Alt Table
StatusErrorProgram
53.2b
(/.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)

localize20.0ms (0.1%)

Local error

Found 4 expressions with local error:

7.5b
(*.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)))))
13.3b
(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))))))
18.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)))
35.0b
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))

rewrite977.0ms (4.2%)

Algorithm
rewrite-expression-head
Error
52.1b
Rules
78×sqrt-div_binary64
61×*-un-lft-identity_binary64
60×associate-*r/_binary64
48×associate-*l/_binary64
40×add-sqr-sqrt_binary64
Counts
4 → 205
Calls

4 calls:

26.0ms
(*.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)))))
23.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))))))
13.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)))
11.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))
Compiler

Compiled 14783 to 9415 computations (36.3% saved)

series1.2s (5.3%)

Error
24.3b
Counts
4 → 88
Calls

4 calls:

435.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))))))
312.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)))
256.0ms
(*.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)))))
119.0ms
(sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))
Compiler

Compiled 17183 to 12453 computations (27.5% saved)

simplify327.0ms (1.4%)

Algorithm
egg-herbie
Rules
353×*-commutative_binary64
275×distribute-rgt-in_binary64
263×distribute-lft-in_binary64
185×cancel-sign-sub-inv_binary64
180×sub-neg_binary64
Counts
293 → 274
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
091021590
1265120550
2527620550

prune406.0ms (1.7%)

Pruning

24 alts after pruning (24 fresh and 0 done)

PrunedKeptTotal
New25024274
Fresh000
Picked101
Done000
Total25124275
Error
24.2b
Counts
275 → 24
Alt Table
StatusErrorProgram
53.4b
(*.f64 (*.f64 (cbrt.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))))))) (cbrt.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 (neg.f64 (cbrt.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))))
55.9b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 F (-.f64 (+.f64 (*.f64 (*.f64 B B) (+.f64 (*.f64 2 C) (*.f64 2 A))) (*.f64 8 (*.f64 (*.f64 C A) (sqrt.f64 (-.f64 (+.f64 (+.f64 (*.f64 C C) (*.f64 B B)) (*.f64 A A)) (*.f64 2 (*.f64 C A))))))) (+.f64 (*.f64 2 (*.f64 (*.f64 B B) (sqrt.f64 (-.f64 (+.f64 (+.f64 (*.f64 C C) (*.f64 B B)) (*.f64 A A)) (*.f64 2 (*.f64 C A)))))) (*.f64 8 (+.f64 (*.f64 (*.f64 C C) A) (*.f64 C (*.f64 A A))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
46.7b
(/.f64 (neg.f64 (-.f64 (*.f64 (neg.f64 A) (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -8 (*.f64 C F))))) (/.f64 (*.f64 F (*.f64 (*.f64 B B) (sqrt.f64 2))) (sqrt.f64 (*.f64 -8 (*.f64 C F)))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
60.1b
(/.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))) (*.f64 2 (*.f64 F (-.f64 (pow.f64 B 6) (pow.f64 (*.f64 (*.f64 C A) 4) 3)))))) (sqrt.f64 (+.f64 (pow.f64 B 4) (*.f64 (*.f64 (*.f64 C A) 4) (+.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
63.4b
(/.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 (*.f64 C (*.f64 (*.f64 B B) F)) 8) (*.f64 (*.f64 A (*.f64 (*.f64 C C) F)) -16)))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
54.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) (-.f64 C (+.f64 A (*.f64 1/2 (/.f64 (*.f64 B B) A)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
62.9b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 A (*.f64 (*.f64 C C) F)) -16))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
63.2b
(neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F A)))))
53.2b
(/.f64 -1 (/.f64 (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)) (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))))))))
61.6b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 B 3) F)))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
60.2b
(*.f64 (sqrt.f64 (*.f64 -1/4 (/.f64 (*.f64 F (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A))))))) (*.f64 C A)))) (neg.f64 (sqrt.f64 2)))
61.7b
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (*.f64 B B) F) (+.f64 C A))) (*.f64 10 (*.f64 A (*.f64 C (*.f64 B F))))) (+.f64 (*.f64 2 (*.f64 (pow.f64 B 3) F)) (*.f64 (*.f64 B F) (+.f64 (*.f64 C C) (*.f64 A A))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
52.5b
(/.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 A (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))))) (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (-.f64 C (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
61.0b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 -2 (*.f64 (pow.f64 B 3) F)))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
53.3b
(*.f64 (sqrt.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 (neg.f64 (sqrt.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))))
59.0b
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (*.f64 B B) F) (+.f64 C A))) (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A)))))) (*.f64 A (*.f64 C (*.f64 (*.f64 B B) F))))) (*.f64 8 (*.f64 (sqrt.f64 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A))))) (*.f64 A (*.f64 C F)))))) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A))))) (*.f64 (*.f64 B B) F))) (*.f64 8 (*.f64 F (+.f64 (*.f64 (*.f64 C C) A) (*.f64 C (*.f64 A A))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
53.6b
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (+.f64 (*.f64 (*.f64 A (*.f64 (*.f64 B B) F)) 8) (*.f64 4 (/.f64 (*.f64 (*.f64 A A) (*.f64 (*.f64 B B) F)) C))) (+.f64 (*.f64 (*.f64 (*.f64 A A) (*.f64 C F)) 16) (/.f64 (*.f64 (pow.f64 B 4) F) C))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
58.8b
(/.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)))
46.5b
(/.f64 (neg.f64 (*.f64 (neg.f64 A) (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -8 (*.f64 C F)))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
53.5b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 A A) (*.f64 C F)) -16))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
59.0b
(neg.f64 (*.f64 (/.f64 (sqrt.f64 2) B) (sqrt.f64 (*.f64 F (-.f64 A (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 A A))))))))
41.1b
(neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F C)))))
60.4b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (+.f64 (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))) (sqrt.f64 (+.f64 C A)))) (-.f64 (sqrt.f64 (+.f64 A C)) (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
59.4b
(neg.f64 (*.f64 (sqrt.f64 (*.f64 F (-.f64 C (sqrt.f64 (+.f64 (*.f64 C C) (*.f64 B B)))))) (/.f64 (sqrt.f64 2) B)))
Compiler

Compiled 17837 to 9254 computations (48.1% saved)

localize7.0ms (0%)

Local error

Found 2 expressions with local error:

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

rewrite47.0ms (0.2%)

Algorithm
rewrite-expression-head
Error
21.7b
Rules
12×pow1_binary64
add-sqr-sqrt_binary64
associate-*l*_binary64
sqrt-prod_binary64
sqrt-pow1_binary64
Counts
2 → 40
Calls

2 calls:

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

Compiled 557 to 408 computations (26.8% saved)

series27.0ms (0.1%)

Error
24.2b
Counts
2 → 12
Calls

2 calls:

15.0ms
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F C))))
11.0ms
(sqrt.f64 (*.f64 -1/2 (/.f64 F C)))
Compiler

Compiled 478 to 406 computations (15.1% saved)

simplify158.0ms (0.7%)

Algorithm
egg-herbie
Rules
580×fabs-mul_binary64
381×unsub-neg_binary64
332×associate-/r/_binary64
300×*-commutative_binary64
260×neg-sub0_binary64
Counts
52 → 27
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
072698
1143676
2390676
3936676
41694676
52384676
62801676
73173676
84453676
94990676
104746676
114808676
124840676

prune58.0ms (0.2%)

Pruning

26 alts after pruning (26 fresh and 0 done)

PrunedKeptTotal
New20727
Fresh41923
Picked101
Done000
Total252651
Error
21.7b
Counts
51 → 26
Alt Table
StatusErrorProgram
55.9b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 F (-.f64 (+.f64 (*.f64 (*.f64 B B) (+.f64 (*.f64 2 C) (*.f64 2 A))) (*.f64 8 (*.f64 (*.f64 C A) (sqrt.f64 (-.f64 (+.f64 (+.f64 (*.f64 C C) (*.f64 B B)) (*.f64 A A)) (*.f64 2 (*.f64 C A))))))) (+.f64 (*.f64 2 (*.f64 (*.f64 B B) (sqrt.f64 (-.f64 (+.f64 (+.f64 (*.f64 C C) (*.f64 B B)) (*.f64 A A)) (*.f64 2 (*.f64 C A)))))) (*.f64 8 (+.f64 (*.f64 (*.f64 C C) A) (*.f64 C (*.f64 A A))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
41.2b
(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)))))
35.5b
(neg.f64 (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C))))
58.8b
(/.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)))
61.9b
(neg.f64 (log.f64 (pow.f64 (exp.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 F C)))) (sqrt.f64 2))))
63.4b
(/.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 (*.f64 C (*.f64 (*.f64 B B) F)) 8) (*.f64 (*.f64 A (*.f64 (*.f64 C C) F)) -16)))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
54.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) (-.f64 C (+.f64 A (*.f64 1/2 (/.f64 (*.f64 B B) A)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
41.0b
(neg.f64 (sqrt.f64 (neg.f64 (/.f64 F C))))
62.9b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 A (*.f64 (*.f64 C C) F)) -16))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
63.2b
(neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F A)))))
53.2b
(/.f64 -1 (/.f64 (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)) (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))))))))
59.0b
(neg.f64 (*.f64 (/.f64 (sqrt.f64 2) B) (sqrt.f64 (*.f64 F (-.f64 A (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 A A))))))))
35.5b
(neg.f64 (/.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 F -1/2))) (sqrt.f64 C)))
59.4b
(neg.f64 (*.f64 (sqrt.f64 (*.f64 F (-.f64 C (sqrt.f64 (+.f64 (*.f64 C C) (*.f64 B B)))))) (/.f64 (sqrt.f64 2) B)))
41.1b
(neg.f64 (*.f64 (sqrt.f64 (sqrt.f64 2)) (*.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 F C))) (sqrt.f64 (sqrt.f64 2)))))
45.6b
(neg.f64 (cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F C)))) 3)))
61.6b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 B 3) F)))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
60.2b
(*.f64 (sqrt.f64 (*.f64 -1/4 (/.f64 (*.f64 F (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A))))))) (*.f64 C A)))) (neg.f64 (sqrt.f64 2)))
61.7b
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (*.f64 B B) F) (+.f64 C A))) (*.f64 10 (*.f64 A (*.f64 C (*.f64 B F))))) (+.f64 (*.f64 2 (*.f64 (pow.f64 B 3) F)) (*.f64 (*.f64 B F) (+.f64 (*.f64 C C) (*.f64 A A))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
52.5b
(/.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 A (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))))) (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (-.f64 C (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
59.0b
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (*.f64 B B) F) (+.f64 C A))) (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A)))))) (*.f64 A (*.f64 C (*.f64 (*.f64 B B) F))))) (*.f64 8 (*.f64 (sqrt.f64 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A))))) (*.f64 A (*.f64 C F)))))) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A))))) (*.f64 (*.f64 B B) F))) (*.f64 8 (*.f64 F (+.f64 (*.f64 (*.f64 C C) A) (*.f64 C (*.f64 A A))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
60.1b
(/.f64 (neg.f64 (/.f64 (sqrt.f64 (*.f64 (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))) (*.f64 2 (*.f64 F (-.f64 (pow.f64 B 6) (pow.f64 (*.f64 (*.f64 C A) 4) 3)))))) (sqrt.f64 (+.f64 (pow.f64 B 4) (*.f64 (*.f64 (*.f64 C A) 4) (+.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
46.5b
(/.f64 (neg.f64 (*.f64 (neg.f64 A) (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -8 (*.f64 C F)))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
53.5b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 A A) (*.f64 C F)) -16))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
60.4b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (+.f64 (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))) (sqrt.f64 (+.f64 C A)))) (-.f64 (sqrt.f64 (+.f64 A C)) (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
53.3b
(*.f64 (sqrt.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 (neg.f64 (sqrt.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))))
Compiler

Compiled 2189 to 1471 computations (32.8% saved)

localize8.0ms (0%)

Local error

Found 2 expressions with local error:

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

rewrite107.0ms (0.5%)

Algorithm
rewrite-expression-head
Error
21.7b
Rules
52×times-frac_binary64
52×add-sqr-sqrt_binary64
48×sqrt-prod_binary64
36×*-un-lft-identity_binary64
36×add-cube-cbrt_binary64
Counts
2 → 102
Calls

2 calls:

13.0ms
(*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C)))
5.0ms
(/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C))
Compiler

Compiled 1722 to 1192 computations (30.8% saved)

series29.0ms (0.1%)

Error
21.7b
Counts
2 → 12
Calls

2 calls:

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

Compiled 510 to 442 computations (13.3% saved)

simplify167.0ms (0.7%)

Algorithm
egg-herbie
Rules
498×div-sub_binary64
346×associate-/l*_binary64
335×associate-*l*_binary64
284×associate-*r*_binary64
276×associate-*r/_binary64
Counts
114 → 52
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01522300
12972173
29142172
325552172
424732172
528132172
639682172
741832172
847652172

prune73.0ms (0.3%)

Pruning

31 alts after pruning (31 fresh and 0 done)

PrunedKeptTotal
New43952
Fresh32225
Picked101
Done000
Total473178
Error
21.7b
Counts
78 → 31
Alt Table
StatusErrorProgram
59.0b
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (*.f64 B B) F) (+.f64 C A))) (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A)))))) (*.f64 A (*.f64 C (*.f64 (*.f64 B B) F))))) (*.f64 8 (*.f64 (sqrt.f64 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A))))) (*.f64 A (*.f64 C F)))))) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A))))) (*.f64 (*.f64 B B) F))) (*.f64 8 (*.f64 F (+.f64 (*.f64 (*.f64 C C) A) (*.f64 C (*.f64 A A))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
35.5b
(neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (sqrt.f64 (sqrt.f64 (*.f64 F -1/2))) (/.f64 (sqrt.f64 (sqrt.f64 (*.f64 F -1/2))) (sqrt.f64 C)))))
55.9b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 F (-.f64 (+.f64 (*.f64 (*.f64 B B) (+.f64 (*.f64 2 C) (*.f64 2 A))) (*.f64 8 (*.f64 (*.f64 C A) (sqrt.f64 (-.f64 (+.f64 (+.f64 (*.f64 C C) (*.f64 B B)) (*.f64 A A)) (*.f64 2 (*.f64 C A))))))) (+.f64 (*.f64 2 (*.f64 (*.f64 B B) (sqrt.f64 (-.f64 (+.f64 (+.f64 (*.f64 C C) (*.f64 B B)) (*.f64 A A)) (*.f64 2 (*.f64 C A)))))) (*.f64 8 (+.f64 (*.f64 (*.f64 C C) A) (*.f64 C (*.f64 A A))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
35.8b
(neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 F -1/2))) (cbrt.f64 (sqrt.f64 (*.f64 F -1/2)))) (/.f64 (cbrt.f64 (sqrt.f64 (*.f64 F -1/2))) (sqrt.f64 C)))))
41.2b
(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)))))
58.8b
(/.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)))
45.7b
(neg.f64 (*.f64 (sqrt.f64 2) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C)) 3))))
61.9b
(neg.f64 (log.f64 (pow.f64 (exp.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 F C)))) (sqrt.f64 2))))
46.5b
(/.f64 (neg.f64 (*.f64 (neg.f64 A) (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -8 (*.f64 C F)))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
35.6b
(neg.f64 (*.f64 (/.f64 (sqrt.f64 2) (sqrt.f64 (sqrt.f64 C))) (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 (sqrt.f64 C)))))
53.5b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 A A) (*.f64 C F)) -16))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
35.9b
(neg.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 (sqrt.f64 C)) (cbrt.f64 (sqrt.f64 C)))) (/.f64 (sqrt.f64 (*.f64 F -1/2)) (cbrt.f64 (sqrt.f64 C)))))
63.4b
(/.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 (*.f64 C (*.f64 (*.f64 B B) F)) 8) (*.f64 (*.f64 A (*.f64 (*.f64 C C) F)) -16)))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
54.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) (-.f64 C (+.f64 A (*.f64 1/2 (/.f64 (*.f64 B B) A)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
41.0b
(neg.f64 (sqrt.f64 (neg.f64 (/.f64 F C))))
62.9b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 A (*.f64 (*.f64 C C) F)) -16))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
63.2b
(neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F A)))))
35.7b
(neg.f64 (*.f64 (*.f64 (sqrt.f64 2) (/.f64 (sqrt.f64 (sqrt.f64 (*.f64 F -1/2))) (fabs.f64 (cbrt.f64 C)))) (/.f64 (sqrt.f64 (sqrt.f64 (*.f64 F -1/2))) (sqrt.f64 (cbrt.f64 C)))))
53.2b
(/.f64 -1 (/.f64 (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)) (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))))))))
35.5b
(neg.f64 (*.f64 (sqrt.f64 (sqrt.f64 2)) (*.f64 (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C)) (sqrt.f64 (sqrt.f64 2)))))
60.4b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (+.f64 (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))) (sqrt.f64 (+.f64 C A)))) (-.f64 (sqrt.f64 (+.f64 A C)) (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
59.4b
(neg.f64 (*.f64 (sqrt.f64 (*.f64 F (-.f64 C (sqrt.f64 (+.f64 (*.f64 C C) (*.f64 B B)))))) (/.f64 (sqrt.f64 2) B)))
35.4b
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))) (*.f64 (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C)) (cbrt.f64 (sqrt.f64 2)))))
45.6b
(neg.f64 (cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F C)))) 3)))
61.6b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 B 3) F)))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
60.2b
(*.f64 (sqrt.f64 (*.f64 -1/4 (/.f64 (*.f64 F (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A))))))) (*.f64 C A)))) (neg.f64 (sqrt.f64 2)))
61.7b
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (*.f64 B B) F) (+.f64 C A))) (*.f64 10 (*.f64 A (*.f64 C (*.f64 B F))))) (+.f64 (*.f64 2 (*.f64 (pow.f64 B 3) F)) (*.f64 (*.f64 B F) (+.f64 (*.f64 C C) (*.f64 A A))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
52.5b
(/.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 A (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))))) (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (-.f64 C (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
35.9b
(neg.f64 (*.f64 (sqrt.f64 2) (*.f64 (/.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 F -1/2))) (cbrt.f64 (sqrt.f64 (*.f64 F -1/2)))) (fabs.f64 (cbrt.f64 C))) (/.f64 (cbrt.f64 (sqrt.f64 (*.f64 F -1/2))) (sqrt.f64 (cbrt.f64 C))))))
59.0b
(neg.f64 (*.f64 (/.f64 (sqrt.f64 2) B) (sqrt.f64 (*.f64 F (-.f64 A (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 A A))))))))
53.3b
(*.f64 (sqrt.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 (neg.f64 (sqrt.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))))
Compiler

Compiled 2669 to 1846 computations (30.8% saved)

localize13.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

rewrite180.0ms (0.8%)

Algorithm
rewrite-expression-head
Error
21.7b
Rules
62×add-sqr-sqrt_binary64
54×times-frac_binary64
49×sqrt-prod_binary64
38×*-un-lft-identity_binary64
38×add-cube-cbrt_binary64
Counts
3 → 134
Calls

3 calls:

15.0ms
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))) (*.f64 (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C)) (cbrt.f64 (sqrt.f64 2))))
13.0ms
(*.f64 (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C)) (cbrt.f64 (sqrt.f64 2)))
5.0ms
(/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C))
Compiler

Compiled 3377 to 2700 computations (20% saved)

series58.0ms (0.2%)

Error
21.7b
Counts
3 → 18
Calls

3 calls:

23.0ms
(*.f64 (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C)) (cbrt.f64 (sqrt.f64 2)))
18.0ms
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))) (*.f64 (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C)) (cbrt.f64 (sqrt.f64 2))))
16.0ms
(/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C))
Compiler

Compiled 1014 to 912 computations (10.1% saved)

simplify241.0ms (1%)

Algorithm
egg-herbie
Rules
462×associate-*r/_binary64
449×associate-/l*_binary64
443×*-commutative_binary64
443×associate-*l/_binary64
235×unswap-sqr_binary64
Counts
152 → 111
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02014077
14383052
212543045
336883045
446463045
549153045
649953045
749993045
848933045

prune110.0ms (0.5%)

Pruning

34 alts after pruning (33 fresh and 1 done)

PrunedKeptTotal
New10011111
Fresh82230
Picked011
Done000
Total10834142
Error
21.7b
Counts
142 → 34
Alt Table
StatusErrorProgram
59.0b
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (*.f64 B B) F) (+.f64 C A))) (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A)))))) (*.f64 A (*.f64 C (*.f64 (*.f64 B B) F))))) (*.f64 8 (*.f64 (sqrt.f64 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A))))) (*.f64 A (*.f64 C F)))))) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A))))) (*.f64 (*.f64 B B) F))) (*.f64 8 (*.f64 F (+.f64 (*.f64 (*.f64 C C) A) (*.f64 C (*.f64 A A))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
35.9b
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))) (*.f64 (*.f64 (cbrt.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C)))) (cbrt.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C))))) (cbrt.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C)))))))
55.9b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 F (-.f64 (+.f64 (*.f64 (*.f64 B B) (+.f64 (*.f64 2 C) (*.f64 2 A))) (*.f64 8 (*.f64 (*.f64 C A) (sqrt.f64 (-.f64 (+.f64 (+.f64 (*.f64 C C) (*.f64 B B)) (*.f64 A A)) (*.f64 2 (*.f64 C A))))))) (+.f64 (*.f64 2 (*.f64 (*.f64 B B) (sqrt.f64 (-.f64 (+.f64 (+.f64 (*.f64 C C) (*.f64 B B)) (*.f64 A A)) (*.f64 2 (*.f64 C A)))))) (*.f64 8 (+.f64 (*.f64 (*.f64 C C) A) (*.f64 C (*.f64 A A))))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
62.0b
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))) (log.f64 (exp.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C)))))))
58.8b
(/.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)))
61.9b
(neg.f64 (log.f64 (pow.f64 (exp.f64 (sqrt.f64 (*.f64 -1/2 (/.f64 F C)))) (sqrt.f64 2))))
46.5b
(/.f64 (neg.f64 (*.f64 (neg.f64 A) (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -8 (*.f64 C F)))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
35.9b
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))) (*.f64 (/.f64 1 (*.f64 (cbrt.f64 (sqrt.f64 C)) (cbrt.f64 (sqrt.f64 C)))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (sqrt.f64 (*.f64 F -1/2)) (cbrt.f64 (sqrt.f64 C)))))))
53.5b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 A A) (*.f64 C F)) -16))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
35.9b
(neg.f64 (*.f64 (/.f64 (sqrt.f64 2) (*.f64 (cbrt.f64 (sqrt.f64 C)) (cbrt.f64 (sqrt.f64 C)))) (/.f64 (sqrt.f64 (*.f64 F -1/2)) (cbrt.f64 (sqrt.f64 C)))))
63.4b
(/.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 (*.f64 C (*.f64 (*.f64 B B) F)) 8) (*.f64 (*.f64 A (*.f64 (*.f64 C C) F)) -16)))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
54.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) (-.f64 C (+.f64 A (*.f64 1/2 (/.f64 (*.f64 B B) A)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
41.0b
(neg.f64 (sqrt.f64 (neg.f64 (/.f64 F C))))
62.9b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 A (*.f64 (*.f64 C C) F)) -16))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
63.2b
(neg.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 -1/2 (/.f64 F A)))))
35.7b
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))) (*.f64 (/.f64 (sqrt.f64 (sqrt.f64 (*.f64 F -1/2))) (sqrt.f64 (*.f64 (cbrt.f64 C) (cbrt.f64 C)))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (sqrt.f64 (sqrt.f64 (*.f64 F -1/2))) (sqrt.f64 (cbrt.f64 C)))))))
53.2b
(/.f64 -1 (/.f64 (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)) (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))))))))
59.0b
(neg.f64 (*.f64 (/.f64 (sqrt.f64 2) B) (sqrt.f64 (*.f64 F (-.f64 A (sqrt.f64 (+.f64 (*.f64 B B) (*.f64 A A))))))))
35.8b
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))) (*.f64 (/.f64 (sqrt.f64 (sqrt.f64 (*.f64 F -1/2))) (*.f64 (cbrt.f64 (sqrt.f64 C)) (cbrt.f64 (sqrt.f64 C)))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (sqrt.f64 (sqrt.f64 (*.f64 F -1/2))) (cbrt.f64 (sqrt.f64 C)))))))
35.5b
(neg.f64 (*.f64 (sqrt.f64 (sqrt.f64 2)) (*.f64 (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C)) (sqrt.f64 (sqrt.f64 2)))))
60.4b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (+.f64 (sqrt.f64 (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))) (sqrt.f64 (+.f64 C A)))) (-.f64 (sqrt.f64 (+.f64 A C)) (sqrt.f64 (sqrt.f64 (+.f64 (pow.f64 (-.f64 A C) 2) (pow.f64 B 2)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
59.4b
(neg.f64 (*.f64 (sqrt.f64 (*.f64 F (-.f64 C (sqrt.f64 (+.f64 (*.f64 C C) (*.f64 B B)))))) (/.f64 (sqrt.f64 2) B)))
35.4b
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))) (*.f64 (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C)) (cbrt.f64 (sqrt.f64 2)))))
35.9b
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 F -1/2))) (cbrt.f64 (sqrt.f64 (*.f64 F -1/2)))) (sqrt.f64 (*.f64 (cbrt.f64 C) (cbrt.f64 C)))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (cbrt.f64 (sqrt.f64 (*.f64 F -1/2))) (sqrt.f64 (cbrt.f64 C)))))))
61.6b
(/.f64 (neg.f64 (sqrt.f64 (*.f64 2 (*.f64 (pow.f64 B 3) F)))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
60.2b
(*.f64 (sqrt.f64 (*.f64 -1/4 (/.f64 (*.f64 F (-.f64 (+.f64 C A) (sqrt.f64 (+.f64 (*.f64 A A) (*.f64 C (-.f64 C (*.f64 2 A))))))) (*.f64 C A)))) (neg.f64 (sqrt.f64 2)))
35.9b
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))) (*.f64 (/.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 F -1/2))) (cbrt.f64 (sqrt.f64 (*.f64 F -1/2)))) (*.f64 (cbrt.f64 (sqrt.f64 C)) (cbrt.f64 (sqrt.f64 C)))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (cbrt.f64 (sqrt.f64 (*.f64 F -1/2))) (cbrt.f64 (sqrt.f64 C)))))))
61.7b
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (*.f64 B B) F) (+.f64 C A))) (*.f64 10 (*.f64 A (*.f64 C (*.f64 B F))))) (+.f64 (*.f64 2 (*.f64 (pow.f64 B 3) F)) (*.f64 (*.f64 B F) (+.f64 (*.f64 C C) (*.f64 A A))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
36.0b
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))) (*.f64 (*.f64 (*.f64 (/.f64 (cbrt.f64 (sqrt.f64 (*.f64 F -1/2))) (cbrt.f64 (sqrt.f64 C))) (/.f64 (cbrt.f64 (sqrt.f64 (*.f64 F -1/2))) (cbrt.f64 (sqrt.f64 C)))) (/.f64 (cbrt.f64 (sqrt.f64 (*.f64 F -1/2))) (cbrt.f64 (sqrt.f64 C)))) (cbrt.f64 (sqrt.f64 2)))))
35.8b
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))) (*.f64 (*.f64 (cbrt.f64 (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C))) (cbrt.f64 (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C)))) (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C)))))))
52.5b
(/.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 A (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4))))) (*.f64 (*.f64 2 (*.f64 F (-.f64 (*.f64 B B) (*.f64 (*.f64 C A) 4)))) (-.f64 C (sqrt.f64 (+.f64 (*.f64 B B) (pow.f64 (-.f64 A C) 2)))))))) (-.f64 (pow.f64 B 2) (*.f64 (*.f64 4 A) C)))
35.9b
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))) (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 2))) (/.f64 (sqrt.f64 (sqrt.f64 (*.f64 F -1/2))) (sqrt.f64 (sqrt.f64 C)))) (*.f64 (cbrt.f64 (sqrt.f64 (sqrt.f64 2))) (/.f64 (sqrt.f64 (sqrt.f64 (*.f64 F -1/2))) (sqrt.f64 (sqrt.f64 C)))))))
53.3b
(*.f64 (sqrt.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 (neg.f64 (sqrt.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))))
37.4b
(neg.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (cbrt.f64 (sqrt.f64 2))) (exp.f64 (log.f64 (*.f64 (cbrt.f64 (sqrt.f64 2)) (/.f64 (sqrt.f64 (*.f64 F -1/2)) (sqrt.f64 C)))))))
Compiler

Compiled 3015 to 2277 computations (24.5% saved)

regimes7.2s (30.5%)

Accuracy

Total 6.3b remaining (20.4%)

Threshold costs 0b (0%)

Compiler

Compiled 115485 to 83716 computations (27.5% saved)

bsearch42.0ms (0.2%)

Compiler

Compiled 44 to 32 computations (27.3% saved)

simplify73.0ms (0.3%)

Algorithm
egg-herbie
Rules
178×distribute-rgt-neg-in_binary64
122×distribute-lft-neg-in_binary64
122×cancel-sign-sub-inv_binary64
110×neg-sub0_binary64
110×neg-mul-1_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
082480
1163476
2266476
3368474
4452474
5514474
6566474
7625474
8686474
9757474
10819474
11873474
12912474
13935474
14951474
15955474
16943474

end24.0ms (0.1%)

Compiler

Compiled 924 to 651 computations (29.5% saved)

sample7.7s (32.9%)

Algorithm
intervals
Results
1.3s5453×body128valid
774.0ms884×body1024valid
720.0ms863×body1024nan
716.0ms2425×body128nan
706.0ms683×body2048valid
637.0ms580×body2048nan
436.0ms643×body512valid
348.0ms569×body512nan
130.0ms336×body256valid
125.0ms323×body256nan
2.0msbody4096valid
Compiler

Compiled 1700 to 1208 computations (28.9% saved)

Profiling

Loading profile data...