Details

Time bar (total: 5.6s)

analyze970.0ms (17.2%)

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
0%99.9%0.1%6
0%93.6%6.4%7
6.2%87.4%6.4%8
10.1%81.1%8.7%9
15.6%71%13.4%10
22%63%15%11
29.1%52.9%18.1%12
33.8%45.6%20.5%13
38.8%38.9%22.3%14
Compiler

Compiled 21 to 15 computations (28.6% saved)

sample2.3s (40.9%)

Results
737.0ms5392×body128valid
636.0ms1157×body2048valid
334.0ms728×body1024valid
285.0ms437×body4096valid
140.0ms1066×body128invalid
115.0ms348×body512valid
45.0ms194×body256valid

preprocess46.0ms (0.8%)

Algorithm
egg-herbie
Rules
795×fma-def_binary64
731×div-sub_binary64
295×fma-neg_binary64
212×associate-/l*_binary64
209×sub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
034104
19288
221388
344088
475888
5125188
6222188
7445788
033
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
(/.f64 (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 (*.f64 3 b) c)))) (*.f64 3 b))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 c) a)))) (*.f64 3 c))
(/.f64 (+.f64 (neg.f64 c) (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 (*.f64 3 a) b)))) (*.f64 3 a))
Outputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) b) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 c (*.f64 a -3) (*.f64 b b))) b) (*.f64 3 a))
(*.f64 -1/3 (/.f64 (-.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -3) (*.f64 b b)))) a))
(*.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))))) (/.f64 -1/3 a))
(/.f64 (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 (*.f64 3 b) c)))) (*.f64 3 b))
(/.f64 (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 3 (*.f64 b c))))) (*.f64 b 3))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 a a (*.f64 c (*.f64 b -3)))) a) (*.f64 b 3))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 c (*.f64 b -3) (*.f64 a a))) a) (*.f64 b 3))
(*.f64 -1/3 (/.f64 (-.f64 a (sqrt.f64 (fma.f64 c (*.f64 b -3) (*.f64 a a)))) b))
(*.f64 (/.f64 (-.f64 a (sqrt.f64 (fma.f64 a a (*.f64 (*.f64 b c) -3)))) b) -1/3)
(*.f64 (-.f64 a (sqrt.f64 (fma.f64 b (*.f64 c -3) (*.f64 a a)))) (/.f64 -1/3 b))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 c) a)))) (*.f64 3 c))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a))))) (*.f64 3 c))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) b) (*.f64 3 c))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 c (*.f64 a -3) (*.f64 b b))) b) (*.f64 3 c))
(*.f64 -1/3 (/.f64 (-.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -3) (*.f64 b b)))) c))
(*.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))))) (/.f64 -1/3 c))
(/.f64 (+.f64 (neg.f64 c) (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 (*.f64 3 a) b)))) (*.f64 3 a))
(/.f64 (+.f64 (neg.f64 c) (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 b (*.f64 3 a))))) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 c c (*.f64 b (*.f64 a -3)))) c) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b (*.f64 a -3) (*.f64 c c))) c) (*.f64 3 a))
(*.f64 -1/3 (/.f64 (-.f64 c (sqrt.f64 (fma.f64 b (*.f64 a -3) (*.f64 c c)))) a))
(*.f64 (-.f64 c (sqrt.f64 (fma.f64 b (*.f64 a -3) (*.f64 c c)))) (/.f64 -1/3 a))
Compiler

Compiled 20 to 14 computations (30% saved)

simplify34.0ms (0.6%)

Algorithm
egg-herbie
Rules
1220×fma-neg_binary64
367×fma-def_binary64
351×times-frac_binary64
266×associate-/l*_binary64
254×div-sub_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01326
13022
26922
316022
426422
543322
674422
7134122
8276922
9470222
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
Outputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c)))) b) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 -3 c)))) b) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b))) b) (*.f64 3 a))
(*.f64 (-.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -3) (*.f64 b b)))) (/.f64 -1/3 a))
(*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) b) (/.f64 1/3 a))

prune3.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

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

Compiled 111 to 75 computations (32.4% saved)

localize9.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (*.f64 3 a) c)
0.2b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
1.4b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))
24.6b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))

series28.0ms (0.5%)

Counts
4 → 84
Calls

33 calls:

TimeVariablePointExpression
1.0ms
c
@0
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
1.0ms
c
@inf
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))
1.0ms
a
@inf
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
1.0ms
b
@0
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))
1.0ms
b
@0
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))

rewrite70.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
248×expm1-udef_binary64
248×log1p-udef_binary64
156×add-sqr-sqrt_binary64
150×*-un-lft-identity_binary64
150×pow1_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01368
130258
2449458
Stop Event
node limit
Counts
4 → 117
Calls
Call 1
Inputs
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c))))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
(*.f64 (*.f64 3 a) c)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))) (cbrt.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) 1/4) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))) 2)) (sqrt.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))) 2) 1/2) (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 b 6) (*.f64 27 (pow.f64 (*.f64 a c) 3)))) (sqrt.f64 (+.f64 (pow.f64 b 4) (*.f64 (*.f64 3 (*.f64 a c)) (fma.f64 b b (*.f64 3 (*.f64 a c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 b 4) (pow.f64 (*.f64 3 (*.f64 a c)) 2))) (sqrt.f64 (fma.f64 b b (*.f64 3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))) b)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 b b) (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (/.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))) 0) b)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (pow.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 2) (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) 3/2)) (/.f64 1 (fma.f64 b b (+.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) (*.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 b b) (fma.f64 b b (*.f64 c (*.f64 a -3)))) (/.f64 1 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 b b (+.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) (*.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))) (+.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (-.f64 (*.f64 b b) (fma.f64 b b (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) 3/2)) (fma.f64 b b (+.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) (*.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) 3/2)) (+.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) (-.f64 (*.f64 b b) (*.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 b b) (fma.f64 b b (*.f64 c (*.f64 a -3)))) (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) 3/2))) (neg.f64 (fma.f64 b b (+.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) (*.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 b b) (fma.f64 b b (*.f64 c (*.f64 a -3))))) (neg.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) (*.f64 b b)) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))) (cbrt.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (cbrt.f64 b) (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (sqrt.f64 b) (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) 1/4) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) 1/4) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 2) (*.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (/.f64 1/3 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a))) (pow.f64 (cbrt.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a))) 2) (cbrt.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (*.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (/.f64 1/3 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a))) (sqrt.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/3 a) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1 (*.f64 a -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) 1/3) (/.f64 1 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/3 (/.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 2) 3) (/.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 3) (/.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) a) (/.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 a) (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 2) a) (/.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 2) 1) (/.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (*.f64 3 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 1) (/.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (*.f64 3 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 3 a)) 2)) (/.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (cbrt.f64 (*.f64 3 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 2) (pow.f64 (cbrt.f64 (*.f64 3 a)) 2)) (cbrt.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (pow.f64 (cbrt.f64 (*.f64 3 a)) 2)) (/.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (cbrt.f64 (*.f64 3 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (*.f64 3 a))) (/.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (sqrt.f64 (*.f64 3 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 2) (sqrt.f64 (*.f64 3 a))) (/.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (sqrt.f64 (*.f64 3 a))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 3 a) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (*.f64 a -3)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (/.f64 1/3 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) 3) (pow.f64 (*.f64 3 a) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) (/.f64 1/3 a))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 3 (*.f64 a c)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 3 (*.f64 a c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 3 (*.f64 a c))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 3 (*.f64 a c))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 27 (pow.f64 (*.f64 a c) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 3 (*.f64 a c)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 a) 3) c))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 27 (pow.f64 (*.f64 a c) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 3 (*.f64 a c))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 3 (*.f64 a c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 3 (*.f64 a c))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 3 (*.f64 a c))))))))

simplify52.0ms (0.9%)

