Details

Time bar (total: 6.9s)

analyze1.4s (20.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
7.8%85.8%6.4%7
10.1%83.5%6.4%8
16.8%74.5%8.7%9
29.1%57.5%13.4%10
33.6%51.4%15%11
39.2%42.7%18.1%12
46%33.4%20.6%13
49.5%28.2%22.4%14
Compiler

Compiled 42 to 27 computations (35.7% saved)

sample1.8s (26.1%)

Results
1.6s8256×body128valid
196.0ms1083×body128invalid

preprocess38.0ms (0.6%)

Algorithm
egg-herbie
Rules
676×fma-def_binary64
491×associate-/l*_binary64
481×div-sub_binary64
383×fma-neg_binary64
239×sub-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
055232
1131208
2321208
3700200
41318200
52435200
033
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
(if (>=.f64 a 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 (*.f64 4 b) c))))) (/.f64 (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 (*.f64 4 b) c)))) (*.f64 2 b)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 a) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 c) a))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 c) a)))) (*.f64 2 c)))
(if (>=.f64 c 0) (/.f64 (*.f64 2 b) (-.f64 (neg.f64 c) (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 (*.f64 4 a) b))))) (/.f64 (+.f64 (neg.f64 c) (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 (*.f64 4 a) b)))) (*.f64 2 a)))
Outputs
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a))))) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 (/.f64 2 (-.f64 (neg.f64 b) (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))) c) (/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 (/.f64 c (-.f64 (neg.f64 b) (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))) 2) (/.f64 (-.f64 (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) b) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))) (/.f64 (-.f64 (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) b) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (/.f64 c -1/2) (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))) (*.f64 -1/2 (/.f64 (-.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))) (*.f64 -1/2 (/.f64 (-.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) a)))
(if (>=.f64 a 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 (*.f64 4 b) c))))) (/.f64 (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 (*.f64 4 b) c)))) (*.f64 2 b)))
(if (>=.f64 a 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 c (*.f64 b 4)))))) (/.f64 (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 c (*.f64 b 4))))) (*.f64 b 2)))
(if (>=.f64 a 0) (*.f64 (/.f64 2 (-.f64 (neg.f64 a) (sqrt.f64 (fma.f64 a a (*.f64 c (*.f64 b -4)))))) c) (/.f64 (-.f64 (sqrt.f64 (fma.f64 a a (*.f64 c (*.f64 b -4)))) a) (*.f64 b 2)))
(if (>=.f64 a 0) (/.f64 2 (/.f64 (-.f64 (neg.f64 a) (sqrt.f64 (fma.f64 c (*.f64 b -4) (*.f64 a a)))) c)) (/.f64 (-.f64 (sqrt.f64 (fma.f64 c (*.f64 b -4) (*.f64 a a))) a) (*.f64 b 2)))
(if (>=.f64 a 0) (*.f64 c (/.f64 -2 (+.f64 a (sqrt.f64 (fma.f64 b (*.f64 c -4) (*.f64 a a)))))) (/.f64 (-.f64 (sqrt.f64 (fma.f64 b (*.f64 c -4) (*.f64 a a))) a) (*.f64 b 2)))
(if (>=.f64 a 0) (/.f64 (/.f64 c -1/2) (+.f64 a (sqrt.f64 (fma.f64 b (*.f64 c -4) (*.f64 a a))))) (*.f64 -1/2 (/.f64 (-.f64 a (sqrt.f64 (fma.f64 b (*.f64 c -4) (*.f64 a a)))) b)))
(if (>=.f64 a 0) (*.f64 -2 (/.f64 c (+.f64 a (sqrt.f64 (fma.f64 b (*.f64 c -4) (*.f64 a a)))))) (/.f64 (-.f64 (sqrt.f64 (fma.f64 b (*.f64 c -4) (*.f64 a a))) a) (*.f64 b 2)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 a) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 c) a))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 c) a)))) (*.f64 2 c)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 a) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a)))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 4 (*.f64 c a))))) (*.f64 2 c)))
(if (>=.f64 b 0) (*.f64 (/.f64 2 (-.f64 (neg.f64 b) (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))) a) (/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (*.f64 2 c)))
(if (>=.f64 b 0) (*.f64 a (/.f64 2 (-.f64 (neg.f64 b) (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))) (/.f64 (-.f64 (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) b) (*.f64 2 c)))
(if (>=.f64 b 0) (*.f64 a (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))) (/.f64 (-.f64 (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) b) (*.f64 2 c)))
(if (>=.f64 b 0) (*.f64 a (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))) (/.f64 (-.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) (*.f64 -2 c)))
(if (>=.f64 c 0) (/.f64 (*.f64 2 b) (-.f64 (neg.f64 c) (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 (*.f64 4 a) b))))) (/.f64 (+.f64 (neg.f64 c) (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 (*.f64 4 a) b)))) (*.f64 2 a)))
(if (>=.f64 c 0) (/.f64 2 (/.f64 (-.f64 (neg.f64 c) (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 b (*.f64 4 a))))) b)) (/.f64 (+.f64 (neg.f64 c) (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 b (*.f64 4 a))))) (*.f64 2 a)))
(if (>=.f64 c 0) (/.f64 b (/.f64 (-.f64 (neg.f64 c) (sqrt.f64 (fma.f64 c c (*.f64 b (*.f64 a -4))))) 2)) (/.f64 (-.f64 (sqrt.f64 (fma.f64 c c (*.f64 b (*.f64 a -4)))) c) (*.f64 2 a)))
(if (>=.f64 c 0) (/.f64 b (/.f64 (-.f64 (neg.f64 c) (sqrt.f64 (fma.f64 b (*.f64 a -4) (*.f64 c c)))) 2)) (/.f64 (-.f64 (sqrt.f64 (fma.f64 b (*.f64 a -4) (*.f64 c c))) c) (*.f64 2 a)))
(if (>=.f64 c 0) (*.f64 b (/.f64 -2 (+.f64 c (sqrt.f64 (fma.f64 c c (*.f64 b (*.f64 a -4))))))) (/.f64 (-.f64 (sqrt.f64 (fma.f64 c c (*.f64 b (*.f64 a -4)))) c) (*.f64 2 a)))
(if (>=.f64 c 0) (/.f64 b (*.f64 -1/2 (+.f64 c (sqrt.f64 (fma.f64 c c (*.f64 b (*.f64 a -4))))))) (/.f64 (-.f64 (sqrt.f64 (fma.f64 c c (*.f64 b (*.f64 a -4)))) c) (*.f64 2 a)))
(if (>=.f64 c 0) (/.f64 b (*.f64 -1/2 (+.f64 c (sqrt.f64 (fma.f64 b (*.f64 a -4) (*.f64 c c)))))) (/.f64 (-.f64 (sqrt.f64 (fma.f64 b (*.f64 a -4) (*.f64 c c))) c) (*.f64 2 a)))
Compiler

Compiled 41 to 26 computations (36.6% saved)

simplify32.0ms (0.5%)

Algorithm
egg-herbie
Rules
781×fma-neg_binary64
464×times-frac_binary64
353×div-sub_binary64
283×cancel-sign-sub-inv_binary64
251×associate-/l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02258
14452
29952
324050
443950
578050
6149350
7285650
8430250
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
Outputs
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a))))) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))) (/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))) (/.f64 (-.f64 (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) b) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))))) (/.f64 (-.f64 (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))) b) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (/.f64 c -1/2) (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))))) (*.f64 -1/2 (/.f64 (-.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))) a)))
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))))) (*.f64 (/.f64 (-.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))) a) -1/2))
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b))))) (*.f64 (-.f64 b (sqrt.f64 (fma.f64 a (*.f64 c -4) (*.f64 b b)))) (/.f64 -1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))) (/.f64 -1/2 a)))

prune5.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

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

Compiled 231 to 143 computations (38.1% saved)

localize19.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))) (/.f64 -1/2 a))
0.4b
(-.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))
0.7b
(+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))
27.2b
(sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))
Compiler

Compiled 1536 to 1280 computations (16.7% saved)

series28.0ms (0.4%)

Counts
4 → 80
Calls

36 calls:

TimeVariablePointExpression
2.0ms
c
@-inf
(sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))
1.0ms
c
@0
(*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))) (/.f64 -1/2 a))
1.0ms
a
@inf
(*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))) (/.f64 -1/2 a))
1.0ms
c
@inf
(sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))
1.0ms
c
@0
(sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))

rewrite77.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
269×expm1-udef_binary64
269×log1p-udef_binary64
237×fma-neg_binary64
156×add-sqr-sqrt_binary64
148×*-un-lft-identity_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify56.0ms (0.8%)