Algorithm
egg-herbie
Rules
784×fma-def_binary64
690×associate-/l*_binary64
608×associate-/r*_binary64
168×associate-/r/_binary64
107×unswap-sqr_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01732150
15362120
219432042
Stop Event
node limit
Counts
201 → 195
Calls
Call 1
Inputs
(sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))))) (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))))) (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a))))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))))) (+.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) (*.f64 1/16 (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) 5))))))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(*.f64 -1 b)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b)))
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b))))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a))))
(+.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) (*.f64 -1 b))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))))) (+.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) (*.f64 -1 b)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))))) (+.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) (*.f64 -1 b))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7))) (+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 -2 b)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b))
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b)))
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 1/3 (/.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (/.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) a)))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (+.f64 (*.f64 1/3 (/.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) a)) (*.f64 1/6 (/.f64 (pow.f64 b 2) (*.f64 a (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))))))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (+.f64 (*.f64 1/3 (/.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) a)) (+.f64 (*.f64 -1/24 (/.f64 (pow.f64 b 4) (*.f64 a (pow.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) 3)))) (*.f64 1/6 (/.f64 (pow.f64 b 2) (*.f64 a (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a))))))))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/6 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (*.f64 a (pow.f64 b 7)))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(*.f64 -2/3 (/.f64 b a))
(+.f64 (*.f64 -2/3 (/.f64 b a)) (*.f64 1/2 (/.f64 c b)))
(+.f64 (*.f64 -2/3 (/.f64 b a)) (+.f64 (*.f64 1/2 (/.f64 c b)) (*.f64 3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -2/3 (/.f64 b a)) (+.f64 (*.f64 9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 1/2 (/.f64 c b)) (*.f64 3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) (*.f64 a b))) (+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
(*.f64 3 (*.f64 c a))
Outputs
(sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a))))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(sqrt.f64 (*.f64 (*.f64 c a) -3))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))))) (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))))
(fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (sqrt.f64 (*.f64 -3 (*.f64 c a))))
(fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 (*.f64 c a) -3))) (sqrt.f64 (*.f64 (*.f64 c a) -3)))
(fma.f64 1/2 (*.f64 (/.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) (sqrt.f64 (*.f64 a (*.f64 c -3))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))))) (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a))))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3)) (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (sqrt.f64 (*.f64 -3 (*.f64 c a)))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) 3)) (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 (*.f64 c a) -3))) (sqrt.f64 (*.f64 (*.f64 c a) -3))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 3)) (fma.f64 1/2 (*.f64 (/.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) (sqrt.f64 (*.f64 a (*.f64 c -3)))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))))) (+.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) (*.f64 1/16 (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) 5))))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3)) (+.f64 (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (*.f64 1/16 (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 5)))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) 3)) (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 (*.f64 c a) -3))) (fma.f64 1/16 (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) 5)) (sqrt.f64 (*.f64 (*.f64 c a) -3)))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 3)) (fma.f64 1/2 (*.f64 (/.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) (fma.f64 1/16 (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 5)) (sqrt.f64 (*.f64 a (*.f64 c -3))))))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(fma.f64 -3/2 (/.f64 (*.f64 c a) b) b)
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(fma.f64 -9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -3/2 (/.f64 (*.f64 c a) b) b))
(fma.f64 -9/8 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) b))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -9/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) (*.f64 a a)) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(fma.f64 -9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (fma.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) b)))
(fma.f64 -9/8 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -27/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) b)))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -9/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) (*.f64 a a)) (fma.f64 -27/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) b)))
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))
(fma.f64 3/2 (/.f64 (*.f64 c a) b) (neg.f64 b))
(fma.f64 (*.f64 (/.f64 c b) a) 3/2 (neg.f64 b))
(-.f64 (*.f64 (/.f64 (*.f64 c 3/2) b) a) b)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b)))
(fma.f64 3/2 (/.f64 (*.f64 c a) b) (fma.f64 9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (neg.f64 b)))
(-.f64 (fma.f64 (*.f64 (/.f64 c b) a) 3/2 (*.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3)) 9/8)) b)
(-.f64 (fma.f64 (*.f64 (/.f64 c b) a) 3/2 (*.f64 (/.f64 (*.f64 9/8 (*.f64 c c)) (pow.f64 b 3)) (*.f64 a a))) b)
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b))))
(fma.f64 27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (fma.f64 3/2 (/.f64 (*.f64 c a) b) (fma.f64 9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (neg.f64 b))))
(fma.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 27/16 (-.f64 (fma.f64 (*.f64 (/.f64 c b) a) 3/2 (*.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3)) 9/8)) b))
(fma.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 27/16 (-.f64 (fma.f64 (*.f64 (/.f64 c b) a) 3/2 (*.f64 (/.f64 (*.f64 9/8 (*.f64 c c)) (pow.f64 b 3)) (*.f64 a a))) b))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(fma.f64 -3/2 (/.f64 (*.f64 c a) b) b)
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(fma.f64 -9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -3/2 (/.f64 (*.f64 c a) b) b))
(fma.f64 -9/8 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) b))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -9/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) (*.f64 a a)) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(fma.f64 -9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (fma.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) b)))
(fma.f64 -9/8 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -27/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) b)))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -9/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) (*.f64 a a)) (fma.f64 -27/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) b)))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(fma.f64 -3/2 (/.f64 (*.f64 c a) b) b)
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(fma.f64 -9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -3/2 (/.f64 (*.f64 c a) b) b))
(fma.f64 -9/8 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) b))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -9/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) (*.f64 a a)) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(fma.f64 -9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (fma.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) b)))
(fma.f64 -9/8 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -27/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) b)))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -9/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) (*.f64 a a)) (fma.f64 -27/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) b)))
(sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a))))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(sqrt.f64 (*.f64 (*.f64 c a) -3))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(+.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) (*.f64 -1 b))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))))) (+.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) (*.f64 -1 b)))
(fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b)))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 (*.f64 c a) -3))) (sqrt.f64 (*.f64 (*.f64 c a) -3))) b)
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))))) (+.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) (*.f64 -1 b))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3)) (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) 3)) (-.f64 (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 (*.f64 c a) -3))) (sqrt.f64 (*.f64 (*.f64 c a) -3))) b))
(-.f64 (fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 3)) (fma.f64 1/2 (*.f64 (/.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) (sqrt.f64 (*.f64 a (*.f64 c -3))))) b)
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(*.f64 -3/2 (*.f64 (/.f64 c b) a))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(fma.f64 -9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (*.f64 -9/8 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3))))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 c a) (/.f64 (/.f64 (pow.f64 b 3) -9/8) (*.f64 c a))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(fma.f64 -9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (*.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))))))
(fma.f64 -9/8 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 (*.f64 -27/16 (pow.f64 c 3)) (pow.f64 a 3)) (pow.f64 b 5))))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -9/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) (*.f64 a a)) (/.f64 (*.f64 (pow.f64 c 3) -27/16) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7))) (+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (*.f64 c c) (*.f64 a a))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7)) (fma.f64 -9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (*.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))))
(fma.f64 -1/2 (/.f64 (fma.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 81/64)) (pow.f64 b 7)) (fma.f64 -9/8 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 (*.f64 -27/16 (pow.f64 c 3)) (pow.f64 a 3)) (pow.f64 b 5)))))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 405/64) (pow.f64 b 7)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -9/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) (*.f64 a a)) (/.f64 (*.f64 (pow.f64 c 3) -27/16) (/.f64 (pow.f64 b 5) (pow.f64 a 3))))))
(*.f64 -2 b)
(*.f64 b -2)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b))
(fma.f64 3/2 (/.f64 (*.f64 c a) b) (*.f64 b -2))
(fma.f64 b -2 (*.f64 (*.f64 (/.f64 c b) a) 3/2))
(fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 3/2) b) a))
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b)))
(fma.f64 3/2 (/.f64 (*.f64 c a) b) (fma.f64 9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (*.f64 b -2)))
(fma.f64 (*.f64 (/.f64 c b) a) 3/2 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3)) 9/8)))
(fma.f64 b -2 (fma.f64 (*.f64 (/.f64 c b) a) 3/2 (*.f64 (/.f64 (*.f64 9/8 (*.f64 c c)) (pow.f64 b 3)) (*.f64 a a))))
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b))))
(fma.f64 27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (fma.f64 3/2 (/.f64 (*.f64 c a) b) (fma.f64 9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (*.f64 b -2))))
(fma.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 27/16 (fma.f64 (*.f64 (/.f64 c b) a) 3/2 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3)) 9/8))))
(fma.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 27/16 (fma.f64 b -2 (fma.f64 (*.f64 (/.f64 c b) a) 3/2 (*.f64 (/.f64 (*.f64 9/8 (*.f64 c c)) (pow.f64 b 3)) (*.f64 a a)))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(*.f64 -3/2 (*.f64 (/.f64 c b) a))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(fma.f64 -9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (*.f64 -9/8 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3))))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 c a) (/.f64 (/.f64 (pow.f64 b 3) -9/8) (*.f64 c a))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(fma.f64 -9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (*.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))))))
(fma.f64 -9/8 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 (*.f64 -27/16 (pow.f64 c 3)) (pow.f64 a 3)) (pow.f64 b 5))))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -9/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) (*.f64 a a)) (/.f64 (*.f64 (pow.f64 c 3) -27/16) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(fma.f64 -9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (fma.f64 -1/2 (/.f64 (pow.f64 a 4) (/.f64 b (fma.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) (pow.f64 (*.f64 -9/8 (/.f64 (*.f64 c c) (pow.f64 b 3))) 2)))) (*.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))))
(fma.f64 -9/8 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 a 4) b) (fma.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) 81/64))) (/.f64 (*.f64 (*.f64 -27/16 (pow.f64 c 3)) (pow.f64 a 3)) (pow.f64 b 5)))))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -9/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) (*.f64 a a)) (fma.f64 -27/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) (*.f64 -1/2 (*.f64 (/.f64 (pow.f64 a 4) b) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) 405/64))))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(*.f64 -3/2 (*.f64 (/.f64 c b) a))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(fma.f64 -9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (*.f64 -9/8 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3))))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 c a) (/.f64 (/.f64 (pow.f64 b 3) -9/8) (*.f64 c a))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(fma.f64 -9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (*.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))))))
(fma.f64 -9/8 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 (*.f64 -27/16 (pow.f64 c 3)) (pow.f64 a 3)) (pow.f64 b 5))))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -9/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) (*.f64 a a)) (/.f64 (*.f64 (pow.f64 c 3) -27/16) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(fma.f64 -9/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -1/2 (/.f64 (pow.f64 c 4) (/.f64 b (fma.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) (pow.f64 (*.f64 -9/8 (/.f64 (*.f64 a a) (pow.f64 b 3))) 2)))) (fma.f64 -3/2 (/.f64 (*.f64 c a) b) (*.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))))
(fma.f64 -9/8 (/.f64 (*.f64 a (*.f64 a (*.f64 c c))) (pow.f64 b 3)) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 c 4) b) (fma.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) (*.f64 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) 81/64))) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 (*.f64 -27/16 (pow.f64 c 3)) (pow.f64 a 3)) (pow.f64 b 5)))))
(fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 c 4) b) (*.f64 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) 405/64)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -9/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) (*.f64 a a)) (/.f64 (*.f64 (pow.f64 c 3) -27/16) (/.f64 (pow.f64 b 5) (pow.f64 a 3))))))
(*.f64 1/3 (/.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) a))
(*.f64 1/3 (/.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) a))
(*.f64 1/3 (/.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) a))
(*.f64 1/3 (/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (/.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) a)))
(fma.f64 -1/3 (/.f64 b a) (*.f64 1/3 (/.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) a)))
(fma.f64 1/3 (/.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) a) (*.f64 -1/3 (/.f64 b a)))
(fma.f64 1/3 (/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) a) (*.f64 -1/3 (/.f64 b a)))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (+.f64 (*.f64 1/3 (/.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) a)) (*.f64 1/6 (/.f64 (pow.f64 b 2) (*.f64 a (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))))))))
(fma.f64 -1/3 (/.f64 b a) (fma.f64 1/3 (/.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) a) (*.f64 1/6 (/.f64 (/.f64 (*.f64 b b) a) (sqrt.f64 (*.f64 -3 (*.f64 c a)))))))
(fma.f64 -1/3 (/.f64 b a) (fma.f64 1/3 (/.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) a) (/.f64 (/.f64 (*.f64 (*.f64 b b) 1/6) a) (sqrt.f64 (*.f64 (*.f64 c a) -3)))))
(fma.f64 1/3 (/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) a) (fma.f64 (/.f64 1/6 a) (*.f64 (/.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) (*.f64 -1/3 (/.f64 b a))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (+.f64 (*.f64 1/3 (/.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) a)) (+.f64 (*.f64 -1/24 (/.f64 (pow.f64 b 4) (*.f64 a (pow.f64 (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a)))) 3)))) (*.f64 1/6 (/.f64 (pow.f64 b 2) (*.f64 a (sqrt.f64 (neg.f64 (*.f64 3 (*.f64 c a))))))))))
(fma.f64 -1/3 (/.f64 b a) (fma.f64 1/3 (/.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) a) (fma.f64 -1/24 (/.f64 (pow.f64 b 4) (*.f64 a (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3))) (*.f64 1/6 (/.f64 (/.f64 (*.f64 b b) a) (sqrt.f64 (*.f64 -3 (*.f64 c a))))))))
(fma.f64 -1/3 (/.f64 b a) (fma.f64 1/3 (/.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) a) (fma.f64 -1/24 (/.f64 (/.f64 (pow.f64 b 4) a) (pow.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) 3)) (/.f64 (/.f64 (*.f64 (*.f64 b b) 1/6) a) (sqrt.f64 (*.f64 (*.f64 c a) -3))))))
(fma.f64 -1/3 (/.f64 b a) (fma.f64 1/3 (/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) a) (fma.f64 1/6 (*.f64 (/.f64 b a) (/.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))) (*.f64 -1/24 (/.f64 (/.f64 (pow.f64 b 4) a) (pow.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 3))))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(fma.f64 -1/2 (/.f64 c b) (*.f64 -3/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a))))
(fma.f64 -1/2 (/.f64 c b) (/.f64 (*.f64 -3/8 (*.f64 a (*.f64 c c))) (pow.f64 b 3)))
(fma.f64 -1/2 (/.f64 c b) (*.f64 -3/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a)))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(fma.f64 -9/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))) (fma.f64 -1/2 (/.f64 c b) (*.f64 -3/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)))))
(fma.f64 -9/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)) (fma.f64 -1/2 (/.f64 c b) (/.f64 (*.f64 -3/8 (*.f64 a (*.f64 c c))) (pow.f64 b 3))))
(fma.f64 -1/2 (/.f64 c b) (fma.f64 -3/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a) (*.f64 -9/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/6 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (*.f64 a (pow.f64 b 7)))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(fma.f64 -9/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))) (fma.f64 -1/6 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (*.f64 c c) (*.f64 a a))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (*.f64 a (pow.f64 b 7))) (fma.f64 -1/2 (/.f64 c b) (*.f64 -3/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a))))))
(fma.f64 -9/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)) (fma.f64 -1/6 (/.f64 (fma.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 81/64)) (*.f64 a (pow.f64 b 7))) (fma.f64 -1/2 (/.f64 c b) (/.f64 (*.f64 -3/8 (*.f64 a (*.f64 c c))) (pow.f64 b 3)))))
(fma.f64 -1/6 (/.f64 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 405/64) (*.f64 a (pow.f64 b 7))) (fma.f64 -1/2 (/.f64 c b) (fma.f64 -3/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a) (*.f64 -9/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a))))))
(*.f64 -2/3 (/.f64 b a))
(*.f64 (/.f64 b a) -2/3)
(+.f64 (*.f64 -2/3 (/.f64 b a)) (*.f64 1/2 (/.f64 c b)))
(fma.f64 -2/3 (/.f64 b a) (/.f64 (*.f64 1/2 c) b))
(fma.f64 (/.f64 b a) -2/3 (/.f64 (*.f64 c 1/2) b))
(fma.f64 1/2 (/.f64 c b) (*.f64 (/.f64 b a) -2/3))
(+.f64 (*.f64 -2/3 (/.f64 b a)) (+.f64 (*.f64 1/2 (/.f64 c b)) (*.f64 3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(fma.f64 -2/3 (/.f64 b a) (fma.f64 1/2 (/.f64 c b) (*.f64 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) 3/8)))
(fma.f64 (/.f64 b a) -2/3 (fma.f64 1/2 (/.f64 c b) (*.f64 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a) 3/8)))
(fma.f64 1/2 (/.f64 c b) (fma.f64 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a) 3/8 (*.f64 (/.f64 b a) -2/3)))
(+.f64 (*.f64 -2/3 (/.f64 b a)) (+.f64 (*.f64 9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 1/2 (/.f64 c b)) (*.f64 3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(fma.f64 -2/3 (/.f64 b a) (fma.f64 9/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))) (fma.f64 1/2 (/.f64 c b) (*.f64 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) 3/8))))
(fma.f64 (/.f64 b a) -2/3 (fma.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)) 9/16 (fma.f64 1/2 (/.f64 c b) (*.f64 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a) 3/8))))
(fma.f64 (/.f64 b a) -2/3 (fma.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)) 9/16 (fma.f64 1/2 (/.f64 c b) (*.f64 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a) 3/8))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(fma.f64 -1/2 (/.f64 c b) (*.f64 -3/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a))))
(fma.f64 -1/2 (/.f64 c b) (/.f64 (*.f64 -3/8 (*.f64 a (*.f64 c c))) (pow.f64 b 3)))
(fma.f64 -1/2 (/.f64 c b) (*.f64 -3/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a)))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(fma.f64 -9/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))) (fma.f64 -1/2 (/.f64 c b) (*.f64 -3/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)))))
(fma.f64 -9/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)) (fma.f64 -1/2 (/.f64 c b) (/.f64 (*.f64 -3/8 (*.f64 a (*.f64 c c))) (pow.f64 b 3))))
(fma.f64 -1/2 (/.f64 c b) (fma.f64 -3/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a) (*.f64 -9/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(fma.f64 -1/6 (/.f64 (pow.f64 a 3) (/.f64 b (fma.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) (pow.f64 (*.f64 -9/8 (/.f64 (*.f64 c c) (pow.f64 b 3))) 2)))) (fma.f64 -9/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))) (fma.f64 -1/2 (/.f64 c b) (*.f64 -3/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a))))))
(fma.f64 -1/6 (*.f64 (/.f64 (pow.f64 a 3) b) (fma.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) 81/64))) (fma.f64 -9/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)) (fma.f64 -1/2 (/.f64 c b) (/.f64 (*.f64 -3/8 (*.f64 a (*.f64 c c))) (pow.f64 b 3)))))
(fma.f64 -1/6 (*.f64 (/.f64 (pow.f64 a 3) b) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) 405/64)) (fma.f64 -1/2 (/.f64 c b) (fma.f64 -3/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a) (*.f64 -9/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a))))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(fma.f64 -1/2 (/.f64 c b) (*.f64 -3/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a))))
(fma.f64 -1/2 (/.f64 c b) (/.f64 (*.f64 -3/8 (*.f64 a (*.f64 c c))) (pow.f64 b 3)))
(fma.f64 -1/2 (/.f64 c b) (*.f64 -3/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a)))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(fma.f64 -9/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))) (fma.f64 -1/2 (/.f64 c b) (*.f64 -3/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)))))
(fma.f64 -9/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)) (fma.f64 -1/2 (/.f64 c b) (/.f64 (*.f64 -3/8 (*.f64 a (*.f64 c c))) (pow.f64 b 3))))
(fma.f64 -1/2 (/.f64 c b) (fma.f64 -3/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a) (*.f64 -9/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) (*.f64 a b))) (+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(fma.f64 -1/6 (/.f64 (pow.f64 c 4) (/.f64 (*.f64 a b) (fma.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) (pow.f64 (*.f64 -9/8 (/.f64 (*.f64 a a) (pow.f64 b 3))) 2)))) (fma.f64 -9/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))) (fma.f64 -1/2 (/.f64 c b) (*.f64 -3/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a))))))
(fma.f64 -1/6 (*.f64 (/.f64 (fma.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) (*.f64 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) 81/64)) a) (/.f64 (pow.f64 c 4) b)) (fma.f64 -9/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)) (fma.f64 -1/2 (/.f64 c b) (/.f64 (*.f64 -3/8 (*.f64 a (*.f64 c c))) (pow.f64 b 3)))))
(fma.f64 -1/6 (*.f64 (/.f64 (*.f64 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) 405/64) a) (/.f64 (pow.f64 c 4) b)) (fma.f64 -1/2 (/.f64 c b) (fma.f64 -3/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a) (*.f64 -9/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a))))))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))
(*.f64 3 (*.f64 c a))
(*.f64 a (*.f64 3 c))