Algorithm
egg-herbie
Rules
791×fma-def_binary64
679×associate-/l*_binary64
571×associate-/r*_binary64
166×associate-/r/_binary64
110×associate-+r+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01702576
15382498
218912310
Stop Event
node limit
Counts
230 → 235
Calls
Call 1
Inputs
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b))))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 b (+.f64 (*.f64 -4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 -2 (/.f64 (*.f64 c a) b)))))
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b))))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 b (+.f64 (*.f64 -4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 -2 (/.f64 (*.f64 c a) b)))))
(sqrt.f64 (*.f64 -4 (*.f64 c a)))
(+.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -4 (*.f64 c a))))))
(+.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3)))))
(+.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 5))) (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3))))))
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b))))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 b (+.f64 (*.f64 -4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 -2 (/.f64 (*.f64 c a) b)))))
(*.f64 -1 b)
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b)))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b))))
(sqrt.f64 (*.f64 -4 (*.f64 c a)))
(+.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) b)
(+.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -4 (*.f64 c a))))) b))
(+.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (+.f64 b (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3))))))
(*.f64 2 b)
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b)))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))))
(*.f64 2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -2 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7))) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 2 b)
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b)))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))))
(*.f64 2 b)
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b)))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))))
(*.f64 -1 (sqrt.f64 (*.f64 -4 (*.f64 c a))))
(+.f64 (*.f64 -1 (sqrt.f64 (*.f64 -4 (*.f64 c a)))) b)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (+.f64 (*.f64 -1 (sqrt.f64 (*.f64 -4 (*.f64 c a)))) b))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3))) (+.f64 (*.f64 -1 (sqrt.f64 (*.f64 -4 (*.f64 c a)))) b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -2 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7))) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 2 b)
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b)))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))))
(*.f64 2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -2 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 -2 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2) (*.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)))) (pow.f64 a 4)) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 1/2 (/.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) a))
(+.f64 (*.f64 -1/2 (/.f64 b a)) (*.f64 1/2 (/.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) a)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 b 2) (*.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) a))) (+.f64 (*.f64 -1/2 (/.f64 b a)) (*.f64 1/2 (/.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) a))))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 b 2) (*.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) a))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 b 4) (*.f64 (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3) a))) (+.f64 (*.f64 -1/2 (/.f64 b a)) (*.f64 1/2 (/.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) a)))))
(*.f64 -1 (/.f64 c b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1/4 (/.f64 (+.f64 (pow.f64 (*.f64 -2 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (*.f64 a (pow.f64 b 7)))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(*.f64 -1 (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)) (+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a))))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)) (+.f64 (/.f64 c b) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (*.f64 -1 (/.f64 b a)))))
(*.f64 -1 (/.f64 c b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -2 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) (*.f64 a b))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(*.f64 -1 (/.f64 c b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 -2 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2) (*.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)))) (pow.f64 a 3)) b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
Outputs
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 c (/.f64 b a))))
(fma.f64 -2 (*.f64 (/.f64 c b) a) b)
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b))))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (+.f64 b (*.f64 -2 (/.f64 c (/.f64 b a)))))
(fma.f64 -2 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a)) (fma.f64 -2 (*.f64 (/.f64 c b) a) b))
(fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) b)
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 b (+.f64 (*.f64 -4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 -2 (/.f64 (*.f64 c a) b)))))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (+.f64 b (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -2 (/.f64 c (/.f64 b a))))))
(+.f64 (fma.f64 -4 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) (/.f64 -2 (/.f64 b (*.f64 c a)))) (fma.f64 -2 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a)) b))
(+.f64 (fma.f64 -4 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) b) (*.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c)))))
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 c (/.f64 b a))))
(fma.f64 -2 (*.f64 (/.f64 c b) a) b)
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b))))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (+.f64 b (*.f64 -2 (/.f64 c (/.f64 b a)))))
(fma.f64 -2 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a)) (fma.f64 -2 (*.f64 (/.f64 c b) a) b))
(fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) b)
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 b (+.f64 (*.f64 -4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 -2 (/.f64 (*.f64 c a) b)))))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (+.f64 b (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -2 (/.f64 c (/.f64 b a))))))
(+.f64 (fma.f64 -4 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) (/.f64 -2 (/.f64 b (*.f64 c a)))) (fma.f64 -2 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a)) b))
(+.f64 (fma.f64 -4 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) b) (*.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c)))))
(sqrt.f64 (*.f64 -4 (*.f64 c a)))
(sqrt.f64 (*.f64 (*.f64 -4 c) a))
(sqrt.f64 (*.f64 (*.f64 c a) -4))
(sqrt.f64 (*.f64 c (*.f64 a -4)))
(+.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -4 (*.f64 c a))))))
(+.f64 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) (/.f64 (*.f64 1/2 (*.f64 b b)) (sqrt.f64 (*.f64 (*.f64 -4 c) a))))
(fma.f64 1/2 (/.f64 b (/.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)) (sqrt.f64 (*.f64 (*.f64 c a) -4)))
(fma.f64 1/2 (*.f64 (/.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (sqrt.f64 (*.f64 c (*.f64 a -4))))
(+.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3)))))
(+.f64 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 (*.f64 -4 c) a))) (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) 3)))))
(+.f64 (fma.f64 1/2 (/.f64 b (/.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)) (sqrt.f64 (*.f64 (*.f64 c a) -4))) (/.f64 -1/8 (/.f64 (pow.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) 3) (pow.f64 b 4))))
(fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) 3)) (fma.f64 1/2 (*.f64 (/.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (sqrt.f64 (*.f64 c (*.f64 a -4)))))
(+.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 5))) (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3))))))
(+.f64 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 (*.f64 -4 c) a))) (fma.f64 1/16 (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) 5)) (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) 3))))))
(+.f64 (fma.f64 1/2 (/.f64 b (/.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)) (sqrt.f64 (*.f64 (*.f64 c a) -4))) (fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) 3)) (/.f64 (*.f64 1/16 (pow.f64 b 6)) (pow.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) 5))))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) (fma.f64 1/2 (*.f64 (/.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) 3)) (*.f64 1/16 (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) 5))))))
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 c (/.f64 b a))))
(fma.f64 -2 (*.f64 (/.f64 c b) a) b)
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b))))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (+.f64 b (*.f64 -2 (/.f64 c (/.f64 b a)))))
(fma.f64 -2 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a)) (fma.f64 -2 (*.f64 (/.f64 c b) a) b))
(fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) b)
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 b (+.f64 (*.f64 -4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 -2 (/.f64 (*.f64 c a) b)))))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (+.f64 b (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -2 (/.f64 c (/.f64 b a))))))
(+.f64 (fma.f64 -4 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) (/.f64 -2 (/.f64 b (*.f64 c a)))) (fma.f64 -2 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a)) b))
(+.f64 (fma.f64 -4 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) b) (*.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c)))))
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))
(fma.f64 2 (/.f64 c (/.f64 b a)) (neg.f64 b))
(fma.f64 (*.f64 (/.f64 c b) a) 2 (neg.f64 b))
(-.f64 (*.f64 (/.f64 2 b) (*.f64 c a)) b)
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b)))
(fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (neg.f64 b)))
(fma.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a))) (neg.f64 b))
(-.f64 (*.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c)))) b)
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b))))
(fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (fma.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (neg.f64 b))))
(fma.f64 (*.f64 (/.f64 c b) a) 2 (-.f64 (fma.f64 2 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a)) (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4)) b))
(-.f64 (fma.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4)) b)
(sqrt.f64 (*.f64 -4 (*.f64 c a)))
(sqrt.f64 (*.f64 (*.f64 -4 c) a))
(sqrt.f64 (*.f64 (*.f64 c a) -4))
(sqrt.f64 (*.f64 c (*.f64 a -4)))
(+.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) b)
(+.f64 b (sqrt.f64 (*.f64 (*.f64 -4 c) a)))
(+.f64 b (sqrt.f64 (*.f64 (*.f64 c a) -4)))
(+.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))
(+.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -4 (*.f64 c a))))) b))
(+.f64 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 (*.f64 -4 c) a))) b))
(+.f64 b (fma.f64 1/2 (/.f64 b (/.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)) (sqrt.f64 (*.f64 (*.f64 c a) -4))))
(+.f64 b (fma.f64 1/2 (*.f64 (/.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (sqrt.f64 (*.f64 c (*.f64 a -4)))))
(+.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (+.f64 b (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3))))))
(+.f64 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) (+.f64 (fma.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 (*.f64 -4 c) a))) b) (*.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) 3)))))
(+.f64 (fma.f64 1/2 (/.f64 b (/.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)) (sqrt.f64 (*.f64 (*.f64 c a) -4))) (fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) 3)) b))
(+.f64 (fma.f64 1/2 (*.f64 (/.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 -1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) 3)) b))
(*.f64 2 b)
(*.f64 b 2)
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(fma.f64 -2 (/.f64 c (/.f64 b a)) (*.f64 b 2))
(fma.f64 b 2 (/.f64 -2 (/.f64 b (*.f64 c a))))
(fma.f64 b 2 (/.f64 (*.f64 c -2) (/.f64 b a)))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b)))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -2 (/.f64 c (/.f64 b a)) (*.f64 b 2)))
(fma.f64 -2 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a)) (fma.f64 b 2 (/.f64 -2 (/.f64 b (*.f64 c a)))))
(fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (*.f64 b 2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (fma.f64 -2 (/.f64 c (/.f64 b a)) (*.f64 b 2))))
(fma.f64 -2 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a)) (fma.f64 -4 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) (fma.f64 b 2 (/.f64 -2 (/.f64 b (*.f64 c a))))))
(fma.f64 -4 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) (fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (*.f64 b 2)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 (/.f64 c (/.f64 b a)) 2)
(*.f64 (*.f64 (/.f64 c b) a) 2)
(*.f64 (/.f64 2 b) (*.f64 c a))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))
(*.f64 2 (+.f64 (/.f64 c (/.f64 b a)) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a)))))
(*.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a))))
(*.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (*.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) 4)))
(fma.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a))) (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4))
(fma.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4))
(+.f64 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -2 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7))) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(fma.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -2 (*.f64 (*.f64 c c) (*.f64 a a))) 2) (*.f64 16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7)) (fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (*.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) 4))))
(fma.f64 1/2 (/.f64 (fma.f64 16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (*.f64 4 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7)) (fma.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a))) (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4)))
(fma.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (fma.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4 (*.f64 (/.f64 1/2 (pow.f64 b 7)) (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 20))))
(*.f64 2 b)
(*.f64 b 2)
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(fma.f64 -2 (/.f64 c (/.f64 b a)) (*.f64 b 2))
(fma.f64 b 2 (/.f64 -2 (/.f64 b (*.f64 c a))))
(fma.f64 b 2 (/.f64 (*.f64 c -2) (/.f64 b a)))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b)))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -2 (/.f64 c (/.f64 b a)) (*.f64 b 2)))
(fma.f64 -2 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a)) (fma.f64 b 2 (/.f64 -2 (/.f64 b (*.f64 c a)))))
(fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (*.f64 b 2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (fma.f64 -2 (/.f64 c (/.f64 b a)) (*.f64 b 2))))
(fma.f64 -2 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a)) (fma.f64 -4 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) (fma.f64 b 2 (/.f64 -2 (/.f64 b (*.f64 c a))))))
(fma.f64 -4 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) (fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (*.f64 b 2)))
(*.f64 2 b)
(*.f64 b 2)
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(fma.f64 -2 (/.f64 c (/.f64 b a)) (*.f64 b 2))
(fma.f64 b 2 (/.f64 -2 (/.f64 b (*.f64 c a))))
(fma.f64 b 2 (/.f64 (*.f64 c -2) (/.f64 b a)))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b)))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -2 (/.f64 c (/.f64 b a)) (*.f64 b 2)))
(fma.f64 -2 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a)) (fma.f64 b 2 (/.f64 -2 (/.f64 b (*.f64 c a)))))
(fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (*.f64 b 2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (fma.f64 -2 (/.f64 c (/.f64 b a)) (*.f64 b 2))))
(fma.f64 -2 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a)) (fma.f64 -4 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) (fma.f64 b 2 (/.f64 -2 (/.f64 b (*.f64 c a))))))
(fma.f64 -4 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) (fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (*.f64 b 2)))
(*.f64 -1 (sqrt.f64 (*.f64 -4 (*.f64 c a))))
(neg.f64 (sqrt.f64 (*.f64 (*.f64 -4 c) a)))
(neg.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)))
(neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))))
(+.f64 (*.f64 -1 (sqrt.f64 (*.f64 -4 (*.f64 c a)))) b)
(fma.f64 -1 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) b)
(-.f64 b (sqrt.f64 (*.f64 (*.f64 c a) -4)))
(-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (+.f64 (*.f64 -1 (sqrt.f64 (*.f64 -4 (*.f64 c a)))) b))
(fma.f64 -1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 (*.f64 -4 c) a))) (fma.f64 -1 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) b))
(fma.f64 (/.f64 b (/.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)) -1/2 (-.f64 b (sqrt.f64 (*.f64 (*.f64 c a) -4))))
(-.f64 (fma.f64 (*.f64 (/.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) -1/2 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 b 2) (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3))) (+.f64 (*.f64 -1 (sqrt.f64 (*.f64 -4 (*.f64 c a)))) b)))
(fma.f64 -1/2 (/.f64 (*.f64 b b) (sqrt.f64 (*.f64 (*.f64 -4 c) a))) (fma.f64 1/8 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) 3)) (fma.f64 -1 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) b)))
(fma.f64 (/.f64 b (/.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) b)) -1/2 (fma.f64 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) 3)) 1/8 (-.f64 b (sqrt.f64 (*.f64 (*.f64 c a) -4)))))
(fma.f64 (*.f64 (/.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) -1/2 (-.f64 (fma.f64 (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) 3)) 1/8 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 (/.f64 c (/.f64 b a)) 2)
(*.f64 (*.f64 (/.f64 c b) a) 2)
(*.f64 (/.f64 2 b) (*.f64 c a))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))
(*.f64 2 (+.f64 (/.f64 c (/.f64 b a)) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a)))))
(*.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a))))
(*.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (*.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) 4)))
(fma.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a))) (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4))
(fma.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4))
(+.f64 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -2 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7))) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(fma.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -2 (*.f64 (*.f64 c c) (*.f64 a a))) 2) (*.f64 16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7)) (fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (*.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) 4))))
(fma.f64 1/2 (/.f64 (fma.f64 16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (*.f64 4 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7)) (fma.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a))) (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4)))
(fma.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (fma.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4 (*.f64 (/.f64 1/2 (pow.f64 b 7)) (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 20))))
(*.f64 2 b)
(*.f64 b 2)
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(fma.f64 -2 (/.f64 c (/.f64 b a)) (*.f64 b 2))
(fma.f64 b 2 (/.f64 -2 (/.f64 b (*.f64 c a))))
(fma.f64 b 2 (/.f64 (*.f64 c -2) (/.f64 b a)))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b)))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -2 (/.f64 c (/.f64 b a)) (*.f64 b 2)))
(fma.f64 -2 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a)) (fma.f64 b 2 (/.f64 -2 (/.f64 b (*.f64 c a)))))
(fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (*.f64 b 2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (fma.f64 -2 (/.f64 c (/.f64 b a)) (*.f64 b 2))))
(fma.f64 -2 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a)) (fma.f64 -4 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) (fma.f64 b 2 (/.f64 -2 (/.f64 b (*.f64 c a))))))
(fma.f64 -4 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) (fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (*.f64 b 2)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 (/.f64 c (/.f64 b a)) 2)
(*.f64 (*.f64 (/.f64 c b) a) 2)
(*.f64 (/.f64 2 b) (*.f64 c a))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))
(*.f64 2 (+.f64 (/.f64 c (/.f64 b a)) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a)))))
(*.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a))))
(*.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (*.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) 4)))
(fma.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a))) (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4))
(fma.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -2 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(fma.f64 1/2 (/.f64 (*.f64 (pow.f64 c 4) (fma.f64 16 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) (pow.f64 (*.f64 -2 (/.f64 (*.f64 a a) (pow.f64 b 3))) 2))) b) (fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (*.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) 4))))
(fma.f64 1/2 (*.f64 (/.f64 (pow.f64 c 4) b) (fma.f64 16 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) (*.f64 4 (/.f64 (pow.f64 a 4) (pow.f64 b 6))))) (fma.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a))) (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4)))
(fma.f64 1/2 (*.f64 (/.f64 (*.f64 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) 20) b) (pow.f64 c 4)) (fma.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 (/.f64 c (/.f64 b a)) 2)
(*.f64 (*.f64 (/.f64 c b) a) 2)
(*.f64 (/.f64 2 b) (*.f64 c a))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))
(*.f64 2 (+.f64 (/.f64 c (/.f64 b a)) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a)))))
(*.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a))))
(*.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (*.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) 4)))
(fma.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a))) (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4))
(fma.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 -2 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2) (*.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)))) (pow.f64 a 4)) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(fma.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -2 (/.f64 (*.f64 c c) (pow.f64 b 3))) 2) (*.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)))) (/.f64 b (pow.f64 a 4))) (fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (*.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) 4))))
(fma.f64 1/2 (/.f64 (pow.f64 a 4) (/.f64 b (fma.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) (*.f64 4 (/.f64 (pow.f64 c 4) (pow.f64 b 6)))))) (fma.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) (*.f64 a a))) (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4)))
(fma.f64 1/2 (*.f64 (/.f64 (pow.f64 a 4) b) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) 20)) (fma.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (pow.f64 a 3)) 4)))
(*.f64 1/2 (/.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) a))
(*.f64 1/2 (/.f64 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) a))
(/.f64 (*.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) 1/2) a)
(*.f64 (/.f64 1/2 a) (sqrt.f64 (*.f64 c (*.f64 a -4))))
(+.f64 (*.f64 -1/2 (/.f64 b a)) (*.f64 1/2 (/.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) a)))
(fma.f64 -1/2 (/.f64 b a) (*.f64 1/2 (/.f64 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) a)))
(fma.f64 1/2 (/.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) a) (*.f64 -1/2 (/.f64 b a)))
(fma.f64 1/2 (/.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) a) (*.f64 -1/2 (/.f64 b a)))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 b 2) (*.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) a))) (+.f64 (*.f64 -1/2 (/.f64 b a)) (*.f64 1/2 (/.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) a))))
(fma.f64 1/4 (/.f64 (*.f64 b b) (*.f64 a (sqrt.f64 (*.f64 (*.f64 -4 c) a)))) (fma.f64 -1/2 (/.f64 b a) (*.f64 1/2 (/.f64 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) a))))
(fma.f64 1/4 (*.f64 (/.f64 b a) (/.f64 b (sqrt.f64 (*.f64 (*.f64 c a) -4)))) (fma.f64 1/2 (/.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) a) (*.f64 -1/2 (/.f64 b a))))
(fma.f64 1/4 (*.f64 (/.f64 b a) (/.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 1/2 (/.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) a) (*.f64 -1/2 (/.f64 b a))))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 b 2) (*.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) a))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 b 4) (*.f64 (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3) a))) (+.f64 (*.f64 -1/2 (/.f64 b a)) (*.f64 1/2 (/.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) a)))))
(fma.f64 1/4 (/.f64 (*.f64 b b) (*.f64 a (sqrt.f64 (*.f64 (*.f64 -4 c) a)))) (fma.f64 -1/16 (/.f64 (pow.f64 b 4) (*.f64 a (pow.f64 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) 3))) (fma.f64 -1/2 (/.f64 b a) (*.f64 1/2 (/.f64 (sqrt.f64 (*.f64 (*.f64 -4 c) a)) a)))))
(fma.f64 1/4 (*.f64 (/.f64 b a) (/.f64 b (sqrt.f64 (*.f64 (*.f64 c a) -4)))) (fma.f64 -1/16 (/.f64 (/.f64 (pow.f64 b 4) a) (pow.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) 3)) (fma.f64 1/2 (/.f64 (sqrt.f64 (*.f64 (*.f64 c a) -4)) a) (*.f64 -1/2 (/.f64 b a)))))
(fma.f64 1/4 (*.f64 (/.f64 b a) (/.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 1/2 (/.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) a) (fma.f64 -1/2 (/.f64 b a) (/.f64 (/.f64 (pow.f64 b 4) (/.f64 a -1/16)) (pow.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) 3)))))
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (neg.f64 (/.f64 c b)))
(-.f64 (neg.f64 (/.f64 c b)) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a))
(neg.f64 (fma.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (*.f64 -2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))))))
(-.f64 (fma.f64 -2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)) (neg.f64 (/.f64 c b))) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a))
(-.f64 (/.f64 (pow.f64 c 3) (/.f64 (/.f64 (pow.f64 b 5) (*.f64 a a)) -2)) (fma.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1/4 (/.f64 (+.f64 (pow.f64 (*.f64 -2 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (*.f64 a (pow.f64 b 7)))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1/4 (/.f64 (+.f64 (pow.f64 (*.f64 -2 (*.f64 (*.f64 c c) (*.f64 a a))) 2) (*.f64 16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (*.f64 a (pow.f64 b 7))) (fma.f64 -1 (/.f64 c b) (*.f64 -2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a)))))))
(-.f64 (fma.f64 -1/4 (/.f64 (fma.f64 16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (*.f64 4 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (*.f64 a (pow.f64 b 7))) (fma.f64 -2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)) (neg.f64 (/.f64 c b)))) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a))
(fma.f64 -1/4 (/.f64 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 20) (*.f64 a (pow.f64 b 7))) (-.f64 (/.f64 (pow.f64 c 3) (/.f64 (/.f64 (pow.f64 b 5) (*.f64 a a)) -2)) (fma.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a (/.f64 c b))))
(*.f64 -1 (/.f64 b a))
(/.f64 (neg.f64 b) a)
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (/.f64 (neg.f64 b) a))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)) (+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a))))
(+.f64 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (+.f64 (/.f64 c b) (/.f64 (neg.f64 b) a)))
(+.f64 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a) (-.f64 (/.f64 c b) (/.f64 b a)))
(-.f64 (fma.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a (/.f64 c b)) (/.f64 b a))
(+.f64 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)) (+.f64 (/.f64 c b) (+.f64 (*.f64 2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (*.f64 -1 (/.f64 b a)))))
(+.f64 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (+.f64 (/.f64 c b) (fma.f64 2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))) (/.f64 (neg.f64 b) a))))
(+.f64 (/.f64 c b) (+.f64 (fma.f64 2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)) (/.f64 (neg.f64 b) a)) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a)))
(-.f64 (fma.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a (fma.f64 2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)) (/.f64 c b))) (/.f64 b a))
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (neg.f64 (/.f64 c b)))
(-.f64 (neg.f64 (/.f64 c b)) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a))
(neg.f64 (fma.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (*.f64 -2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))))))
(-.f64 (fma.f64 -2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)) (neg.f64 (/.f64 c b))) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a))
(-.f64 (/.f64 (pow.f64 c 3) (/.f64 (/.f64 (pow.f64 b 5) (*.f64 a a)) -2)) (fma.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -2 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) (*.f64 a b))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1/4 (/.f64 (*.f64 (pow.f64 c 4) (fma.f64 16 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) (pow.f64 (*.f64 -2 (/.f64 (*.f64 a a) (pow.f64 b 3))) 2))) (*.f64 b a)) (fma.f64 -1 (/.f64 c b) (*.f64 -2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a)))))))
(-.f64 (fma.f64 -1/4 (*.f64 (/.f64 (pow.f64 c 4) (*.f64 b a)) (fma.f64 16 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) (*.f64 4 (/.f64 (pow.f64 a 4) (pow.f64 b 6))))) (fma.f64 -2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)) (neg.f64 (/.f64 c b)))) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a))
(fma.f64 -1/4 (*.f64 (/.f64 (pow.f64 c 4) (*.f64 b a)) (*.f64 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) 20)) (-.f64 (/.f64 (pow.f64 c 3) (/.f64 (/.f64 (pow.f64 b 5) (*.f64 a a)) -2)) (fma.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a (/.f64 c b))))
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (neg.f64 (/.f64 c b)))
(-.f64 (neg.f64 (/.f64 c b)) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a))
(neg.f64 (fma.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (*.f64 -2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))))))
(-.f64 (fma.f64 -2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)) (neg.f64 (/.f64 c b))) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a))
(-.f64 (/.f64 (pow.f64 c 3) (/.f64 (/.f64 (pow.f64 b 5) (*.f64 a a)) -2)) (fma.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 -2 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2) (*.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)))) (pow.f64 a 3)) b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (fma.f64 -1/4 (/.f64 (+.f64 (pow.f64 (*.f64 -2 (/.f64 (*.f64 c c) (pow.f64 b 3))) 2) (*.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)))) (/.f64 b (pow.f64 a 3))) (*.f64 -2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a)))))))
(-.f64 (-.f64 (fma.f64 -2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)) (/.f64 (*.f64 (fma.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) (*.f64 4 (/.f64 (pow.f64 c 4) (pow.f64 b 6)))) -1/4) (/.f64 b (pow.f64 a 3)))) (/.f64 c b)) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a))
(-.f64 (fma.f64 -2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)) (*.f64 -1/4 (*.f64 (/.f64 (pow.f64 a 3) b) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) 20)))) (fma.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a (/.f64 c b)))

prune751.0ms (10.9%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New26912281
Fresh011
Picked101
Done000
Total27013283
Error
6.6b
Counts
283 → 13
Alt Table
StatusErrorProgram
25.3b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (*.f64 (-.f64 b (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))) (/.f64 -1/2 a)))
24.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
24.2b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (fma.f64 -2 (*.f64 (/.f64 c b) a) b))) (*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))) (/.f64 -1/2 a)))
24.2b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) 2))) (*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))) (/.f64 -1/2 a)))
24.3b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b b)) (*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))) (/.f64 -1/2 a)))
24.2b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (/.f64 1 (/.f64 a (*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) -1/2))))
23.4b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (*.f64 (-.f64 b (*.f64 -1 b)) (/.f64 -1/2 a)))
27.2b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (*.f64 (-.f64 b (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2))) (/.f64 -1/2 a)))
24.5b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) 3))) (*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))) (/.f64 -1/2 a)))
35.0b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (/.f64 (+.f64 (pow.f64 b 3) (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) (fma.f64 b b (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))))) (*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))) (/.f64 -1/2 a)))
27.4b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (*.f64 (*.f64 (-.f64 (pow.f64 b 3) (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) (/.f64 1 (fma.f64 b b (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))))) (/.f64 -1/2 a)))
23.3b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a))))
23.3b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (*.f64 -1 (/.f64 b a)))
Compiler