prune230.0ms (4.1%)

Pruning

15 alts after pruning (14 fresh and 1 done)

PrunedKeptTotal
New18213195
Fresh011
Picked011
Done000
Total18215197
Error
7.8b
Counts
197 → 15
Alt Table
StatusErrorProgram
47.5b
(fma.f64 1/2 (/.f64 c b) (*.f64 (/.f64 b a) -2/3))
60.0b
(cbrt.f64 (/.f64 (pow.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) 3) (pow.f64 (*.f64 3 a) 3)))
38.4b
(*.f64 -1/2 (/.f64 c b))
45.1b
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
37.4b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) b) (/.f64 1/3 a))
56.2b
(/.f64 (+.f64 (neg.f64 b) b) (*.f64 3 a))
48.4b
(/.f64 (*.f64 (-.f64 (*.f64 b b) (fma.f64 b b (*.f64 c (*.f64 a -3)))) (/.f64 1 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))) (*.f64 3 a))
48.1b
(pow.f64 (/.f64 (*.f64 3 a) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) -1)
47.3b
(/.f64 (*.f64 -2 b) (*.f64 3 a))
48.2b
(*.f64 (/.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) a) (/.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 3))
45.8b
(/.f64 (/.f64 (-.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) (*.f64 b b)) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (*.f64 3 a))
39.9b
(fma.f64 -1/2 (/.f64 c b) (*.f64 -3/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a)))
48.4b
(*.f64 (/.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (pow.f64 (cbrt.f64 (*.f64 3 a)) 2)) (/.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (cbrt.f64 (*.f64 3 a))))
37.3b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
47.3b
(*.f64 -2/3 (/.f64 b a))
Compiler

Compiled 5589 to 3573 computations (36.1% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 a (*.f64 c -3))
0.3b
(/.f64 1/3 a)
1.4b
(-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) b)
24.6b
(sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))))

series14.0ms (0.2%)

Counts
4 → 64
Calls

27 calls:

TimeVariablePointExpression
2.0ms
a
@inf
(*.f64 a (*.f64 c -3))
1.0ms
b
@0
(sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))))
1.0ms
a
@-inf
(sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))))
0.0ms
c
@inf
(sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))))
0.0ms
b
@0
(-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) b)

rewrite68.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
737×prod-diff_binary64
230×log1p-udef_binary64
132×add-sqr-sqrt_binary64
125×*-un-lft-identity_binary64
125×pow1_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01240
126038
2328438
Stop Event
node limit
Counts
4 → 125
Calls
Call 1
Inputs
(sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))))
(-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) b)
(/.f64 1/3 a)
(*.f64 a (*.f64 c -3))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))) (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 1/4) (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 2)) (sqrt.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 2) 1/2) (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) (fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) (fma.f64 -1 b b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) 1 (neg.f64 b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) 1 (neg.f64 b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) 1 (neg.f64 b)) (fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) 1 (neg.f64 b)) (fma.f64 -1 b b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) 1 (neg.f64 b)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))) (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) (neg.f64 b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))) (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) (neg.f64 b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))) (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) (neg.f64 b)) (fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))) (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) (neg.f64 b)) (fma.f64 -1 b b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))) (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) (neg.f64 b)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 2)) (sqrt.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))))) (neg.f64 b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 2)) (sqrt.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))))) (neg.f64 b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 2)) (sqrt.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))))) (neg.f64 b)) (fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 2)) (sqrt.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))))) (neg.f64 b)) (fma.f64 -1 b b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 2)) (sqrt.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))))) (neg.f64 b)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 1 1/2) (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) (neg.f64 b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 1 1/2) (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) (neg.f64 b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 1 1/2) (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) (neg.f64 b)) (fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 1 1/2) (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) (neg.f64 b)) (fma.f64 -1 b b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 1 1/2) (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) (neg.f64 b)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 2) 1/2) (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 1/2) (neg.f64 b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 2) 1/2) (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 1/2) (neg.f64 b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 2) 1/2) (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 1/2) (neg.f64 b)) (fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 2) 1/2) (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 1/2) (neg.f64 b)) (fma.f64 -1 b b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 2) 1/2) (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) 1/2) (neg.f64 b)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)) 2) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 3/2) (pow.f64 b 3)) (/.f64 1 (+.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) (*.f64 b b)) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 1/4) (sqrt.f64 b)) (-.f64 (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 1/4) (sqrt.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))))) (-.f64 (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 3/2) (pow.f64 b 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))) (-.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 3/2) (pow.f64 b 3)) (+.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) (*.f64 b b)) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 3/2) (pow.f64 b 3))) (neg.f64 (+.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) (*.f64 b b))) (neg.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 3/2) (pow.f64 (neg.f64 b) 3)) (+.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) (neg.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) (*.f64 (neg.f64 b) (neg.f64 b))) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) (neg.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 1/4) (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 1/4) (neg.f64 b))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1/3 a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/3 (/.f64 1 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/3 a) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1/3 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/3 a)) (cbrt.f64 (/.f64 1/9 (*.f64 a a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1/9 (*.f64 a a))) (cbrt.f64 (/.f64 1/3 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1/3 a)) (sqrt.f64 (/.f64 1/3 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/3 (/.f64 1 (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 a) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1/3 a) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1/3 a) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 1/3 a)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 1/3 a)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 a 3) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1/9 (*.f64 a a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1/3 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1/3 a))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1/3 a) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 1/3 a)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 1/3 a)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1/3 a)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1/3 a)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 a (*.f64 c -3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 a (*.f64 c -3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 a (*.f64 c -3)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 a (*.f64 c -3))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 a (*.f64 c -3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 a) (*.f64 c -3)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 a (*.f64 c -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 a (*.f64 c -3)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 a 3) (pow.f64 (*.f64 c -3) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 c -3) 3) (pow.f64 a 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 a (*.f64 c -3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 a (*.f64 c -3))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 a (*.f64 c -3))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 a (*.f64 c -3))))))))

simplify40.0ms (0.7%)

Algorithm
egg-herbie
Rules
749×times-frac_binary64
583×associate-*l*_binary64
495×fma-def_binary64
428×associate-/l*_binary64
358×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01131431
13401414
211841375
Stop Event
node limit
Counts
189 → 173
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (sqrt.f64 (*.f64 -3 (*.f64 c a))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (sqrt.f64 (*.f64 -3 (*.f64 c a)))))
(+.f64 (*.f64 1/16 (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (sqrt.f64 (*.f64 -3 (*.f64 c a))))))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(*.f64 -1 b)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b)))
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b))))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7))) (+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 -2 b)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b))
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b)))
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
Outputs
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (sqrt.f64 (*.f64 -3 (*.f64 c a))))
(fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (sqrt.f64 (*.f64 -3 (*.f64 c a))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (sqrt.f64 (*.f64 -3 (*.f64 c a)))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3)) (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (sqrt.f64 (*.f64 -3 (*.f64 c a)))))
(+.f64 (*.f64 1/16 (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (sqrt.f64 (*.f64 -3 (*.f64 c a))))))
(fma.f64 1/16 (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 5)) (fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3)) (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (sqrt.f64 (*.f64 -3 (*.f64 c a))))))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(fma.f64 -3/2 (/.f64 c (/.f64 b a)) b)
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(fma.f64 -9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -3/2 (/.f64 c (/.f64 b a)) b))
(fma.f64 -9/8 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c))) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) b))
(fma.f64 -9/8 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(fma.f64 -9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -3/2 (/.f64 c (/.f64 b a)) (fma.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) b)))
(fma.f64 -9/8 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c))) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) b)))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -9/8 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) (fma.f64 -27/16 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 5)) (pow.f64 c 3)) b)))
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))
(fma.f64 3/2 (/.f64 c (/.f64 b a)) (neg.f64 b))
(fma.f64 (*.f64 (/.f64 c b) a) 3/2 (neg.f64 b))
(-.f64 (/.f64 3/2 (/.f64 (/.f64 b a) c)) b)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b)))
(fma.f64 3/2 (/.f64 c (/.f64 b a)) (fma.f64 9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (neg.f64 b)))
(-.f64 (fma.f64 (*.f64 (/.f64 c b) a) 3/2 (*.f64 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c))) 9/8)) b)
(-.f64 (fma.f64 (*.f64 (/.f64 c b) a) 3/2 (*.f64 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) 9/8)) b)
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b))))
(fma.f64 27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (fma.f64 3/2 (/.f64 c (/.f64 b a)) (fma.f64 9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (neg.f64 b))))
(fma.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) 27/16 (-.f64 (fma.f64 (*.f64 (/.f64 c b) a) 3/2 (*.f64 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c))) 9/8)) b))
(-.f64 (fma.f64 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 5)) (pow.f64 c 3)) 27/16 (fma.f64 (*.f64 (/.f64 c b) a) 3/2 (*.f64 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) 9/8))) b)
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(fma.f64 -3/2 (/.f64 c (/.f64 b a)) b)
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(fma.f64 -9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -3/2 (/.f64 c (/.f64 b a)) b))
(fma.f64 -9/8 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c))) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) b))
(fma.f64 -9/8 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(fma.f64 -9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -3/2 (/.f64 c (/.f64 b a)) (fma.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) b)))
(fma.f64 -9/8 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c))) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) b)))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -9/8 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) (fma.f64 -27/16 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 5)) (pow.f64 c 3)) b)))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(fma.f64 -3/2 (/.f64 c (/.f64 b a)) b)
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(fma.f64 -9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -3/2 (/.f64 c (/.f64 b a)) b))
(fma.f64 -9/8 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c))) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) b))
(fma.f64 -9/8 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(fma.f64 -9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -3/2 (/.f64 c (/.f64 b a)) (fma.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) b)))
(fma.f64 -9/8 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c))) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) b)))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -9/8 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) (fma.f64 -27/16 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 5)) (pow.f64 c 3)) b)))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b)))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (neg.f64 b))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) b)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3)) (+.f64 (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (neg.f64 b)))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3)) (-.f64 (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) b))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 -3/2 (*.f64 c a)) b)
(*.f64 -3/2 (*.f64 (/.f64 c b) a))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(fma.f64 -9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (/.f64 (*.f64 -3/2 (*.f64 c a)) b))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (*.f64 -9/8 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c)))))
(fma.f64 -9/8 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) (*.f64 -3/2 (*.f64 (/.f64 c b) a)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(fma.f64 -9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -3/2 (/.f64 c (/.f64 b a)) (*.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))))))
(fma.f64 -9/8 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c))) (fma.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -3/2 (*.f64 (/.f64 c b) a))))
(fma.f64 -9/8 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (/.f64 -27/16 (/.f64 (/.f64 (pow.f64 b 5) (pow.f64 c 3)) (pow.f64 a 3)))))
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7))) (+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (*.f64 c c) (*.f64 a a))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7)) (fma.f64 -9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -3/2 (/.f64 c (/.f64 b a)) (*.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))))
(fma.f64 -1/2 (/.f64 (fma.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 81/64)) (pow.f64 b 7)) (fma.f64 -9/8 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c))) (fma.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -3/2 (*.f64 (/.f64 c b) a)))))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 405/64) (pow.f64 b 7)) (fma.f64 -9/8 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (/.f64 -27/16 (/.f64 (/.f64 (pow.f64 b 5) (pow.f64 c 3)) (pow.f64 a 3))))))
(*.f64 -2 b)
(*.f64 b -2)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b))
(fma.f64 3/2 (/.f64 c (/.f64 b a)) (*.f64 b -2))
(fma.f64 b -2 (*.f64 (*.f64 (/.f64 c b) a) 3/2))
(fma.f64 b -2 (/.f64 3/2 (/.f64 (/.f64 b a) c)))
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b)))
(fma.f64 3/2 (/.f64 c (/.f64 b a)) (fma.f64 9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (*.f64 b -2)))
(fma.f64 (*.f64 (/.f64 c b) a) 3/2 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c))) 9/8)))
(fma.f64 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) 9/8 (fma.f64 b -2 (/.f64 3/2 (/.f64 (/.f64 b a) c))))
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b))))
(fma.f64 27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (fma.f64 3/2 (/.f64 c (/.f64 b a)) (fma.f64 9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (*.f64 b -2))))
(fma.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) 27/16 (fma.f64 (*.f64 (/.f64 c b) a) 3/2 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c))) 9/8))))
(fma.f64 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 5)) (pow.f64 c 3)) 27/16 (fma.f64 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) 9/8 (fma.f64 b -2 (/.f64 3/2 (/.f64 (/.f64 b a) c)))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 -3/2 (*.f64 c a)) b)
(*.f64 -3/2 (*.f64 (/.f64 c b) a))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(fma.f64 -9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (/.f64 (*.f64 -3/2 (*.f64 c a)) b))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (*.f64 -9/8 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c)))))
(fma.f64 -9/8 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) (*.f64 -3/2 (*.f64 (/.f64 c b) a)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(fma.f64 -9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -3/2 (/.f64 c (/.f64 b a)) (*.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))))))
(fma.f64 -9/8 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c))) (fma.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -3/2 (*.f64 (/.f64 c b) a))))
(fma.f64 -9/8 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (/.f64 -27/16 (/.f64 (/.f64 (pow.f64 b 5) (pow.f64 c 3)) (pow.f64 a 3)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(fma.f64 -9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -3/2 (/.f64 c (/.f64 b a)) (fma.f64 -1/2 (/.f64 (pow.f64 a 4) (/.f64 b (fma.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) (pow.f64 (*.f64 -9/8 (/.f64 (*.f64 c c) (pow.f64 b 3))) 2)))) (*.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))))
(fma.f64 -9/8 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c))) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 a 4) b) (fma.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) 81/64))) (*.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))))
(fma.f64 -9/8 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 a 4) b) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) 405/64)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (/.f64 -27/16 (/.f64 (/.f64 (pow.f64 b 5) (pow.f64 c 3)) (pow.f64 a 3))))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 -3/2 (*.f64 c a)) b)
(*.f64 -3/2 (*.f64 (/.f64 c b) a))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(fma.f64 -9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (/.f64 (*.f64 -3/2 (*.f64 c a)) b))
(fma.f64 -3/2 (*.f64 (/.f64 c b) a) (*.f64 -9/8 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c)))))
(fma.f64 -9/8 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) (*.f64 -3/2 (*.f64 (/.f64 c b) a)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(fma.f64 -9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -3/2 (/.f64 c (/.f64 b a)) (*.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))))))
(fma.f64 -9/8 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c))) (fma.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -3/2 (*.f64 (/.f64 c b) a))))
(fma.f64 -9/8 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (/.f64 -27/16 (/.f64 (/.f64 (pow.f64 b 5) (pow.f64 c 3)) (pow.f64 a 3)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(fma.f64 -9/8 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -3/2 (/.f64 c (/.f64 b a)) (fma.f64 -1/2 (/.f64 (pow.f64 a 4) (/.f64 b (fma.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) (pow.f64 (*.f64 -9/8 (/.f64 (*.f64 c c) (pow.f64 b 3))) 2)))) (*.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))))
(fma.f64 -9/8 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 3) (*.f64 c c))) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 a 4) b) (fma.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) 81/64))) (*.f64 -27/16 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))))
(fma.f64 -9/8 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) a) (*.f64 c c)) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 a 4) b) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) 405/64)) (fma.f64 -3/2 (*.f64 (/.f64 c b) a) (/.f64 -27/16 (/.f64 (/.f64 (pow.f64 b 5) (pow.f64 c 3)) (pow.f64 a 3))))))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))

prune228.0ms (4%)

Pruning

19 alts after pruning (17 fresh and 2 done)

PrunedKeptTotal
New1649173
Fresh5813
Picked011
Done011
Total16919188
Error
7.8b
Counts
188 → 19
Alt Table
StatusErrorProgram
47.5b
(fma.f64 1/2 (/.f64 c b) (*.f64 (/.f64 b a) -2/3))
60.0b
(cbrt.f64 (/.f64 (pow.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) 3) (pow.f64 (*.f64 3 a) 3)))
56.2b
(*.f64 (-.f64 b b) (/.f64 1/3 a))
38.4b
(*.f64 -1/2 (/.f64 c b))
43.3b
(*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) 3)) (/.f64 1/3 a))
45.1b
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
37.3b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
40.1b
(*.f64 (-.f64 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))) b) (/.f64 1/3 a))
41.3b
(*.f64 (-.f64 (*.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))) b) (/.f64 1/3 a))
47.3b
(/.f64 (*.f64 -2 b) (*.f64 3 a))
43.8b
(*.f64 (*.f64 -3/2 (*.f64 (/.f64 c b) a)) (/.f64 1/3 a))
39.1b
(*.f64 (fma.f64 (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 1/4) (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 1/4) (neg.f64 b)) (/.f64 1/3 a))
39.9b
(fma.f64 -1/2 (/.f64 c b) (*.f64 -3/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a)))
37.7b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) b) (pow.f64 (cbrt.f64 (/.f64 1/3 a)) 3))
36.4b
(*.f64 (exp.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b))) (/.f64 1/3 a))
47.3b
(*.f64 (*.f64 -2 b) (/.f64 1/3 a))
47.3b
(*.f64 -2/3 (/.f64 b a))
37.4b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) b) (/.f64 1/3 a))
48.1b
(pow.f64 (/.f64 (*.f64 3 a) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) -1)
Compiler

Compiled 4890 to 3143 computations (35.7% saved)

localize11.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.f64 1/3 a)
0.8b
(-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)
2.8b
(exp.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)))
16.2b
(sqrt.f64 (*.f64 a (*.f64 c -3)))

series37.0ms (0.7%)

Counts
3 → 24
Calls

24 calls:

TimeVariablePointExpression
7.0ms
b
@inf
(exp.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)))
4.0ms
a
@0
(exp.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)))
4.0ms
c
@-inf
(exp.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)))
3.0ms
a
@-inf
(exp.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)))
3.0ms
c
@inf
(exp.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)))