Compiled 13679 to 8043 computations (41.2% saved)

localize18.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))))
0.7b
(+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))
27.2b
(sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))
Compiler

Compiled 1536 to 1280 computations (16.7% saved)

series17.0ms (0.2%)

Counts
1 → 20
Calls

9 calls:

TimeVariablePointExpression
5.0ms
c
@-inf
(/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))))
3.0ms
c
@inf
(/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))))
2.0ms
a
@inf
(/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))))
2.0ms
c
@0
(/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))))
1.0ms
b
@0
(/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))))

rewrite52.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
954×prod-diff_binary64
145×add-sqr-sqrt_binary64
137×*-un-lft-identity_binary64
137×pow1_binary64
136×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify30.0ms (0.4%)

Algorithm
egg-herbie
Rules
698×fma-def_binary64
586×times-frac_binary64
402×associate-/l*_binary64
349×associate-/r*_binary64
138×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0122798
1414756
21674700
Stop Event
node limit
Counts
65 → 72
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 c b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 2 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 a 3) (pow.f64 b 7))) (*.f64 -2 (/.f64 (pow.f64 a 3) (pow.f64 b 7)))))) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(*.f64 -2 (/.f64 c (sqrt.f64 (*.f64 -4 (*.f64 c a)))))
(+.f64 (*.f64 -2 (/.f64 c (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (*.f64 2 (/.f64 (*.f64 c b) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 2))))
(+.f64 (*.f64 2 (*.f64 (pow.f64 b 2) (+.f64 (*.f64 -1 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3))) (*.f64 1/2 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3)))))) (+.f64 (*.f64 -2 (/.f64 c (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (*.f64 2 (/.f64 (*.f64 c b) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 2)))))
(+.f64 (*.f64 2 (*.f64 (pow.f64 b 2) (+.f64 (*.f64 -1 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3))) (*.f64 1/2 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3)))))) (+.f64 (*.f64 -2 (/.f64 c (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (+.f64 (*.f64 2 (*.f64 (pow.f64 b 3) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3))) (*.f64 1/2 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3)))) (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (*.f64 -1/2 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 4)))))) (*.f64 2 (/.f64 (*.f64 c b) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 2))))))
(*.f64 -1 (/.f64 c b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 c 4) (pow.f64 a 3))) (*.f64 -2 (*.f64 (pow.f64 c 4) (pow.f64 a 3)))) (pow.f64 b 7))) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(*.f64 -1 (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (+.f64 (*.f64 -2 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 c 2) a)) (*.f64 -1 (*.f64 (pow.f64 c 2) a))) (pow.f64 b 3))) (*.f64 -1 (/.f64 b a))))
(+.f64 (/.f64 c b) (+.f64 (*.f64 -2 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 c 2) a)) (*.f64 -1 (*.f64 (pow.f64 c 2) a))) (pow.f64 b 3))) (+.f64 (*.f64 -2 (/.f64 (+.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (+.f64 (*.f64 -1 (*.f64 c (*.f64 a (+.f64 (*.f64 1/2 (*.f64 (pow.f64 c 2) a)) (*.f64 -1 (*.f64 (pow.f64 c 2) a)))))) (*.f64 -1/8 (/.f64 (+.f64 (pow.f64 (*.f64 -2 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (*.f64 c (pow.f64 a 2)))))) (pow.f64 b 5))) (*.f64 -1 (/.f64 b a)))))
(*.f64 -1 (/.f64 c b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 2 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 -2 (/.f64 (pow.f64 c 4) (pow.f64 b 7))) (*.f64 -1/2 (/.f64 (pow.f64 c 4) (pow.f64 b 7)))))) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
Outputs
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (neg.f64 (/.f64 c b)))
(-.f64 (/.f64 (neg.f64 c) b) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(neg.f64 (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) (pow.f64 b 5)))))
(-.f64 (-.f64 (/.f64 (*.f64 (*.f64 -2 (*.f64 a a)) (pow.f64 c 3)) (pow.f64 b 5)) (/.f64 c b)) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(-.f64 (*.f64 -2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a))) (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 2 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 a 3) (pow.f64 b 7))) (*.f64 -2 (/.f64 (pow.f64 a 3) (pow.f64 b 7)))))) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (fma.f64 2 (*.f64 (pow.f64 c 4) (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 7)) -5/2)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) (pow.f64 b 5))))))
(-.f64 (-.f64 (fma.f64 2 (*.f64 (pow.f64 c 4) (/.f64 (*.f64 (pow.f64 a 3) -5/2) (pow.f64 b 7))) (/.f64 (*.f64 (*.f64 -2 (*.f64 a a)) (pow.f64 c 3)) (pow.f64 b 5))) (/.f64 c b)) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(-.f64 (fma.f64 2 (*.f64 (pow.f64 c 4) (/.f64 (*.f64 (pow.f64 a 3) -5/2) (pow.f64 b 7))) (*.f64 -2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)))) (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b)))
(*.f64 -2 (/.f64 c (sqrt.f64 (*.f64 -4 (*.f64 c a)))))
(/.f64 (*.f64 -2 c) (sqrt.f64 (*.f64 -4 (*.f64 c a))))
(/.f64 -2 (/.f64 (sqrt.f64 (*.f64 a (*.f64 c -4))) c))
(*.f64 -2 (/.f64 c (sqrt.f64 (*.f64 a (*.f64 c -4)))))
(+.f64 (*.f64 -2 (/.f64 c (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (*.f64 2 (/.f64 (*.f64 c b) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 2))))
(fma.f64 -2 (/.f64 c (sqrt.f64 (*.f64 -4 (*.f64 c a)))) (/.f64 (*.f64 2 (*.f64 c b)) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 2)))
(fma.f64 2 (*.f64 (/.f64 c (*.f64 a (*.f64 c -4))) b) (/.f64 -2 (/.f64 (sqrt.f64 (*.f64 a (*.f64 c -4))) c)))
(fma.f64 -2 (/.f64 c (sqrt.f64 (*.f64 a (*.f64 c -4)))) (*.f64 -1/2 (/.f64 (*.f64 c b) (*.f64 c a))))
(+.f64 (*.f64 2 (*.f64 (pow.f64 b 2) (+.f64 (*.f64 -1 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3))) (*.f64 1/2 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3)))))) (+.f64 (*.f64 -2 (/.f64 c (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (*.f64 2 (/.f64 (*.f64 c b) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 2)))))
(fma.f64 2 (*.f64 (*.f64 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3)) -1/2) (*.f64 b b)) (fma.f64 -2 (/.f64 c (sqrt.f64 (*.f64 -4 (*.f64 c a)))) (/.f64 (*.f64 2 (*.f64 c b)) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 2))))
(fma.f64 (*.f64 2 (*.f64 b b)) (/.f64 (*.f64 c -1/2) (pow.f64 (sqrt.f64 (*.f64 a (*.f64 c -4))) 3)) (fma.f64 2 (*.f64 (/.f64 c (*.f64 a (*.f64 c -4))) b) (/.f64 -2 (/.f64 (sqrt.f64 (*.f64 a (*.f64 c -4))) c))))
(fma.f64 2 (*.f64 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 a (*.f64 c -4))) 3)) (*.f64 -1/2 (*.f64 b b))) (fma.f64 -2 (/.f64 c (sqrt.f64 (*.f64 a (*.f64 c -4)))) (*.f64 -1/2 (/.f64 (*.f64 c b) (*.f64 c a)))))
(+.f64 (*.f64 2 (*.f64 (pow.f64 b 2) (+.f64 (*.f64 -1 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3))) (*.f64 1/2 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3)))))) (+.f64 (*.f64 -2 (/.f64 c (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (+.f64 (*.f64 2 (*.f64 (pow.f64 b 3) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3))) (*.f64 1/2 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3)))) (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (*.f64 -1/2 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 4)))))) (*.f64 2 (/.f64 (*.f64 c b) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 2))))))
(fma.f64 2 (*.f64 (*.f64 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3)) -1/2) (*.f64 b b)) (fma.f64 -2 (/.f64 c (sqrt.f64 (*.f64 -4 (*.f64 c a)))) (*.f64 2 (+.f64 (*.f64 (pow.f64 b 3) (fma.f64 -1 (/.f64 (*.f64 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3)) -1/2) (sqrt.f64 (*.f64 -4 (*.f64 c a)))) (/.f64 (*.f64 -1/2 c) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 4)))) (/.f64 (*.f64 c b) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 2))))))
(fma.f64 2 (*.f64 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 a (*.f64 c -4))) 3)) (*.f64 -1/2 (*.f64 b b))) (fma.f64 2 (fma.f64 (pow.f64 b 3) (-.f64 (/.f64 (*.f64 c -1/2) (pow.f64 (sqrt.f64 (*.f64 a (*.f64 c -4))) 4)) (/.f64 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 a (*.f64 c -4))) 3)) (/.f64 (sqrt.f64 (*.f64 a (*.f64 c -4))) -1/2))) (*.f64 (/.f64 c (*.f64 a (*.f64 c -4))) b)) (/.f64 -2 (/.f64 (sqrt.f64 (*.f64 a (*.f64 c -4))) c))))
(fma.f64 -2 (/.f64 c (sqrt.f64 (*.f64 a (*.f64 c -4)))) (*.f64 2 (+.f64 (fma.f64 (pow.f64 b 3) (-.f64 (*.f64 -1/2 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 a (*.f64 c -4))) 4))) (*.f64 -1/2 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 a (*.f64 c -4))) 4)))) (*.f64 (/.f64 c a) (/.f64 b (*.f64 c -4)))) (*.f64 (/.f64 c (pow.f64 (sqrt.f64 (*.f64 a (*.f64 c -4))) 3)) (*.f64 -1/2 (*.f64 b b))))))
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (neg.f64 (/.f64 c b)))
(-.f64 (/.f64 (neg.f64 c) b) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(neg.f64 (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) (pow.f64 b 5)))))
(-.f64 (-.f64 (/.f64 (*.f64 (*.f64 -2 (*.f64 a a)) (pow.f64 c 3)) (pow.f64 b 5)) (/.f64 c b)) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(-.f64 (*.f64 -2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a))) (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 c 4) (pow.f64 a 3))) (*.f64 -2 (*.f64 (pow.f64 c 4) (pow.f64 a 3)))) (pow.f64 b 7))) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (fma.f64 2 (/.f64 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) -5/2) (pow.f64 b 7)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) (pow.f64 b 5))))))
(-.f64 (-.f64 (fma.f64 2 (/.f64 (*.f64 (pow.f64 a 3) (*.f64 (pow.f64 c 4) -5/2)) (pow.f64 b 7)) (/.f64 (*.f64 (*.f64 -2 (*.f64 a a)) (pow.f64 c 3)) (pow.f64 b 5))) (/.f64 c b)) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(-.f64 (fma.f64 2 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 a 3) -5/2))) (*.f64 -2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)))) (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b)))
(*.f64 -1 (/.f64 b a))
(neg.f64 (/.f64 b a))
(/.f64 (neg.f64 b) a)
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (neg.f64 (/.f64 b a)))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (+.f64 (*.f64 -2 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 c 2) a)) (*.f64 -1 (*.f64 (pow.f64 c 2) a))) (pow.f64 b 3))) (*.f64 -1 (/.f64 b a))))
(+.f64 (/.f64 c b) (fma.f64 -2 (/.f64 (*.f64 (*.f64 (*.f64 c c) a) -1/2) (pow.f64 b 3)) (neg.f64 (/.f64 b a))))
(+.f64 (/.f64 (*.f64 -2 (*.f64 (*.f64 c c) (*.f64 a -1/2))) (pow.f64 b 3)) (-.f64 (/.f64 c b) (/.f64 b a)))
(fma.f64 -2 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) (*.f64 c c)) -1/2) (-.f64 (/.f64 c b) (/.f64 b a)))
(+.f64 (/.f64 c b) (+.f64 (*.f64 -2 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (pow.f64 c 2) a)) (*.f64 -1 (*.f64 (pow.f64 c 2) a))) (pow.f64 b 3))) (+.f64 (*.f64 -2 (/.f64 (+.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (+.f64 (*.f64 -1 (*.f64 c (*.f64 a (+.f64 (*.f64 1/2 (*.f64 (pow.f64 c 2) a)) (*.f64 -1 (*.f64 (pow.f64 c 2) a)))))) (*.f64 -1/8 (/.f64 (+.f64 (pow.f64 (*.f64 -2 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (*.f64 c (pow.f64 a 2)))))) (pow.f64 b 5))) (*.f64 -1 (/.f64 b a)))))
(+.f64 (/.f64 c b) (fma.f64 -2 (/.f64 (*.f64 (*.f64 (*.f64 c c) a) -1/2) (pow.f64 b 3)) (fma.f64 -2 (/.f64 (fma.f64 (pow.f64 c 3) (*.f64 a a) (fma.f64 -1 (*.f64 (*.f64 c a) (*.f64 (*.f64 (*.f64 c c) a) -1/2)) (*.f64 -1/8 (/.f64 (+.f64 (pow.f64 (*.f64 -2 (*.f64 (*.f64 c c) (*.f64 a a))) 2) (*.f64 16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (*.f64 c (*.f64 a a)))))) (pow.f64 b 5)) (neg.f64 (/.f64 b a)))))
(+.f64 (*.f64 -2 (+.f64 (/.f64 (*.f64 c (*.f64 c a)) (/.f64 (pow.f64 b 3) -1/2)) (/.f64 (fma.f64 (pow.f64 c 3) (*.f64 a a) (fma.f64 -1/8 (/.f64 (fma.f64 16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (*.f64 4 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (*.f64 a (*.f64 c a))) (*.f64 (*.f64 c a) (neg.f64 (*.f64 (*.f64 c c) (*.f64 a -1/2)))))) (pow.f64 b 5)))) (-.f64 (/.f64 c b) (/.f64 b a)))
(fma.f64 -2 (+.f64 (*.f64 (*.f64 (/.f64 a (pow.f64 b 3)) (*.f64 c c)) -1/2) (/.f64 (fma.f64 (/.f64 -1/8 (*.f64 a a)) (/.f64 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 20) c) (*.f64 a (-.f64 (*.f64 (pow.f64 c 3) a) (*.f64 c (*.f64 (*.f64 c c) (*.f64 a -1/2)))))) (pow.f64 b 5))) (-.f64 (/.f64 c b) (/.f64 b a)))
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (neg.f64 (/.f64 c b)))
(-.f64 (/.f64 (neg.f64 c) b) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(neg.f64 (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) (pow.f64 b 5)))))
(-.f64 (-.f64 (/.f64 (*.f64 (*.f64 -2 (*.f64 a a)) (pow.f64 c 3)) (pow.f64 b 5)) (/.f64 c b)) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(-.f64 (*.f64 -2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a))) (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 2 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 -2 (/.f64 (pow.f64 c 4) (pow.f64 b 7))) (*.f64 -1/2 (/.f64 (pow.f64 c 4) (pow.f64 b 7)))))) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (fma.f64 2 (*.f64 (pow.f64 c 4) (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 7)) -5/2)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) (pow.f64 b 5))))))
(-.f64 (-.f64 (fma.f64 2 (*.f64 (pow.f64 c 4) (/.f64 (*.f64 (pow.f64 a 3) -5/2) (pow.f64 b 7))) (/.f64 (*.f64 (*.f64 -2 (*.f64 a a)) (pow.f64 c 3)) (pow.f64 b 5))) (/.f64 c b)) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(-.f64 (fma.f64 2 (*.f64 (pow.f64 c 4) (/.f64 (*.f64 (pow.f64 a 3) -5/2) (pow.f64 b 7))) (*.f64 -2 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)))) (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b)))