rewrite76.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
566×prod-diff_binary64
230×fma-def_binary64
204×expm1-udef_binary64
204×log1p-udef_binary64
123×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01239
123839
2290839
Stop Event
node limit
Counts
3 → 190
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(exp.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)))
(-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 -3 (*.f64 a c))) (cbrt.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (cbrt.f64 (*.f64 -3 (*.f64 a c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 c -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 -3 (*.f64 a c)) 1/4) (pow.f64 (*.f64 -3 (*.f64 a c)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 a c)) (sqrt.f64 -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 -3 (*.f64 a c))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 -3 (*.f64 a c))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 -3 (*.f64 a c))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 a c) 1/2) (sqrt.f64 -3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -3 (*.f64 a c)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -3 (*.f64 a c)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -3 (*.f64 a c)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 -3 (*.f64 a c)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 -3 (*.f64 a c))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 -1 b b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) 3/2) (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (fma.f64 -3 (*.f64 a c) (*.f64 b b)))) (/.f64 (pow.f64 b 3) (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (fma.f64 -3 (*.f64 a c) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (/.f64 (*.f64 b b) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) 3/2) (pow.f64 b 3)) (/.f64 1 (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (fma.f64 -3 (*.f64 a c) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (*.f64 b b)) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)) (-.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (fma.f64 -3 (*.f64 a c) (*.f64 b b))) (-.f64 (pow.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) 3/2) (pow.f64 b 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (-.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) 3/2) (pow.f64 b 3)) (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (fma.f64 -3 (*.f64 a c) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (*.f64 b b)) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) 3/2) (pow.f64 b 3))) (neg.f64 (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (fma.f64 -3 (*.f64 a c) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (*.f64 b b))) (neg.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) 3/2) (pow.f64 (neg.f64 b) 3)) (+.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (neg.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (*.f64 (neg.f64 b) (neg.f64 b))) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (neg.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))) 2)) (cbrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))) (sqrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1 (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1 (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 1 (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 1 (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 1 (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (neg.f64 (cbrt.f64 b)) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (cbrt.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (cbrt.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b))) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (neg.f64 (sqrt.f64 b)) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) 3/2) (pow.f64 b 3)) (/.f64 1 (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (fma.f64 -3 (*.f64 a c) (*.f64 b b)))) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) 3/2) (pow.f64 b 3)) (/.f64 1 (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (fma.f64 -3 (*.f64 a c) (*.f64 b b)))) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) 3/2) (pow.f64 b 3)) (/.f64 1 (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (fma.f64 -3 (*.f64 a c) (*.f64 b b)))) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (*.f64 b b)) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (*.f64 b b)) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (*.f64 b b)) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (neg.f64 b)) (cbrt.f64 (neg.f64 b))) (cbrt.f64 (neg.f64 b)) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 b)) (sqrt.f64 (neg.f64 b)) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)) (-.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)) (-.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)) (-.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 -1 b b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) 3/2) (pow.f64 b 3)) (/.f64 1 (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (fma.f64 -3 (*.f64 a c) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (*.f64 b b)) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)) (-.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (fma.f64 -3 (*.f64 a c) (*.f64 b b))) (-.f64 (pow.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) 3/2) (pow.f64 b 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (-.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) 3/2) (pow.f64 b 3)) (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (fma.f64 -3 (*.f64 a c) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (*.f64 b b)) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) 3/2) (pow.f64 b 3))) (neg.f64 (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (fma.f64 -3 (*.f64 a c) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (*.f64 b b))) (neg.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) 3/2) (pow.f64 (neg.f64 b) 3)) (+.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (neg.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (*.f64 (neg.f64 b) (neg.f64 b))) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (neg.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))) 2)) (cbrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))) (sqrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1 (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1 (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 1 (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 1 (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 1 (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (neg.f64 (cbrt.f64 b)) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (cbrt.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (cbrt.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b))) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (neg.f64 (sqrt.f64 b)) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) 3/2) (pow.f64 b 3)) (/.f64 1 (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (fma.f64 -3 (*.f64 a c) (*.f64 b b)))) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) 3/2) (pow.f64 b 3)) (/.f64 1 (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (fma.f64 -3 (*.f64 a c) (*.f64 b b)))) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) 3/2) (pow.f64 b 3)) (/.f64 1 (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (fma.f64 -3 (*.f64 a c) (*.f64 b b)))) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (*.f64 b b)) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (*.f64 b b)) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 -3 (*.f64 a c) (*.f64 b b)) (*.f64 b b)) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (neg.f64 b)) (cbrt.f64 (neg.f64 b))) (cbrt.f64 (neg.f64 b)) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 b)) (sqrt.f64 (neg.f64 b)) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)) (-.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)) (-.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)) (-.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))

simplify44.0ms (0.8%)

Algorithm
egg-herbie
Rules
872×fma-def_binary64
413×associate-/l/_binary64
331×associate-/r/_binary64
272×times-frac_binary64
204×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
067920
1182832
2513748
32595710
Stop Event
node limit
Counts
214 → 134
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))))
(*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8)) (pow.f64 (*.f64 -1/8 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) 2)) (pow.f64 b 7))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))))
(*.f64 -2 b)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -2 b))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -2 b)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -2 b))))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))))
(*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8)) (pow.f64 (*.f64 -1/8 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) 2)) (pow.f64 b 7))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))))
(*.f64 -2 b)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -2 b))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -2 b)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -2 b))))
Outputs
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b)))
(fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b)))
(fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) b)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3)) (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3)) (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3)) (-.f64 (fma.f64 1/2 (*.f64 (/.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) b))
(+.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (*.f64 (*.f64 (/.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) b) (+.f64 1/2 (/.f64 (*.f64 -1/8 (*.f64 b b)) (*.f64 -3 (*.f64 c a))))))
(*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b))
(*.f64 1/2 (/.f64 (*.f64 -3 (*.f64 c a)) b))
(/.f64 (*.f64 (*.f64 c a) -3/2) b)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))
(fma.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))
(fma.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (*.f64 1/2 (/.f64 (*.f64 -3 (*.f64 c a)) b)))
(fma.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (/.f64 (*.f64 (*.f64 c a) -3/2) b))
(*.f64 (*.f64 (/.f64 -3 b) (*.f64 c a)) (+.f64 (/.f64 (*.f64 (*.f64 c a) 3/8) (*.f64 b b)) 1/2))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)))))
(fma.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (fma.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5)) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)))))
(fma.f64 1/2 (/.f64 (*.f64 -3 (*.f64 c a)) b) (fma.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (/.f64 (*.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6)) (pow.f64 b 5))))
(fma.f64 1/16 (/.f64 (pow.f64 (*.f64 -3 (*.f64 c a)) 3) (pow.f64 b 5)) (fma.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (/.f64 (*.f64 (*.f64 c a) -3/2) b)))
(fma.f64 (/.f64 1/16 (pow.f64 b 5)) (*.f64 -27 (pow.f64 (*.f64 c a) 3)) (*.f64 (*.f64 (/.f64 -3 b) (*.f64 c a)) (+.f64 (/.f64 (*.f64 (*.f64 c a) 3/8) (*.f64 b b)) 1/2)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8)) (pow.f64 (*.f64 -1/8 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) 2)) (pow.f64 b 7))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))))
(fma.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (fma.f64 -1/2 (/.f64 (fma.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8) (pow.f64 (*.f64 -1/8 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) 2)) (pow.f64 b 7)) (fma.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5)) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))))
(fma.f64 1/2 (/.f64 (*.f64 -3 (*.f64 c a)) b) (fma.f64 -1/2 (/.f64 (fma.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8) (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8) 1/64)) (pow.f64 b 7)) (fma.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (/.f64 (*.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6)) (pow.f64 b 5)))))
(fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8) 5/64) (pow.f64 b 7)) (fma.f64 1/16 (/.f64 (pow.f64 (*.f64 -3 (*.f64 c a)) 3) (pow.f64 b 5)) (fma.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (/.f64 (*.f64 (*.f64 c a) -3/2) b))))
(+.f64 (/.f64 (*.f64 (pow.f64 (*.f64 -3 (*.f64 c a)) 4) -5/128) (pow.f64 b 7)) (fma.f64 (/.f64 1/16 (pow.f64 b 5)) (*.f64 -27 (pow.f64 (*.f64 c a) 3)) (*.f64 (*.f64 (/.f64 -3 b) (*.f64 c a)) (+.f64 (/.f64 (*.f64 (*.f64 c a) 3/8) (*.f64 b b)) 1/2))))
(*.f64 -2 b)
(*.f64 b -2)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -2 b))
(fma.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (*.f64 b -2))
(fma.f64 b -2 (*.f64 (/.f64 (*.f64 -3 (*.f64 c a)) b) -1/2))
(fma.f64 b -2 (/.f64 (*.f64 (*.f64 c a) 3/2) b))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -2 b)))
(fma.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (fma.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (*.f64 b -2)))
(fma.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) 1/8 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 -3 (*.f64 c a)) b) -1/2)))
(fma.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) 1/8 (fma.f64 b -2 (/.f64 (*.f64 (*.f64 c a) 3/2) b)))
(fma.f64 b -2 (*.f64 (*.f64 (/.f64 -3 b) (*.f64 c a)) (+.f64 -1/2 (/.f64 (*.f64 -3/8 (*.f64 c a)) (*.f64 b b)))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -2 b))))
(fma.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (fma.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (fma.f64 -1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5)) (*.f64 b -2))))
(fma.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) 1/8 (fma.f64 (/.f64 (*.f64 -3 (*.f64 c a)) b) -1/2 (fma.f64 b -2 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) -1/16) (pow.f64 b 5)))))
(fma.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) 1/8 (fma.f64 (/.f64 (pow.f64 (*.f64 -3 (*.f64 c a)) 3) (pow.f64 b 5)) -1/16 (fma.f64 b -2 (/.f64 (*.f64 (*.f64 c a) 3/2) b))))
(fma.f64 b -2 (fma.f64 (/.f64 (*.f64 -27 (pow.f64 (*.f64 c a) 3)) (pow.f64 b 5)) -1/16 (*.f64 (*.f64 (/.f64 -3 b) (*.f64 c a)) (+.f64 -1/2 (/.f64 (*.f64 -3/8 (*.f64 c a)) (*.f64 b b))))))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b)))
(fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b)))
(fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(-.f64 (fma.f64 1/2 (*.f64 (/.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) b)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3)) (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3)) (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3)) (-.f64 (fma.f64 1/2 (*.f64 (/.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) b))
(+.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (*.f64 (*.f64 (/.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) b) (+.f64 1/2 (/.f64 (*.f64 -1/8 (*.f64 b b)) (*.f64 -3 (*.f64 c a))))))
(*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b))
(*.f64 1/2 (/.f64 (*.f64 -3 (*.f64 c a)) b))
(/.f64 (*.f64 (*.f64 c a) -3/2) b)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))
(fma.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))
(fma.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (*.f64 1/2 (/.f64 (*.f64 -3 (*.f64 c a)) b)))
(fma.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (/.f64 (*.f64 (*.f64 c a) -3/2) b))
(*.f64 (*.f64 (/.f64 -3 b) (*.f64 c a)) (+.f64 (/.f64 (*.f64 (*.f64 c a) 3/8) (*.f64 b b)) 1/2))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)))))
(fma.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (fma.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5)) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)))))
(fma.f64 1/2 (/.f64 (*.f64 -3 (*.f64 c a)) b) (fma.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (/.f64 (*.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6)) (pow.f64 b 5))))
(fma.f64 1/16 (/.f64 (pow.f64 (*.f64 -3 (*.f64 c a)) 3) (pow.f64 b 5)) (fma.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (/.f64 (*.f64 (*.f64 c a) -3/2) b)))
(fma.f64 (/.f64 1/16 (pow.f64 b 5)) (*.f64 -27 (pow.f64 (*.f64 c a) 3)) (*.f64 (*.f64 (/.f64 -3 b) (*.f64 c a)) (+.f64 (/.f64 (*.f64 (*.f64 c a) 3/8) (*.f64 b b)) 1/2)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8)) (pow.f64 (*.f64 -1/8 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) 2)) (pow.f64 b 7))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))))
(fma.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (fma.f64 -1/2 (/.f64 (fma.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8) (pow.f64 (*.f64 -1/8 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) 2)) (pow.f64 b 7)) (fma.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5)) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))))
(fma.f64 1/2 (/.f64 (*.f64 -3 (*.f64 c a)) b) (fma.f64 -1/2 (/.f64 (fma.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8) (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8) 1/64)) (pow.f64 b 7)) (fma.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (/.f64 (*.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6)) (pow.f64 b 5)))))
(fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8) 5/64) (pow.f64 b 7)) (fma.f64 1/16 (/.f64 (pow.f64 (*.f64 -3 (*.f64 c a)) 3) (pow.f64 b 5)) (fma.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (/.f64 (*.f64 (*.f64 c a) -3/2) b))))
(+.f64 (/.f64 (*.f64 (pow.f64 (*.f64 -3 (*.f64 c a)) 4) -5/128) (pow.f64 b 7)) (fma.f64 (/.f64 1/16 (pow.f64 b 5)) (*.f64 -27 (pow.f64 (*.f64 c a) 3)) (*.f64 (*.f64 (/.f64 -3 b) (*.f64 c a)) (+.f64 (/.f64 (*.f64 (*.f64 c a) 3/8) (*.f64 b b)) 1/2))))
(*.f64 -2 b)
(*.f64 b -2)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -2 b))
(fma.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (*.f64 b -2))
(fma.f64 b -2 (*.f64 (/.f64 (*.f64 -3 (*.f64 c a)) b) -1/2))
(fma.f64 b -2 (/.f64 (*.f64 (*.f64 c a) 3/2) b))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -2 b)))
(fma.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (fma.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (*.f64 b -2)))
(fma.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) 1/8 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 -3 (*.f64 c a)) b) -1/2)))
(fma.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) 1/8 (fma.f64 b -2 (/.f64 (*.f64 (*.f64 c a) 3/2) b)))
(fma.f64 b -2 (*.f64 (*.f64 (/.f64 -3 b) (*.f64 c a)) (+.f64 -1/2 (/.f64 (*.f64 -3/8 (*.f64 c a)) (*.f64 b b)))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -2 b))))
(fma.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (fma.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (fma.f64 -1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5)) (*.f64 b -2))))
(fma.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) 1/8 (fma.f64 (/.f64 (*.f64 -3 (*.f64 c a)) b) -1/2 (fma.f64 b -2 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) -1/16) (pow.f64 b 5)))))
(fma.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) 1/8 (fma.f64 (/.f64 (pow.f64 (*.f64 -3 (*.f64 c a)) 3) (pow.f64 b 5)) -1/16 (fma.f64 b -2 (/.f64 (*.f64 (*.f64 c a) 3/2) b))))
(fma.f64 b -2 (fma.f64 (/.f64 (*.f64 -27 (pow.f64 (*.f64 c a) 3)) (pow.f64 b 5)) -1/16 (*.f64 (*.f64 (/.f64 -3 b) (*.f64 c a)) (+.f64 -1/2 (/.f64 (*.f64 -3/8 (*.f64 c a)) (*.f64 b b))))))