prune496.0ms (7.2%)

Pruning

13 alts after pruning (13 fresh and 0 done)

PrunedKeptTotal
New1755180
Fresh4812
Picked101
Done000
Total18013193
Error
6.6b
Counts
193 → 13
Alt Table
StatusErrorProgram
23.3b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (fma.f64 -2 (*.f64 (/.f64 c b) a) b))) (*.f64 -1 (/.f64 b a)))
25.3b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (*.f64 (-.f64 b (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))) (/.f64 -1/2 a)))
24.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
23.4b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (*.f64 (-.f64 b (*.f64 -1 b)) (/.f64 -1/2 a)))
23.5b
(if (>=.f64 b 0) (*.f64 (/.f64 c (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))) (/.f64 -2 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))))) (*.f64 -1 (/.f64 b a)))
23.7b
(if (>=.f64 b 0) (*.f64 (/.f64 -2 (pow.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))) 2)) (/.f64 c (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))))) (*.f64 -1 (/.f64 b a)))
27.2b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (*.f64 (-.f64 b (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2))) (/.f64 -1/2 a)))
23.4b
(if (>=.f64 b 0) (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 b a)))
27.4b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (*.f64 (*.f64 (-.f64 (pow.f64 b 3) (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) (/.f64 1 (fma.f64 b b (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))))) (/.f64 -1/2 a)))
23.5b
(if (>=.f64 b 0) (pow.f64 (*.f64 -1/2 (/.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) c)) -1) (*.f64 -1 (/.f64 b a)))
24.2b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) 2))) (*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))) (/.f64 -1/2 a)))
24.2b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (/.f64 1 (/.f64 a (*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) -1/2))))
23.3b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a))))
Compiler

Compiled 7299 to 4366 computations (40.2% saved)

localize48.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 -2 (*.f64 (/.f64 c b) a) b)
0.0b
(+.f64 b (fma.f64 -2 (*.f64 (/.f64 c b) a) b))
3.8b
(/.f64 (*.f64 c -2) (+.f64 b (fma.f64 -2 (*.f64 (/.f64 c b) a) b)))
4.9b
(*.f64 (/.f64 c b) a)
Compiler

Compiled 1536 to 1280 computations (16.7% saved)

series21.0ms (0.3%)

Counts
4 → 144
Calls

36 calls:

TimeVariablePointExpression
3.0ms
c
@-inf
(*.f64 (/.f64 c b) a)
2.0ms
c
@-inf
(fma.f64 -2 (*.f64 (/.f64 c b) a) b)
1.0ms
c
@0
(*.f64 (/.f64 c b) a)
1.0ms
b
@-inf
(/.f64 (*.f64 c -2) (+.f64 b (fma.f64 -2 (*.f64 (/.f64 c b) a) b)))
1.0ms
c
@inf
(/.f64 (*.f64 c -2) (+.f64 b (fma.f64 -2 (*.f64 (/.f64 c b) a) b)))

rewrite73.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
595×prod-diff_binary64
231×log1p-udef_binary64
129×add-sqr-sqrt_binary64
126×*-un-lft-identity_binary64
126×pow1_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify63.0ms (0.9%)