prune205.0ms (3.6%)

Pruning

19 alts after pruning (17 fresh and 2 done)

PrunedKeptTotal
New1515156
Fresh41216
Picked101
Done022
Total15619175
Error
4.4b
Counts
175 → 19
Alt Table
StatusErrorProgram
46.6b
(*.f64 (exp.f64 (log.f64 (-.f64 (hypot.f64 b (*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a))) b))) (/.f64 1/3 a))
47.3b
(/.f64 (*.f64 -2 b) (*.f64 3 a))
39.9b
(fma.f64 -1/2 (/.f64 c b) (*.f64 -3/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a)))
45.1b
(*.f64 (/.f64 (*.f64 (*.f64 c a) -3/2) b) (/.f64 1/3 a))
43.3b
(*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 3)) (/.f64 1/3 a))
47.5b
(fma.f64 1/2 (/.f64 c b) (*.f64 (/.f64 b a) -2/3))
60.0b
(cbrt.f64 (/.f64 (pow.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) 3) (pow.f64 (*.f64 3 a) 3)))
56.2b
(*.f64 (-.f64 b b) (/.f64 1/3 a))
37.4b
(*.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))) 2)) (cbrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))) (/.f64 1/3 a))
47.3b
(*.f64 (*.f64 -2 b) (/.f64 1/3 a))
37.3b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
40.1b
(*.f64 (-.f64 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))) b) (/.f64 1/3 a))
41.3b
(*.f64 (-.f64 (*.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))) b) (/.f64 1/3 a))
43.8b
(*.f64 (*.f64 -3/2 (*.f64 (/.f64 c b) a)) (/.f64 1/3 a))
39.1b
(*.f64 (fma.f64 (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 1/4) (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 1/4) (neg.f64 b)) (/.f64 1/3 a))
36.5b
(*.f64 (pow.f64 (exp.f64 1) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))) (/.f64 1/3 a))
38.4b
(*.f64 -1/2 (/.f64 c b))
37.4b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) b) (/.f64 1/3 a))
48.1b
(pow.f64 (/.f64 (*.f64 3 a) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) -1)
Compiler

Compiled 4491 to 2761 computations (38.5% saved)

localize13.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(/.f64 1/3 a)
0.8b
(-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)
2.9b
(pow.f64 (exp.f64 1) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))
16.2b
(sqrt.f64 (*.f64 -3 (*.f64 a c)))

series58.0ms (1%)

Counts
3 → 24
Calls

24 calls:

TimeVariablePointExpression
12.0ms
c
@inf
(pow.f64 (exp.f64 1) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))
9.0ms
a
@-inf
(pow.f64 (exp.f64 1) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))
7.0ms
c
@-inf
(pow.f64 (exp.f64 1) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))
6.0ms
a
@inf
(pow.f64 (exp.f64 1) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))
5.0ms
b
@inf
(pow.f64 (exp.f64 1) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))

rewrite68.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
559×prod-diff_binary64
226×expm1-udef_binary64
226×log1p-udef_binary64
134×add-sqr-sqrt_binary64
128×pow1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01439
128639
2325039
Stop Event
node limit
Counts
3 → 136
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 -3 (*.f64 a c)))
(pow.f64 (exp.f64 1) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))
(-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 -3 (*.f64 a c))) (cbrt.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (cbrt.f64 (*.f64 -3 (*.f64 a c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 a c)) (sqrt.f64 -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 a c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 -3 (*.f64 a c)) 1/4) (pow.f64 (*.f64 -3 (*.f64 a c)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 a c) 2) 9))) (sqrt.f64 (cbrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 a c) 2) 9)) 1/2) (pow.f64 (cbrt.f64 (*.f64 -3 (*.f64 a c))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 -3 a) 1/2) (sqrt.f64 c))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -3 (*.f64 a c)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -3 (*.f64 a c)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -3 (*.f64 a c)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 -3 (*.f64 a c)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 -3 (*.f64 a c))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 -1 b b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1 (neg.f64 b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1 (neg.f64 b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1 (neg.f64 b)) (fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1 (neg.f64 b)) (fma.f64 -1 b b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1 (neg.f64 b)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (cbrt.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c)))) (neg.f64 b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (cbrt.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c)))) (neg.f64 b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (cbrt.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c)))) (neg.f64 b)) (fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (cbrt.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c)))) (neg.f64 b)) (fma.f64 -1 b b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (cbrt.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c)))) (neg.f64 b)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) 3/2) (+.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (/.f64 (pow.f64 b 3) (+.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (/.f64 (*.f64 b b) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) 3/2) (pow.f64 b 3)) (/.f64 1 (+.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b b)) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (exp.f64 2)) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))) (pow.f64 (cbrt.f64 (E.f64)) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (E.f64)) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))) (pow.f64 (sqrt.f64 (E.f64)) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)) (-.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (-.f64 (pow.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) 3/2) (pow.f64 b 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (-.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) 3/2) (pow.f64 b 3)) (+.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b b)) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) 3/2) (pow.f64 b 3))) (neg.f64 (+.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b b))) (neg.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) 3/2) (pow.f64 (neg.f64 b) 3)) (+.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (neg.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 (neg.f64 b) (neg.f64 b))) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (neg.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c)))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (neg.f64 b))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 -1 b b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1 (neg.f64 b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1 (neg.f64 b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1 (neg.f64 b)) (fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1 (neg.f64 b)) (fma.f64 -1 b b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1 (neg.f64 b)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (cbrt.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c)))) (neg.f64 b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (cbrt.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c)))) (neg.f64 b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (cbrt.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c)))) (neg.f64 b)) (fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (cbrt.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c)))) (neg.f64 b)) (fma.f64 -1 b b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (cbrt.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c)))) (neg.f64 b)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) 3/2) (pow.f64 b 3)) (/.f64 1 (+.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b b)) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (exp.f64 2)) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))) (pow.f64 (cbrt.f64 (E.f64)) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (E.f64)) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))) (pow.f64 (sqrt.f64 (E.f64)) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)) (-.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (-.f64 (pow.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) 3/2) (pow.f64 b 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (-.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) 3/2) (pow.f64 b 3)) (+.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b b)) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) 3/2) (pow.f64 b 3))) (neg.f64 (+.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 b b))) (neg.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) 3/2) (pow.f64 (neg.f64 b) 3)) (+.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (-.f64 (*.f64 (neg.f64 b) (neg.f64 b)) (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (neg.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c))) (*.f64 (neg.f64 b) (neg.f64 b))) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (neg.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (*.f64 2 (log.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 2) (log.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))) 2)) (cbrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))) (sqrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (E.f64) (pow.f64 (cbrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))) 2)) (cbrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (E.f64) (sqrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))) (sqrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 -3 (*.f64 a c)))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (neg.f64 b))))))

simplify43.0ms (0.8%)