Algorithm
egg-herbie
Rules
517×unswap-sqr_binary64
343×times-frac_binary64
330×distribute-rgt-neg-in_binary64
267×associate-/l*_binary64
207×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0572192
11682114
26082074
333152074
Stop Event
node limit
Counts
272 → 154
Calls
Call 1
Inputs
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(/.f64 (*.f64 c a) b)
(*.f64 -1 (/.f64 c b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(/.f64 b a)
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(/.f64 b a)
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(/.f64 b a)
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(*.f64 -1 (/.f64 c b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(*.f64 -1 (/.f64 c b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(*.f64 -1 (/.f64 c b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(/.f64 b a)
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(/.f64 b a)
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 2 b)
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(*.f64 2 b)
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(*.f64 2 b)
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 2 b)
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
Outputs
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (neg.f64 (/.f64 c b)))
(-.f64 (/.f64 (neg.f64 c) b) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (neg.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))))))
(-.f64 (-.f64 (/.f64 (neg.f64 c) b) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a))) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (/.f64 c b))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (*.f64 -1 (+.f64 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) (pow.f64 a 3))) (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a)))))))
(-.f64 (-.f64 (-.f64 (/.f64 (neg.f64 (*.f64 a (*.f64 a (pow.f64 c 3)))) (pow.f64 b 5)) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (pow.f64 a 3))) (/.f64 c b)) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(-.f64 (neg.f64 (fma.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (pow.f64 a 3) (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 5)) (pow.f64 c 3)))) (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b)))
(-.f64 (*.f64 (pow.f64 a 3) (/.f64 (neg.f64 (pow.f64 c 4)) (pow.f64 b 7))) (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (/.f64 c b))))
(/.f64 b a)
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))))
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 a (*.f64 c a))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))) (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 a (*.f64 c a))) (/.f64 (pow.f64 b 5) (*.f64 c (*.f64 c (pow.f64 a 3))))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 c (*.f64 c (pow.f64 a 3)))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 a (*.f64 c a))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))) (+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))
(/.f64 b a)
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))))
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 a (*.f64 c a))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))) (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 a (*.f64 c a))) (/.f64 (pow.f64 b 5) (*.f64 c (*.f64 c (pow.f64 a 3))))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 c (*.f64 c (pow.f64 a 3)))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 a (*.f64 c a))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))) (+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))
(/.f64 b a)
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))))
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 a (*.f64 c a))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))) (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 a (*.f64 c a))) (/.f64 (pow.f64 b 5) (*.f64 c (*.f64 c (pow.f64 a 3))))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 c (*.f64 c (pow.f64 a 3)))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 a (*.f64 c a))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))) (+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (neg.f64 (/.f64 c b)))
(-.f64 (/.f64 (neg.f64 c) b) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (neg.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))))))
(-.f64 (-.f64 (/.f64 (neg.f64 c) b) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a))) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (/.f64 c b))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (*.f64 -1 (+.f64 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) (pow.f64 a 3))) (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a)))))))
(-.f64 (-.f64 (-.f64 (/.f64 (neg.f64 (*.f64 a (*.f64 a (pow.f64 c 3)))) (pow.f64 b 5)) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (pow.f64 a 3))) (/.f64 c b)) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(-.f64 (neg.f64 (fma.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (pow.f64 a 3) (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 5)) (pow.f64 c 3)))) (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b)))
(-.f64 (*.f64 (pow.f64 a 3) (/.f64 (neg.f64 (pow.f64 c 4)) (pow.f64 b 7))) (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (/.f64 c b))))
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (neg.f64 (/.f64 c b)))
(-.f64 (/.f64 (neg.f64 c) b) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (neg.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))))))
(-.f64 (-.f64 (/.f64 (neg.f64 c) b) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a))) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (/.f64 c b))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (*.f64 -1 (+.f64 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) (pow.f64 a 3))) (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a)))))))
(-.f64 (-.f64 (-.f64 (/.f64 (neg.f64 (*.f64 a (*.f64 a (pow.f64 c 3)))) (pow.f64 b 5)) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (pow.f64 a 3))) (/.f64 c b)) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(-.f64 (neg.f64 (fma.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (pow.f64 a 3) (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 5)) (pow.f64 c 3)))) (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b)))
(-.f64 (*.f64 (pow.f64 a 3) (/.f64 (neg.f64 (pow.f64 c 4)) (pow.f64 b 7))) (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (/.f64 c b))))
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (neg.f64 (/.f64 c b)))
(-.f64 (/.f64 (neg.f64 c) b) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (neg.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))))))
(-.f64 (-.f64 (/.f64 (neg.f64 c) b) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a))) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (/.f64 c b))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (*.f64 -1 (+.f64 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) (pow.f64 a 3))) (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a)))))))
(-.f64 (-.f64 (-.f64 (/.f64 (neg.f64 (*.f64 a (*.f64 a (pow.f64 c 3)))) (pow.f64 b 5)) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (pow.f64 a 3))) (/.f64 c b)) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a))
(-.f64 (neg.f64 (fma.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (pow.f64 a 3) (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 5)) (pow.f64 c 3)))) (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b)))
(-.f64 (*.f64 (pow.f64 a 3) (/.f64 (neg.f64 (pow.f64 c 4)) (pow.f64 b 7))) (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (/.f64 c b))))
(/.f64 b a)
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))))
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 a (*.f64 c a))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))) (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 a (*.f64 c a))) (/.f64 (pow.f64 b 5) (*.f64 c (*.f64 c (pow.f64 a 3))))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 c (*.f64 c (pow.f64 a 3)))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 a (*.f64 c a))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))) (+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))
(/.f64 b a)
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))))
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 a (*.f64 c a))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))) (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 a (*.f64 c a))) (/.f64 (pow.f64 b 5) (*.f64 c (*.f64 c (pow.f64 a 3))))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 c (*.f64 c (pow.f64 a 3)))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 a (*.f64 c a))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))) (+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 (/.f64 (*.f64 c a) b) -2)
(/.f64 (*.f64 (*.f64 c a) -2) b)
(*.f64 (*.f64 a (/.f64 c b)) -2)
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(*.f64 2 b)
(*.f64 b 2)
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(*.f64 2 b)
(*.f64 b 2)
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(*.f64 2 b)
(*.f64 b 2)
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 (/.f64 (*.f64 c a) b) -2)
(/.f64 (*.f64 (*.f64 c a) -2) b)
(*.f64 (*.f64 a (/.f64 c b)) -2)
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 (/.f64 (*.f64 c a) b) -2)
(/.f64 (*.f64 (*.f64 c a) -2) b)
(*.f64 (*.f64 a (/.f64 c b)) -2)
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(*.f64 2 b)
(*.f64 b 2)
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 c a) b)) (*.f64 2 b))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 (/.f64 (*.f64 c a) b) -2)
(/.f64 (*.f64 (*.f64 c a) -2) b)
(*.f64 (*.f64 a (/.f64 c b)) -2)
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 (/.f64 (*.f64 c a) b) -2)
(/.f64 (*.f64 (*.f64 c a) -2) b)
(*.f64 (*.f64 a (/.f64 c b)) -2)
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
(+.f64 (*.f64 2 b) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(fma.f64 -2 (/.f64 (*.f64 c a) b) (*.f64 b 2))
(fma.f64 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (*.f64 (*.f64 a (/.f64 c b)) -2))
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 (/.f64 (*.f64 c a) b) -2)
(/.f64 (*.f64 (*.f64 c a) -2) b)
(*.f64 (*.f64 a (/.f64 c b)) -2)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 (/.f64 (*.f64 c a) b) -2)
(/.f64 (*.f64 (*.f64 c a) -2) b)
(*.f64 (*.f64 a (/.f64 c b)) -2)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 (/.f64 (*.f64 c a) b) -2)
(/.f64 (*.f64 (*.f64 c a) -2) b)
(*.f64 (*.f64 a (/.f64 c b)) -2)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 (/.f64 (*.f64 c a) b) -2)
(/.f64 (*.f64 (*.f64 c a) -2) b)
(*.f64 (*.f64 a (/.f64 c b)) -2)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 (/.f64 (*.f64 c a) b) -2)
(/.f64 (*.f64 (*.f64 c a) -2) b)
(*.f64 (*.f64 a (/.f64 c b)) -2)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 (/.f64 (*.f64 c a) b) -2))
(fma.f64 (*.f64 (/.f64 c b) a) -2 b)
(fma.f64 (*.f64 a (/.f64 c b)) -2 b)

prune328.0ms (4.8%)

Pruning

14 alts after pruning (13 fresh and 1 done)

PrunedKeptTotal
New1531154
Fresh01212
Picked011
Done000
Total15314167
Error
6.6b
Counts
167 → 14
Alt Table
StatusErrorProgram
23.3b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (fma.f64 -2 (*.f64 (/.f64 c b) a) b))) (*.f64 -1 (/.f64 b a)))
25.3b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (*.f64 (-.f64 b (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))) (/.f64 -1/2 a)))
24.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
23.4b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (*.f64 (-.f64 b (*.f64 -1 b)) (/.f64 -1/2 a)))
48.6b
(if (>=.f64 b 0) (/.f64 b a) (*.f64 -1 (/.f64 b a)))
23.5b
(if (>=.f64 b 0) (*.f64 (/.f64 c (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))) (/.f64 -2 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))))) (*.f64 -1 (/.f64 b a)))
23.7b
(if (>=.f64 b 0) (*.f64 (/.f64 -2 (pow.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))) 2)) (/.f64 c (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))))) (*.f64 -1 (/.f64 b a)))
27.2b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (*.f64 (-.f64 b (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2))) (/.f64 -1/2 a)))
23.4b
(if (>=.f64 b 0) (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 b a)))
27.4b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (*.f64 (*.f64 (-.f64 (pow.f64 b 3) (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) (/.f64 1 (fma.f64 b b (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))))) (/.f64 -1/2 a)))
23.5b
(if (>=.f64 b 0) (pow.f64 (*.f64 -1/2 (/.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) c)) -1) (*.f64 -1 (/.f64 b a)))
24.2b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) 2))) (*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))) (/.f64 -1/2 a)))
24.2b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (/.f64 1 (/.f64 a (*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) -1/2))))
23.3b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a))))
Compiler

Compiled 5534 to 3013 computations (45.6% saved)

localize23.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
0.1b
(/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))))
0.7b
(+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))
27.2b
(sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))
Compiler

Compiled 1536 to 1280 computations (16.7% saved)

series5.0ms (0.1%)

Counts
1 → 9
Calls

9 calls:

TimeVariablePointExpression
1.0ms
c
@0
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
1.0ms
b
@0
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
1.0ms
a
@0
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
0.0ms
b
@inf
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
0.0ms
b
@-inf
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))