Algorithm
egg-herbie
Rules
890×associate-*l*_binary64
696×fma-def_binary64
569×times-frac_binary64
411×associate-/l*_binary64
292×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01531516
14341220
21460962
Stop Event
node limit
Counts
160 → 128
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))))
(exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2)) (pow.f64 b 2))) (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2)) (pow.f64 b 2))) (+.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))) (/.f64 (*.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))) (+.f64 (*.f64 1/32 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 1/24 (+.f64 (*.f64 -3/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 3 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)))))) (pow.f64 b 4))))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2)) (pow.f64 b 2))) (+.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))) (+.f64 (/.f64 (*.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))) (+.f64 (*.f64 1/32 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 1/24 (+.f64 (*.f64 -3/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 3 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)))))) (pow.f64 b 4)) (/.f64 (*.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))) (+.f64 (*.f64 -1/384 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6)) (+.f64 (*.f64 1/720 (+.f64 (*.f64 45/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6)) (+.f64 (*.f64 -720 (/.f64 (+.f64 (*.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8)) (pow.f64 (*.f64 -1/8 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) 2)) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (*.f64 -15/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6))))) (*.f64 -1/96 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 3 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4))) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2)))))) (pow.f64 b 6)))))
(exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2)))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2))) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2)) (pow.f64 b 2))) (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2))))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2))) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2)) (pow.f64 b 2))) (+.f64 (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2))) (/.f64 (*.f64 (+.f64 (*.f64 1/32 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 1/24 (+.f64 (*.f64 -3/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 -3/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4))))) (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2)))) (pow.f64 b 4))))
(+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/384 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6)) (+.f64 (*.f64 1/720 (+.f64 (*.f64 45/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6)) (+.f64 (*.f64 45/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6)) (*.f64 15/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6))))) (*.f64 1/96 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 -3/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4))) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))))) (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2)))) (pow.f64 b 6)) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2))) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2)) (pow.f64 b 2))) (+.f64 (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2))) (/.f64 (*.f64 (+.f64 (*.f64 1/32 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 1/24 (+.f64 (*.f64 -3/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 -3/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4))))) (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2)))) (pow.f64 b 4)))))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))))
(*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8)) (pow.f64 (*.f64 -1/8 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) 2)) (pow.f64 b 7))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))))
(*.f64 -2 b)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -2 b))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -2 b)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -2 b))))
Outputs
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(sqrt.f64 (*.f64 a (*.f64 -3 c)))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b)))
(fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b)))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 a (*.f64 -3 c)))) (sqrt.f64 (*.f64 a (*.f64 -3 c)))) b)
(-.f64 (fma.f64 1/2 (/.f64 b (/.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)) (sqrt.f64 (*.f64 a (*.f64 -3 c)))) b)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3)) (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 3)) (-.f64 (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 a (*.f64 -3 c)))) (sqrt.f64 (*.f64 a (*.f64 -3 c)))) b))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 3)) (-.f64 (fma.f64 1/2 (/.f64 b (/.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)) (sqrt.f64 (*.f64 a (*.f64 -3 c)))) b))
(exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b))))
(exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (neg.f64 (log.f64 b))))
(*.f64 (*.f64 1/2 (*.f64 a (*.f64 -3 c))) (/.f64 1 b))
(/.f64 (*.f64 (*.f64 c a) -3/2) b)
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2)) (pow.f64 b 2))) (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))))
(fma.f64 -1/4 (/.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (neg.f64 (log.f64 b)))) (/.f64 (*.f64 b b) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (neg.f64 (log.f64 b)))))
(fma.f64 -1/4 (*.f64 (/.f64 (*.f64 a (*.f64 -3 c)) b) (/.f64 (*.f64 (*.f64 1/2 (*.f64 a (*.f64 -3 c))) (/.f64 1 b)) b)) (*.f64 (*.f64 1/2 (*.f64 a (*.f64 -3 c))) (/.f64 1 b)))
(fma.f64 -1/4 (*.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 (*.f64 c a) 9/2)) b) (/.f64 (/.f64 1 b) b)) (/.f64 (*.f64 (*.f64 c a) -3/2) b))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2)) (pow.f64 b 2))) (+.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))) (/.f64 (*.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))) (+.f64 (*.f64 1/32 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 1/24 (+.f64 (*.f64 -3/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 3 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)))))) (pow.f64 b 4))))
(+.f64 (fma.f64 -1/4 (/.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (neg.f64 (log.f64 b)))) (/.f64 (*.f64 b b) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (neg.f64 (log.f64 b))))) (/.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (neg.f64 (log.f64 b)))) (/.f64 (pow.f64 b 4) (fma.f64 1/32 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (*.f64 1/24 (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) 9/4))))))
(fma.f64 -1/4 (*.f64 (/.f64 (*.f64 a (*.f64 -3 c)) b) (/.f64 (*.f64 (*.f64 1/2 (*.f64 a (*.f64 -3 c))) (/.f64 1 b)) b)) (fma.f64 (*.f64 1/2 (*.f64 a (*.f64 -3 c))) (/.f64 1 b) (*.f64 (/.f64 (*.f64 (*.f64 1/2 (*.f64 a (*.f64 -3 c))) (/.f64 1 b)) (pow.f64 b 4)) (fma.f64 1/32 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) (*.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) 3/32)))))
(fma.f64 -1/4 (*.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 (*.f64 c a) 9/2)) b) (/.f64 (/.f64 1 b) b)) (fma.f64 (/.f64 (/.f64 (*.f64 (*.f64 c a) -3/2) b) (pow.f64 b 4)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) 1/8) (/.f64 (*.f64 (*.f64 c a) -3/2) b)))
(+.f64 (*.f64 -1/4 (/.f64 (*.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2)) (pow.f64 b 2))) (+.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))) (+.f64 (/.f64 (*.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))) (+.f64 (*.f64 1/32 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 1/24 (+.f64 (*.f64 -3/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 3 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)))))) (pow.f64 b 4)) (/.f64 (*.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (log.f64 (/.f64 1 b)))) (+.f64 (*.f64 -1/384 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6)) (+.f64 (*.f64 1/720 (+.f64 (*.f64 45/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6)) (+.f64 (*.f64 -720 (/.f64 (+.f64 (*.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8)) (pow.f64 (*.f64 -1/8 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) 2)) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (*.f64 -15/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6))))) (*.f64 -1/96 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 3 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4))) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2)))))) (pow.f64 b 6)))))
(+.f64 (fma.f64 -1/4 (/.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (neg.f64 (log.f64 b)))) (/.f64 (*.f64 b b) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (neg.f64 (log.f64 b))))) (+.f64 (/.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (neg.f64 (log.f64 b)))) (/.f64 (pow.f64 b 4) (fma.f64 1/32 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (*.f64 1/24 (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) 9/4))))) (/.f64 (*.f64 (exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (neg.f64 (log.f64 b)))) (fma.f64 -1/384 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (fma.f64 1/720 (fma.f64 45/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (fma.f64 -720 (/.f64 (fma.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8) (pow.f64 (*.f64 -1/8 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) 2)) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) -15/4))) (*.f64 -1/96 (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) 9/4)))))) (pow.f64 b 6))))
(+.f64 (fma.f64 -1/4 (*.f64 (/.f64 (*.f64 a (*.f64 -3 c)) b) (/.f64 (*.f64 (*.f64 1/2 (*.f64 a (*.f64 -3 c))) (/.f64 1 b)) b)) (fma.f64 (*.f64 1/2 (*.f64 a (*.f64 -3 c))) (/.f64 1 b) (*.f64 (/.f64 (*.f64 (*.f64 1/2 (*.f64 a (*.f64 -3 c))) (/.f64 1 b)) (pow.f64 b 4)) (fma.f64 1/32 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) (*.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) 3/32))))) (*.f64 (/.f64 (*.f64 (*.f64 1/2 (*.f64 a (*.f64 -3 c))) (/.f64 1 b)) (pow.f64 b 6)) (fma.f64 -1/384 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 6) (fma.f64 1/720 (fma.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 6) 45/2 (fma.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 6) -15/4 (/.f64 -720 (/.f64 (*.f64 a (*.f64 -3 c)) (fma.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 8) (*.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 8) 1/64)))))) (*.f64 -1/96 (*.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 6) 9/4))))))
(fma.f64 -1/4 (*.f64 (/.f64 (*.f64 (*.f64 c a) (*.f64 (*.f64 c a) 9/2)) b) (/.f64 (/.f64 1 b) b)) (fma.f64 (/.f64 (/.f64 (*.f64 (*.f64 c a) -3/2) b) (pow.f64 b 4)) (*.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) 1/8) (fma.f64 (/.f64 (/.f64 (*.f64 (*.f64 c a) -3/2) b) (pow.f64 b 6)) (fma.f64 -1/384 (pow.f64 (*.f64 a (*.f64 -3 c)) 3) (fma.f64 1/720 (+.f64 (*.f64 240 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 8) 5/64) (*.f64 c a))) (*.f64 (pow.f64 (*.f64 a (*.f64 -3 c)) 3) 75/4)) (*.f64 (pow.f64 (*.f64 a (*.f64 -3 c)) 3) -3/128))) (/.f64 (*.f64 (*.f64 c a) -3/2) b))))
(exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2)))
(exp.f64 (fma.f64 -1 (log.f64 (/.f64 -1 b)) (log.f64 2)))
(*.f64 2 (pow.f64 (/.f64 -1 b) -1))
(/.f64 2 (/.f64 -1 b))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2))) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2)) (pow.f64 b 2))) (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2))))
(fma.f64 1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) (exp.f64 (fma.f64 -1 (log.f64 (/.f64 -1 b)) (log.f64 2)))) (*.f64 b b)) (exp.f64 (fma.f64 -1 (log.f64 (/.f64 -1 b)) (log.f64 2))))
(fma.f64 (pow.f64 (/.f64 -1 b) -1) 2 (/.f64 (*.f64 1/4 (*.f64 2 (pow.f64 (/.f64 -1 b) -1))) (/.f64 b (/.f64 (*.f64 a (*.f64 -3 c)) b))))
(fma.f64 1/4 (*.f64 (/.f64 a (/.f64 b (*.f64 -3 c))) (/.f64 (/.f64 2 (/.f64 -1 b)) b)) (/.f64 2 (/.f64 -1 b)))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2))) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2)) (pow.f64 b 2))) (+.f64 (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2))) (/.f64 (*.f64 (+.f64 (*.f64 1/32 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 1/24 (+.f64 (*.f64 -3/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 -3/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4))))) (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2)))) (pow.f64 b 4))))
(+.f64 (fma.f64 1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) (exp.f64 (fma.f64 -1 (log.f64 (/.f64 -1 b)) (log.f64 2)))) (*.f64 b b)) (exp.f64 (fma.f64 -1 (log.f64 (/.f64 -1 b)) (log.f64 2)))) (/.f64 (fma.f64 1/32 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (*.f64 1/24 (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) -9/4))) (/.f64 (pow.f64 b 4) (exp.f64 (fma.f64 -1 (log.f64 (/.f64 -1 b)) (log.f64 2))))))
(fma.f64 1/4 (*.f64 (/.f64 (*.f64 a (*.f64 -3 c)) b) (/.f64 (*.f64 2 (pow.f64 (/.f64 -1 b) -1)) b)) (fma.f64 (pow.f64 (/.f64 -1 b) -1) 2 (/.f64 (*.f64 2 (pow.f64 (/.f64 -1 b) -1)) (/.f64 (pow.f64 b 4) (fma.f64 1/32 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) (*.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) -3/32))))))
(fma.f64 1/4 (*.f64 (/.f64 a (/.f64 b (*.f64 -3 c))) (/.f64 (/.f64 2 (/.f64 -1 b)) b)) (*.f64 (+.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) -1/16) (pow.f64 b 4)) 1) (/.f64 2 (/.f64 -1 b))))
(+.f64 (/.f64 (*.f64 (+.f64 (*.f64 1/384 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6)) (+.f64 (*.f64 1/720 (+.f64 (*.f64 45/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6)) (+.f64 (*.f64 45/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6)) (*.f64 15/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6))))) (*.f64 1/96 (*.f64 (+.f64 (*.f64 -3/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 -3/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4))) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))))) (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2)))) (pow.f64 b 6)) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2))) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2)) (pow.f64 b 2))) (+.f64 (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2))) (/.f64 (*.f64 (+.f64 (*.f64 1/32 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 1/24 (+.f64 (*.f64 -3/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) (*.f64 -3/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4))))) (exp.f64 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 b))) (log.f64 2)))) (pow.f64 b 4)))))
(+.f64 (+.f64 (fma.f64 1/4 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) (exp.f64 (fma.f64 -1 (log.f64 (/.f64 -1 b)) (log.f64 2)))) (*.f64 b b)) (exp.f64 (fma.f64 -1 (log.f64 (/.f64 -1 b)) (log.f64 2)))) (/.f64 (fma.f64 1/32 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (*.f64 1/24 (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) -9/4))) (/.f64 (pow.f64 b 4) (exp.f64 (fma.f64 -1 (log.f64 (/.f64 -1 b)) (log.f64 2)))))) (/.f64 (fma.f64 1/384 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (fma.f64 1/720 (fma.f64 45/4 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) 105/4)) (*.f64 (*.f64 1/96 (*.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) -9/4)) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2)))) (/.f64 (pow.f64 b 6) (exp.f64 (fma.f64 -1 (log.f64 (/.f64 -1 b)) (log.f64 2))))))
(+.f64 (fma.f64 1/4 (*.f64 (/.f64 (*.f64 a (*.f64 -3 c)) b) (/.f64 (*.f64 2 (pow.f64 (/.f64 -1 b) -1)) b)) (fma.f64 (pow.f64 (/.f64 -1 b) -1) 2 (/.f64 (*.f64 2 (pow.f64 (/.f64 -1 b) -1)) (/.f64 (pow.f64 b 4) (fma.f64 1/32 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) (*.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) -3/32)))))) (/.f64 (*.f64 2 (pow.f64 (/.f64 -1 b) -1)) (/.f64 (pow.f64 b 6) (fma.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 6) 1/384 (fma.f64 1/720 (*.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 6) 75/2) (*.f64 1/96 (*.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 6) -9/4)))))))
(+.f64 (fma.f64 1/4 (*.f64 (/.f64 a (/.f64 b (*.f64 -3 c))) (/.f64 (/.f64 2 (/.f64 -1 b)) b)) (/.f64 2 (/.f64 -1 b))) (*.f64 (/.f64 2 (/.f64 -1 b)) (+.f64 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) -1/16) (pow.f64 b 4)) (/.f64 (+.f64 (*.f64 (pow.f64 (*.f64 a (*.f64 -3 c)) 3) -3/128) (fma.f64 (pow.f64 (*.f64 a (*.f64 -3 c)) 3) 1/384 (*.f64 (pow.f64 (*.f64 a (*.f64 -3 c)) 3) 5/96))) (pow.f64 b 6)))))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(sqrt.f64 (*.f64 a (*.f64 -3 c)))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b)))
(fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b)))
(-.f64 (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 a (*.f64 -3 c)))) (sqrt.f64 (*.f64 a (*.f64 -3 c)))) b)
(-.f64 (fma.f64 1/2 (/.f64 b (/.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)) (sqrt.f64 (*.f64 a (*.f64 -3 c)))) b)
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (*.f64 -1 b))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 3)) (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 3)) (-.f64 (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 a (*.f64 -3 c)))) (sqrt.f64 (*.f64 a (*.f64 -3 c)))) b))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 3)) (-.f64 (fma.f64 1/2 (/.f64 b (/.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)) (sqrt.f64 (*.f64 a (*.f64 -3 c)))) b))
(*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b))
(exp.f64 (+.f64 (log.f64 (*.f64 1/2 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2))) (neg.f64 (log.f64 b))))
(*.f64 (*.f64 1/2 (*.f64 a (*.f64 -3 c))) (/.f64 1 b))
(/.f64 (*.f64 (*.f64 c a) -3/2) b)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))
(fma.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))
(fma.f64 1/2 (/.f64 (*.f64 a (*.f64 -3 c)) b) (/.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) (/.f64 (pow.f64 b 3) -1/8)))
(fma.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) (pow.f64 b 3)) (/.f64 (*.f64 (*.f64 c a) -3/2) b))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)))))
(fma.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (fma.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5)) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)))))
(fma.f64 1/2 (/.f64 (*.f64 a (*.f64 -3 c)) b) (fma.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 6) (pow.f64 b 5)) (/.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) (/.f64 (pow.f64 b 3) -1/8))))
(fma.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) (pow.f64 b 3)) (fma.f64 1/16 (/.f64 (pow.f64 (*.f64 a (*.f64 -3 c)) 3) (pow.f64 b 5)) (/.f64 (*.f64 (*.f64 c a) -3/2) b)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8)) (pow.f64 (*.f64 -1/8 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) 2)) (pow.f64 b 7))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))))
(fma.f64 1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (fma.f64 -1/2 (/.f64 (fma.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 8) (pow.f64 (*.f64 -1/8 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4)) 2)) (pow.f64 b 7)) (fma.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5)) (*.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))))))
(fma.f64 1/2 (/.f64 (*.f64 a (*.f64 -3 c)) b) (fma.f64 -1/2 (/.f64 (fma.f64 1/16 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 8) (*.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 8) 1/64)) (pow.f64 b 7)) (fma.f64 1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 6) (pow.f64 b 5)) (/.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) (/.f64 (pow.f64 b 3) -1/8)))))
(fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 8) 5/64) (pow.f64 b 7)) (fma.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) (pow.f64 b 3)) (fma.f64 1/16 (/.f64 (pow.f64 (*.f64 a (*.f64 -3 c)) 3) (pow.f64 b 5)) (/.f64 (*.f64 (*.f64 c a) -3/2) b))))
(*.f64 -2 b)
(*.f64 b -2)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -2 b))
(fma.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (*.f64 b -2))
(fma.f64 (/.f64 (*.f64 a (*.f64 -3 c)) b) -1/2 (*.f64 b -2))
(fma.f64 b -2 (/.f64 (*.f64 (*.f64 c a) 3/2) b))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (*.f64 -2 b)))
(fma.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (fma.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (*.f64 b -2)))
(fma.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) (pow.f64 b 3)) 1/8 (fma.f64 (/.f64 (*.f64 a (*.f64 -3 c)) b) -1/2 (*.f64 b -2)))
(fma.f64 b -2 (fma.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) (pow.f64 b 3)) 1/8 (/.f64 (*.f64 (*.f64 c a) 3/2) b)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5))) (*.f64 -2 b))))
(fma.f64 1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 4) (pow.f64 b 3)) (fma.f64 -1/2 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 2) b) (fma.f64 -1/16 (/.f64 (pow.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 6) (pow.f64 b 5)) (*.f64 b -2))))
(fma.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) (pow.f64 b 3)) 1/8 (fma.f64 (/.f64 (*.f64 a (*.f64 -3 c)) b) -1/2 (fma.f64 b -2 (*.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 6) (pow.f64 b 5)) -1/16))))
(fma.f64 (/.f64 (pow.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) 4) (pow.f64 b 3)) 1/8 (fma.f64 b -2 (fma.f64 (/.f64 (pow.f64 (*.f64 a (*.f64 -3 c)) 3) (pow.f64 b 5)) -1/16 (/.f64 (*.f64 (*.f64 c a) 3/2) b))))

prune168.0ms (3%)

Pruning

14 alts after pruning (12 fresh and 2 done)

PrunedKeptTotal
New1491150
Fresh51116
Picked101
Done022
Total15514169
Error
0.9b
Counts
169 → 14
Alt Table
StatusErrorProgram
46.6b
(*.f64 (exp.f64 (log.f64 (-.f64 (hypot.f64 b (*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a))) b))) (/.f64 1/3 a))
47.3b
(/.f64 (*.f64 -2 b) (*.f64 3 a))
39.9b
(fma.f64 -1/2 (/.f64 c b) (*.f64 -3/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a)))
45.1b
(*.f64 (/.f64 (*.f64 (*.f64 c a) -3/2) b) (/.f64 1/3 a))
43.3b
(*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 3)) (/.f64 1/3 a))
47.7b
(*.f64 (pow.f64 (exp.f64 1) (log.f64 (-.f64 (hypot.f64 b (*.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c))) b))) (/.f64 1/3 a))
47.3b
(*.f64 (*.f64 -2 b) (/.f64 1/3 a))
37.3b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
41.3b
(*.f64 (-.f64 (*.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))) b) (/.f64 1/3 a))
39.1b
(*.f64 (fma.f64 (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 1/4) (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 1/4) (neg.f64 b)) (/.f64 1/3 a))
60.0b
(cbrt.f64 (/.f64 (pow.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) 3) (pow.f64 (*.f64 3 a) 3)))
38.4b
(*.f64 -1/2 (/.f64 c b))
37.4b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) b) (/.f64 1/3 a))
48.1b
(pow.f64 (/.f64 (*.f64 3 a) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) -1)
Compiler

Compiled 4800 to 3235 computations (32.6% saved)

regimes597.0ms (10.6%)

Accuracy

Total -52.2b remaining (-440.5%)

Threshold costs -52.2b (-440.5%)

Counts
30 → 3
Calls
Call 1
Inputs
(*.f64 (pow.f64 (exp.f64 1) (log.f64 (-.f64 (hypot.f64 b (*.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c))) b))) (/.f64 1/3 a))
(*.f64 (exp.f64 (log.f64 (-.f64 (hypot.f64 b (*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a))) b))) (/.f64 1/3 a))
(*.f64 (/.f64 (*.f64 (*.f64 c a) -3/2) b) (/.f64 1/3 a))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b) 3)) (/.f64 1/3 a))
(*.f64 (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))) 2)) (cbrt.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b)))) (/.f64 1/3 a))
(*.f64 (pow.f64 (exp.f64 1) (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) b))) (/.f64 1/3 a))
(*.f64 (-.f64 b b) (/.f64 1/3 a))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b) 3)) (/.f64 1/3 a))
(*.f64 (-.f64 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))) b) (/.f64 1/3 a))
(*.f64 (-.f64 (*.f64 (cbrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))))) b) (/.f64 1/3 a))
(*.f64 (*.f64 -3/2 (*.f64 (/.f64 c b) a)) (/.f64 1/3 a))
(*.f64 (fma.f64 (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 1/4) (pow.f64 (fma.f64 b b (*.f64 a (*.f64 c -3))) 1/4) (neg.f64 b)) (/.f64 1/3 a))
(*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) b) (pow.f64 (cbrt.f64 (/.f64 1/3 a)) 3))
(*.f64 (exp.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) b))) (/.f64 1/3 a))
(*.f64 (*.f64 -2 b) (/.f64 1/3 a))
(fma.f64 1/2 (/.f64 c b) (*.f64 (/.f64 b a) -2/3))
(cbrt.f64 (/.f64 (pow.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))) 3) (pow.f64 (*.f64 3 a) 3)))
(*.f64 -1/2 (/.f64 c b))
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
(/.f64 (+.f64 (neg.f64 b) b) (*.f64 3 a))
(/.f64 (*.f64 (-.f64 (*.f64 b b) (fma.f64 b b (*.f64 c (*.f64 a -3)))) (/.f64 1 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))))))) (*.f64 3 a))
(pow.f64 (/.f64 (*.f64 3 a) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) -1)
(/.f64 (*.f64 -2 b) (*.f64 3 a))
(*.f64 (/.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) a) (/.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) 3))
(/.f64 (/.f64 (-.f64 (fma.f64 b b (*.f64 c (*.f64 a -3))) (*.f64 b b)) (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (*.f64 3 a))
(fma.f64 -1/2 (/.f64 c b) (*.f64 -3/8 (*.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a)))
(*.f64 (/.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (pow.f64 (cbrt.f64 (*.f64 3 a)) 2)) (/.f64 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -3)))))) (cbrt.f64 (*.f64 3 a))))
(*.f64 -2/3 (/.f64 b a))
(*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -3)))) b) (/.f64 1/3 a))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
Outputs
(/.f64 (*.f64 -2 b) (*.f64 3 a))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
(*.f64 -1/2 (/.f64 c b))
Results
131.0ms21.1ba
44.0ms11.8bb
93.0ms21.9bc
43.0ms14.3b(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
132.0ms21.1b(*.f64 3 a)
139.0ms21.1b(*.f64 3 a)
Compiler

Compiled 560 to 361 computations (35.5% saved)

bsearch183.0ms (3.2%)

Algorithm
binary-search
Calls

2 calls:

176.0ms
b
7.0ms
b
Steps
ItersPointRange
5.8e-83
∈ [
5.7024691118454846e-83
,
5.582055736400726e-80
]
-1e+133
∈ [
-3.6796224617263894e+133
,
-4.104022470095194e+131
]
Compiler

Compiled 298 to 219 computations (26.5% saved)

simplify6.0ms (0.1%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
02655
14053
26053
36953
47553
57753
Stop Event
saturated
Calls
Call 1
Inputs
(if (<=.f64 b -10000000000000000223511723594768599335098409300973759560478836428900264860242343595976203511843100595010152570837624953702918544949248) (/.f64 (*.f64 -2 b) (*.f64 3 a)) (if (<=.f64 b 3964391938669209/68351585149469122636640694597425667667286544715412888638305331450311031224980497600734786781970432) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a)) (*.f64 -1/2 (/.f64 c b))))
Outputs
(if (<=.f64 b -10000000000000000223511723594768599335098409300973759560478836428900264860242343595976203511843100595010152570837624953702918544949248) (/.f64 (*.f64 -2 b) (*.f64 3 a)) (if (<=.f64 b 3964391938669209/68351585149469122636640694597425667667286544715412888638305331450311031224980497600734786781970432) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a)) (*.f64 -1/2 (/.f64 c b))))
(if (<=.f64 b -10000000000000000223511723594768599335098409300973759560478836428900264860242343595976203511843100595010152570837624953702918544949248) (/.f64 (*.f64 b -2) (*.f64 3 a)) (if (<=.f64 b 3964391938669209/68351585149469122636640694597425667667286544715412888638305331450311031224980497600734786781970432) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a)) (*.f64 -1/2 (/.f64 c b))))
(if (<=.f64 b -10000000000000000223511723594768599335098409300973759560478836428900264860242343595976203511843100595010152570837624953702918544949248) (/.f64 (*.f64 b -2) (*.f64 3 a)) (if (<=.f64 b 3964391938669209/68351585149469122636640694597425667667286544715412888638305331450311031224980497600734786781970432) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (*.f64 3 a)) (*.f64 -1/2 (/.f64 c b))))

end25.0ms (0.4%)

Stop Event
fuel
Compiler

Compiled 78 to 54 computations (30.8% saved)

Profiling

Loading profile data...