rewrite51.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
472×log-prod_binary64
181×fma-def_binary64
180×fma-neg_binary64
161×expm1-udef_binary64
161×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify11.0ms (0.2%)

Algorithm
egg-herbie
Rules
14×fma-def_binary64
sub-neg_binary64
+-commutative_binary64
fma-neg_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0844
11244
21944
32544
43144
53944
64744
75744
86544
97944
Stop Event
saturated
Counts
124 → 118
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 b a))
(/.f64 c b)
(/.f64 c b)
(/.f64 c b)
(*.f64 -1 (/.f64 b a))
(*.f64 -1 (/.f64 b a))
(*.f64 -1 (/.f64 b a))
(/.f64 c b)
(/.f64 c b)
Outputs
(*.f64 -1 (/.f64 b a))
(neg.f64 (/.f64 b a))
(/.f64 (neg.f64 b) a)
(/.f64 c b)
(/.f64 c b)
(/.f64 c b)
(*.f64 -1 (/.f64 b a))
(neg.f64 (/.f64 b a))
(/.f64 (neg.f64 b) a)
(*.f64 -1 (/.f64 b a))
(neg.f64 (/.f64 b a))
(/.f64 (neg.f64 b) a)
(*.f64 -1 (/.f64 b a))
(neg.f64 (/.f64 b a))
(/.f64 (neg.f64 b) a)
(/.f64 c b)
(/.f64 c b)

prune719.0ms (10.4%)

Pruning

14 alts after pruning (12 fresh and 2 done)

PrunedKeptTotal
New2971298
Fresh11112
Picked011
Done011
Total29814312
Error
6.6b
Counts
312 → 14
Alt Table
StatusErrorProgram
23.3b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (fma.f64 -2 (*.f64 (/.f64 c b) a) b))) (*.f64 -1 (/.f64 b a)))
24.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
23.4b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (*.f64 (-.f64 b (*.f64 -1 b)) (/.f64 -1/2 a)))
48.6b
(if (>=.f64 b 0) (/.f64 b a) (*.f64 -1 (/.f64 b a)))
23.5b
(if (>=.f64 b 0) (*.f64 (/.f64 c (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))) (/.f64 -2 (sqrt.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))))) (*.f64 -1 (/.f64 b a)))
23.7b
(if (>=.f64 b 0) (*.f64 (/.f64 -2 (pow.f64 (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))) 2)) (/.f64 c (cbrt.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))))) (*.f64 -1 (/.f64 b a)))
27.2b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (*.f64 (-.f64 b (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2))) (/.f64 -1/2 a)))
23.4b
(if (>=.f64 b 0) (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 b a)))
27.4b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (*.f64 (*.f64 (-.f64 (pow.f64 b 3) (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) (/.f64 1 (fma.f64 b b (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))))) (/.f64 -1/2 a)))
23.3b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a))))
37.3b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (pow.f64 (pow.f64 (+.f64 (/.f64 c b) (/.f64 b a)) 3) 1/3))
23.5b
(if (>=.f64 b 0) (pow.f64 (*.f64 -1/2 (/.f64 (+.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) c)) -1) (*.f64 -1 (/.f64 b a)))
24.2b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) 2))) (*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))) (/.f64 -1/2 a)))
24.2b
(if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (/.f64 1 (/.f64 a (*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) -1/2))))
Compiler

Compiled 11592 to 6027 computations (48% saved)

regimes379.0ms (5.5%)

Accuracy

Total -56.4b remaining (-878.7%)

Threshold costs -56.4b (-878.7%)

Counts
49 → 5
Compiler

Compiled 1675 to 942 computations (43.8% saved)

bsearch2.0ms (0%)

Algorithm
left-value
Calls

4 calls:

0.0ms
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
0.0ms
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
0.0ms
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
0.0ms
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
Steps
ItersPointRange
5e+295
∈ [
3.788456071621892e+295
,
#hash((type . real) (value . +inf))
]
0.0
∈ [
0.0
,
4.740373171022659e-278
]
-5e-226
∈ [
-6.74614497106285e-226
,
-8.72012437501295e-244
]
#hash((type . real) (value . -inf))
∈ [
#hash((type . real) (value . -inf))
,
-2.1940223662829474e+293
]
Compiler

Compiled 44 to 28 computations (36.4% saved)

simplify13.0ms (0.2%)

Algorithm
egg-herbie
Rules
19×*-commutative_binary64
18×+-commutative_binary64
14×sub-neg_binary64
10×neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
064448
191440
2122440
3143440
4155440
5158440
Stop Event
saturated
Calls
Call 1
Inputs
(if (<=.f64 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))) -inf.0) (if (>=.f64 b 0) (/.f64 b a) (*.f64 -1 (/.f64 b a))) (if (<=.f64 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))) -3334007216439927/6668014432879854274079851790721257797144758322315908160396257811764037237817632071521432200871554290742929910593433240445888801654119365080363356052330830046095157579514014558463078285911814024728965016135886601981690748037476461291163877376) (if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (/.f64 (-.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) (*.f64 a -2))) (if (<=.f64 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))) 0) (if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (fma.f64 -2 (*.f64 (/.f64 c b) a) b))) (*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))) (/.f64 -1/2 a))) (if (<=.f64 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))) 49999999999999999067433886031150207889077803599102906650492418602234239416397504199421488633914272903686813485020112907863851468435224679550077644800840247494436036119701023420994481322281698292439439757422900024513792605502072322454919813065954179431216451302123639622852552650706902919225016320) (if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (/.f64 (-.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) (*.f64 a -2))) (if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (fma.f64 -2 (*.f64 (/.f64 c b) a) b))) (*.f64 -1 (/.f64 b a)))))))
Outputs
(if (<=.f64 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))) -inf.0) (if (>=.f64 b 0) (/.f64 b a) (*.f64 -1 (/.f64 b a))) (if (<=.f64 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))) -3334007216439927/6668014432879854274079851790721257797144758322315908160396257811764037237817632071521432200871554290742929910593433240445888801654119365080363356052330830046095157579514014558463078285911814024728965016135886601981690748037476461291163877376) (if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (/.f64 (-.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) (*.f64 a -2))) (if (<=.f64 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))) 0) (if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (fma.f64 -2 (*.f64 (/.f64 c b) a) b))) (*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))) (/.f64 -1/2 a))) (if (<=.f64 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))) 49999999999999999067433886031150207889077803599102906650492418602234239416397504199421488633914272903686813485020112907863851468435224679550077644800840247494436036119701023420994481322281698292439439757422900024513792605502072322454919813065954179431216451302123639622852552650706902919225016320) (if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (/.f64 (-.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) (*.f64 a -2))) (if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (fma.f64 -2 (*.f64 (/.f64 c b) a) b))) (*.f64 -1 (/.f64 b a)))))))
(if (<=.f64 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a))))) (*.f64 2 a))) -inf.0) (if (>=.f64 b 0) (/.f64 b a) (neg.f64 (/.f64 b a))) (if (<=.f64 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a))))) (*.f64 2 a))) -3334007216439927/6668014432879854274079851790721257797144758322315908160396257811764037237817632071521432200871554290742929910593433240445888801654119365080363356052330830046095157579514014558463078285911814024728965016135886601981690748037476461291163877376) (if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (/.f64 (-.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) (*.f64 a -2))) (if (<=.f64 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a))))) (*.f64 2 a))) 0) (if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b))) (*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))) (/.f64 -1/2 a))) (if (<=.f64 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a))))) (*.f64 2 a))) 49999999999999999067433886031150207889077803599102906650492418602234239416397504199421488633914272903686813485020112907863851468435224679550077644800840247494436036119701023420994481322281698292439439757422900024513792605502072322454919813065954179431216451302123639622852552650706902919225016320) (if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (/.f64 (-.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) (*.f64 a -2))) (if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b))) (neg.f64 (/.f64 b a)))))))
(if (<=.f64 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))))) (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))) b) (*.f64 2 a))) -inf.0) (if (>=.f64 b 0) (/.f64 b a) (neg.f64 (/.f64 b a))) (if (<=.f64 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))))) (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))) b) (*.f64 2 a))) -3334007216439927/6668014432879854274079851790721257797144758322315908160396257811764037237817632071521432200871554290742929910593433240445888801654119365080363356052330830046095157579514014558463078285911814024728965016135886601981690748037476461291163877376) (if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (/.f64 (-.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) (*.f64 a -2))) (if (<=.f64 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))))) (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))) b) (*.f64 2 a))) 0) (if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b))) (*.f64 (-.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b)))) (/.f64 -1/2 a))) (if (<=.f64 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))))) (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))) b) (*.f64 2 a))) 49999999999999999067433886031150207889077803599102906650492418602234239416397504199421488633914272903686813485020112907863851468435224679550077644800840247494436036119701023420994481322281698292439439757422900024513792605502072322454919813065954179431216451302123639622852552650706902919225016320) (if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (sqrt.f64 (fma.f64 c (/.f64 a -1/4) (*.f64 b b))))) (/.f64 (-.f64 b (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) (*.f64 a -2))) (if (>=.f64 b 0) (/.f64 (*.f64 c -2) (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b))) (neg.f64 (/.f64 b a)))))))

end358.0ms (5.2%)

Stop Event
fuel
Compiler

Compiled 1043 to 594 computations (43% saved)

Profiling

Loading profile data...