Details

Time bar (total: 20.2s)

analyze729.0ms (3.6%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
0%0%99.9%0.1%0%0%0%5
0%0%99.9%0.1%0%0%0%6
8.3%7.8%85.8%0.1%0%6.2%0%7
10.8%10.1%83.5%0.1%0%6.2%0%8
18.4%16.8%74.5%0.1%0%8.6%0%9
33.6%29.1%57.5%0.1%0%13.3%0%10
39.6%33.6%51.4%0.1%0.8%14%0%11
47.9%39.2%42.7%0.1%1.6%16.4%0%12
Compiler

Compiled 42 to 27 computations (35.7% saved)

sample3.1s (15.1%)

Results
2.5s8256×body256valid
396.0ms1005×body256invalid
112.0ms589×body256infinite
Bogosity

preprocess128.0ms (0.6%)

Algorithm
egg-herbie
Rules
676×fma-def_binary64
501×associate-/l*_binary64
481×div-sub_binary64
461×associate-/r*_binary64
383×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
055232
1131208
2321208
3699200
41305200
52422200
66277200
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 c (/.f64 (-.f64 (neg.f64 b) (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) 2)) (/.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 b b (*.f64 c (*.f64 a -4)))))) 2) (/.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.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 c (*.f64 -1/2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 -1/2 (/.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) a)))
(if (>=.f64 b 0) (/.f64 c (*.f64 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) -1/2)) (*.f64 (/.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) a) -1/2))
(if (>=.f64 b 0) (*.f64 -2 (/.f64 c (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -4))))))) (*.f64 (/.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -4))))) a) -1/2))
(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 (/.f64 c (-.f64 (neg.f64 a) (sqrt.f64 (fma.f64 c (*.f64 b -4) (*.f64 a a))))) 2) (/.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 c (/.f64 -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 c (/.f64 -2 (+.f64 a (sqrt.f64 (fma.f64 b (*.f64 c -4) (*.f64 a a)))))) (*.f64 (/.f64 (-.f64 a (sqrt.f64 (fma.f64 b (*.f64 c -4) (*.f64 a a)))) b) -1/2))
(if (>=.f64 a 0) (/.f64 (*.f64 c -2) (+.f64 a (sqrt.f64 (fma.f64 b (*.f64 c -4) (*.f64 a a))))) (*.f64 (/.f64 (-.f64 a (sqrt.f64 (fma.f64 b (*.f64 c -4) (*.f64 a a)))) b) -1/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 (*.f64 2 a) (-.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 c)))
(if (>=.f64 b 0) (*.f64 a (/.f64 -2 (+.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 c)))
(if (>=.f64 b 0) (*.f64 a (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 -1/2 (/.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) c)))
(if (>=.f64 b 0) (*.f64 a (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (/.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) c) -1/2))
(if (>=.f64 b 0) (*.f64 a (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -4))))))) (*.f64 (/.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 a (*.f64 c -4))))) c) -1/2))
(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 (/.f64 2 (-.f64 (neg.f64 c) (sqrt.f64 (fma.f64 c c (*.f64 b (*.f64 a -4)))))) b) (/.f64 (-.f64 (sqrt.f64 (fma.f64 c c (*.f64 b (*.f64 a -4)))) c) (*.f64 2 a)))
(if (>=.f64 c 0) (*.f64 b (/.f64 2 (-.f64 (neg.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)))
(if (>=.f64 c 0) (*.f64 b (/.f64 -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 44 to 29 computations (34.1% saved)

simplify188.0ms (0.9%)

Algorithm
egg-herbie
Rules
1002×fma-def_binary64
782×fma-neg_binary64
560×div-sub_binary64
464×times-frac_binary64
401×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02258
14452
29952
324050
443550
577550
6148850
7286850
8431950
9560050
10653150
11695950
12707250
13786950
14792550
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 c (/.f64 -2 (+.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 c -1/2) (+.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 c -2) (+.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 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (-.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) (/.f64 -1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.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 1/2 a)))

eval1.0ms (0%)

Compiler

Compiled 75 to 47 computations (37.3% saved)

prune2.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
19.0b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
19.1b
(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)))
19.2b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.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 1/2 a)))
Compiler

Compiled 78 to 50 computations (35.9% saved)

localize58.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.7b
(+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))
0.7b
(-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b)
1.5b
(fma.f64 b b (*.f64 c (*.f64 a -4)))
21.7b
(sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))
Compiler

Compiled 140 to 84 computations (40% saved)

series25.0ms (0.1%)

Counts
4 → 96
Calls

36 calls:

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

rewrite94.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
578×log-prod_binary64
476×fma-def_binary64
410×pow-prod-down_binary64
315×pow2_binary64
274×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01156
124053
2327653
Stop Event
node limit
Counts
4 → 217
Calls
Call 1
Inputs
(sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b)
(+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/6) (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 (pow.f64 1 1/2) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(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 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/6) 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 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(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 hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(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 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 b b) 1) (*.f64 c (*.f64 a -4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (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))) (pow.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 2) (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)) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/4) (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 b 6) (pow.f64 (*.f64 c (*.f64 a -4)) 3)) (+.f64 (pow.f64 (*.f64 b b) 2) (-.f64 (*.f64 (pow.f64 (*.f64 c a) 2) 16) (*.f64 (*.f64 b b) (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 b b) 2) (*.f64 (pow.f64 (*.f64 c a) 2) 16)) (-.f64 (*.f64 b b) (*.f64 c (*.f64 a -4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.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/6) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 -4) (*.f64 c a)) (exp.f64 (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 c (*.f64 a -4)))) (exp.f64 (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 b b)) (+.f64 1 (expm1.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.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))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 2) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3)) (/.f64 1 (fma.f64 b b (fma.f64 c (*.f64 a -4) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) (sqrt.f64 b)) (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) (sqrt.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (+.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3))) (-.f64 (fma.f64 b b (fma.f64 c (*.f64 a -4) (*.f64 b b))) (*.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (-.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (*.f64 b b)))) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 b b (fma.f64 c (*.f64 a -4) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3)) (fma.f64 b b (fma.f64 c (*.f64 a -4) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3))) (neg.f64 (fma.f64 b b (fma.f64 c (*.f64 a -4) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b))) (neg.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 (neg.f64 b) 3)) (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (-.f64 (pow.f64 (neg.f64 b) 2) (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (neg.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (pow.f64 (neg.f64 b) 2)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (neg.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) 1) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (pow.f64 (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2)) (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (sqrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))) (sqrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 b b (fma.f64 c (*.f64 a -4) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (exp.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (+.f64 1 (expm1.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (+.f64 1 (expm1.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (exp.f64 (neg.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (/.f64 1 (exp.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 b)) (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 b)) (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 b)) (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) 1 (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) 1 (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) 1 (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) 1 (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) 1 (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/6) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/6) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (neg.f64 (cbrt.f64 b)) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/6) (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/6) (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 2) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 2) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 2) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 2) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 2) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 2) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (neg.f64 (sqrt.f64 b)) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(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) (neg.f64 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) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3)) (/.f64 1 (fma.f64 b b (fma.f64 c (*.f64 a -4) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3)) (/.f64 1 (fma.f64 b b (fma.f64 c (*.f64 a -4) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3)) (/.f64 1 (fma.f64 b b (fma.f64 c (*.f64 a -4) (*.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 b)) 2) (cbrt.f64 (neg.f64 b)) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 b)) (sqrt.f64 (neg.f64 b)) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 1 1/2) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 1 1/2) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 (neg.f64 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) (sqrt.f64 b)) (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) (sqrt.f64 b)) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) (sqrt.f64 b)) (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) (sqrt.f64 b)) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) (sqrt.f64 b)) (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) (sqrt.f64 b)) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (+.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3))) (-.f64 (fma.f64 b b (fma.f64 c (*.f64 a -4) (*.f64 b b))) (*.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (+.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3))) (-.f64 (fma.f64 b b (fma.f64 c (*.f64 a -4) (*.f64 b b))) (*.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (+.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3))) (-.f64 (fma.f64 b b (fma.f64 c (*.f64 a -4) (*.f64 b b))) (*.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (+.f64 (neg.f64 b) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (-.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (*.f64 b b)))) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 (neg.f64 b) 1 b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (-.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (*.f64 b b)))) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 (neg.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2) b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (-.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (*.f64 b b)))) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (+.f64 (neg.f64 b) b))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 b b) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (/.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (pow.f64 (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2) (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (sqrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3)) (/.f64 1 (-.f64 (fma.f64 b b (fma.f64 c (*.f64 a -4) (*.f64 b b))) (*.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(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 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (fma.f64 b b (fma.f64 c (*.f64 a -4) (*.f64 b b))) (*.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (+.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (-.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3)) (-.f64 (fma.f64 b b (fma.f64 c (*.f64 a -4) (*.f64 b b))) (*.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3)) (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (-.f64 (*.f64 b b) (*.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (*.f64 b b))) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3))) (neg.f64 (-.f64 (fma.f64 b b (fma.f64 c (*.f64 a -4) (*.f64 b b))) (*.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(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 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (fma.f64 b b (fma.f64 c (*.f64 a -4) (*.f64 b b))) (*.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (+.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (-.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (*.f64 b b)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 b)) (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 b) (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 b)) (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (exp.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (+.f64 1 (expm1.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (+.f64 1 (expm1.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) 1 b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/6) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 b) (pow.f64 (cbrt.f64 b) 2) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (cbrt.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/6) (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (sqrt.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(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 (pow.f64 1 1/2) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))))

simplify62.0ms (0.3%)

Algorithm
egg-herbie
Rules
761×fma-def_binary64
716×times-frac_binary64
678×associate-*r*_binary64
640×associate-*l*_binary64
441×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01392375
14412283
214972143
Stop Event
node limit
Counts
313 → 292
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
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))))
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)))))
(*.f64 -4 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(*.f64 -4 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(*.f64 -4 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(*.f64 -4 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(*.f64 -4 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 -1 b))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (+.f64 (*.f64 -1 b) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (+.f64 (*.f64 -1 b) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
(*.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 -2 (/.f64 (*.f64 c a) 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 -2 (/.f64 (*.f64 c a) b))))
(+.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 (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 -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 (*.f64 -2 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 b) (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))))
(*.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 -2 (/.f64 (*.f64 c a) 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 -2 (/.f64 (*.f64 c a) b))))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 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 -4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 -2 (/.f64 (*.f64 c a) 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 -2 (/.f64 (*.f64 c a) 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 -2 (/.f64 (*.f64 c a) b))))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -2 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) 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 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 b (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)))
(+.f64 b (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 b (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
(*.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))))
Outputs
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4)))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (sqrt.f64 -4)) b)) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (*.f64 -4 (sqrt.f64 -4)))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (sqrt.f64 -4)) b)) (*.f64 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (sqrt.f64 -4) (pow.f64 b 4))) 1/32)))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3))) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (*.f64 -4 (sqrt.f64 -4)))) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)))))
(fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (sqrt.f64 -4)) b)) (*.f64 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (sqrt.f64 -4) (pow.f64 b 4))) 1/32))))
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)
(fma.f64 -2 (*.f64 a (/.f64 c b)) 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 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (+.f64 b (*.f64 -2 (/.f64 c (/.f64 b a)))))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -2 (*.f64 (/.f64 c b) a) b))
(fma.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a 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)))))
(fma.f64 -2 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (+.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 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))) (/.f64 (*.f64 (*.f64 c a) -2) b))))
(+.f64 b (fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) (*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))))
(*.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))
(-.f64 (/.f64 (*.f64 (*.f64 c a) 2) b) b)
(-.f64 (/.f64 (*.f64 c a) (/.f64 b 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 -1 b)))
(fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 2 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (neg.f64 b)))
(fma.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a)))) (neg.f64 b))
(-.f64 (*.f64 2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))))) 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 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (neg.f64 b))))
(fma.f64 2 (*.f64 (/.f64 c 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))))
(-.f64 (fma.f64 2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 (pow.f64 a 3) 4))) b)
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)
(fma.f64 -2 (*.f64 a (/.f64 c b)) 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 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (+.f64 b (*.f64 -2 (/.f64 c (/.f64 b a)))))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -2 (*.f64 (/.f64 c b) a) b))
(fma.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a 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)))))
(fma.f64 -2 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (+.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 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))) (/.f64 (*.f64 (*.f64 c a) -2) b))))
(+.f64 b (fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) (*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))))
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)
(fma.f64 -2 (*.f64 a (/.f64 c b)) 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 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (+.f64 b (*.f64 -2 (/.f64 c (/.f64 b a)))))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (fma.f64 -2 (*.f64 (/.f64 c b) a) b))
(fma.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a 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)))))
(fma.f64 -2 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (+.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 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))) (/.f64 (*.f64 (*.f64 c a) -2) b))))
(+.f64 b (fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) (*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))))
(*.f64 -4 (*.f64 c a))
(*.f64 (*.f64 -4 c) a)
(*.f64 c (*.f64 a -4))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(pow.f64 b 2)
(*.f64 b b)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(pow.f64 b 2)
(*.f64 b b)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(pow.f64 b 2)
(*.f64 b b)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(*.f64 -4 (*.f64 c a))
(*.f64 (*.f64 -4 c) a)
(*.f64 c (*.f64 a -4))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(*.f64 -4 (*.f64 c a))
(*.f64 (*.f64 -4 c) a)
(*.f64 c (*.f64 a -4))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(pow.f64 b 2)
(*.f64 b b)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(*.f64 -4 (*.f64 c a))
(*.f64 (*.f64 -4 c) a)
(*.f64 c (*.f64 a -4))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(*.f64 -4 (*.f64 c a))
(*.f64 (*.f64 -4 c) a)
(*.f64 c (*.f64 a -4))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 -4 c) a))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 -1 b))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (neg.f64 b))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (+.f64 (*.f64 -1 b) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 -1 b (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4))))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (neg.f64 b)))
(-.f64 (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (sqrt.f64 -4)) b)) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))) b)
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (+.f64 (*.f64 -1 b) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 -1 b (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (*.f64 -4 (sqrt.f64 -4)))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (neg.f64 b))))
(-.f64 (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (sqrt.f64 -4)) b)) (*.f64 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (sqrt.f64 -4) (pow.f64 b 4))) 1/32))) b)
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 -2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 c a) -2) b)
(/.f64 (*.f64 c a) (/.f64 b -2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (+.f64 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (/.f64 c (/.f64 b a))))
(*.f64 -2 (+.f64 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a)))))
(*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))
(+.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 -2 (/.f64 (*.f64 c a) b))))
(fma.f64 -2 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -2 (/.f64 c (/.f64 b a)))))
(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))) (/.f64 (*.f64 (*.f64 c a) -2) b)))
(fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) (*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))))))
(+.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 (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 -2 (/.f64 (*.f64 c a) b)))))
(fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 -2 (*.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 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -2 (/.f64 c (/.f64 b a))))))
(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 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))) (/.f64 (*.f64 (*.f64 c a) -2) b))))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 20) (pow.f64 b 7)) (fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) (*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))))
(*.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 (*.f64 (*.f64 c a) 2) b))
(fma.f64 b -2 (/.f64 (*.f64 c a) (/.f64 b 2)))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -2 b) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3)))))
(fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 -2 b (/.f64 (*.f64 2 (*.f64 (*.f64 c c) (*.f64 a a))) (pow.f64 b 3))))
(fma.f64 2 (*.f64 (/.f64 c b) a) (fma.f64 b -2 (*.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))))))
(fma.f64 b -2 (*.f64 2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))))))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -2 b) (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))))
(fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 -2 b (fma.f64 2 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (*.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))))
(fma.f64 2 (*.f64 (/.f64 c b) a) (fma.f64 b -2 (fma.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (*.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))))
(fma.f64 b -2 (fma.f64 2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 (pow.f64 a 3) 4))))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 -2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 c a) -2) b)
(/.f64 (*.f64 c a) (/.f64 b -2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (+.f64 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (/.f64 c (/.f64 b a))))
(*.f64 -2 (+.f64 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a)))))
(*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))
(+.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 -2 (/.f64 (*.f64 c a) b))))
(fma.f64 -2 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -2 (/.f64 c (/.f64 b a)))))
(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))) (/.f64 (*.f64 (*.f64 c a) -2) b)))
(fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) (*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))))))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 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 -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 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -1/2 (/.f64 (pow.f64 c 4) (/.f64 b (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)))) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -2 (/.f64 c (/.f64 b a))))))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (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 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (/.f64 (*.f64 (*.f64 c a) -2) b))))
(fma.f64 -1/2 (*.f64 (*.f64 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) 20) (/.f64 (pow.f64 c 4) b)) (fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) (*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 -2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 c a) -2) b)
(/.f64 (*.f64 c a) (/.f64 b -2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (+.f64 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (/.f64 c (/.f64 b a))))
(*.f64 -2 (+.f64 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a)))))
(*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))
(+.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 -2 (/.f64 (*.f64 c a) b))))
(fma.f64 -2 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -2 (/.f64 c (/.f64 b a)))))
(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))) (/.f64 (*.f64 (*.f64 c a) -2) b)))
(fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) (*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))))))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -2 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) 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 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -1/2 (/.f64 (pow.f64 c 4) (/.f64 b (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)))) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -2 (/.f64 c (/.f64 b a))))))
(fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (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 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (/.f64 (*.f64 (*.f64 c a) -2) b))))
(fma.f64 -1/2 (*.f64 (*.f64 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) 20) (/.f64 (pow.f64 c 4) b)) (fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) (*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 b (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) b)
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) b)
(+.f64 b (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(+.f64 b (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4))))))
(+.f64 b (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (sqrt.f64 -4)) b)) b))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 b (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3))) (+.f64 b (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (*.f64 -4 (sqrt.f64 -4)))) (+.f64 b (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)))))
(+.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (sqrt.f64 -4) (pow.f64 b 4))) 1/32) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (sqrt.f64 -4)) b)) 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 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (/.f64 (*.f64 c a) (/.f64 b -2)))
(+.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 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -2 (/.f64 c (/.f64 b a)) (*.f64 b 2)))
(fma.f64 -2 (+.f64 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a)))) (*.f64 b 2))
(fma.f64 b 2 (*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))))))
(+.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 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (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 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 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))))
(fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) (fma.f64 b 2 (*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 c a) 2) b)
(/.f64 (*.f64 c a) (/.f64 b 2))
(+.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 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3))))
(*.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a)))))
(*.f64 2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))
(+.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 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (*.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))))))
(fma.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a)))) (*.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))
(fma.f64 2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 (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 (*.f64 -2 (*.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 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (*.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))))
(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 c) (/.f64 (pow.f64 b 3) (*.f64 a a)))) (*.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))))))
(fma.f64 1/2 (/.f64 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 20) (pow.f64 b 7)) (fma.f64 2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 (pow.f64 a 3) 4))))
(*.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 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (/.f64 (*.f64 c a) (/.f64 b -2)))
(+.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 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -2 (/.f64 c (/.f64 b a)) (*.f64 b 2)))
(fma.f64 -2 (+.f64 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a)))) (*.f64 b 2))
(fma.f64 b 2 (*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))))))
(+.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 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (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 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 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))))
(fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) (fma.f64 b 2 (*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))))
(*.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 (*.f64 (*.f64 c a) -2) b))
(fma.f64 b 2 (/.f64 (*.f64 c a) (/.f64 b -2)))
(+.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 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (fma.f64 -2 (/.f64 c (/.f64 b a)) (*.f64 b 2)))
(fma.f64 -2 (+.f64 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a)))) (*.f64 b 2))
(fma.f64 b 2 (*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))))))
(+.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 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (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 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 b 2 (/.f64 (*.f64 (*.f64 c a) -2) b))))
(fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) (fma.f64 b 2 (*.f64 -2 (fma.f64 (/.f64 c b) a (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a))))))))

localize54.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.7b
(-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
0.7b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
1.2b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
21.7b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 148 to 79 computations (46.6% saved)

series15.0ms (0.1%)

Counts
4 → 96
Calls

36 calls:

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

rewrite123.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
775×fma-def_binary64
690×log-prod_binary64
416×fma-neg_binary64
243×expm1-udef_binary64
243×log1p-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01368
130156
2436053
Stop Event
node limit
Counts
4 → 416
Calls
Call 1
Inputs
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
(-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (cbrt.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2)) (sqrt.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2) 1/2) (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 b 4) (pow.f64 (*.f64 a (*.f64 4 c)) 2))) (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 b 6) (*.f64 64 (pow.f64 (*.f64 a c) 3)))) (sqrt.f64 (fma.f64 (*.f64 a (*.f64 4 c)) (fma.f64 a (*.f64 4 c) (*.f64 b b)) (pow.f64 b 4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b)))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 b b) (*.f64 (*.f64 c (*.f64 a -4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) (fma.f64 (neg.f64 (*.f64 a c)) 4 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) (fma.f64 (*.f64 c (*.f64 a -4)) 1 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a (*.f64 4 c)))) (pow.f64 (cbrt.f64 (*.f64 a (*.f64 4 c))) 2) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) (*.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) (cbrt.f64 (exp.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (*.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (*.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 b 6) (*.f64 64 (pow.f64 (*.f64 a c) 3))) (/.f64 1 (fma.f64 (*.f64 a (*.f64 4 c)) (fma.f64 a (*.f64 4 c) (*.f64 b b)) (pow.f64 b 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 b 4) (pow.f64 (*.f64 a (*.f64 4 c)) 2)) (/.f64 1 (fma.f64 a (*.f64 4 c) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4)) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 b (sqrt.f64 (*.f64 a (*.f64 4 c)))) (-.f64 b (sqrt.f64 (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 a (*.f64 4 c)) (fma.f64 a (*.f64 4 c) (*.f64 b b)) (pow.f64 b 4)) (-.f64 (pow.f64 b 6) (*.f64 64 (pow.f64 (*.f64 a c) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 a (*.f64 4 c) (*.f64 b b)) (-.f64 (pow.f64 b 4) (pow.f64 (*.f64 a (*.f64 4 c)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 b 6) (*.f64 64 (pow.f64 (*.f64 a c) 3))) (fma.f64 (*.f64 a (*.f64 4 c)) (fma.f64 a (*.f64 4 c) (*.f64 b b)) (pow.f64 b 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 b 4) (pow.f64 (*.f64 a (*.f64 4 c)) 2)) (fma.f64 a (*.f64 4 c) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 b 6) (*.f64 64 (pow.f64 (*.f64 a c) 3)))) (neg.f64 (fma.f64 (*.f64 a (*.f64 4 c)) (fma.f64 a (*.f64 4 c) (*.f64 b b)) (pow.f64 b 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 b 4) (pow.f64 (*.f64 a (*.f64 4 c)) 2))) (neg.f64 (fma.f64 a (*.f64 4 c) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 b 6) (pow.f64 (*.f64 c (*.f64 a -4)) 3)) (+.f64 (pow.f64 b 4) (-.f64 (*.f64 (*.f64 c (*.f64 a -4)) (*.f64 c (*.f64 a -4))) (*.f64 (*.f64 b b) (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3) (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) 3)) (+.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 2) (-.f64 (*.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))) (*.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 b 4) (*.f64 (*.f64 c (*.f64 a -4)) (*.f64 c (*.f64 a -4)))) (-.f64 (*.f64 b b) (*.f64 c (*.f64 a -4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 2) (*.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))) (-.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 b b))) (pow.f64 (pow.f64 (exp.f64 a) 4) c)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 b) b) (+.f64 1 (expm1.f64 (*.f64 a (*.f64 4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 b b))) (+.f64 1 (expm1.f64 (*.f64 a (*.f64 4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 b b))) (exp.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 b) b) (/.f64 1 (pow.f64 (pow.f64 (exp.f64 a) 4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 b b))) (/.f64 1 (pow.f64 (pow.f64 (exp.f64 a) 4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) (exp.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))) (exp.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))) (+.f64 1 (expm1.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 c (*.f64 a -4))) (pow.f64 (exp.f64 b) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 a) 4) c)) (pow.f64 (exp.f64 b) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 c (*.f64 a -4))) (+.f64 1 (expm1.f64 (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (pow.f64 (exp.f64 a) 4) c)) (+.f64 1 (expm1.f64 (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b b (*.f64 c (*.f64 a -4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b b (*.f64 (*.f64 c (*.f64 a -4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b b (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b b (neg.f64 (-.f64 (*.f64 a (*.f64 4 c)) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b b) 1 (*.f64 c (*.f64 a -4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b b) 1 (*.f64 (*.f64 c (*.f64 a -4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b b) 1 (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b b) 1 (neg.f64 (-.f64 (*.f64 a (*.f64 4 c)) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 4 (neg.f64 (*.f64 a c)) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 4 a) (neg.f64 c) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c (*.f64 a -4) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1 (fma.f64 (neg.f64 (*.f64 a c)) 4 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1 (fma.f64 (*.f64 c (*.f64 a -4)) 1 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a (*.f64 4 c)))) (pow.f64 (cbrt.f64 (*.f64 a (*.f64 4 c))) 2) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1 (*.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1 (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 (neg.f64 (*.f64 a c)) 4 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 (*.f64 c (*.f64 a -4)) 1 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a (*.f64 4 c)))) (pow.f64 (cbrt.f64 (*.f64 a (*.f64 4 c))) 2) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 b b) (*.f64 c (*.f64 a -4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 b b) (*.f64 (*.f64 c (*.f64 a -4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 b b) (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 b b) (neg.f64 (-.f64 (*.f64 a (*.f64 4 c)) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 b b (*.f64 c (*.f64 a -4))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 b b (*.f64 c (*.f64 a -4))) (fma.f64 (neg.f64 (*.f64 a c)) 4 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 b b (*.f64 c (*.f64 a -4))) (fma.f64 (*.f64 c (*.f64 a -4)) 1 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 b b (*.f64 c (*.f64 a -4))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a (*.f64 4 c)))) (pow.f64 (cbrt.f64 (*.f64 a (*.f64 4 c))) 2) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 b b (*.f64 c (*.f64 a -4))) (*.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 b b (*.f64 c (*.f64 a -4))) (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 c (*.f64 a -4)) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 a (*.f64 4 c))) 2) (neg.f64 (cbrt.f64 (*.f64 a (*.f64 4 c)))) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2) (fma.f64 (neg.f64 (*.f64 a c)) 4 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2) (fma.f64 (*.f64 c (*.f64 a -4)) 1 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a (*.f64 4 c)))) (pow.f64 (cbrt.f64 (*.f64 a (*.f64 4 c))) 2) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2) (*.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2) (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (*.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (*.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 (neg.f64 (*.f64 a c)) 4 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (*.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 (*.f64 c (*.f64 a -4)) 1 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (*.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a (*.f64 4 c)))) (pow.f64 (cbrt.f64 (*.f64 a (*.f64 4 c))) 2) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (*.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (*.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (*.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (fma.f64 (neg.f64 (*.f64 a c)) 4 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (fma.f64 (*.f64 c (*.f64 a -4)) 1 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a (*.f64 4 c)))) (pow.f64 (cbrt.f64 (*.f64 a (*.f64 4 c))) 2) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (*.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (cbrt.f64 (pow.f64 b 4)) (*.f64 c (*.f64 a -4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (cbrt.f64 (pow.f64 b 4)) (*.f64 (*.f64 c (*.f64 a -4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (cbrt.f64 (pow.f64 b 4)) (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (cbrt.f64 (pow.f64 b 4)) (neg.f64 (-.f64 (*.f64 a (*.f64 4 c)) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) b) (*.f64 c (*.f64 a -4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) b) (*.f64 (*.f64 c (*.f64 a -4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) b) (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) b) (neg.f64 (-.f64 (*.f64 a (*.f64 4 c)) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 b 4)) (pow.f64 (cbrt.f64 b) 2) (*.f64 c (*.f64 a -4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 b 4)) (pow.f64 (cbrt.f64 b) 2) (*.f64 (*.f64 c (*.f64 a -4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 b 4)) (pow.f64 (cbrt.f64 b) 2) (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 b 4)) (pow.f64 (cbrt.f64 b) 2) (neg.f64 (-.f64 (*.f64 a (*.f64 4 c)) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) b) (*.f64 c (*.f64 a -4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) b) (*.f64 (*.f64 c (*.f64 a -4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) b) (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) b) (neg.f64 (-.f64 (*.f64 a (*.f64 4 c)) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a (*.f64 4 c))) (neg.f64 (sqrt.f64 (*.f64 a (*.f64 4 c)))) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (*.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (*.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 (neg.f64 (*.f64 a c)) 4 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (*.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 (*.f64 c (*.f64 a -4)) 1 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (*.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a (*.f64 4 c)))) (pow.f64 (cbrt.f64 (*.f64 a (*.f64 4 c))) 2) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (*.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (*.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (*.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 c) (*.f64 4 a) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 b 6) (*.f64 64 (pow.f64 (*.f64 a c) 3))) (/.f64 1 (fma.f64 (*.f64 a (*.f64 4 c)) (fma.f64 a (*.f64 4 c) (*.f64 b b)) (pow.f64 b 4))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 b 6) (*.f64 64 (pow.f64 (*.f64 a c) 3))) (/.f64 1 (fma.f64 (*.f64 a (*.f64 4 c)) (fma.f64 a (*.f64 4 c) (*.f64 b b)) (pow.f64 b 4))) (fma.f64 (neg.f64 (*.f64 a c)) 4 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 b 6) (*.f64 64 (pow.f64 (*.f64 a c) 3))) (/.f64 1 (fma.f64 (*.f64 a (*.f64 4 c)) (fma.f64 a (*.f64 4 c) (*.f64 b b)) (pow.f64 b 4))) (fma.f64 (*.f64 c (*.f64 a -4)) 1 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 b 6) (*.f64 64 (pow.f64 (*.f64 a c) 3))) (/.f64 1 (fma.f64 (*.f64 a (*.f64 4 c)) (fma.f64 a (*.f64 4 c) (*.f64 b b)) (pow.f64 b 4))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a (*.f64 4 c)))) (pow.f64 (cbrt.f64 (*.f64 a (*.f64 4 c))) 2) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 b 6) (*.f64 64 (pow.f64 (*.f64 a c) 3))) (/.f64 1 (fma.f64 (*.f64 a (*.f64 4 c)) (fma.f64 a (*.f64 4 c) (*.f64 b b)) (pow.f64 b 4))) (*.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 b 6) (*.f64 64 (pow.f64 (*.f64 a c) 3))) (/.f64 1 (fma.f64 (*.f64 a (*.f64 4 c)) (fma.f64 a (*.f64 4 c) (*.f64 b b)) (pow.f64 b 4))) (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 b b) (*.f64 c (*.f64 a -4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 b b) (*.f64 (*.f64 c (*.f64 a -4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 b b) (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 b b) (neg.f64 (-.f64 (*.f64 a (*.f64 4 c)) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 a (*.f64 4 c)) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 b 4) (pow.f64 (*.f64 a (*.f64 4 c)) 2)) (/.f64 1 (fma.f64 a (*.f64 4 c) (*.f64 b b))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 b 4) (pow.f64 (*.f64 a (*.f64 4 c)) 2)) (/.f64 1 (fma.f64 a (*.f64 4 c) (*.f64 b b))) (fma.f64 (neg.f64 (*.f64 a c)) 4 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 b 4) (pow.f64 (*.f64 a (*.f64 4 c)) 2)) (/.f64 1 (fma.f64 a (*.f64 4 c) (*.f64 b b))) (fma.f64 (*.f64 c (*.f64 a -4)) 1 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 b 4) (pow.f64 (*.f64 a (*.f64 4 c)) 2)) (/.f64 1 (fma.f64 a (*.f64 4 c) (*.f64 b b))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a (*.f64 4 c)))) (pow.f64 (cbrt.f64 (*.f64 a (*.f64 4 c))) 2) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 b 4) (pow.f64 (*.f64 a (*.f64 4 c)) 2)) (/.f64 1 (fma.f64 a (*.f64 4 c) (*.f64 b b))) (*.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 b 4) (pow.f64 (*.f64 a (*.f64 4 c)) 2)) (/.f64 1 (fma.f64 a (*.f64 4 c) (*.f64 b b))) (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a -4) c (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4)) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4)) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (fma.f64 (neg.f64 (*.f64 a c)) 4 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4)) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (fma.f64 (*.f64 c (*.f64 a -4)) 1 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4)) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a (*.f64 4 c)))) (pow.f64 (cbrt.f64 (*.f64 a (*.f64 4 c))) 2) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4)) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (*.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4)) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (sqrt.f64 b)) (sqrt.f64 b) (*.f64 c (*.f64 a -4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (sqrt.f64 b)) (sqrt.f64 b) (*.f64 (*.f64 c (*.f64 a -4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (sqrt.f64 b)) (sqrt.f64 b) (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (sqrt.f64 b)) (sqrt.f64 b) (neg.f64 (-.f64 (*.f64 a (*.f64 4 c)) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 c (*.f64 a -4))) (cbrt.f64 (*.f64 c (*.f64 a -4)))) (cbrt.f64 (*.f64 c (*.f64 a -4))) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))) (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))) (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))) (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) (sqrt.f64 (*.f64 c (*.f64 a -4))) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))) (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))) (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (*.f64 a (*.f64 4 c)))) (sqrt.f64 (*.f64 a (*.f64 4 c))) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 b (sqrt.f64 (*.f64 a (*.f64 4 c)))) (-.f64 b (sqrt.f64 (*.f64 a (*.f64 4 c)))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 b (sqrt.f64 (*.f64 a (*.f64 4 c)))) (-.f64 b (sqrt.f64 (*.f64 a (*.f64 4 c)))) (fma.f64 (neg.f64 (*.f64 a c)) 4 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 b (sqrt.f64 (*.f64 a (*.f64 4 c)))) (-.f64 b (sqrt.f64 (*.f64 a (*.f64 4 c)))) (fma.f64 (*.f64 c (*.f64 a -4)) 1 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 b (sqrt.f64 (*.f64 a (*.f64 4 c)))) (-.f64 b (sqrt.f64 (*.f64 a (*.f64 4 c)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a (*.f64 4 c)))) (pow.f64 (cbrt.f64 (*.f64 a (*.f64 4 c))) 2) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 b (sqrt.f64 (*.f64 a (*.f64 4 c)))) (-.f64 b (sqrt.f64 (*.f64 a (*.f64 4 c)))) (*.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 b (sqrt.f64 (*.f64 a (*.f64 4 c)))) (-.f64 b (sqrt.f64 (*.f64 a (*.f64 4 c)))) (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -4 (*.f64 a c) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 a (*.f64 4 c))) 2)) (cbrt.f64 (*.f64 a (*.f64 4 c))) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 a -4) 1) c (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 a -4) (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 c) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 a -4) (sqrt.f64 c)) (sqrt.f64 c) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (*.f64 c (*.f64 a -4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (*.f64 (*.f64 c (*.f64 a -4)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (neg.f64 (-.f64 (*.f64 a (*.f64 4 c)) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 (neg.f64 (*.f64 a c)) 4 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 (*.f64 c (*.f64 a -4)) 1 (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 a (*.f64 4 c)))) (pow.f64 (cbrt.f64 (*.f64 a (*.f64 4 c))) 2) (*.f64 a (*.f64 4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (*.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (+.f64 (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 b b) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (/.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) 0) b)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (pow.f64 (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2) (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (sqrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2)) (/.f64 1 (fma.f64 b b (fma.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 b b (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (/.f64 1 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c)))) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (-.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2))) (fma.f64 b b (fma.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 b b (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 b b (fma.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 b b (*.f64 c (*.f64 a -4))))) (+.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2)) (fma.f64 b b (fma.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 b b (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2)) (+.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) (fma.f64 b b (*.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c)))) (neg.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2))) (neg.f64 (fma.f64 b b (fma.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 b b (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) (*.f64 b b)) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) 1) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (pow.f64 (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2)) (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (sqrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))) (sqrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (exp.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (exp.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (+.f64 1 (expm1.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (+.f64 1 (expm1.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 b)) (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 b) (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 b)) (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (exp.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (+.f64 1 (expm1.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (+.f64 1 (expm1.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b -1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) 1 b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 b) (pow.f64 (cbrt.f64 b) 2) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (cbrt.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (neg.f64 (cbrt.f64 b)) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (sqrt.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (neg.f64 (sqrt.f64 b)) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2)) (sqrt.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) 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)) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 1 1/2) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 2) 1/2) (pow.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) 1/2) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (sqrt.f64 b)) (sqrt.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 b (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 b (*.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 (neg.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (+.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) b)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))) (cbrt.f64 (exp.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (log.f64 (cbrt.f64 (exp.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (pow.f64 (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2) (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (sqrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2)) (/.f64 1 (fma.f64 b b (fma.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 b b (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 b) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4)) (-.f64 (sqrt.f64 b) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (+.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2))) (fma.f64 b b (fma.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 b b (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c)))) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 b b (fma.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 b b (*.f64 c (*.f64 a -4))))) (-.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2)) (fma.f64 b b (fma.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 b b (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2))) (neg.f64 (fma.f64 b b (fma.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 b b (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c)))) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 b 3) (pow.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 3)) (fma.f64 b b (-.f64 (*.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (*.f64 b (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 b b) (*.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))) (-.f64 b (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) 1) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (pow.f64 (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2)) (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (sqrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))) (sqrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (exp.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 1 (+.f64 1 (expm1.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 b)) (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 b) (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 b)) (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 b)) (exp.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 b) (/.f64 1 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 b)) (/.f64 1 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (exp.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (exp.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (+.f64 1 (expm1.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (+.f64 1 (expm1.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b 1 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b 1 (*.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b -1 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b -1 (*.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1 (fma.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1 (fma.f64 (neg.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1 (+.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 b (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 b (*.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 (neg.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (+.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 b) (pow.f64 (cbrt.f64 b) 2) (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 b) (pow.f64 (cbrt.f64 b) 2) (*.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (neg.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (cbrt.f64 b) (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (cbrt.f64 b) (*.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (neg.f64 (cbrt.f64 b)) (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (neg.f64 (cbrt.f64 b)) (*.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (pow.f64 (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2) (fma.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (pow.f64 (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2) (fma.f64 (neg.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (pow.f64 (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2) (+.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2) (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (fma.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2) (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (fma.f64 (neg.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2) (cbrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (+.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (sqrt.f64 b) (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (sqrt.f64 b) (*.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (neg.f64 (sqrt.f64 b)) (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (neg.f64 (sqrt.f64 b)) (*.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (sqrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (fma.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (sqrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (fma.f64 (neg.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (sqrt.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (+.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) (neg.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4)) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2)) (/.f64 1 (fma.f64 b b (fma.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 b b (*.f64 c (*.f64 a -4)))))) (fma.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2)) (/.f64 1 (fma.f64 b b (fma.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 b b (*.f64 c (*.f64 a -4)))))) (fma.f64 (neg.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2)) (/.f64 1 (fma.f64 b b (fma.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 b b (*.f64 c (*.f64 a -4)))))) (+.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 b (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 b (*.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (fma.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (fma.f64 (neg.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (+.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (cbrt.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))) (cbrt.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 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 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(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)) (*.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (sqrt.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4)) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 b) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4)) (-.f64 (sqrt.f64 b) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4)) (fma.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 b) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4)) (-.f64 (sqrt.f64 b) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4)) (fma.f64 (neg.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 b) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4)) (-.f64 (sqrt.f64 b) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 1/4)) (+.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (*.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 b)) (sqrt.f64 b) (*.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (+.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2))) (fma.f64 b b (fma.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 b b (*.f64 c (*.f64 a -4))))) (fma.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (+.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2))) (fma.f64 b b (fma.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 b b (*.f64 c (*.f64 a -4))))) (fma.f64 (neg.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (+.f64 (pow.f64 b 3) (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2))) (fma.f64 b b (fma.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (fma.f64 b b (*.f64 c (*.f64 a -4))))) (+.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c)))) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c)))) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 (neg.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (cbrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c))) (+.f64 (fma.f64 b b (*.f64 b b)) (*.f64 a (*.f64 4 c)))) (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (+.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b) (*.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (sqrt.f64 b)) (sqrt.f64 b) (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1 (sqrt.f64 b)) (sqrt.f64 b) (*.f64 (neg.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))))

simplify72.0ms (0.4%)

Algorithm
egg-herbie
Rules
721×times-frac_binary64
708×fma-def_binary64
686×associate-*r*_binary64
650×associate-*l*_binary64
443×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01332386
14222292
214832157
Stop Event
node limit
Counts
512 → 476
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
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))))
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)))))
(*.f64 -4 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(*.f64 -4 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(*.f64 -4 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(*.f64 -4 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(*.f64 -4 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 -1 b))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (+.f64 (*.f64 -1 b) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (+.f64 (*.f64 -1 b) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
(*.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 -2 (/.f64 (*.f64 c a) 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 -2 (/.f64 (*.f64 c a) b))))
(+.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 (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 -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 (*.f64 -2 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 b) (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))))
(*.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 -2 (/.f64 (*.f64 c a) 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 -2 (/.f64 (*.f64 c a) b))))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -2 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) 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 -2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.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 (*.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 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.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 -4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 -2 (/.f64 (*.f64 c a) b)))))
(*.f64 -1 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))) (*.f64 -1 b))
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))) (*.f64 -1 b)))
(+.f64 (*.f64 1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))) (*.f64 -1 b))))
(*.f64 -2 b)
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -2 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 b) (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))))
(*.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 -2 (/.f64 (*.f64 c a) 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 -2 (/.f64 (*.f64 c a) b))))
(+.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 (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 -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 (*.f64 -2 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 b) (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))))
(*.f64 -2 b)
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -2 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 b) (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))))
Outputs
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4)))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (sqrt.f64 -4)) b)) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (*.f64 -4 (sqrt.f64 -4)))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (sqrt.f64 -4)) b)) (*.f64 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (sqrt.f64 -4) (pow.f64 b 4))) 1/32)))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3))) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (*.f64 -4 (sqrt.f64 -4)))) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)))))
(fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (sqrt.f64 -4)) b)) (*.f64 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (sqrt.f64 -4) (pow.f64 b 4))) 1/32))))
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)
(fma.f64 -2 (/.f64 c (/.f64 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 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (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 b (fma.f64 -2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (/.f64 (*.f64 (*.f64 c a) -2) b))))
(+.f64 b (fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (/.f64 (pow.f64 b 5) -4))))
(*.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))
(-.f64 (/.f64 (*.f64 c 2) (/.f64 b a)) b)
(-.f64 (*.f64 (/.f64 (*.f64 c 2) b) 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)))
(-.f64 (*.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)))) 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 2 (*.f64 (/.f64 c b) a) (fma.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (fma.f64 2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (neg.f64 b))))
(fma.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (-.f64 (*.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c)))) b))
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)
(fma.f64 -2 (/.f64 c (/.f64 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 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (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 b (fma.f64 -2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (/.f64 (*.f64 (*.f64 c a) -2) b))))
(+.f64 b (fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (/.f64 (pow.f64 b 5) -4))))
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)
(fma.f64 -2 (/.f64 c (/.f64 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 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (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 b (fma.f64 -2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (/.f64 (*.f64 (*.f64 c a) -2) b))))
(+.f64 b (fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (/.f64 (pow.f64 b 5) -4))))
(*.f64 -4 (*.f64 c a))
(*.f64 (*.f64 c a) -4)
(*.f64 c (*.f64 a -4))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(pow.f64 b 2)
(*.f64 b b)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(pow.f64 b 2)
(*.f64 b b)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(pow.f64 b 2)
(*.f64 b b)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(*.f64 -4 (*.f64 c a))
(*.f64 (*.f64 c a) -4)
(*.f64 c (*.f64 a -4))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(*.f64 -4 (*.f64 c a))
(*.f64 (*.f64 c a) -4)
(*.f64 c (*.f64 a -4))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(pow.f64 b 2)
(*.f64 b b)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(*.f64 -4 (*.f64 c a))
(*.f64 (*.f64 c a) -4)
(*.f64 c (*.f64 a -4))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(*.f64 -4 (*.f64 c a))
(*.f64 (*.f64 c a) -4)
(*.f64 c (*.f64 a -4))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 (*.f64 c a) -4 (*.f64 b b))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 -1 b))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (neg.f64 b))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (+.f64 (*.f64 -1 b) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 -1 b (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4))))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (neg.f64 b)))
(-.f64 (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (sqrt.f64 -4)) b)) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))) b)
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (+.f64 (*.f64 -1 b) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 -1 b (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (*.f64 -4 (sqrt.f64 -4)))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (neg.f64 b))))
(-.f64 (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (sqrt.f64 -4)) b)) (*.f64 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (sqrt.f64 -4) (pow.f64 b 4))) 1/32))) b)
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 -2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 c a) -2) b)
(/.f64 (*.f64 c a) (/.f64 b -2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (+.f64 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (/.f64 c (/.f64 b a))))
(*.f64 -2 (+.f64 (*.f64 (/.f64 c b) a) (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c))))
(*.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 (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 -2 (/.f64 (*.f64 c a) 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))) (*.f64 -2 (/.f64 c (/.f64 b a)))))
(fma.f64 -2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (/.f64 (*.f64 (*.f64 c a) -2) b)))
(fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (/.f64 (pow.f64 b 5) -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 (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 -2 (/.f64 (*.f64 c a) b)))))
(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 (*.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))) (*.f64 -2 (/.f64 c (/.f64 b a))))))
(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 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (/.f64 (*.f64 (*.f64 c a) -2) b))))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 20) (pow.f64 b 7)) (fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (/.f64 (pow.f64 b 5) -4))))
(*.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 (*.f64 c 2) (/.f64 b a)))
(fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -2 b) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3)))))
(fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 -2 b (*.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))))))
(fma.f64 2 (*.f64 (/.f64 c b) a) (fma.f64 b -2 (*.f64 2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)))))
(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 c a) b)) (+.f64 (*.f64 -2 b) (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))))
(fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 -2 b (fma.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(fma.f64 2 (*.f64 (/.f64 c b) a) (fma.f64 b -2 (fma.f64 2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (*.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))))
(+.f64 (*.f64 (/.f64 4 (pow.f64 b 5)) (*.f64 (pow.f64 c 3) (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 -2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 c a) -2) b)
(/.f64 (*.f64 c a) (/.f64 b -2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (+.f64 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (/.f64 c (/.f64 b a))))
(*.f64 -2 (+.f64 (*.f64 (/.f64 c b) a) (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c))))
(*.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 (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 -2 (/.f64 (*.f64 c a) 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))) (*.f64 -2 (/.f64 c (/.f64 b a)))))
(fma.f64 -2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (/.f64 (*.f64 (*.f64 c a) -2) b)))
(fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (/.f64 (pow.f64 b 5) -4)))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -2 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) 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))) (fma.f64 -1/2 (/.f64 (pow.f64 a 4) (/.f64 b (fma.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) (pow.f64 (*.f64 -2 (/.f64 (*.f64 c c) (pow.f64 b 3))) 2)))) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -2 (/.f64 c (/.f64 b a))))))
(fma.f64 -2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 a 4) 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 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (/.f64 (*.f64 (*.f64 c a) -2) b))))
(fma.f64 -1/2 (*.f64 (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) 20) (/.f64 (pow.f64 a 4) b)) (fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (/.f64 (pow.f64 b 5) -4))))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 -2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 c a) -2) b)
(/.f64 (*.f64 c a) (/.f64 b -2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (+.f64 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (/.f64 c (/.f64 b a))))
(*.f64 -2 (+.f64 (*.f64 (/.f64 c b) a) (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c))))
(*.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 (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 -2 (/.f64 (*.f64 c a) 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))) (*.f64 -2 (/.f64 c (/.f64 b a)))))
(fma.f64 -2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (/.f64 (*.f64 (*.f64 c a) -2) b)))
(fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (/.f64 (pow.f64 b 5) -4)))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 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 -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))) (fma.f64 -1/2 (/.f64 (pow.f64 a 4) (/.f64 b (fma.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) (pow.f64 (*.f64 -2 (/.f64 (*.f64 c c) (pow.f64 b 3))) 2)))) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -2 (/.f64 c (/.f64 b a))))))
(fma.f64 -2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 a 4) 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 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (/.f64 (*.f64 (*.f64 c a) -2) b))))
(fma.f64 -1/2 (*.f64 (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) 20) (/.f64 (pow.f64 a 4) b)) (fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (/.f64 (pow.f64 b 5) -4))))
(*.f64 -1 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)))
(neg.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)))
(*.f64 (sqrt.f64 (*.f64 c a)) (neg.f64 (sqrt.f64 -4)))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))) (*.f64 -1 b))
(*.f64 -1 (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) b))
(neg.f64 (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) b))
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))) (*.f64 -1 b)))
(fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4))) (*.f64 -1 (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) b)))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) -1/2 (neg.f64 (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) b)))
(-.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b -1/2) (/.f64 (sqrt.f64 -4) b))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) b))
(+.f64 (*.f64 1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))) (*.f64 -1 b))))
(fma.f64 1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3))) (fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4))) (*.f64 -1 (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) b))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (*.f64 -4 (sqrt.f64 -4)))) 1/8 (fma.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) -1/2 (neg.f64 (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) b))))
(fma.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b -1/2) (/.f64 (sqrt.f64 -4) b)) (-.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (sqrt.f64 -4) (pow.f64 b 4))) -1/32) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) 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 (*.f64 c 2) (/.f64 b a)))
(fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -2 b) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3)))))
(fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 -2 b (*.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))))))
(fma.f64 2 (*.f64 (/.f64 c b) a) (fma.f64 b -2 (*.f64 2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)))))
(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 c a) b)) (+.f64 (*.f64 -2 b) (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))))
(fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 -2 b (fma.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(fma.f64 2 (*.f64 (/.f64 c b) a) (fma.f64 b -2 (fma.f64 2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (*.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))))
(+.f64 (*.f64 (/.f64 4 (pow.f64 b 5)) (*.f64 (pow.f64 c 3) (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 -2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 c a) -2) b)
(/.f64 (*.f64 c a) (/.f64 b -2))
(+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (+.f64 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))) (/.f64 c (/.f64 b a))))
(*.f64 -2 (+.f64 (*.f64 (/.f64 c b) a) (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c))))
(*.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 (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 -2 (/.f64 (*.f64 c a) 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))) (*.f64 -2 (/.f64 c (/.f64 b a)))))
(fma.f64 -2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (/.f64 (*.f64 (*.f64 c a) -2) b)))
(fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (/.f64 (pow.f64 b 5) -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 (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 -2 (/.f64 (*.f64 c a) b)))))
(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 (*.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))) (*.f64 -2 (/.f64 c (/.f64 b a))))))
(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 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (/.f64 (*.f64 (*.f64 c a) -2) b))))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 20) (pow.f64 b 7)) (fma.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (/.f64 (*.f64 a a) (pow.f64 b 3)) (*.f64 c c))) (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (/.f64 (pow.f64 b 5) -4))))
(*.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 (*.f64 c 2) (/.f64 b a)))
(fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -2 b) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3)))))
(fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 -2 b (*.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))))))
(fma.f64 2 (*.f64 (/.f64 c b) a) (fma.f64 b -2 (*.f64 2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)))))
(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 c a) b)) (+.f64 (*.f64 -2 b) (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))))
(fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 -2 b (fma.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(fma.f64 2 (*.f64 (/.f64 c b) a) (fma.f64 b -2 (fma.f64 2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (*.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))))
(+.f64 (*.f64 (/.f64 4 (pow.f64 b 5)) (*.f64 (pow.f64 c 3) (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 (*.f64 c 2) (/.f64 b a)))
(fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -2 b) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3)))))
(fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 -2 b (*.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a))))))
(fma.f64 2 (*.f64 (/.f64 c b) a) (fma.f64 b -2 (*.f64 2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)))))
(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 c a) b)) (+.f64 (*.f64 -2 b) (+.f64 (*.f64 4 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (*.f64 2 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))))))
(fma.f64 2 (/.f64 c (/.f64 b a)) (fma.f64 -2 b (fma.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(fma.f64 2 (*.f64 (/.f64 c b) a) (fma.f64 b -2 (fma.f64 2 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) (*.f64 a a)) c)) (*.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))))
(+.f64 (*.f64 (/.f64 4 (pow.f64 b 5)) (*.f64 (pow.f64 c 3) (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)))

eval1.5s (7.6%)

Compiler

Compiled 54426 to 33141 computations (39.1% saved)

prune310.0ms (1.5%)

Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New1102121114
Fresh000
Picked101
Done011
Total1103131116
Error
5.6b
Counts
1116 → 13
Alt Table
Click to see full alt table
StatusErrorProgram
22.5b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
20.6b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
19.2b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.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 1/2 a)))
22.4b
(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) (*.f64 -1 b)) (*.f64 2 a)))
20.7b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
36.1b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
28.0b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (pow.f64 b 2))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
20.7b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
23.7b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
24.5b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (-.f64 (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) b) (/.f64 1/2 a)))
19.3b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (-.f64 (sqrt.f64 (pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) 4)) b) (/.f64 1/2 a)))
19.1b
(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) (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))) (*.f64 2 a)))
20.7b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (-.f64 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) b) (/.f64 1/2 a)))
Compiler

Compiled 973 to 640 computations (34.2% saved)

localize273.0ms (1.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.2b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
21.7b
(sqrt.f64 (+.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))
21.7b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
50.6b
(fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c)))
Compiler

Compiled 254 to 141 computations (44.5% saved)

series55.0ms (0.3%)

Counts
2 → 44
Calls

15 calls:

TimeVariablePointExpression
29.0ms
a
@0
(sqrt.f64 (+.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))
5.0ms
a
@inf
(sqrt.f64 (+.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))
2.0ms
c
@-inf
(sqrt.f64 (+.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))
2.0ms
a
@-inf
(sqrt.f64 (+.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))
2.0ms
b
@0
(sqrt.f64 (+.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))

rewrite90.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
973×prod-diff_binary64
669×log-prod_binary64
327×fma-def_binary64
249×expm1-udef_binary64
249×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify121.0ms (0.6%)

Algorithm
egg-herbie
Rules
896×times-frac_binary64
579×associate-/l*_binary64
524×unswap-sqr_binary64
452×associate-/r*_binary64
322×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0117755
1380607
21401576
37230576
Stop Event
node limit
Counts
103 → 93
Calls
Call 1
Inputs
(*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a)))
(*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a)))
(*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a)))
(*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a)))
(*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a)))
(*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a)))
(*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a)))
(*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a)))
(*.f64 -1 (*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a))))
(*.f64 -1 (*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a))))
(*.f64 -1 (*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a))))
(*.f64 -1 (*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a))))
(*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c)))
(*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c)))
(*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c)))
(*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c)))
(*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c)))
(*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c)))
(*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c)))
(*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c)))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c))))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c))))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c))))
(*.f64 -1 (*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c))))
(sqrt.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a)))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))))) (pow.f64 b 2))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 3))) (pow.f64 b 4))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))))) (pow.f64 b 2)))))
(+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 5))) (pow.f64 b 6))) (+.f64 (sqrt.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 3))) (pow.f64 b 4))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))))) (pow.f64 b 2))))))
b
(+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) b)) b)
(+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) b)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 2) (pow.f64 b 3))) b))
(+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) b)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 3) (pow.f64 b 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 2) (pow.f64 b 3))) b)))
(*.f64 -1 b)
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) b)) (*.f64 -1 b))
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) b)) (+.f64 (*.f64 -1 b) (*.f64 1/8 (/.f64 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 2) (pow.f64 b 3)))))
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) b)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 3) (pow.f64 b 5))) (+.f64 (*.f64 -1 b) (*.f64 1/8 (/.f64 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 2) (pow.f64 b 3))))))
b
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 4 a) (*.f64 -8 a)) c) b)) b)
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 4 a) (*.f64 -8 a)) c) b)) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (+.f64 (*.f64 4 a) (*.f64 -8 a)) 2) (pow.f64 c 2)) (pow.f64 b 3))) b))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 4 a) (*.f64 -8 a)) c) b)) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 (+.f64 (*.f64 4 a) (*.f64 -8 a)) 3) (pow.f64 c 3)) (pow.f64 b 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (+.f64 (*.f64 4 a) (*.f64 -8 a)) 2) (pow.f64 c 2)) (pow.f64 b 3))) b)))
b
(+.f64 (*.f64 1/2 (/.f64 (*.f64 a (+.f64 (*.f64 -8 c) (*.f64 4 c))) b)) b)
(+.f64 (*.f64 1/2 (/.f64 (*.f64 a (+.f64 (*.f64 -8 c) (*.f64 4 c))) b)) (+.f64 b (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 a 2) (pow.f64 (+.f64 (*.f64 -8 c) (*.f64 4 c)) 2)) (pow.f64 b 3)))))
(+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 a 3) (pow.f64 (+.f64 (*.f64 -8 c) (*.f64 4 c)) 3)) (pow.f64 b 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 a (+.f64 (*.f64 -8 c) (*.f64 4 c))) b)) (+.f64 b (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 a 2) (pow.f64 (+.f64 (*.f64 -8 c) (*.f64 4 c)) 2)) (pow.f64 b 3))))))
Outputs
(*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a)))
(*.f64 c (*.f64 a 0))
0
(*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a)))
(*.f64 c (*.f64 a 0))
0
(*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a)))
(*.f64 c (*.f64 a 0))
0
(*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a)))
(*.f64 c (*.f64 a 0))
0
(*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a)))
(*.f64 c (*.f64 a 0))
0
(*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a)))
(*.f64 c (*.f64 a 0))
0
(*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a)))
(*.f64 c (*.f64 a 0))
0
(*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a)))
(*.f64 c (*.f64 a 0))
0
(*.f64 -1 (*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a))))
(*.f64 c (*.f64 a 0))
0
(*.f64 -1 (*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a))))
(*.f64 c (*.f64 a 0))
0
(*.f64 -1 (*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a))))
(*.f64 c (*.f64 a 0))
0
(*.f64 -1 (*.f64 c (+.f64 (*.f64 4 a) (*.f64 -4 a))))
(*.f64 c (*.f64 a 0))
0
(*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c)))
(*.f64 c (*.f64 a 0))
0
(*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c)))
(*.f64 c (*.f64 a 0))
0
(*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c)))
(*.f64 c (*.f64 a 0))
0
(*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c)))
(*.f64 c (*.f64 a 0))
0
(*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c)))
(*.f64 c (*.f64 a 0))
0
(*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c)))
(*.f64 c (*.f64 a 0))
0
(*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c)))
(*.f64 c (*.f64 a 0))
0
(*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c)))
(*.f64 c (*.f64 a 0))
0
(*.f64 -1 (*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c))))
(*.f64 c (*.f64 a 0))
0
(*.f64 -1 (*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c))))
(*.f64 c (*.f64 a 0))
0
(*.f64 -1 (*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c))))
(*.f64 c (*.f64 a 0))
0
(*.f64 -1 (*.f64 a (+.f64 (*.f64 4 c) (*.f64 -4 c))))
(*.f64 c (*.f64 a 0))
0
(sqrt.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))))
(sqrt.f64 (*.f64 a (*.f64 c -4)))
(sqrt.f64 (*.f64 c (*.f64 a -4)))
(+.f64 (sqrt.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a)))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))))) (pow.f64 b 2))))
(+.f64 (sqrt.f64 (*.f64 a (*.f64 c -4))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (*.f64 c -4)))) (*.f64 b b))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (*.f64 a -4)))) (*.f64 b b)) (sqrt.f64 (*.f64 c (*.f64 a -4))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (/.f64 -1/4 c) a)) (*.f64 b b)) (sqrt.f64 (*.f64 c (*.f64 a -4))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 3))) (pow.f64 b 4))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))))) (pow.f64 b 2)))))
(+.f64 (sqrt.f64 (*.f64 a (*.f64 c -4))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 a (*.f64 c -4)) 3))) (pow.f64 b 4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (*.f64 c -4)))) (*.f64 b b)))))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (*.f64 c a) 3) -64))) (pow.f64 b 4)) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (*.f64 a -4)))) (*.f64 (*.f64 b b) 1/2))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (/.f64 -1/4 c) a)) (*.f64 b b)) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 (*.f64 c a) 3)) -64)) (pow.f64 b 4)) (sqrt.f64 (*.f64 c (*.f64 a -4)))))
(+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 5))) (pow.f64 b 6))) (+.f64 (sqrt.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 3))) (pow.f64 b 4))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))))) (pow.f64 b 2))))))
(fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 a (*.f64 c -4)) 5))) (pow.f64 b 6)) (+.f64 (sqrt.f64 (*.f64 a (*.f64 c -4))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 a (*.f64 c -4)) 3))) (pow.f64 b 4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (*.f64 c -4)))) (*.f64 b b))))))
(+.f64 (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 (*.f64 c a) 3) -64))) (pow.f64 b 4)) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (*.f64 a -4)))) (*.f64 (*.f64 b b) 1/2))) (fma.f64 (*.f64 1/16 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c (*.f64 a -4)) 5)))) (pow.f64 b 6) (sqrt.f64 (*.f64 c (*.f64 a -4)))))
(fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c (*.f64 a -4)) 5))) (*.f64 1/16 (pow.f64 b 6)) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (/.f64 -1/4 c) a)) (*.f64 b b)) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 (*.f64 c a) 3)) -64)) (pow.f64 b 4)) (sqrt.f64 (*.f64 c (*.f64 a -4))))))
b
(+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) b)) b)
(fma.f64 1/2 (/.f64 (*.f64 a (*.f64 c -4)) b) b)
(fma.f64 1/2 (/.f64 a (/.f64 b (*.f64 c -4))) b)
(+.f64 b (/.f64 -2 (/.f64 b (*.f64 c a))))
(+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) b)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 2) (pow.f64 b 3))) b))
(fma.f64 1/2 (/.f64 (*.f64 a (*.f64 c -4)) b) (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 a (*.f64 c -4)) 2) (pow.f64 b 3)) b))
(fma.f64 1/2 (/.f64 a (/.f64 b (*.f64 c -4))) (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 2) (pow.f64 b 3)) b))
(+.f64 b (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 2) (pow.f64 b 3)) (/.f64 -2 (/.f64 b (*.f64 c a)))))
(+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) b)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 3) (pow.f64 b 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 2) (pow.f64 b 3))) b)))
(fma.f64 1/2 (/.f64 (*.f64 a (*.f64 c -4)) b) (fma.f64 1/16 (/.f64 (pow.f64 (*.f64 a (*.f64 c -4)) 3) (pow.f64 b 5)) (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 a (*.f64 c -4)) 2) (pow.f64 b 3)) b)))
(fma.f64 1/2 (/.f64 a (/.f64 b (*.f64 c -4))) (fma.f64 1/16 (/.f64 (*.f64 (pow.f64 (*.f64 c a) 3) -64) (pow.f64 b 5)) (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 2) (pow.f64 b 3)) b)))
(+.f64 (/.f64 -2 (/.f64 b (*.f64 c a))) (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 2) (pow.f64 b 3)) (fma.f64 1/16 (/.f64 (pow.f64 (*.f64 c a) 3) (/.f64 (pow.f64 b 5) -64)) b)))
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) b)) (*.f64 -1 b))
(fma.f64 -1/2 (/.f64 (*.f64 a (*.f64 c -4)) b) (neg.f64 b))
(-.f64 (*.f64 (/.f64 a (/.f64 b (*.f64 c -4))) -1/2) b)
(-.f64 (/.f64 2 (/.f64 b (*.f64 c a))) b)
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) b)) (+.f64 (*.f64 -1 b) (*.f64 1/8 (/.f64 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 2) (pow.f64 b 3)))))
(fma.f64 -1/2 (/.f64 (*.f64 a (*.f64 c -4)) b) (fma.f64 -1 b (*.f64 (/.f64 (pow.f64 (*.f64 a (*.f64 c -4)) 2) (pow.f64 b 3)) 1/8)))
(fma.f64 (/.f64 a (/.f64 b (*.f64 c -4))) -1/2 (-.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 2) (pow.f64 b 3)) 1/8) b))
(fma.f64 (/.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 2) (pow.f64 b 3)) 1/8 (-.f64 (/.f64 2 (/.f64 b (*.f64 c a))) b))
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) b)) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 3) (pow.f64 b 5))) (+.f64 (*.f64 -1 b) (*.f64 1/8 (/.f64 (pow.f64 (+.f64 (*.f64 -8 (*.f64 c a)) (*.f64 4 (*.f64 c a))) 2) (pow.f64 b 3))))))
(fma.f64 -1/2 (/.f64 (*.f64 a (*.f64 c -4)) b) (fma.f64 -1/16 (/.f64 (pow.f64 (*.f64 a (*.f64 c -4)) 3) (pow.f64 b 5)) (fma.f64 -1 b (*.f64 (/.f64 (pow.f64 (*.f64 a (*.f64 c -4)) 2) (pow.f64 b 3)) 1/8))))
(fma.f64 (/.f64 a (/.f64 b (*.f64 c -4))) -1/2 (fma.f64 (/.f64 (*.f64 (pow.f64 (*.f64 c a) 3) -64) (pow.f64 b 5)) -1/16 (-.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 2) (pow.f64 b 3)) 1/8) b)))
(fma.f64 (/.f64 (pow.f64 (*.f64 c a) 3) (/.f64 (pow.f64 b 5) -64)) -1/16 (fma.f64 (/.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 2) (pow.f64 b 3)) 1/8 (-.f64 (/.f64 2 (/.f64 b (*.f64 c a))) b)))
b
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 4 a) (*.f64 -8 a)) c) b)) b)
(fma.f64 1/2 (/.f64 (*.f64 a (*.f64 c -4)) b) b)
(fma.f64 1/2 (/.f64 a (/.f64 b (*.f64 c -4))) b)
(+.f64 b (/.f64 -2 (/.f64 b (*.f64 c a))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 4 a) (*.f64 -8 a)) c) b)) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (+.f64 (*.f64 4 a) (*.f64 -8 a)) 2) (pow.f64 c 2)) (pow.f64 b 3))) b))
(fma.f64 1/2 (/.f64 (*.f64 a (*.f64 c -4)) b) (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 a (*.f64 c -4)) 2) (pow.f64 b 3)) b))
(fma.f64 1/2 (/.f64 a (/.f64 b (*.f64 c -4))) (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 2) (pow.f64 b 3)) b))
(+.f64 b (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 2) (pow.f64 b 3)) (/.f64 -2 (/.f64 b (*.f64 c a)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 4 a) (*.f64 -8 a)) c) b)) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 (+.f64 (*.f64 4 a) (*.f64 -8 a)) 3) (pow.f64 c 3)) (pow.f64 b 5))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 (+.f64 (*.f64 4 a) (*.f64 -8 a)) 2) (pow.f64 c 2)) (pow.f64 b 3))) b)))
(fma.f64 1/2 (/.f64 (*.f64 a (*.f64 c -4)) b) (fma.f64 1/16 (/.f64 (pow.f64 (*.f64 a (*.f64 c -4)) 3) (pow.f64 b 5)) (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 a (*.f64 c -4)) 2) (pow.f64 b 3)) b)))
(fma.f64 1/2 (/.f64 a (/.f64 b (*.f64 c -4))) (fma.f64 1/16 (/.f64 (*.f64 (pow.f64 (*.f64 c a) 3) -64) (pow.f64 b 5)) (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 2) (pow.f64 b 3)) b)))
(+.f64 (/.f64 -2 (/.f64 b (*.f64 c a))) (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 2) (pow.f64 b 3)) (fma.f64 1/16 (/.f64 (pow.f64 (*.f64 c a) 3) (/.f64 (pow.f64 b 5) -64)) b)))
b
(+.f64 (*.f64 1/2 (/.f64 (*.f64 a (+.f64 (*.f64 -8 c) (*.f64 4 c))) b)) b)
(fma.f64 1/2 (/.f64 (*.f64 a (*.f64 c -4)) b) b)
(fma.f64 1/2 (/.f64 a (/.f64 b (*.f64 c -4))) b)
(+.f64 b (/.f64 -2 (/.f64 b (*.f64 c a))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 a (+.f64 (*.f64 -8 c) (*.f64 4 c))) b)) (+.f64 b (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 a 2) (pow.f64 (+.f64 (*.f64 -8 c) (*.f64 4 c)) 2)) (pow.f64 b 3)))))
(fma.f64 1/2 (/.f64 (*.f64 a (*.f64 c -4)) b) (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 a (*.f64 c -4)) 2) (pow.f64 b 3)) b))
(fma.f64 1/2 (/.f64 a (/.f64 b (*.f64 c -4))) (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 2) (pow.f64 b 3)) b))
(+.f64 b (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 2) (pow.f64 b 3)) (/.f64 -2 (/.f64 b (*.f64 c a)))))
(+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 a 3) (pow.f64 (+.f64 (*.f64 -8 c) (*.f64 4 c)) 3)) (pow.f64 b 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 a (+.f64 (*.f64 -8 c) (*.f64 4 c))) b)) (+.f64 b (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 a 2) (pow.f64 (+.f64 (*.f64 -8 c) (*.f64 4 c)) 2)) (pow.f64 b 3))))))
(fma.f64 1/2 (/.f64 (*.f64 a (*.f64 c -4)) b) (fma.f64 1/16 (/.f64 (pow.f64 (*.f64 a (*.f64 c -4)) 3) (pow.f64 b 5)) (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 a (*.f64 c -4)) 2) (pow.f64 b 3)) b)))
(fma.f64 1/2 (/.f64 a (/.f64 b (*.f64 c -4))) (fma.f64 1/16 (/.f64 (*.f64 (pow.f64 (*.f64 c a) 3) -64) (pow.f64 b 5)) (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 2) (pow.f64 b 3)) b)))
(+.f64 (/.f64 -2 (/.f64 b (*.f64 c a))) (fma.f64 -1/8 (/.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 2) (pow.f64 b 3)) (fma.f64 1/16 (/.f64 (pow.f64 (*.f64 c a) 3) (/.f64 (pow.f64 b 5) -64)) b)))

localize42.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))
0.7b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
1.2b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
21.7b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 121 to 62 computations (48.8% saved)

series8.0ms (0%)

Counts
1 → 20
Calls

9 calls:

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

rewrite146.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
823×log-prod_binary64
734×fma-def_binary64
373×fma-neg_binary64
278×expm1-udef_binary64
278×log1p-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

simplify57.0ms (0.3%)

Algorithm
egg-herbie
Rules
842×fma-neg_binary64
658×associate-*l*_binary64
656×associate-*r*_binary64
613×times-frac_binary64
413×fma-def_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0111716
1336686
21221620
37428620
Stop Event
node limit
Counts
63 → 71
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (+.f64 (*.f64 -1/2 (/.f64 b a)) (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 5)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))))))
(*.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 (/.f64 c b)) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -2 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) 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/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))))))
Outputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)))
(*.f64 (*.f64 1/2 (sqrt.f64 (/.f64 c a))) (sqrt.f64 -4))
(*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 (sqrt.f64 -4) 1/2))
(*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 1/2 (sqrt.f64 -4)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (*.f64 -1/2 (/.f64 b a)))
(fma.f64 -1/2 (/.f64 b a) (*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 (sqrt.f64 -4) 1/2)))
(fma.f64 (sqrt.f64 (/.f64 c a)) (*.f64 1/2 (sqrt.f64 -4)) (*.f64 (/.f64 -1/2 a) b))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a))))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) (pow.f64 a 3))) (/.f64 (*.f64 b b) (sqrt.f64 -4))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (*.f64 -1/2 (/.f64 b a))))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) (pow.f64 a 3))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (fma.f64 -1/2 (/.f64 b a) (*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 (sqrt.f64 -4) 1/2))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (fma.f64 -1/2 (/.f64 b a) (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) (pow.f64 a 3))) (*.f64 1/4 (/.f64 b (/.f64 (sqrt.f64 -4) b))))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (+.f64 (*.f64 -1/2 (/.f64 b a)) (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 5)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))))))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) (pow.f64 a 3))) (/.f64 (*.f64 b b) (sqrt.f64 -4))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (fma.f64 -1/2 (/.f64 b a) (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 5)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))))))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) (pow.f64 a 3))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (fma.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) (pow.f64 a 5))) (/.f64 (pow.f64 b 4) (*.f64 (sqrt.f64 -4) -4))) (/.f64 -1/2 (/.f64 a b)))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) (pow.f64 a 3))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (fma.f64 -1/2 (/.f64 b a) (*.f64 (/.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) (pow.f64 a 5))) (/.f64 (sqrt.f64 -4) (pow.f64 b 4))) 1/64))))
(*.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 a (*.f64 c c)) (pow.f64 b 3)) (neg.f64 (/.f64 c b)))
(-.f64 (/.f64 (neg.f64 c) b) (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) a) c)))
(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 a (*.f64 c c)) (pow.f64 b 3)) (fma.f64 -1 (/.f64 c b) (*.f64 -2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))))))
(-.f64 (-.f64 (/.f64 (*.f64 (*.f64 -2 (*.f64 a a)) (pow.f64 c 3)) (pow.f64 b 5)) (/.f64 c b)) (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) a) c)))
(-.f64 (*.f64 -2 (/.f64 (*.f64 a (pow.f64 c 3)) (/.f64 (pow.f64 b 5) a))) (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 a (*.f64 c c)) (pow.f64 b 3)) (fma.f64 -1/4 (/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 -2 (*.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))) (-.f64 (/.f64 (*.f64 (*.f64 -2 (*.f64 a a)) (pow.f64 c 3)) (pow.f64 b 5)) (/.f64 c b))) (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) a) c)))
(fma.f64 (/.f64 -1/4 a) (/.f64 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 20) (pow.f64 b 7)) (-.f64 (*.f64 -2 (/.f64 (*.f64 a (pow.f64 c 3)) (/.f64 (pow.f64 b 5) a))) (fma.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) 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 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)) (+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a))))
(+.f64 (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 b 3)) (+.f64 (/.f64 c b) (neg.f64 (/.f64 b a))))
(+.f64 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) a) c)) (-.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 (*.f64 a (*.f64 c c)) (pow.f64 b 3)) (/.f64 c b)) (fma.f64 2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))) (neg.f64 (/.f64 b a))))
(+.f64 (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) a) c)) (+.f64 (-.f64 (/.f64 c b) (/.f64 b a)) (/.f64 (*.f64 (pow.f64 c 3) 2) (/.f64 (pow.f64 b 5) (*.f64 a a)))))
(-.f64 (fma.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a (fma.f64 2 (/.f64 (*.f64 a (pow.f64 c 3)) (/.f64 (pow.f64 b 5) a)) (/.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 a (*.f64 c c)) (pow.f64 b 3)) (neg.f64 (/.f64 c b)))
(-.f64 (/.f64 (neg.f64 c) b) (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) a) c)))
(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 a (*.f64 c c)) (pow.f64 b 3)) (fma.f64 -1 (/.f64 c b) (*.f64 -2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))))))
(-.f64 (-.f64 (/.f64 (*.f64 (*.f64 -2 (*.f64 a a)) (pow.f64 c 3)) (pow.f64 b 5)) (/.f64 c b)) (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) a) c)))
(-.f64 (*.f64 -2 (/.f64 (*.f64 a (pow.f64 c 3)) (/.f64 (pow.f64 b 5) a))) (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 (pow.f64 a 3) (+.f64 (*.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -2 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(fma.f64 -1 (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 b 3)) (fma.f64 -1 (/.f64 c b) (fma.f64 -1/4 (/.f64 (pow.f64 a 3) (/.f64 b (fma.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) (pow.f64 (*.f64 -2 (/.f64 (*.f64 c c) (pow.f64 b 3))) 2)))) (*.f64 -2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a)))))))
(-.f64 (-.f64 (fma.f64 -1/4 (*.f64 (/.f64 (pow.f64 a 3) b) (fma.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) (*.f64 4 (/.f64 (pow.f64 c 4) (pow.f64 b 6))))) (/.f64 (*.f64 (*.f64 -2 (*.f64 a a)) (pow.f64 c 3)) (pow.f64 b 5))) (/.f64 c b)) (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) a) c)))
(-.f64 (fma.f64 -1/4 (/.f64 (pow.f64 a 3) (/.f64 b (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) 20))) (*.f64 -2 (/.f64 (*.f64 a (pow.f64 c 3)) (/.f64 (pow.f64 b 5) a)))) (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 (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 a (*.f64 c c)) (pow.f64 b 3)) (neg.f64 (/.f64 c b)))
(-.f64 (/.f64 (neg.f64 c) b) (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) a) c)))
(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 a (*.f64 c c)) (pow.f64 b 3)) (fma.f64 -1 (/.f64 c b) (*.f64 -2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))))))
(-.f64 (-.f64 (/.f64 (*.f64 (*.f64 -2 (*.f64 a a)) (pow.f64 c 3)) (pow.f64 b 5)) (/.f64 c b)) (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) a) c)))
(-.f64 (*.f64 -2 (/.f64 (*.f64 a (pow.f64 c 3)) (/.f64 (pow.f64 b 5) a))) (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 a (*.f64 c c)) (pow.f64 b 3)) (fma.f64 -1/4 (*.f64 (/.f64 (pow.f64 c 4) a) (/.f64 (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 -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) a) (/.f64 (fma.f64 16 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) (*.f64 4 (/.f64 (pow.f64 a 4) (pow.f64 b 6)))) b)) (-.f64 (/.f64 (*.f64 (*.f64 -2 (*.f64 a a)) (pow.f64 c 3)) (pow.f64 b 5)) (/.f64 c b))) (/.f64 c (/.f64 (/.f64 (pow.f64 b 3) a) c)))
(fma.f64 (/.f64 -1/4 a) (/.f64 (*.f64 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) 20) (/.f64 b (pow.f64 c 4))) (-.f64 (*.f64 -2 (/.f64 (*.f64 a (pow.f64 c 3)) (/.f64 (pow.f64 b 5) a))) (fma.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a (/.f64 c b))))

localize60.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.2b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
4.0b
(/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a))
5.3b
(*.f64 (/.f64 (*.f64 c 2) b) a)
21.7b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 155 to 89 computations (42.6% saved)

series16.0ms (0.1%)

Counts
2 → 72
Calls

18 calls:

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

rewrite67.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
701×log-prod_binary64
334×pow2_binary64
246×pow-unpow_binary64
237×pow1/3_binary64
232×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01230
125730
2343930
Stop Event
node limit
Counts
2 → 80
Calls
Call 1
Inputs
(*.f64 (/.f64 (*.f64 c 2) b) a)
(/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (*.f64 2 (/.f64 c b)) a))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 2) a) (/.f64 c b))) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 2) a) (/.f64 c b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 2) a) (/.f64 c b)))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 2) a) (/.f64 c b)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 2 (/.f64 c b)) a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 c c) (/.f64 b a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 a (/.f64 b (+.f64 c c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 b (*.f64 (+.f64 c c) a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 c c) a) b)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (+.f64 c c) a)) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 c c) a) 1) b)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 c c) a) (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 c c) a) (sqrt.f64 b)) (sqrt.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 c a) (*.f64 b 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 c -2) a) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a c) (*.f64 b 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a (*.f64 c -2)) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 2 (/.f64 c b)) a) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 2 (/.f64 c b)) a) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 2 (/.f64 c b)) a) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 2 (/.f64 c b)) a)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (*.f64 2 (/.f64 c b)) a)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 2 (/.f64 c b)) 3) (pow.f64 a 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 a 3) (pow.f64 (*.f64 2 (/.f64 c b)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 b (*.f64 (+.f64 c c) a)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (*.f64 2 (/.f64 c b)) a) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 2) a) (/.f64 c b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 2 (/.f64 c b)) a))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 2 (/.f64 c b)) a) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 2 (/.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 2 (/.f64 c b)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 2 (/.f64 c b)) a)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 2 (/.f64 c b)) a)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 2 (/.f64 c b)) a)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 2 (/.f64 c b)) a)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) (/.f64 1/2 a))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) (/.f64 1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) (/.f64 1/2 a)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) (/.f64 1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a))) 2) (cbrt.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) 2) (*.f64 (cbrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a))) (sqrt.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) (*.f64 (sqrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) (/.f64 1 (*.f64 a -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 a) (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) 1/2) (/.f64 1 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) 2) 2) (/.f64 (cbrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) 2) (/.f64 (sqrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) a) (/.f64 (sqrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 a) (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) 2) a) (/.f64 (cbrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) (+.f64 a a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) 1) (/.f64 (sqrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) (+.f64 a a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 a a)) -2) (/.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (cbrt.f64 (+.f64 a a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) 2) (pow.f64 (cbrt.f64 (+.f64 a a)) 2)) (cbrt.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) (pow.f64 (cbrt.f64 (+.f64 a a)) 2)) (/.f64 (sqrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) (cbrt.f64 (+.f64 a a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 a a) -1/2) (/.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (sqrt.f64 (+.f64 a a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) 2) (sqrt.f64 (+.f64 a a))) (/.f64 (cbrt.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) (sqrt.f64 (+.f64 a a))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (/.f64 a (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) 3) (pow.f64 (+.f64 a a) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 2 (/.f64 a (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (*.f64 a -2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a))) (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) 3) (pow.f64 (+.f64 a a) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a))) 1))))))

simplify192.0ms (1%)

Algorithm
egg-herbie
Rules
1224×fma-def_binary64
971×fma-neg_binary64
650×div-sub_binary64
422×times-frac_binary64
383×distribute-rgt-in_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
013728
123674
247674
382674
4125674
5176674
6284674
7373674
8730674
91680674
104009674
115844674
126675674
136804674
146864674
156864674
167910674
Stop Event
node limit
Counts
152 → 87
Calls
Call 1
Inputs
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 c b)
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(*.f64 -1 (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(*.f64 -1 (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(*.f64 -1 (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(/.f64 c b)
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(/.f64 c b)
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(*.f64 -1 (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(/.f64 c b)
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(/.f64 c b)
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
Outputs
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 2 a) c) b)
(*.f64 2 (/.f64 a (/.f64 b c)))
(/.f64 (*.f64 2 a) (/.f64 b c))
(/.f64 (*.f64 2 c) (/.f64 b a))
(/.f64 c b)
(+.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 -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 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (neg.f64 (/.f64 b a)))
(-.f64 (/.f64 c b) (/.f64 b a))
(*.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 -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 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (neg.f64 (/.f64 b a)))
(-.f64 (/.f64 c b) (/.f64 b a))
(*.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 -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 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (neg.f64 (/.f64 b a)))
(-.f64 (/.f64 c b) (/.f64 b a))
(*.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 -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 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (neg.f64 (/.f64 b a)))
(-.f64 (/.f64 c b) (/.f64 b a))
(/.f64 c b)
(+.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 -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 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (neg.f64 (/.f64 b a)))
(-.f64 (/.f64 c b) (/.f64 b a))
(/.f64 c b)
(+.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 -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 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (neg.f64 (/.f64 b a)))
(-.f64 (/.f64 c b) (/.f64 b a))
(*.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 -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 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (neg.f64 (/.f64 b a)))
(-.f64 (/.f64 c b) (/.f64 b a))
(/.f64 c b)
(+.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 -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 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (neg.f64 (/.f64 b a)))
(-.f64 (/.f64 c b) (/.f64 b a))
(/.f64 c b)
(+.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 -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 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (neg.f64 (/.f64 b a)))
(-.f64 (/.f64 c b) (/.f64 b a))

localize195.0ms (1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.7b
(-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b)
1.5b
(fma.f64 b b (*.f64 c (*.f64 a -4)))
21.7b
(sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))
29.1b
(sqrt.f64 (pow.f64 b 2))
Compiler

Compiled 128 to 82 computations (35.9% saved)

series2.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
1.0ms
b
@inf
(sqrt.f64 (pow.f64 b 2))
1.0ms
b
@0
(sqrt.f64 (pow.f64 b 2))
1.0ms
b
@-inf
(sqrt.f64 (pow.f64 b 2))

rewrite127.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
323×pow1_binary64
315×add-sqr-sqrt_binary64
306×*-un-lft-identity_binary64
302×add-log-exp_binary64
302×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
051
11031
28811
Stop Event
node limit
Counts
1 → 52
Calls
Call 1
Inputs
(sqrt.f64 (pow.f64 b 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 1 b) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 b)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (cbrt.f64 (exp.f64 (+.f64 b b)))) (log.f64 (cbrt.f64 (exp.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 b))) (log.f64 (sqrt.f64 (exp.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 b 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 b)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 b) 2) (cbrt.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 b) (sqrt.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 b)) 2) (*.f64 (cbrt.f64 (cbrt.f64 b)) (pow.f64 (cbrt.f64 b) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 b (cbrt.f64 b))) (cbrt.f64 (pow.f64 (cbrt.f64 b) 5)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 b (cbrt.f64 b))) (pow.f64 (pow.f64 (cbrt.f64 b) 5) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 b (cbrt.f64 b))) (*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 b)) 2) (cbrt.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 b 1/6) (*.f64 (pow.f64 b 1/6) (pow.f64 (cbrt.f64 b) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (pow.f64 b 8))) (cbrt.f64 (cbrt.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 b) (pow.f64 (cbrt.f64 b) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 b 1/4) (sqrt.f64 (pow.f64 b 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 b 1/4) (pow.f64 (pow.f64 b 3/2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 b 1/4) (*.f64 (pow.f64 b 1/4) (sqrt.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 b 5/2)) (pow.f64 b 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 b) 5)) (pow.f64 b 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 b 3/2)) (pow.f64 b 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) b)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 b 3/2) 1/2) (pow.f64 b 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 b) 5) 1/2) (pow.f64 b 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 b 8)) 1/3) (cbrt.f64 (cbrt.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 b 5/2) 1/3) (pow.f64 b 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 1 b) 3) 1) (+.f64 (*.f64 (+.f64 1 b) (+.f64 1 b)) (+.f64 1 (*.f64 (+.f64 1 b) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 1 b) (+.f64 1 b)) 1) (+.f64 (+.f64 1 b) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 b 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 b b) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 b 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 b 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 b 6) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 b) 2) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 b) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/2) (*.f64 2 (log.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 b) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 b)) 2)) (cbrt.f64 (log.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 b))) (sqrt.f64 (log.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 b)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 1 (+.f64 1 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 b 3))))) (#(struct:change #<rule egg-rr> (2) ((x . b)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 b) 3) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 b)) 3))))))

simplify67.0ms (0.3%)

Algorithm
egg-herbie
Rules
sub-neg_binary64
+-commutative_binary64
fma-def_binary64
*-commutative_binary64
associate-+l-_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0420
1620
2820
3920
41120
51520
61920
72420
Stop Event
saturated
Counts
64 → 55
Calls
Call 1
Inputs
b
b
b
b
b
b
b
b
(*.f64 -1 b)
(*.f64 -1 b)
(*.f64 -1 b)
(*.f64 -1 b)
Outputs
b
b
b
b
b
b
b
b
(*.f64 -1 b)
(neg.f64 b)
(*.f64 -1 b)
(neg.f64 b)
(*.f64 -1 b)
(neg.f64 b)
(*.f64 -1 b)
(neg.f64 b)

localize99.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.7b
(-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b)
1.5b
(fma.f64 b b (*.f64 c (*.f64 a -4)))
21.7b
(sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))
32.4b
(cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2))
Compiler

Compiled 181 to 104 computations (42.5% saved)

series5.0ms (0%)

Counts
1 → 20
Calls

9 calls:

TimeVariablePointExpression
1.0ms
c
@inf
(cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2))
1.0ms
c
@-inf
(cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2))
1.0ms
c
@0
(cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2))
1.0ms
b
@0
(cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2))
0.0ms
a
@-inf
(cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2))

rewrite110.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
927×pow1_binary64
863×add-log-exp_binary64
863×log1p-expm1-u_binary64
863×expm1-log1p-u_binary64
841×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01116
122313
2250013
Stop Event
node limit
Counts
1 → 20
Calls
Call 1
Inputs
(cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (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 (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 (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 (sqrt.f64 (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) (sqrt.f64 (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))))) (#(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/3) (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/4) 1/3) (pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/4) 1/3))))) (#(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 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) 1/3)))) (#(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 (sqrt.f64 (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))) (#(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 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 exp.f64 (log.f64 (sqrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))))))

simplify77.0ms (0.4%)

Algorithm
egg-herbie
Rules
450×distribute-neg-frac_binary64
361×times-frac_binary64
338×unswap-sqr_binary64
308×fma-neg_binary64
294×neg-mul-1_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
075599
1221586
2724563
33721555
45008555
56868555
Stop Event
node limit
Counts
40 → 43
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)))))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
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))))
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)
(fma.f64 -2 (*.f64 a (/.f64 c b)) 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 (*.f64 c c) (pow.f64 b 3)) (*.f64 a a)) (fma.f64 -2 (*.f64 (/.f64 c b) a) b))
(+.f64 b (*.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (*.f64 a a) (/.f64 c (/.f64 (pow.f64 b 3) c))))))
(+.f64 b (*.f64 -2 (*.f64 (/.f64 a b) (+.f64 c (/.f64 (*.f64 a (*.f64 c c)) (*.f64 b b))))))
(+.f64 b (*.f64 -2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(+.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 -2 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 a a)) (fma.f64 -2 (*.f64 (/.f64 c b) a) b)) (*.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))
(+.f64 (fma.f64 -4 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 5)) (pow.f64 c 3)) b) (*.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (*.f64 a a) (/.f64 c (/.f64 (pow.f64 b 3) c))))))
(+.f64 (fma.f64 -4 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 5)) (pow.f64 c 3)) b) (*.f64 -2 (*.f64 (/.f64 a b) (+.f64 c (/.f64 (*.f64 a (*.f64 c c)) (*.f64 b b))))))
(+.f64 (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) b) (*.f64 -2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
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)
(fma.f64 -2 (*.f64 a (/.f64 c b)) 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 (*.f64 c c) (pow.f64 b 3)) (*.f64 a a)) (fma.f64 -2 (*.f64 (/.f64 c b) a) b))
(+.f64 b (*.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (*.f64 a a) (/.f64 c (/.f64 (pow.f64 b 3) c))))))
(+.f64 b (*.f64 -2 (*.f64 (/.f64 a b) (+.f64 c (/.f64 (*.f64 a (*.f64 c c)) (*.f64 b b))))))
(+.f64 b (*.f64 -2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(+.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 -2 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 a a)) (fma.f64 -2 (*.f64 (/.f64 c b) a) b)) (*.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))
(+.f64 (fma.f64 -4 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 5)) (pow.f64 c 3)) b) (*.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (*.f64 a a) (/.f64 c (/.f64 (pow.f64 b 3) c))))))
(+.f64 (fma.f64 -4 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 5)) (pow.f64 c 3)) b) (*.f64 -2 (*.f64 (/.f64 a b) (+.f64 c (/.f64 (*.f64 a (*.f64 c c)) (*.f64 b b))))))
(+.f64 (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) b) (*.f64 -2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(*.f64 (sqrt.f64 -4) (sqrt.f64 (*.f64 c a)))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4)))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (*.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 -4))) (sqrt.f64 (/.f64 (/.f64 1 a) c))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 a) c)) (/.f64 (*.f64 b b) (sqrt.f64 -4)))))
(fma.f64 (sqrt.f64 -4) (sqrt.f64 (*.f64 c a)) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 (*.f64 b b) 1/2) (sqrt.f64 -4))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (*.f64 -4 (sqrt.f64 -4)))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (*.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 -4))) (sqrt.f64 (/.f64 (/.f64 1 a) c)))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 a) c)) (/.f64 (*.f64 b b) (sqrt.f64 -4))) (*.f64 (/.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) (pow.f64 a 3))) (/.f64 (sqrt.f64 -4) (pow.f64 b 4))) 1/32)))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (/.f64 (*.f64 b b) (sqrt.f64 -4)) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 (/.f64 1 a) c))) (*.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) (pow.f64 a 3)))) (/.f64 (*.f64 b b) -4)))))
(fma.f64 (sqrt.f64 -4) (sqrt.f64 (*.f64 c a)) (*.f64 (/.f64 b (/.f64 (sqrt.f64 -4) b)) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (*.f64 c a)))) (*.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3))))) (/.f64 (*.f64 b b) -4)))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3))) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (*.f64 -4 (sqrt.f64 -4)))) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (*.f64 1/2 (/.f64 (*.f64 b b) (sqrt.f64 -4))) (sqrt.f64 (/.f64 (/.f64 1 a) c))))))
(fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 a) c)) (/.f64 (*.f64 b b) (sqrt.f64 -4))) (*.f64 (/.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) (pow.f64 a 3))) (/.f64 (sqrt.f64 -4) (pow.f64 b 4))) 1/32))))
(fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (/.f64 (*.f64 b b) (sqrt.f64 -4)) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 (/.f64 1 a) c))) (*.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) (pow.f64 a 3)))) (/.f64 (*.f64 b b) -4))))))
(fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 (sqrt.f64 -4) (sqrt.f64 (*.f64 c a)) (*.f64 (/.f64 b (/.f64 (sqrt.f64 -4) b)) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (*.f64 c a)))) (*.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3))))) (/.f64 (*.f64 b b) -4))))))
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)
(fma.f64 -2 (*.f64 a (/.f64 c b)) 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 (*.f64 c c) (pow.f64 b 3)) (*.f64 a a)) (fma.f64 -2 (*.f64 (/.f64 c b) a) b))
(+.f64 b (*.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (*.f64 a a) (/.f64 c (/.f64 (pow.f64 b 3) c))))))
(+.f64 b (*.f64 -2 (*.f64 (/.f64 a b) (+.f64 c (/.f64 (*.f64 a (*.f64 c c)) (*.f64 b b))))))
(+.f64 b (*.f64 -2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(+.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 -2 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 a a)) (fma.f64 -2 (*.f64 (/.f64 c b) a) b)) (*.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))
(+.f64 (fma.f64 -4 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 5)) (pow.f64 c 3)) b) (*.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (*.f64 a a) (/.f64 c (/.f64 (pow.f64 b 3) c))))))
(+.f64 (fma.f64 -4 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 5)) (pow.f64 c 3)) b) (*.f64 -2 (*.f64 (/.f64 a b) (+.f64 c (/.f64 (*.f64 a (*.f64 c c)) (*.f64 b b))))))
(+.f64 (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) b) (*.f64 -2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(*.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))
(-.f64 (/.f64 (*.f64 (*.f64 2 c) a) b) 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)))
(-.f64 (*.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 a a)))) b)
(-.f64 (*.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (*.f64 a a) (/.f64 c (/.f64 (pow.f64 b 3) c))))) b)
(-.f64 (*.f64 2 (*.f64 (/.f64 a b) (+.f64 c (/.f64 (*.f64 a (*.f64 c c)) (*.f64 b b))))) b)
(-.f64 (*.f64 2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))) 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 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) 4 (/.f64 (*.f64 2 (*.f64 c (*.f64 c (*.f64 a a)))) (pow.f64 b 3))) b))
(fma.f64 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 5)) (pow.f64 c 3)) 4 (-.f64 (*.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (*.f64 a a) (/.f64 c (/.f64 (pow.f64 b 3) c))))) b))
(fma.f64 2 (*.f64 (/.f64 a b) (+.f64 c (/.f64 (*.f64 a (*.f64 c c)) (*.f64 b b)))) (neg.f64 (fma.f64 -4 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 5)) (pow.f64 c 3)) b)))
(fma.f64 2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a))))) (neg.f64 (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) b)))

eval2.3s (11.3%)

Compiler

Compiled 76854 to 46828 computations (39.1% saved)

prune603.0ms (3%)

Pruning

25 alts after pruning (23 fresh and 2 done)

PrunedKeptTotal
New1623211644
Fresh527
Picked101
Done325
Total1632251657
Error
5.6b
Counts
1657 → 25
Alt Table
Click to see full alt table
StatusErrorProgram
22.8b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a))) 3))
26.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b)) (*.f64 2 a)))
28.9b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2))))) (*.f64 (-.f64 (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) b) (/.f64 1/2 a)))
24.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
20.7b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
22.3b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (pow.f64 (exp.f64 1/2) (*.f64 2 (log.f64 b)))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
24.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (-.f64 (*.f64 (/.f64 (*.f64 c 2) b) a) b)) (*.f64 2 a)))
22.1b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (pow.f64 (E.f64) (log.f64 b))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
30.4b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (cbrt.f64 (pow.f64 (/.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))) (*.f64 a -2)) 3)))
20.7b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (-.f64 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) b) (/.f64 1/2 a)))
22.4b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (exp.f64 (*.f64 (*.f64 (log.f64 b) 3) 1/3))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
19.2b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.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 1/2 a)))
20.7b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
28.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 2 a)))
29.5b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (*.f64 2 (/.f64 a (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))))) -1))
24.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
26.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))) (*.f64 2 a)))
24.1b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (-.f64 (/.f64 c b) (/.f64 b a)))
33.9b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
35.4b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (pow.f64 (/.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))) (*.f64 a -2)) 3) 1/3))
28.0b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (pow.f64 b 2))))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 (*.f64 b b) 1) (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
22.9b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 b)) 2)) (cbrt.f64 (log.f64 b)))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
22.3b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (exp.f64 (*.f64 (log.f64 (cbrt.f64 b)) 3))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
21.0b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (pow.f64 (pow.f64 (cbrt.f64 b) 2) 3/2)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
36.1b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
Compiler

Compiled 1629 to 1113 computations (31.7% saved)

localize125.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
3.7b
(exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))
12.2b
(-.f64 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) b)
15.7b
(sqrt.f64 (*.f64 c (*.f64 a -4)))
21.7b
(sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))
Compiler

Compiled 176 to 112 computations (36.4% saved)

series55.0ms (0.3%)

Counts
3 → 26
Calls

24 calls:

TimeVariablePointExpression
13.0ms
c
@0
(-.f64 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) b)
5.0ms
a
@0
(-.f64 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) b)
5.0ms
c
@-inf
(-.f64 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) b)
4.0ms
c
@inf
(-.f64 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) b)
4.0ms
a
@-inf
(-.f64 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) b)

rewrite87.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
566×prod-diff_binary64
558×log-prod_binary64
360×pow-prod-down_binary64
296×pow2_binary64
232×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify64.0ms (0.3%)

Algorithm
egg-herbie
Rules
792×associate-*r*_binary64
681×associate-*l*_binary64
571×times-frac_binary64
445×associate-/l*_binary64
443×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01171042
1342884
21159829
37123823
Stop Event
node limit
Counts
191 → 208
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 -1 b))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (+.f64 (*.f64 -1 b) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (+.f64 (*.f64 -1 b) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
(*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))) (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b))))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (*.f64 (pow.f64 c 4) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 8)))) (pow.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4)))) 2)) (pow.f64 b 7))) (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)))))
(*.f64 -2 b)
(+.f64 (*.f64 -2 b) (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)))
(+.f64 (*.f64 -2 b) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3)))))
(+.f64 (*.f64 -2 b) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (*.f64 -1/16 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))))))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
b
(+.f64 (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) b)
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) b))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) b)))
(*.f64 -1 b)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (*.f64 -1 b))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (*.f64 -1 b)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))) (*.f64 -1 b))))
b
b
Outputs
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 -1 b))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (neg.f64 b))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (+.f64 (*.f64 -1 b) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 -1 b (*.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (*.f64 c a)))) (/.f64 (*.f64 b b) (sqrt.f64 -4)))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (-.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (/.f64 (sqrt.f64 -4) b)) 1/2)) b))
(-.f64 (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 (*.f64 b b) 1/2) (sqrt.f64 -4)))) b)
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (+.f64 (*.f64 -1 b) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 -1 b (*.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (*.f64 c a)))) (/.f64 (*.f64 b b) (sqrt.f64 -4))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (/.f64 (pow.f64 b 4) -4) (sqrt.f64 -4))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (-.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (/.f64 (sqrt.f64 -4) b)) 1/2)) b)))
(-.f64 (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (sqrt.f64 -4)) b)) (*.f64 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (sqrt.f64 -4) (pow.f64 b 4))) 1/32))) b)
(*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b))
(*.f64 1/2 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b))
(/.f64 1/2 (/.f64 b (*.f64 a (*.f64 c -4))))
(*.f64 (/.f64 c b) (*.f64 -2 a))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)))
(fma.f64 -1/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4)))) (*.f64 1/2 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b)))
(fma.f64 1/2 (*.f64 (/.f64 c b) (*.f64 a -4)) (/.f64 (*.f64 (*.f64 c (*.f64 c (*.f64 a a))) -2) (pow.f64 b 3)))
(+.f64 (*.f64 (/.f64 c b) (*.f64 -2 a)) (/.f64 (*.f64 c (*.f64 c (*.f64 (*.f64 a a) -2))) (pow.f64 b 3)))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))) (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b))))
(fma.f64 -1/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4)))) (fma.f64 1/16 (/.f64 (*.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 (sqrt.f64 -4) 6)) (pow.f64 b 5)) (*.f64 1/2 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b))))
(+.f64 (fma.f64 1/2 (*.f64 (/.f64 c b) (*.f64 a -4)) (/.f64 (*.f64 (*.f64 c (*.f64 c (*.f64 a a))) -2) (pow.f64 b 3))) (/.f64 1/16 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) -64)))))
(+.f64 (+.f64 (*.f64 (/.f64 c b) (*.f64 -2 a)) (/.f64 (*.f64 c (*.f64 c (*.f64 (*.f64 a a) -2))) (pow.f64 b 3))) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 -4 (pow.f64 a 3))))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (*.f64 (pow.f64 c 4) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 8)))) (pow.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4)))) 2)) (pow.f64 b 7))) (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)))))
(fma.f64 -1/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4)))) (fma.f64 1/16 (/.f64 (*.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 (sqrt.f64 -4) 6)) (pow.f64 b 5)) (fma.f64 -1/2 (/.f64 (fma.f64 1/16 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 (sqrt.f64 -4) 8)) (pow.f64 (*.f64 (*.f64 -1/8 (*.f64 c c)) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4))) 2)) (pow.f64 b 7)) (*.f64 1/2 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b)))))
(+.f64 (fma.f64 1/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 (pow.f64 a 3) -64)) (/.f64 -1/2 (/.f64 (pow.f64 b 7) (+.f64 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 16) (pow.f64 (*.f64 (*.f64 c (*.f64 c (*.f64 a a))) -2) 2))))) (fma.f64 1/2 (*.f64 (/.f64 c b) (*.f64 a -4)) (/.f64 (*.f64 (*.f64 c (*.f64 c (*.f64 a a))) -2) (pow.f64 b 3))))
(+.f64 (+.f64 (*.f64 (/.f64 c b) (*.f64 -2 a)) (/.f64 (*.f64 c (*.f64 c (*.f64 (*.f64 a a) -2))) (pow.f64 b 3))) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 (pow.f64 a 4) 256) (+.f64 (*.f64 1/16 (pow.f64 c 4)) (*.f64 (pow.f64 c 4) 1/64))) (pow.f64 b 7)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 -4 (pow.f64 a 3)))))
(*.f64 -2 b)
(*.f64 b -2)
(+.f64 (*.f64 -2 b) (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)))
(fma.f64 -2 b (*.f64 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b) -1/2))
(fma.f64 b -2 (*.f64 (*.f64 (/.f64 c b) (*.f64 a -4)) -1/2))
(fma.f64 b -2 (*.f64 (/.f64 c b) (*.f64 2 a)))
(+.f64 (*.f64 -2 b) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3)))))
(fma.f64 -2 b (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b) (*.f64 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4)))) 1/8)))
(fma.f64 b -2 (fma.f64 (*.f64 (/.f64 c b) (*.f64 a -4)) -1/2 (/.f64 (*.f64 (*.f64 1/8 (*.f64 c c)) (*.f64 (*.f64 a a) 16)) (pow.f64 b 3))))
(+.f64 (*.f64 (/.f64 c b) (*.f64 2 a)) (fma.f64 b -2 (/.f64 (*.f64 2 (*.f64 a a)) (/.f64 (pow.f64 b 3) (*.f64 c c)))))
(+.f64 (*.f64 -2 b) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (*.f64 -1/16 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))))))
(fma.f64 -2 b (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b) (fma.f64 1/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4)))) (*.f64 (/.f64 (*.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 (sqrt.f64 -4) 6)) (pow.f64 b 5)) -1/16))))
(fma.f64 b -2 (fma.f64 (*.f64 (/.f64 c b) (*.f64 a -4)) -1/2 (fma.f64 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 (*.f64 a a) 16)) 1/8 (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 (pow.f64 a 3) -64)) -1/16))))
(+.f64 (*.f64 (/.f64 c b) (*.f64 2 a)) (+.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 4 (pow.f64 a 3))) (fma.f64 b -2 (/.f64 (*.f64 2 (*.f64 a a)) (/.f64 (pow.f64 b 3) (*.f64 c c))))))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (*.f64 c a)))) (/.f64 (*.f64 b b) (sqrt.f64 -4))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (/.f64 (sqrt.f64 -4) b)) 1/2)))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 (*.f64 b b) 1/2) (sqrt.f64 -4))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (*.f64 c a)))) (/.f64 (*.f64 b b) (sqrt.f64 -4)))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (/.f64 (pow.f64 b 4) -4) (sqrt.f64 -4))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (/.f64 (sqrt.f64 -4) b)) 1/2))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (sqrt.f64 -4)) b)) (*.f64 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (sqrt.f64 -4) (pow.f64 b 4))) 1/32)))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3))) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (*.f64 c a)))) (/.f64 (*.f64 b b) (sqrt.f64 -4))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (/.f64 (pow.f64 b 4) -4) (sqrt.f64 -4))) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (/.f64 (sqrt.f64 -4) b)) 1/2)))))
(fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (sqrt.f64 -4)) b)) (*.f64 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (sqrt.f64 -4) (pow.f64 b 4))) 1/32))))
b
(+.f64 (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) b)
(fma.f64 1/2 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b) b)
(fma.f64 1/2 (*.f64 (/.f64 c b) (*.f64 a -4)) b)
(+.f64 b (*.f64 (/.f64 c b) (*.f64 -2 a)))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) b))
(fma.f64 -1/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4)))) (fma.f64 1/2 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b) b))
(+.f64 b (fma.f64 1/2 (*.f64 (/.f64 c b) (*.f64 a -4)) (/.f64 (*.f64 (*.f64 c (*.f64 c (*.f64 a a))) -2) (pow.f64 b 3))))
(+.f64 b (+.f64 (*.f64 (/.f64 c b) (*.f64 -2 a)) (/.f64 (*.f64 c (*.f64 c (*.f64 (*.f64 a a) -2))) (pow.f64 b 3))))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) b)))
(fma.f64 -1/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4)))) (fma.f64 1/16 (/.f64 (*.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 (sqrt.f64 -4) 6)) (pow.f64 b 5)) (fma.f64 1/2 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b) b)))
(+.f64 (/.f64 (*.f64 (*.f64 c (*.f64 c (*.f64 a a))) -2) (pow.f64 b 3)) (fma.f64 1/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 (pow.f64 a 3) -64)) (fma.f64 1/2 (*.f64 (/.f64 c b) (*.f64 a -4)) b)))
(+.f64 b (+.f64 (+.f64 (*.f64 (/.f64 c b) (*.f64 -2 a)) (/.f64 (*.f64 c (*.f64 c (*.f64 (*.f64 a a) -2))) (pow.f64 b 3))) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 -4 (pow.f64 a 3)))))
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (*.f64 -1 b))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b) (neg.f64 b))
(-.f64 (*.f64 (*.f64 (/.f64 c b) (*.f64 a -4)) -1/2) b)
(-.f64 (*.f64 (/.f64 c b) (*.f64 2 a)) b)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (*.f64 -1 b)))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b) (fma.f64 1/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4)))) (neg.f64 b)))
(-.f64 (fma.f64 (*.f64 (/.f64 c b) (*.f64 a -4)) -1/2 (/.f64 (*.f64 (*.f64 1/8 (*.f64 c c)) (*.f64 (*.f64 a a) 16)) (pow.f64 b 3))) b)
(+.f64 (*.f64 (/.f64 c b) (*.f64 2 a)) (-.f64 (/.f64 (*.f64 2 (*.f64 a a)) (/.f64 (pow.f64 b 3) (*.f64 c c))) b))
(fma.f64 (/.f64 c b) (*.f64 2 a) (-.f64 (/.f64 (*.f64 2 (*.f64 a a)) (/.f64 (pow.f64 b 3) (*.f64 c c))) b))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))) (*.f64 -1 b))))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b) (fma.f64 1/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4)))) (fma.f64 -1/16 (/.f64 (*.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 (sqrt.f64 -4) 6)) (pow.f64 b 5)) (neg.f64 b))))
(fma.f64 (*.f64 (/.f64 c b) (*.f64 a -4)) -1/2 (-.f64 (fma.f64 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 (*.f64 a a) 16)) 1/8 (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 (pow.f64 a 3) -64)) -1/16)) b))
(+.f64 (*.f64 (/.f64 c b) (*.f64 2 a)) (-.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 4 (pow.f64 a 3))) (-.f64 b (/.f64 (*.f64 2 (*.f64 a a)) (/.f64 (pow.f64 b 3) (*.f64 c c))))))
(fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 4 (pow.f64 a 3)) (fma.f64 (/.f64 c b) (*.f64 2 a) (-.f64 (/.f64 (*.f64 2 (*.f64 a a)) (/.f64 (pow.f64 b 3) (*.f64 c c))) b)))
b
b

localize18.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 c b) (/.f64 b a))
Compiler

Compiled 60 to 23 computations (61.7% saved)

series4.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite71.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
470×log-prod_binary64
351×exp-prod_binary64
337×pow-prod-down_binary64
309×fma-def_binary64
241×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
116410
2265210
Stop Event
node limit
Counts
1 → 147
Calls
Call 1
Inputs
(-.f64 (/.f64 c b) (/.f64 b a))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 c b) (/.f64 (neg.f64 b) a))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 c b) (*.f64 (/.f64 (neg.f64 b) a) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 c b) (/.f64 b a)) (fma.f64 (neg.f64 (/.f64 1 a)) b (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 c b) (/.f64 b a)) (fma.f64 (/.f64 (neg.f64 b) a) 1 (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 c b) (/.f64 b a)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 b a))) (cbrt.f64 (pow.f64 (/.f64 a b) -2)) (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 c b) (/.f64 b a)) (+.f64 (/.f64 (neg.f64 b) a) (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (neg.f64 b) a) (/.f64 c b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (/.f64 c b) (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (/.f64 c b) (/.f64 b a)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (/.f64 c b) (/.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (/.f64 c b) (/.f64 b a))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (/.f64 c b) (/.f64 b a))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (/.f64 c b) (/.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.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 (*.f64 c a) (*.f64 b b)) (/.f64 1 (*.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 c b) (/.f64 b a)) (pow.f64 (/.f64 c b) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (/.f64 c b) 2) (pow.f64 (/.f64 a b) -2)) (/.f64 1 (+.f64 (/.f64 c b) (/.f64 b a))))))) (#(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 (*.f64 b a) (-.f64 (*.f64 c a) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (/.f64 b a) (+.f64 (/.f64 c b) (/.f64 b a)) (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)) (-.f64 (pow.f64 (/.f64 c b) 2) (pow.f64 (/.f64 a b) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 c a) (*.f64 b 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 c b) (/.f64 b a)) (pow.f64 (/.f64 c b) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 c b) 2) (pow.f64 (/.f64 a b) -2)) (+.f64 (/.f64 c b) (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 c a) (*.f64 b b))) (neg.f64 (*.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 c b) (/.f64 b a)) (pow.f64 (/.f64 c b) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 c b) 2) (pow.f64 (/.f64 a b) -2))) (neg.f64 (+.f64 (/.f64 c b) (/.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 a (*.f64 (/.f64 b c) b)) (*.f64 (/.f64 b c) a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (neg.f64 c) a) (*.f64 (neg.f64 b) b)) (*.f64 (neg.f64 b) a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 c (/.f64 a b) (neg.f64 b)) (*.f64 b (/.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (/.f64 a b) (*.f64 (/.f64 b c) 1)) (*.f64 (/.f64 b c) (/.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (neg.f64 c) (/.f64 a b) (neg.f64 (*.f64 (neg.f64 b) 1))) (*.f64 (neg.f64 b) (/.f64 a b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 c (neg.f64 a) (neg.f64 (*.f64 b (neg.f64 b)))) (*.f64 b (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (neg.f64 a) (*.f64 (/.f64 b c) (neg.f64 b))) (*.f64 (/.f64 b c) (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (neg.f64 c) (neg.f64 a)) (pow.f64 (neg.f64 b) 2)) (*.f64 (neg.f64 b) (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 c b) 3) (pow.f64 (/.f64 (neg.f64 b) a) 3)) (+.f64 (pow.f64 (/.f64 c b) 2) (-.f64 (pow.f64 (/.f64 (neg.f64 b) a) 2) (*.f64 (/.f64 c b) (/.f64 (neg.f64 b) a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 c b) 2) (pow.f64 (/.f64 (neg.f64 b) a) 2)) (-.f64 (/.f64 c b) (/.f64 (neg.f64 b) a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (*.f64 c a) (*.f64 b b)) b) a)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (/.f64 c b) (/.f64 b a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (/.f64 c b) (/.f64 b a)) 2) 1/2)))) (#(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 (exp.f64 1) (log.f64 (-.f64 (/.f64 c b) (/.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 b a) (-.f64 (*.f64 c a) (*.f64 b b))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (/.f64 b a) (+.f64 (/.f64 c b) (/.f64 b a)) (pow.f64 (/.f64 c b) 2)) (-.f64 (pow.f64 (/.f64 c b) 3) (pow.f64 (/.f64 b a) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (/.f64 c b) (/.f64 b a)) (-.f64 (pow.f64 (/.f64 c b) 2) (pow.f64 (/.f64 a b) -2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (/.f64 c b) (/.f64 b a)))) 2)) (cbrt.f64 (log.f64 (-.f64 (/.f64 c b) (/.f64 b a)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (-.f64 (/.f64 c b) (/.f64 b a))))) (sqrt.f64 (log.f64 (-.f64 (/.f64 c b) (/.f64 b a)))))))) (#(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 (+.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 (neg.f64 b) a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 (neg.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 expm1.f64 (log1p.f64 (-.f64 (/.f64 c b) (/.f64 b a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.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 exp.f64 (*.f64 (*.f64 3 (log.f64 (-.f64 (/.f64 c b) (/.f64 b a)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (-.f64 (/.f64 c b) (/.f64 b a)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 (/.f64 c b) (/.f64 b a)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 (/.f64 c b) (/.f64 b a))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c (/.f64 1 b) (/.f64 (neg.f64 b) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c (/.f64 1 b) (*.f64 (/.f64 (neg.f64 b) a) 1))))) (#(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 (/.f64 c b) 1 (/.f64 (neg.f64 b) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 c b) 1 (*.f64 (/.f64 (neg.f64 b) a) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (/.f64 c b) (/.f64 b a)) 1 (fma.f64 (neg.f64 (/.f64 1 a)) b (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (/.f64 c b) (/.f64 b a)) 1 (fma.f64 (/.f64 (neg.f64 b) a) 1 (/.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))) (cbrt.f64 (pow.f64 (/.f64 a b) -2)) (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (/.f64 c b) (/.f64 b a)) 1 (+.f64 (/.f64 (neg.f64 b) a) (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 c b) (/.f64 (neg.f64 b) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 c b) (*.f64 (/.f64 (neg.f64 b) a) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (/.f64 c b) (/.f64 b a)) (fma.f64 (neg.f64 (/.f64 1 a)) b (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (/.f64 c b) (/.f64 b a)) (fma.f64 (/.f64 (neg.f64 b) a) 1 (/.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))) (cbrt.f64 (pow.f64 (/.f64 a b) -2)) (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (/.f64 c b) (/.f64 b a)) (+.f64 (/.f64 (neg.f64 b) a) (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (neg.f64 b) a) (/.f64 c b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (/.f64 a b) -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) (/.f64 1 b)) (/.f64 (neg.f64 b) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (cbrt.f64 c) (/.f64 1 b)) (*.f64 (/.f64 (neg.f64 b) a) 1))))) (#(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 (/.f64 1 a)) b (/.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 (/.f64 (neg.f64 b) a) 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) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 b a))) (cbrt.f64 (pow.f64 (/.f64 a b) -2)) (/.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 (neg.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 (/.f64 1 a)) b (/.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 (/.f64 (neg.f64 b) a) 1 (/.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))) (cbrt.f64 (pow.f64 (/.f64 a b) -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 (neg.f64 b) a) (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 c b)) (pow.f64 (cbrt.f64 (/.f64 c b)) 2) (/.f64 (neg.f64 b) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 c b)) (pow.f64 (cbrt.f64 (/.f64 c b)) 2) (*.f64 (/.f64 (neg.f64 b) a) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 c b)) 2) (cbrt.f64 (/.f64 c b)) (/.f64 (neg.f64 b) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 c b)) 2) (cbrt.f64 (/.f64 c b)) (*.f64 (/.f64 (neg.f64 b) a) 1))))) (#(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 c) (*.f64 (sqrt.f64 c) (/.f64 1 b)) (/.f64 (neg.f64 b) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (*.f64 (sqrt.f64 c) (/.f64 1 b)) (*.f64 (/.f64 (neg.f64 b) a) 1))))) (#(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 (/.f64 1 a)) b (/.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 (/.f64 (neg.f64 b) a) 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))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 b a))) (cbrt.f64 (pow.f64 (/.f64 a b) -2)) (/.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 (neg.f64 b) a) (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 c b)) (sqrt.f64 (/.f64 c b)) (/.f64 (neg.f64 b) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 c b)) (sqrt.f64 (/.f64 c b)) (*.f64 (/.f64 (neg.f64 b) a) 1))))) (#(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 c) (/.f64 1 (neg.f64 b)) (/.f64 (neg.f64 b) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 c) (/.f64 1 (neg.f64 b)) (*.f64 (/.f64 (neg.f64 b) a) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 c a) (*.f64 b b)) (/.f64 1 (*.f64 b a)) (fma.f64 (neg.f64 (/.f64 1 a)) b (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 c a) (*.f64 b b)) (/.f64 1 (*.f64 b a)) (fma.f64 (/.f64 (neg.f64 b) a) 1 (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 c a) (*.f64 b b)) (/.f64 1 (*.f64 b a)) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 b a))) (cbrt.f64 (pow.f64 (/.f64 a b) -2)) (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 c a) (*.f64 b b)) (/.f64 1 (*.f64 b a)) (+.f64 (/.f64 (neg.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 c b) (/.f64 b a)) (pow.f64 (/.f64 c b) 2))) (fma.f64 (neg.f64 (/.f64 1 a)) 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 c b) (/.f64 b a)) (pow.f64 (/.f64 c b) 2))) (fma.f64 (/.f64 (neg.f64 b) a) 1 (/.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 c b) (/.f64 b a)) (pow.f64 (/.f64 c b) 2))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 b a))) (cbrt.f64 (pow.f64 (/.f64 a b) -2)) (/.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 c b) (/.f64 b a)) (pow.f64 (/.f64 c b) 2))) (+.f64 (/.f64 (neg.f64 b) a) (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 b) c (/.f64 (neg.f64 b) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 b) c (*.f64 (/.f64 (neg.f64 b) a) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (/.f64 c b) 2) (pow.f64 (/.f64 a b) -2)) (/.f64 1 (+.f64 (/.f64 c b) (/.f64 b a))) (fma.f64 (neg.f64 (/.f64 1 a)) b (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (/.f64 c b) 2) (pow.f64 (/.f64 a b) -2)) (/.f64 1 (+.f64 (/.f64 c b) (/.f64 b a))) (fma.f64 (/.f64 (neg.f64 b) a) 1 (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (/.f64 c b) 2) (pow.f64 (/.f64 a b) -2)) (/.f64 1 (+.f64 (/.f64 c b) (/.f64 b a))) (fma.f64 (neg.f64 (cbrt.f64 (/.f64 b a))) (cbrt.f64 (pow.f64 (/.f64 a b) -2)) (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (/.f64 c b) 2) (pow.f64 (/.f64 a b) -2)) (/.f64 1 (+.f64 (/.f64 c b) (/.f64 b a))) (+.f64 (/.f64 (neg.f64 b) a) (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (neg.f64 b) a)) 2) (cbrt.f64 (/.f64 (neg.f64 b) a)) (/.f64 c b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (neg.f64 b) a)) (sqrt.f64 (/.f64 (neg.f64 b) a)) (/.f64 c b))))) (#(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 -1 (/.f64 b a) (/.f64 c b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) -2) (/.f64 c (cbrt.f64 b)) (/.f64 (neg.f64 b) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) -2) (/.f64 c (cbrt.f64 b)) (*.f64 (/.f64 (neg.f64 b) a) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 b -1/2) (/.f64 c (sqrt.f64 b)) (/.f64 (neg.f64 b) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 b -1/2) (/.f64 c (sqrt.f64 b)) (*.f64 (/.f64 (neg.f64 b) a) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) 1) (/.f64 (cbrt.f64 c) b) (/.f64 (neg.f64 b) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 c) 2) 1) (/.f64 (cbrt.f64 c) b) (*.f64 (/.f64 (neg.f64 b) a) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 c) 1) (/.f64 (sqrt.f64 c) b) (/.f64 (neg.f64 b) a))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 c) 1) (/.f64 (sqrt.f64 c) b) (*.f64 (/.f64 (neg.f64 b) a) 1))))) (#(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 (neg.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 (/.f64 (neg.f64 b) a) 1))))) (#(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 (neg.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 (/.f64 (neg.f64 b) a) 1))))) (#(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 (neg.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 (/.f64 (neg.f64 b) a) 1))))) (#(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 (/.f64 1 a)) 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))) (fma.f64 (/.f64 (neg.f64 b) a) 1 (/.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))) (cbrt.f64 (pow.f64 (/.f64 a b) -2)) (/.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 (neg.f64 b) a) (/.f64 b a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (/.f64 a b) -2))) (cbrt.f64 (/.f64 b a)) (/.f64 c b))))))

simplify81.0ms (0.4%)

Algorithm
egg-herbie
Rules
506×fma-def_binary64
266×fma-neg_binary64
120×associate-/l*_binary64
96×cancel-sign-sub-inv_binary64
94×times-frac_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
09368
114314
224314
334314
447314
571314
6119314
7175314
8257314
9408314
10679314
111121314
121656314
132118314
142220314
152224314
162236314
172246314
Stop Event
saturated
Counts
183 → 152
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(/.f64 c b)
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(/.f64 c b)
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(/.f64 c b)
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(*.f64 -1 (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(*.f64 -1 (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(*.f64 -1 (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(/.f64 c b)
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(/.f64 c b)
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
Outputs
(*.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 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(/.f64 c b)
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(/.f64 c b)
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(/.f64 c b)
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(*.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 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(*.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 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(*.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 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(/.f64 c b)
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(/.f64 c b)
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))
(+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a)))
(+.f64 (neg.f64 (/.f64 b a)) (/.f64 c b))
(-.f64 (/.f64 c b) (/.f64 b a))

localize34.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 2 a))
15.7b
(sqrt.f64 (*.f64 c (*.f64 a -4)))
Compiler

Compiled 93 to 53 computations (43% saved)

series8.0ms (0%)

Counts
1 → 14
Calls

9 calls:

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

rewrite64.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
680×log-prod_binary64
387×fma-def_binary64
334×pow2_binary64
247×pow-unpow_binary64
234×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify13.0ms (0.1%)

Algorithm
egg-herbie
Rules
10×fma-def_binary64
*-commutative_binary64
associate-*r*_binary64
associate-*l*_binary64
associate-/l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
015231
124231
239231
349231
451231
552231
Stop Event
saturated
Counts
60 → 52
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(*.f64 -1/2 (/.f64 b a))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(*.f64 -1/2 (/.f64 b a))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(*.f64 -1/2 (/.f64 b a))
(*.f64 -1/2 (/.f64 b a))
Outputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)))
(*.f64 (*.f64 1/2 (sqrt.f64 (/.f64 c a))) (sqrt.f64 -4))
(*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 (sqrt.f64 -4) 1/2))
(*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 1/2 (sqrt.f64 -4)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (/.f64 (*.f64 -1/2 b) a))
(fma.f64 -1/2 (/.f64 b a) (*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 (sqrt.f64 -4) 1/2)))
(fma.f64 (sqrt.f64 (/.f64 c a)) (*.f64 1/2 (sqrt.f64 -4)) (/.f64 -1/2 (/.f64 a b)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (/.f64 (*.f64 -1/2 b) a))
(fma.f64 -1/2 (/.f64 b a) (*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 (sqrt.f64 -4) 1/2)))
(fma.f64 (sqrt.f64 (/.f64 c a)) (*.f64 1/2 (sqrt.f64 -4)) (/.f64 -1/2 (/.f64 a b)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (/.f64 (*.f64 -1/2 b) a))
(fma.f64 -1/2 (/.f64 b a) (*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 (sqrt.f64 -4) 1/2)))
(fma.f64 (sqrt.f64 (/.f64 c a)) (*.f64 1/2 (sqrt.f64 -4)) (/.f64 -1/2 (/.f64 a b)))
(*.f64 -1/2 (/.f64 b a))
(/.f64 (*.f64 -1/2 b) a)
(/.f64 -1/2 (/.f64 a b))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (/.f64 (*.f64 -1/2 b) a))
(fma.f64 -1/2 (/.f64 b a) (*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 (sqrt.f64 -4) 1/2)))
(fma.f64 (sqrt.f64 (/.f64 c a)) (*.f64 1/2 (sqrt.f64 -4)) (/.f64 -1/2 (/.f64 a b)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (/.f64 (*.f64 -1/2 b) a))
(fma.f64 -1/2 (/.f64 b a) (*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 (sqrt.f64 -4) 1/2)))
(fma.f64 (sqrt.f64 (/.f64 c a)) (*.f64 1/2 (sqrt.f64 -4)) (/.f64 -1/2 (/.f64 a b)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (/.f64 (*.f64 -1/2 b) a))
(fma.f64 -1/2 (/.f64 b a) (*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 (sqrt.f64 -4) 1/2)))
(fma.f64 (sqrt.f64 (/.f64 c a)) (*.f64 1/2 (sqrt.f64 -4)) (/.f64 -1/2 (/.f64 a b)))
(*.f64 -1/2 (/.f64 b a))
(/.f64 (*.f64 -1/2 b) a)
(/.f64 -1/2 (/.f64 a b))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (/.f64 (*.f64 -1/2 b) a))
(fma.f64 -1/2 (/.f64 b a) (*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 (sqrt.f64 -4) 1/2)))
(fma.f64 (sqrt.f64 (/.f64 c a)) (*.f64 1/2 (sqrt.f64 -4)) (/.f64 -1/2 (/.f64 a b)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (/.f64 (*.f64 -1/2 b) a))
(fma.f64 -1/2 (/.f64 b a) (*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 (sqrt.f64 -4) 1/2)))
(fma.f64 (sqrt.f64 (/.f64 c a)) (*.f64 1/2 (sqrt.f64 -4)) (/.f64 -1/2 (/.f64 a b)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (/.f64 (*.f64 -1/2 b) a))
(fma.f64 -1/2 (/.f64 b a) (*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 (sqrt.f64 -4) 1/2)))
(fma.f64 (sqrt.f64 (/.f64 c a)) (*.f64 1/2 (sqrt.f64 -4)) (/.f64 -1/2 (/.f64 a b)))
(*.f64 -1/2 (/.f64 b a))
(/.f64 (*.f64 -1/2 b) a)
(/.f64 -1/2 (/.f64 a b))
(*.f64 -1/2 (/.f64 b a))
(/.f64 (*.f64 -1/2 b) a)
(/.f64 -1/2 (/.f64 a b))

localize54.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.5b
(fma.f64 b b (*.f64 c (*.f64 a -4)))
2.9b
(*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b))))
5.4b
(*.f64 a (/.f64 c b))
21.7b
(sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))
Compiler

Compiled 152 to 76 computations (50% saved)

series15.0ms (0.1%)

Counts
2 → 72
Calls

18 calls:

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

rewrite68.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
653×log-prod_binary64
586×prod-diff_binary64
335×pow2_binary64
236×pow1/3_binary64
235×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01127
124727
2348227
Stop Event
node limit
Counts
2 → 60
Calls
Call 1
Inputs
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 a (/.f64 b c)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 a) (/.f64 c b))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 a) (/.f64 c b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 a) (/.f64 c b)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 a) (/.f64 c b)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 a (/.f64 b c)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 a (/.f64 b c))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 b (*.f64 a c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 a c) b)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 a c)) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 a c) 1) b)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 a c) (pow.f64 (cbrt.f64 b) 2)) (cbrt.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 a c) (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 a (/.f64 b c)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 a (/.f64 b c)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 a (/.f64 b c))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 a (/.f64 b c))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 a 3) (pow.f64 (/.f64 c b) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (/.f64 c b) 3) (pow.f64 a 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 b (*.f64 a c)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 a (/.f64 b c)) 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 a (/.f64 b c)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 a (/.f64 b c)) 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 cbrt.f64 (*.f64 (pow.f64 (/.f64 c b) 3) (pow.f64 a 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 a (/.f64 b c))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 a (/.f64 b c))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 a (/.f64 b c))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 a (/.f64 b c))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) (*.f64 c -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 c -2) (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 c -2)) (neg.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 c -2) 1) (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 c -2) (cbrt.f64 (pow.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) 2))) (cbrt.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 c -2) (sqrt.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)))) (sqrt.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 c) (neg.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 c 2) (neg.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 c 3) (pow.f64 (/.f64 -2 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b))) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (/.f64 -2 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b))) 3) (pow.f64 c 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) (*.f64 c -2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 c 3) (pow.f64 (/.f64 -2 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 -2 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b))) 3) (pow.f64 c 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2))) 1))))))

simplify63.0ms (0.3%)

Algorithm
egg-herbie
Rules
739×associate-*l/_binary64
704×associate-/r/_binary64
517×unswap-sqr_binary64
499×associate-*r/_binary64
343×times-frac_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0511343
11551319
25801279
332721275
Stop Event
node limit
Counts
132 → 77
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))))))
Outputs
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a 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 a (/.f64 (pow.f64 b 3) (*.f64 c c))))
(neg.f64 (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b)))
(*.f64 (/.f64 c b) (-.f64 -1 (/.f64 (*.f64 c a) (*.f64 b 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 a (/.f64 (pow.f64 b 3) (*.f64 c c)))) (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 5) (pow.f64 c 3))))
(neg.f64 (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (/.f64 c b))))
(neg.f64 (fma.f64 (*.f64 (/.f64 c (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 (neg.f64 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 5) (pow.f64 c 3)))) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (pow.f64 a 3))) (/.f64 c b)) (/.f64 a (/.f64 (pow.f64 b 3) (*.f64 c c))))
(-.f64 (neg.f64 (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b))) (fma.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (pow.f64 a 3) (*.f64 (*.f64 a a) (/.f64 (pow.f64 c 3) (pow.f64 b 5)))))
(-.f64 (*.f64 (/.f64 c b) (-.f64 -1 (/.f64 (*.f64 c a) (*.f64 b b)))) (*.f64 (*.f64 a a) (+.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (/.f64 (*.f64 a (pow.f64 c 4)) (pow.f64 b 7)))))
(/.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 3) (*.f64 c (*.f64 a a))) (/.f64 (/.f64 (pow.f64 b 5) (*.f64 c 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 3) (*.f64 c (*.f64 a a))) (+.f64 (/.f64 (/.f64 (pow.f64 b 5) (*.f64 c c)) (pow.f64 a 3)) (+.f64 (/.f64 b a) (/.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 (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 3) (*.f64 c (*.f64 a a))) (/.f64 (/.f64 (pow.f64 b 5) (*.f64 c 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 3) (*.f64 c (*.f64 a a))) (+.f64 (/.f64 (/.f64 (pow.f64 b 5) (*.f64 c c)) (pow.f64 a 3)) (+.f64 (/.f64 b a) (/.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 (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 3) (*.f64 c (*.f64 a a))) (/.f64 (/.f64 (pow.f64 b 5) (*.f64 c 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 3) (*.f64 c (*.f64 a a))) (+.f64 (/.f64 (/.f64 (pow.f64 b 5) (*.f64 c c)) (pow.f64 a 3)) (+.f64 (/.f64 b a) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(*.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 a (/.f64 (pow.f64 b 3) (*.f64 c c))))
(neg.f64 (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b)))
(*.f64 (/.f64 c b) (-.f64 -1 (/.f64 (*.f64 c a) (*.f64 b 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 a (/.f64 (pow.f64 b 3) (*.f64 c c)))) (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 5) (pow.f64 c 3))))
(neg.f64 (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (/.f64 c b))))
(neg.f64 (fma.f64 (*.f64 (/.f64 c (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 (neg.f64 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 5) (pow.f64 c 3)))) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (pow.f64 a 3))) (/.f64 c b)) (/.f64 a (/.f64 (pow.f64 b 3) (*.f64 c c))))
(-.f64 (neg.f64 (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b))) (fma.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (pow.f64 a 3) (*.f64 (*.f64 a a) (/.f64 (pow.f64 c 3) (pow.f64 b 5)))))
(-.f64 (*.f64 (/.f64 c b) (-.f64 -1 (/.f64 (*.f64 c a) (*.f64 b b)))) (*.f64 (*.f64 a a) (+.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (/.f64 (*.f64 a (pow.f64 c 4)) (pow.f64 b 7)))))
(*.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 a (/.f64 (pow.f64 b 3) (*.f64 c c))))
(neg.f64 (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b)))
(*.f64 (/.f64 c b) (-.f64 -1 (/.f64 (*.f64 c a) (*.f64 b 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 a (/.f64 (pow.f64 b 3) (*.f64 c c)))) (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 5) (pow.f64 c 3))))
(neg.f64 (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (/.f64 c b))))
(neg.f64 (fma.f64 (*.f64 (/.f64 c (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 (neg.f64 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 5) (pow.f64 c 3)))) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (pow.f64 a 3))) (/.f64 c b)) (/.f64 a (/.f64 (pow.f64 b 3) (*.f64 c c))))
(-.f64 (neg.f64 (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b))) (fma.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (pow.f64 a 3) (*.f64 (*.f64 a a) (/.f64 (pow.f64 c 3) (pow.f64 b 5)))))
(-.f64 (*.f64 (/.f64 c b) (-.f64 -1 (/.f64 (*.f64 c a) (*.f64 b b)))) (*.f64 (*.f64 a a) (+.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (/.f64 (*.f64 a (pow.f64 c 4)) (pow.f64 b 7)))))
(*.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 a (/.f64 (pow.f64 b 3) (*.f64 c c))))
(neg.f64 (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b)))
(*.f64 (/.f64 c b) (-.f64 -1 (/.f64 (*.f64 c a) (*.f64 b 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 a (/.f64 (pow.f64 b 3) (*.f64 c c)))) (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 5) (pow.f64 c 3))))
(neg.f64 (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (/.f64 c b))))
(neg.f64 (fma.f64 (*.f64 (/.f64 c (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 (neg.f64 (/.f64 (*.f64 a a) (/.f64 (pow.f64 b 5) (pow.f64 c 3)))) (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (pow.f64 a 3))) (/.f64 c b)) (/.f64 a (/.f64 (pow.f64 b 3) (*.f64 c c))))
(-.f64 (neg.f64 (fma.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) a (/.f64 c b))) (fma.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (pow.f64 a 3) (*.f64 (*.f64 a a) (/.f64 (pow.f64 c 3) (pow.f64 b 5)))))
(-.f64 (*.f64 (/.f64 c b) (-.f64 -1 (/.f64 (*.f64 c a) (*.f64 b b)))) (*.f64 (*.f64 a a) (+.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (/.f64 (*.f64 a (pow.f64 c 4)) (pow.f64 b 7)))))
(/.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 3) (*.f64 c (*.f64 a a))) (/.f64 (/.f64 (pow.f64 b 5) (*.f64 c 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 3) (*.f64 c (*.f64 a a))) (+.f64 (/.f64 (/.f64 (pow.f64 b 5) (*.f64 c c)) (pow.f64 a 3)) (+.f64 (/.f64 b a) (/.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 (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 3) (*.f64 c (*.f64 a a))) (/.f64 (/.f64 (pow.f64 b 5) (*.f64 c 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 3) (*.f64 c (*.f64 a a))) (+.f64 (/.f64 (/.f64 (pow.f64 b 5) (*.f64 c c)) (pow.f64 a 3)) (+.f64 (/.f64 b a) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))

localize44.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 a (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))))
0.1b
(pow.f64 (*.f64 2 (/.f64 a (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))))) -1)
0.3b
(+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c)))))
15.7b
(sqrt.f64 (*.f64 -4 (*.f64 a c)))
Compiler

Compiled 132 to 71 computations (46.2% saved)

series85.0ms (0.4%)

Counts
4 → 42
Calls

33 calls:

TimeVariablePointExpression
11.0ms
a
@inf
(pow.f64 (*.f64 2 (/.f64 a (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))))) -1)
10.0ms
c
@inf
(pow.f64 (*.f64 2 (/.f64 a (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))))) -1)
9.0ms
b
@inf
(pow.f64 (*.f64 2 (/.f64 a (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))))) -1)
9.0ms
c
@-inf
(pow.f64 (*.f64 2 (/.f64 a (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))))) -1)
8.0ms
a
@-inf
(pow.f64 (*.f64 2 (/.f64 a (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))))) -1)

rewrite94.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
785×log-prod_binary64
673×prod-diff_binary64
277×expm1-udef_binary64
277×log1p-udef_binary64
236×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify74.0ms (0.4%)

Algorithm
egg-herbie
Rules
534×distribute-rgt-in_binary64
532×distribute-lft-in_binary64
396×associate-*r*_binary64
296×associate-*l*_binary64
283×fma-def_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02782498
19171906
242901804
Stop Event
node limit
Counts
184 → 211
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 b (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)))
(+.f64 b (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 b (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
(*.f64 2 b)
(+.f64 (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (*.f64 2 b))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (*.f64 2 b)))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (*.f64 2 b))))
(*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b))
(+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)))
(+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (*.f64 -1/16 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5)))))
(+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))) (*.f64 1/2 (/.f64 (+.f64 (*.f64 1/16 (*.f64 (pow.f64 c 4) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 8)))) (pow.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4)))) 2)) (pow.f64 b 7))))))
(*.f64 2 b)
(*.f64 2 b)
(/.f64 b a)
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 1/2 (/.f64 b a)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 1 (sqrt.f64 -4)))) (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 (pow.f64 (sqrt.f64 -4) 2) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))))) a))) (pow.f64 b 2))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 1/2 (/.f64 b a))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 1 (sqrt.f64 -4)))) (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 (pow.f64 (sqrt.f64 -4) 2) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))))) a))) (pow.f64 b 2))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (+.f64 (*.f64 1/2 (/.f64 b a)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 c (pow.f64 a 3))) (*.f64 (sqrt.f64 -4) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 c (*.f64 (pow.f64 (sqrt.f64 -4) 2) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))) (sqrt.f64 -4))))))) a)) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 1 (sqrt.f64 -4)))) (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 (pow.f64 (sqrt.f64 -4) 2) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))))) a))) (sqrt.f64 -4))))) (pow.f64 b 3))))))
(/.f64 b a)
(+.f64 (/.f64 b a) (*.f64 1/4 (/.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) b)))
(+.f64 (/.f64 b a) (+.f64 (*.f64 1/4 (/.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) b)) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4)))) (*.f64 -1/16 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))))) (pow.f64 b 3)))))
(+.f64 (/.f64 b a) (+.f64 (*.f64 1/4 (/.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) b)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (*.f64 c (*.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4)))) (*.f64 -1/16 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))))) (*.f64 a (pow.f64 (sqrt.f64 -4) 2))))) (+.f64 (*.f64 1/32 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 6)))) (*.f64 -2 (/.f64 (+.f64 (*.f64 1/32 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 6)))) (*.f64 1/128 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 6))))) (pow.f64 a 2))))) (pow.f64 b 5))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4)))) (*.f64 -1/16 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))))) (pow.f64 b 3))))))
(*.f64 -1/4 (/.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) b))
(+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (*.f64 -1/4 (/.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) b)))
(+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 (sqrt.f64 -4) 4) (+.f64 (*.f64 1/4 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1/8 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))))))) (pow.f64 b 5))) (+.f64 (*.f64 -1/64 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))) (*.f64 -1/4 (/.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) b)))))
(+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 (sqrt.f64 -4) 4) (+.f64 (*.f64 -2 (/.f64 (+.f64 (*.f64 1/16 (*.f64 (pow.f64 c 4) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 8)))) (pow.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4)))) 2)) (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))))) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4)))) (*.f64 1/4 (*.f64 c (*.f64 a (*.f64 (pow.f64 (sqrt.f64 -4) 2) (+.f64 (*.f64 1/4 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1/8 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))))))))))))) (pow.f64 b 7))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 c (*.f64 a (*.f64 (pow.f64 (sqrt.f64 -4) 2) (+.f64 (*.f64 -1/64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 6)))) (*.f64 -1/8 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 (sqrt.f64 -4) 4) (+.f64 (*.f64 1/4 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1/8 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))))))))))) (pow.f64 b 7))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 (sqrt.f64 -4) 4) (+.f64 (*.f64 1/4 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1/8 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))))))) (pow.f64 b 5))) (+.f64 (*.f64 -1/64 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) b)) (*.f64 1/32 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 a (*.f64 (pow.f64 (sqrt.f64 -4) 6) (+.f64 (*.f64 1/4 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1/8 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))))))) (pow.f64 b 7)))))))))
(/.f64 b a)
(*.f64 1/2 (/.f64 a b))
(*.f64 (sqrt.f64 (/.f64 a c)) (/.f64 1 (sqrt.f64 -4)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 a c)) (/.f64 1 (sqrt.f64 -4))) (*.f64 -1 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 a c)) (/.f64 1 (sqrt.f64 -4))) (+.f64 (*.f64 -1 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1 (*.f64 (pow.f64 b 2) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))))))))
(+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))) (sqrt.f64 -4)))))) (+.f64 (*.f64 (sqrt.f64 (/.f64 a c)) (/.f64 1 (sqrt.f64 -4))) (+.f64 (*.f64 -1 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1 (*.f64 (pow.f64 b 2) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))))))))
(*.f64 1/2 (/.f64 a b))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (*.f64 1/2 (/.f64 a b)))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (+.f64 (*.f64 1/2 (/.f64 a b)) (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 5)))))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/32 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 6)))) (*.f64 1/128 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 6))))) (pow.f64 b 7))) (+.f64 (*.f64 1/2 (/.f64 a b)) (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 5))))))
(*.f64 -2 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2))))
(+.f64 (*.f64 -2 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1/2 (/.f64 a b)))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (+.f64 (*.f64 -2 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2)))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (*.f64 -1/2 (/.f64 a b)))))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 c (*.f64 a (*.f64 (pow.f64 (sqrt.f64 -4) 2) (+.f64 (*.f64 1/4 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1/8 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))))))) (pow.f64 b 5))) (+.f64 (*.f64 -2 (/.f64 (+.f64 (*.f64 1/16 (*.f64 (pow.f64 c 4) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 8)))) (pow.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4)))) 2)) (*.f64 (pow.f64 c 2) (*.f64 a (*.f64 (pow.f64 (sqrt.f64 -4) 4) (pow.f64 b 5)))))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (+.f64 (*.f64 -2 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2)))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 a b)) (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 5)))))))))
(*.f64 1/2 (/.f64 a b))
Outputs
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 b (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) b)
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) b)
(+.f64 b (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(+.f64 b (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4))))))
(+.f64 (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) b) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 a) c)) (/.f64 (*.f64 b b) (sqrt.f64 -4)))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 b (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3))) (+.f64 b (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4)))))))
(+.f64 (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 b b) (sqrt.f64 -4))))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (*.f64 (sqrt.f64 -4) -4))) b))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (/.f64 (pow.f64 b 4) -4) (sqrt.f64 -4))) (+.f64 (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) b) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 a) c)) (/.f64 (*.f64 b b) (sqrt.f64 -4))))))
(*.f64 2 b)
(*.f64 b 2)
(+.f64 (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (*.f64 2 b))
(fma.f64 1/2 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b) (*.f64 b 2))
(fma.f64 b 2 (*.f64 1/2 (*.f64 (/.f64 c b) (*.f64 a -4))))
(fma.f64 b 2 (*.f64 (/.f64 1/2 b) (*.f64 a (*.f64 c -4))))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (*.f64 2 b)))
(fma.f64 -1/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4)))) (fma.f64 1/2 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b) (*.f64 b 2)))
(+.f64 (fma.f64 b 2 (*.f64 1/2 (*.f64 (/.f64 c b) (*.f64 a -4)))) (/.f64 (*.f64 (*.f64 (*.f64 c a) (*.f64 c a)) -2) (pow.f64 b 3)))
(+.f64 (fma.f64 b 2 (*.f64 (/.f64 1/2 b) (*.f64 a (*.f64 c -4)))) (/.f64 (*.f64 (*.f64 a (*.f64 a (*.f64 c c))) -2) (pow.f64 b 3)))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (*.f64 2 b))))
(fma.f64 -1/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4)))) (fma.f64 1/16 (/.f64 (*.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 (sqrt.f64 -4) 6)) (pow.f64 b 5)) (fma.f64 1/2 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b) (*.f64 b 2))))
(+.f64 (/.f64 (*.f64 (*.f64 (*.f64 c a) (*.f64 c a)) -2) (pow.f64 b 3)) (fma.f64 1/16 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 (pow.f64 a 3) -64)) (fma.f64 b 2 (*.f64 1/2 (*.f64 (/.f64 c b) (*.f64 a -4))))))
(+.f64 (/.f64 (*.f64 (*.f64 a (*.f64 a (*.f64 c c))) -2) (pow.f64 b 3)) (fma.f64 1/16 (/.f64 (pow.f64 c 3) (/.f64 (/.f64 (pow.f64 b 5) -64) (pow.f64 a 3))) (fma.f64 b 2 (*.f64 (/.f64 1/2 b) (*.f64 a (*.f64 c -4))))))
(*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b))
(*.f64 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b) -1/2)
(/.f64 (*.f64 (*.f64 -1/2 c) (*.f64 a -4)) b)
(*.f64 (/.f64 -1/2 b) (*.f64 a (*.f64 c -4)))
(+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)))
(fma.f64 1/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4)))) (*.f64 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b) -1/2))
(fma.f64 (*.f64 (/.f64 c b) (*.f64 a -4)) -1/2 (*.f64 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 a (*.f64 a 16))) 1/8))
(fma.f64 (*.f64 (*.f64 (/.f64 c b) -4) a) -1/2 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a (*.f64 a 16))))) 1/8))
(+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (*.f64 -1/16 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5)))))
(fma.f64 1/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4)))) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b) (*.f64 (/.f64 (*.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 (sqrt.f64 -4) 6)) (pow.f64 b 5)) -1/16)))
(fma.f64 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 a (*.f64 a 16))) 1/8 (fma.f64 (*.f64 (/.f64 c b) (*.f64 a -4)) -1/2 (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 (pow.f64 a 3) -64)) -1/16)))
(fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a (*.f64 a 16))))) 1/8 (fma.f64 (*.f64 (*.f64 (/.f64 c b) -4) a) -1/2 (*.f64 (/.f64 (pow.f64 c 3) (/.f64 (/.f64 (pow.f64 b 5) -64) (pow.f64 a 3))) -1/16)))
(+.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) b)) (+.f64 (*.f64 -1/16 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))) (*.f64 1/2 (/.f64 (+.f64 (*.f64 1/16 (*.f64 (pow.f64 c 4) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 8)))) (pow.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4)))) 2)) (pow.f64 b 7))))))
(fma.f64 1/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4)))) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 2)) b) (fma.f64 -1/16 (/.f64 (*.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 (sqrt.f64 -4) 6)) (pow.f64 b 5)) (/.f64 (*.f64 1/2 (fma.f64 1/16 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 (sqrt.f64 -4) 8)) (pow.f64 (*.f64 (*.f64 -1/8 (*.f64 c c)) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4))) 2))) (pow.f64 b 7)))))
(fma.f64 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 a (*.f64 a 16))) 1/8 (fma.f64 (*.f64 (/.f64 c b) (*.f64 a -4)) -1/2 (fma.f64 1/2 (/.f64 (+.f64 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 16) (pow.f64 (*.f64 (*.f64 (*.f64 c a) (*.f64 c a)) -2) 2)) (pow.f64 b 7)) (*.f64 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 (pow.f64 a 3) -64)) -1/16))))
(fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a (*.f64 a 16))))) 1/8 (fma.f64 (*.f64 (*.f64 (/.f64 c b) -4) a) -1/2 (fma.f64 1/2 (/.f64 (*.f64 (*.f64 (pow.f64 a 4) 256) (+.f64 (*.f64 1/16 (pow.f64 c 4)) (*.f64 (pow.f64 c 4) 1/64))) (pow.f64 b 7)) (*.f64 (/.f64 (pow.f64 c 3) (/.f64 (/.f64 (pow.f64 b 5) -64) (pow.f64 a 3))) -1/16))))
(*.f64 2 b)
(*.f64 b 2)
(*.f64 2 b)
(*.f64 b 2)
(/.f64 b a)
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)))
(*.f64 1/2 (*.f64 (sqrt.f64 -4) (sqrt.f64 (/.f64 c a))))
(*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 (sqrt.f64 -4) 1/2))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 1/2 (/.f64 b a)))
(*.f64 1/2 (+.f64 (*.f64 (sqrt.f64 -4) (sqrt.f64 (/.f64 c a))) (/.f64 b a)))
(*.f64 1/2 (fma.f64 (sqrt.f64 -4) (sqrt.f64 (/.f64 c a)) (/.f64 b a)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 1 (sqrt.f64 -4)))) (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 (pow.f64 (sqrt.f64 -4) 2) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))))) a))) (pow.f64 b 2))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 1/2 (/.f64 b a))))
(fma.f64 -1 (*.f64 (*.f64 b b) (*.f64 -1/2 (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 1 (sqrt.f64 -4))) (/.f64 (*.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) (*.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) a)) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))) -1/2)) a)))) (*.f64 1/2 (+.f64 (*.f64 (sqrt.f64 -4) (sqrt.f64 (/.f64 c a))) (/.f64 b a))))
(fma.f64 1/2 (fma.f64 (sqrt.f64 -4) (sqrt.f64 (/.f64 c a)) (/.f64 b a)) (*.f64 (*.f64 b b) (*.f64 1/2 (+.f64 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (sqrt.f64 -4)) (*.f64 (/.f64 c a) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (pow.f64 c 3)))) (/.f64 -1/4 (sqrt.f64 -4))) 2))))))
(fma.f64 1/2 (fma.f64 (sqrt.f64 -4) (sqrt.f64 (/.f64 c a)) (/.f64 b a)) (*.f64 1/2 (*.f64 (+.f64 (/.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 a 3)) c)) (sqrt.f64 -4)) (*.f64 (/.f64 c a) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (pow.f64 c 3)))) (/.f64 -1/4 (sqrt.f64 -4))) 2))) (*.f64 b b))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 1 (sqrt.f64 -4)))) (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 (pow.f64 (sqrt.f64 -4) 2) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))))) a))) (pow.f64 b 2))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (+.f64 (*.f64 1/2 (/.f64 b a)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 c (pow.f64 a 3))) (*.f64 (sqrt.f64 -4) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))))))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 c (*.f64 (pow.f64 (sqrt.f64 -4) 2) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))) (sqrt.f64 -4))))))) a)) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 1 (sqrt.f64 -4)))) (*.f64 -1/2 (/.f64 (*.f64 c (*.f64 (pow.f64 (sqrt.f64 -4) 2) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))))) a))) (sqrt.f64 -4))))) (pow.f64 b 3))))))
(fma.f64 -1 (*.f64 (*.f64 b b) (*.f64 -1/2 (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 1 (sqrt.f64 -4))) (/.f64 (*.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) (*.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) a)) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))) -1/2)) a)))) (fma.f64 1/2 (*.f64 (sqrt.f64 -4) (sqrt.f64 (/.f64 c a))) (fma.f64 1/2 (/.f64 b a) (neg.f64 (*.f64 (pow.f64 b 3) (fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 c (pow.f64 a 3))) (*.f64 (sqrt.f64 -4) (*.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) a)) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))) -1/2))) (fma.f64 1/2 (/.f64 (*.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) (-.f64 (/.f64 1/2 (*.f64 (*.f64 (*.f64 c c) a) (pow.f64 (sqrt.f64 -4) 4))) (neg.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) a)) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))) -1/2)) (sqrt.f64 -4))))) a) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 -1/2 (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 1 (sqrt.f64 -4))) (/.f64 (*.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) (*.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) a)) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))) -1/2)) a))) (sqrt.f64 -4))))))))))
(fma.f64 (*.f64 1/2 (+.f64 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (sqrt.f64 -4)) (*.f64 (/.f64 c a) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (pow.f64 c 3)))) (/.f64 -1/4 (sqrt.f64 -4))) 2)))) (*.f64 b b) (-.f64 (*.f64 1/2 (fma.f64 (sqrt.f64 -4) (sqrt.f64 (/.f64 c a)) (/.f64 b a))) (*.f64 (pow.f64 b 3) (fma.f64 -1/2 (*.f64 (*.f64 (/.f64 -1/4 (sqrt.f64 -4)) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (pow.f64 c 3)))) -1/2)) (*.f64 (sqrt.f64 -4) (sqrt.f64 (/.f64 c (pow.f64 a 3))))) (fma.f64 1/2 (*.f64 (/.f64 c a) (*.f64 -4 (+.f64 (/.f64 1/2 (*.f64 c (*.f64 c (*.f64 a 16)))) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (pow.f64 c 3)))) (/.f64 -1/4 (sqrt.f64 -4))) (/.f64 (sqrt.f64 -4) -1/2)))))) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 -1/2 (/.f64 (sqrt.f64 -4) (+.f64 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (sqrt.f64 -4)) (*.f64 (/.f64 c a) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (pow.f64 c 3)))) (/.f64 -1/4 (sqrt.f64 -4))) 2)))))))))))
(-.f64 (fma.f64 1/2 (fma.f64 (sqrt.f64 -4) (sqrt.f64 (/.f64 c a)) (/.f64 b a)) (*.f64 1/2 (*.f64 (+.f64 (/.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 a 3)) c)) (sqrt.f64 -4)) (*.f64 (/.f64 c a) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (pow.f64 c 3)))) (/.f64 -1/4 (sqrt.f64 -4))) 2))) (*.f64 b b)))) (*.f64 (pow.f64 b 3) (fma.f64 -1/2 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (pow.f64 c 3)))) (*.f64 (/.f64 -1/4 (sqrt.f64 -4)) -1/2)) (*.f64 (sqrt.f64 -4) (sqrt.f64 (/.f64 c (pow.f64 a 3))))) (fma.f64 1/2 (*.f64 (/.f64 c a) (*.f64 -4 (+.f64 (/.f64 1/2 (*.f64 c (*.f64 c (*.f64 a 16)))) (*.f64 (sqrt.f64 (/.f64 (/.f64 1 a) c)) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (pow.f64 c 3)))) -1/2) 16))))) (*.f64 (sqrt.f64 (/.f64 (/.f64 1 a) c)) (*.f64 (/.f64 -1/2 (sqrt.f64 -4)) (+.f64 (/.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 a 3)) c)) (sqrt.f64 -4)) (*.f64 (/.f64 c a) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (pow.f64 c 3)))) (/.f64 -1/4 (sqrt.f64 -4))) 2)))))))))
(/.f64 b a)
(+.f64 (/.f64 b a) (*.f64 1/4 (/.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) b)))
(+.f64 (/.f64 b a) (*.f64 1/4 (/.f64 c (/.f64 b (pow.f64 (sqrt.f64 -4) 2)))))
(+.f64 (/.f64 b a) (/.f64 (*.f64 -1 c) b))
(+.f64 (/.f64 b a) (/.f64 (neg.f64 c) b))
(+.f64 (/.f64 b a) (+.f64 (*.f64 1/4 (/.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) b)) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4)))) (*.f64 -1/16 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))))) (pow.f64 b 3)))))
(+.f64 (/.f64 b a) (fma.f64 1/4 (/.f64 c (/.f64 b (pow.f64 (sqrt.f64 -4) 2))) (neg.f64 (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 c c) a) (pow.f64 (sqrt.f64 -4) 4)) 1/16) (pow.f64 b 3)))))
(+.f64 (/.f64 b a) (-.f64 (/.f64 (*.f64 -1 c) b) (/.f64 (*.f64 (*.f64 c (*.f64 c a)) 1) (pow.f64 b 3))))
(+.f64 (/.f64 b a) (-.f64 (/.f64 (neg.f64 c) b) (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 b 3))))
(+.f64 (/.f64 b a) (+.f64 (*.f64 1/4 (/.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) b)) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/4 (*.f64 c (*.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4)))) (*.f64 -1/16 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))))) (*.f64 a (pow.f64 (sqrt.f64 -4) 2))))) (+.f64 (*.f64 1/32 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 6)))) (*.f64 -2 (/.f64 (+.f64 (*.f64 1/32 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 6)))) (*.f64 1/128 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 6))))) (pow.f64 a 2))))) (pow.f64 b 5))) (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4)))) (*.f64 -1/16 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))))) (pow.f64 b 3))))))
(+.f64 (/.f64 b a) (fma.f64 1/4 (/.f64 c (/.f64 b (pow.f64 (sqrt.f64 -4) 2))) (fma.f64 -1 (/.f64 (fma.f64 1/4 (*.f64 c (*.f64 (*.f64 a (pow.f64 (sqrt.f64 -4) 2)) (*.f64 (*.f64 (*.f64 (*.f64 c c) a) (pow.f64 (sqrt.f64 -4) 4)) 1/16))) (fma.f64 1/32 (*.f64 (pow.f64 c 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 6))) (/.f64 (*.f64 -2 (*.f64 (*.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 4)) (pow.f64 (sqrt.f64 -4) 6)) 5/128)) (*.f64 a a)))) (pow.f64 b 5)) (neg.f64 (/.f64 (*.f64 (*.f64 (*.f64 (*.f64 c c) a) (pow.f64 (sqrt.f64 -4) 4)) 1/16) (pow.f64 b 3))))))
(+.f64 (/.f64 b a) (-.f64 (-.f64 (/.f64 (*.f64 -1 c) b) (/.f64 (fma.f64 1/4 (*.f64 c (*.f64 a (*.f64 -4 (*.f64 (*.f64 c (*.f64 c a)) 1)))) (fma.f64 -2 (/.f64 (*.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 4)) -5/2) (*.f64 a a)) (*.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) -2))) (pow.f64 b 5))) (/.f64 (*.f64 (*.f64 c (*.f64 c a)) 1) (pow.f64 b 3))))
(-.f64 (+.f64 (/.f64 b a) (-.f64 (/.f64 (neg.f64 c) b) (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 b 3)))) (/.f64 (fma.f64 1/4 (*.f64 -4 (*.f64 (pow.f64 c 3) (*.f64 a a))) (*.f64 -2 (+.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) (/.f64 (*.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 4)) -5/2) (*.f64 a a))))) (pow.f64 b 5)))
(*.f64 -1/4 (/.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) b))
(*.f64 (/.f64 c (/.f64 b (pow.f64 (sqrt.f64 -4) 2))) -1/4)
(/.f64 (*.f64 1 c) b)
(/.f64 c b)
(+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (*.f64 -1/4 (/.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) b)))
(fma.f64 1/16 (/.f64 (*.f64 (*.f64 (*.f64 c c) a) (pow.f64 (sqrt.f64 -4) 4)) (pow.f64 b 3)) (*.f64 (/.f64 c (/.f64 b (pow.f64 (sqrt.f64 -4) 2))) -1/4))
(+.f64 (/.f64 (*.f64 (*.f64 c (*.f64 c a)) 1) (pow.f64 b 3)) (/.f64 (*.f64 1 c) b))
(+.f64 (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 b 3)) (/.f64 c b))
(+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 (sqrt.f64 -4) 4) (+.f64 (*.f64 1/4 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1/8 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))))))) (pow.f64 b 5))) (+.f64 (*.f64 -1/64 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))) (*.f64 -1/4 (/.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) b)))))
(fma.f64 1/16 (/.f64 (*.f64 (*.f64 (*.f64 c c) a) (pow.f64 (sqrt.f64 -4) 4)) (pow.f64 b 3)) (fma.f64 -1/8 (/.f64 (*.f64 (*.f64 (*.f64 c c) (pow.f64 (sqrt.f64 -4) 4)) (*.f64 (*.f64 (*.f64 c (*.f64 a a)) (pow.f64 (sqrt.f64 -4) 2)) 1/8)) (pow.f64 b 5)) (fma.f64 -1/64 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5)) (*.f64 (/.f64 c (/.f64 b (pow.f64 (sqrt.f64 -4) 2))) -1/4))))
(+.f64 (/.f64 (*.f64 (*.f64 c (*.f64 c a)) 1) (pow.f64 b 3)) (+.f64 (/.f64 (*.f64 1 c) b) (fma.f64 -1/8 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 5)) (*.f64 16 (*.f64 (*.f64 c (*.f64 a a)) -1/2))) (/.f64 (*.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) 1) (pow.f64 b 5)))))
(+.f64 (fma.f64 -1/8 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 5)) (*.f64 16 (*.f64 (*.f64 c (*.f64 a a)) -1/2))) (/.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) (pow.f64 b 5))) (+.f64 (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 b 3)) (/.f64 c b)))
(+.f64 (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 3))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 (sqrt.f64 -4) 4) (+.f64 (*.f64 -2 (/.f64 (+.f64 (*.f64 1/16 (*.f64 (pow.f64 c 4) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 8)))) (pow.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4)))) 2)) (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))))) (+.f64 (*.f64 1/16 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4)))) (*.f64 1/4 (*.f64 c (*.f64 a (*.f64 (pow.f64 (sqrt.f64 -4) 2) (+.f64 (*.f64 1/4 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1/8 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))))))))))))) (pow.f64 b 7))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 c (*.f64 a (*.f64 (pow.f64 (sqrt.f64 -4) 2) (+.f64 (*.f64 -1/64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 6)))) (*.f64 -1/8 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 (sqrt.f64 -4) 4) (+.f64 (*.f64 1/4 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1/8 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))))))))))) (pow.f64 b 7))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 (sqrt.f64 -4) 4) (+.f64 (*.f64 1/4 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1/8 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))))))) (pow.f64 b 5))) (+.f64 (*.f64 -1/64 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5))) (+.f64 (*.f64 -1/4 (/.f64 (*.f64 c (pow.f64 (sqrt.f64 -4) 2)) b)) (*.f64 1/32 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 a (*.f64 (pow.f64 (sqrt.f64 -4) 6) (+.f64 (*.f64 1/4 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1/8 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))))))) (pow.f64 b 7)))))))))
(fma.f64 1/16 (/.f64 (*.f64 (*.f64 (*.f64 c c) a) (pow.f64 (sqrt.f64 -4) 4)) (pow.f64 b 3)) (fma.f64 -1/8 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 (sqrt.f64 -4) 4) (fma.f64 -2 (/.f64 (fma.f64 1/16 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 (sqrt.f64 -4) 8)) (pow.f64 (*.f64 (*.f64 -1/8 (*.f64 c c)) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4))) 2)) (*.f64 (*.f64 (*.f64 c c) a) (pow.f64 (sqrt.f64 -4) 4))) (fma.f64 1/16 (*.f64 (*.f64 c c) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4))) (*.f64 1/4 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (sqrt.f64 -4) 2) (*.f64 (*.f64 (*.f64 c (*.f64 a a)) (pow.f64 (sqrt.f64 -4) 2)) 1/8))))))))) (fma.f64 -1/4 (/.f64 c (/.f64 (pow.f64 b 7) (*.f64 (*.f64 a (pow.f64 (sqrt.f64 -4) 2)) (fma.f64 -1/64 (*.f64 (pow.f64 c 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 6))) (*.f64 -1/8 (*.f64 (*.f64 (*.f64 c c) (pow.f64 (sqrt.f64 -4) 4)) (*.f64 (*.f64 (*.f64 c (*.f64 a a)) (pow.f64 (sqrt.f64 -4) 2)) 1/8))))))) (fma.f64 -1/8 (/.f64 (*.f64 (*.f64 (*.f64 c c) (pow.f64 (sqrt.f64 -4) 4)) (*.f64 (*.f64 (*.f64 c (*.f64 a a)) (pow.f64 (sqrt.f64 -4) 2)) 1/8)) (pow.f64 b 5)) (fma.f64 -1/64 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 5)) (fma.f64 -1/4 (/.f64 c (/.f64 b (pow.f64 (sqrt.f64 -4) 2))) (/.f64 (*.f64 1/32 (*.f64 (pow.f64 c 3) (*.f64 (*.f64 a (pow.f64 (sqrt.f64 -4) 6)) (*.f64 (*.f64 (*.f64 c (*.f64 a a)) (pow.f64 (sqrt.f64 -4) 2)) 1/8)))) (pow.f64 b 7))))))))
(+.f64 (/.f64 (*.f64 (*.f64 c (*.f64 c a)) 1) (pow.f64 b 3)) (fma.f64 -1/8 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 7)) (*.f64 16 (fma.f64 -2 (/.f64 (+.f64 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 16) (pow.f64 (*.f64 (*.f64 (*.f64 c a) (*.f64 c a)) -2) 2)) (*.f64 c (*.f64 c (*.f64 a 16)))) (fma.f64 1/4 (*.f64 c (*.f64 a (*.f64 -4 (*.f64 (*.f64 c (*.f64 a a)) -1/2)))) (*.f64 (*.f64 c (*.f64 c (pow.f64 a 3))) 1))))) (fma.f64 -1/4 (*.f64 (/.f64 c (pow.f64 b 7)) (*.f64 a (*.f64 -4 (fma.f64 -1/8 (*.f64 (*.f64 c c) (*.f64 16 (*.f64 (*.f64 c (*.f64 a a)) -1/2))) (*.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) 1))))) (+.f64 (fma.f64 1/32 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 7)) (*.f64 (*.f64 (*.f64 c (*.f64 a a)) -1/2) (*.f64 a -64))) (/.f64 (*.f64 1 c) b)) (fma.f64 -1/8 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 5)) (*.f64 16 (*.f64 (*.f64 c (*.f64 a a)) -1/2))) (/.f64 (*.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) 1) (pow.f64 b 5)))))))
(+.f64 (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 b 3)) (fma.f64 -1/8 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 7)) (*.f64 16 (fma.f64 -2 (/.f64 (*.f64 (*.f64 (pow.f64 a 4) 256) (+.f64 (*.f64 1/16 (pow.f64 c 4)) (*.f64 (pow.f64 c 4) 1/64))) (*.f64 c (*.f64 c (*.f64 a 16)))) (fma.f64 1/4 (*.f64 c (*.f64 -4 (*.f64 a (*.f64 (*.f64 c (*.f64 a a)) -1/2)))) (*.f64 (pow.f64 a 3) (*.f64 c c)))))) (fma.f64 -1/4 (*.f64 (/.f64 c (pow.f64 b 7)) (*.f64 -4 (*.f64 a (fma.f64 -1/8 (*.f64 (*.f64 (*.f64 c (*.f64 a a)) -1/2) (*.f64 (*.f64 c c) 16)) (*.f64 (pow.f64 c 3) (*.f64 a a)))))) (+.f64 (fma.f64 1/32 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 7) (*.f64 (*.f64 (*.f64 c (*.f64 a a)) -1/2) (*.f64 a -64)))) (/.f64 c b)) (fma.f64 -1/8 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 5)) (*.f64 16 (*.f64 (*.f64 c (*.f64 a a)) -1/2))) (/.f64 (*.f64 (pow.f64 c 3) (*.f64 a a)) (pow.f64 b 5)))))))
(/.f64 b a)
(*.f64 1/2 (/.f64 a b))
(*.f64 (sqrt.f64 (/.f64 a c)) (/.f64 1 (sqrt.f64 -4)))
(*.f64 (/.f64 1 (sqrt.f64 -4)) (sqrt.f64 (/.f64 a c)))
(/.f64 (sqrt.f64 (/.f64 a c)) (sqrt.f64 -4))
(+.f64 (*.f64 (sqrt.f64 (/.f64 a c)) (/.f64 1 (sqrt.f64 -4))) (*.f64 -1 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2)))))
(fma.f64 (sqrt.f64 (/.f64 a c)) (/.f64 1 (sqrt.f64 -4)) (neg.f64 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2)))))
(+.f64 (/.f64 (sqrt.f64 (/.f64 a c)) (sqrt.f64 -4)) (*.f64 1/4 (/.f64 b c)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 a c)) (/.f64 1 (sqrt.f64 -4))) (+.f64 (*.f64 -1 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1 (*.f64 (pow.f64 b 2) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))))))))
(fma.f64 (sqrt.f64 (/.f64 a c)) (/.f64 1 (sqrt.f64 -4)) (*.f64 -1 (+.f64 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2))) (*.f64 (*.f64 b b) (*.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) a)) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))) -1/2)))))
(+.f64 (/.f64 (sqrt.f64 (/.f64 a c)) (sqrt.f64 -4)) (fma.f64 (*.f64 (neg.f64 b) b) (*.f64 (/.f64 -1/4 (sqrt.f64 -4)) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (pow.f64 c 3)))) -1/2)) (*.f64 1/4 (/.f64 b c))))
(+.f64 (/.f64 (sqrt.f64 (/.f64 a c)) (sqrt.f64 -4)) (fma.f64 (*.f64 (*.f64 b b) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (pow.f64 c 3)))) (/.f64 1/4 (sqrt.f64 -4)))) -1/2 (*.f64 1/4 (/.f64 b c))))
(+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 1/2 (/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 4))))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))) (sqrt.f64 -4)))))) (+.f64 (*.f64 (sqrt.f64 (/.f64 a c)) (/.f64 1 (sqrt.f64 -4))) (+.f64 (*.f64 -1 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1 (*.f64 (pow.f64 b 2) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))))))))
(fma.f64 (pow.f64 b 3) (-.f64 (/.f64 1/2 (*.f64 (*.f64 (*.f64 c c) a) (pow.f64 (sqrt.f64 -4) 4))) (neg.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) a)) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))) -1/2)) (sqrt.f64 -4)))) (fma.f64 (sqrt.f64 (/.f64 a c)) (/.f64 1 (sqrt.f64 -4)) (*.f64 -1 (+.f64 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2))) (*.f64 (*.f64 b b) (*.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) a)) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))) -1/2))))))
(+.f64 (fma.f64 (*.f64 (neg.f64 b) b) (*.f64 (/.f64 -1/4 (sqrt.f64 -4)) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (pow.f64 c 3)))) -1/2)) (*.f64 1/4 (/.f64 b c))) (fma.f64 (pow.f64 b 3) (+.f64 (/.f64 1/2 (*.f64 c (*.f64 c (*.f64 a 16)))) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (pow.f64 c 3)))) (/.f64 -1/4 (sqrt.f64 -4))) (/.f64 (sqrt.f64 -4) -1/2)))) (/.f64 (sqrt.f64 (/.f64 a c)) (sqrt.f64 -4))))
(+.f64 (fma.f64 (*.f64 (*.f64 b b) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (pow.f64 c 3)))) (/.f64 1/4 (sqrt.f64 -4)))) -1/2 (*.f64 1/4 (/.f64 b c))) (fma.f64 (pow.f64 b 3) (+.f64 (/.f64 1/2 (*.f64 c (*.f64 c (*.f64 a 16)))) (*.f64 (sqrt.f64 (/.f64 (/.f64 1 a) c)) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 a (pow.f64 c 3)))) -1/2) 16))) (/.f64 (sqrt.f64 (/.f64 a c)) (sqrt.f64 -4))))
(*.f64 1/2 (/.f64 a b))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (*.f64 1/2 (/.f64 a b)))
(fma.f64 -1/8 (/.f64 (*.f64 (*.f64 c (*.f64 a a)) (pow.f64 (sqrt.f64 -4) 2)) (pow.f64 b 3)) (*.f64 1/2 (/.f64 a b)))
(fma.f64 1/2 (/.f64 a b) (/.f64 (*.f64 (*.f64 c (*.f64 a a)) 1/2) (pow.f64 b 3)))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (+.f64 (*.f64 1/2 (/.f64 a b)) (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 5)))))
(fma.f64 -1/8 (/.f64 (*.f64 (*.f64 c (*.f64 a a)) (pow.f64 (sqrt.f64 -4) 2)) (pow.f64 b 3)) (fma.f64 1/2 (/.f64 a b) (*.f64 1/16 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4)))))))
(+.f64 (/.f64 (*.f64 (*.f64 c (*.f64 a a)) 1/2) (pow.f64 b 3)) (fma.f64 1/2 (/.f64 a b) (/.f64 (*.f64 (*.f64 c (*.f64 c (pow.f64 a 3))) 1) (pow.f64 b 5))))
(+.f64 (/.f64 (*.f64 (*.f64 c (*.f64 a a)) 1/2) (pow.f64 b 3)) (fma.f64 1/2 (/.f64 a b) (/.f64 (*.f64 (pow.f64 a 3) (*.f64 c c)) (pow.f64 b 5))))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/32 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 6)))) (*.f64 1/128 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 6))))) (pow.f64 b 7))) (+.f64 (*.f64 1/2 (/.f64 a b)) (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 5))))))
(fma.f64 -1/8 (/.f64 (*.f64 (*.f64 c (*.f64 a a)) (pow.f64 (sqrt.f64 -4) 2)) (pow.f64 b 3)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 4)) (pow.f64 (sqrt.f64 -4) 6)) 5/128) (pow.f64 b 7)) (fma.f64 1/2 (/.f64 a b) (*.f64 1/16 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4))))))))
(+.f64 (/.f64 (*.f64 (*.f64 c (*.f64 a a)) 1/2) (pow.f64 b 3)) (-.f64 (fma.f64 1/2 (/.f64 a b) (/.f64 (*.f64 (*.f64 c (*.f64 c (pow.f64 a 3))) 1) (pow.f64 b 5))) (/.f64 (*.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 4)) -5/2) (pow.f64 b 7))))
(+.f64 (/.f64 (*.f64 (*.f64 c (*.f64 a a)) 1/2) (pow.f64 b 3)) (+.f64 (fma.f64 1/2 (/.f64 a b) (/.f64 (*.f64 (pow.f64 a 3) (*.f64 c c)) (pow.f64 b 5))) (/.f64 (*.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 4)) 5/2) (pow.f64 b 7))))
(*.f64 -2 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2))))
(*.f64 1/2 (/.f64 b c))
(+.f64 (*.f64 -2 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1/2 (/.f64 a b)))
(fma.f64 -2 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2))) (*.f64 -1/2 (/.f64 a b)))
(fma.f64 -1/2 (/.f64 a b) (*.f64 1/2 (/.f64 b c)))
(+.f64 (*.f64 -1/8 (/.f64 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (+.f64 (*.f64 -2 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2)))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (*.f64 -1/2 (/.f64 a b)))))
(fma.f64 -1/8 (/.f64 (*.f64 (*.f64 c (*.f64 a a)) (pow.f64 (sqrt.f64 -4) 2)) (pow.f64 b 3)) (fma.f64 -2 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2))) (fma.f64 1/4 (/.f64 (*.f64 (*.f64 c (*.f64 a a)) (pow.f64 (sqrt.f64 -4) 2)) (pow.f64 b 3)) (*.f64 -1/2 (/.f64 a b)))))
(+.f64 (/.f64 (*.f64 (*.f64 c (*.f64 a a)) 1/2) (pow.f64 b 3)) (+.f64 (*.f64 1/2 (/.f64 b c)) (fma.f64 -1/2 (/.f64 a b) (/.f64 (*.f64 (*.f64 -1 c) (*.f64 a a)) (pow.f64 b 3)))))
(+.f64 (+.f64 (/.f64 (*.f64 (*.f64 c (*.f64 a a)) 1/2) (pow.f64 b 3)) (fma.f64 -1/2 (/.f64 a b) (/.f64 (*.f64 (neg.f64 c) (*.f64 a a)) (pow.f64 b 3)))) (*.f64 1/2 (/.f64 b c)))
(+.f64 (*.f64 1/4 (/.f64 (*.f64 c (*.f64 a (*.f64 (pow.f64 (sqrt.f64 -4) 2) (+.f64 (*.f64 1/4 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -1/8 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))))))) (pow.f64 b 5))) (+.f64 (*.f64 -2 (/.f64 (+.f64 (*.f64 1/16 (*.f64 (pow.f64 c 4) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 8)))) (pow.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4)))) 2)) (*.f64 (pow.f64 c 2) (*.f64 a (*.f64 (pow.f64 (sqrt.f64 -4) 4) (pow.f64 b 5)))))) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (+.f64 (*.f64 -2 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2)))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 a b)) (*.f64 1/16 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 5)))))))))
(fma.f64 1/4 (/.f64 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (sqrt.f64 -4) 2) (*.f64 (*.f64 (*.f64 c (*.f64 a a)) (pow.f64 (sqrt.f64 -4) 2)) 1/8))) (pow.f64 b 5)) (fma.f64 -2 (/.f64 (fma.f64 1/16 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) (pow.f64 (sqrt.f64 -4) 8)) (pow.f64 (*.f64 (*.f64 -1/8 (*.f64 c c)) (*.f64 (*.f64 a a) (pow.f64 (sqrt.f64 -4) 4))) 2)) (*.f64 (*.f64 (*.f64 c c) a) (*.f64 (pow.f64 (sqrt.f64 -4) 4) (pow.f64 b 5)))) (fma.f64 -1/8 (/.f64 (*.f64 (*.f64 c (*.f64 a a)) (pow.f64 (sqrt.f64 -4) 2)) (pow.f64 b 3)) (fma.f64 -2 (/.f64 b (*.f64 c (pow.f64 (sqrt.f64 -4) 2))) (fma.f64 1/4 (/.f64 (*.f64 (*.f64 c (*.f64 a a)) (pow.f64 (sqrt.f64 -4) 2)) (pow.f64 b 3)) (fma.f64 -1/2 (/.f64 a b) (*.f64 1/16 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4)))))))))))
(fma.f64 1/4 (*.f64 (/.f64 c (pow.f64 b 5)) (*.f64 a (*.f64 -4 (*.f64 (*.f64 c (*.f64 a a)) -1/2)))) (+.f64 (+.f64 (*.f64 1/2 (/.f64 b c)) (+.f64 (/.f64 (*.f64 (*.f64 c (*.f64 c (pow.f64 a 3))) 1) (pow.f64 b 5)) (fma.f64 -1/2 (/.f64 a b) (/.f64 (*.f64 (*.f64 -1 c) (*.f64 a a)) (pow.f64 b 3))))) (fma.f64 -2 (/.f64 (+.f64 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 16) (pow.f64 (*.f64 (*.f64 (*.f64 c a) (*.f64 c a)) -2) 2)) (*.f64 c (*.f64 c (*.f64 (pow.f64 b 5) (*.f64 a 16))))) (/.f64 (*.f64 (*.f64 c (*.f64 a a)) 1/2) (pow.f64 b 3)))))
(fma.f64 1/4 (*.f64 (/.f64 c (pow.f64 b 5)) (*.f64 -4 (*.f64 a (*.f64 (*.f64 c (*.f64 a a)) -1/2)))) (+.f64 (+.f64 (*.f64 1/2 (/.f64 b c)) (+.f64 (/.f64 (*.f64 (pow.f64 a 3) (*.f64 c c)) (pow.f64 b 5)) (fma.f64 -1/2 (/.f64 a b) (/.f64 (*.f64 (neg.f64 c) (*.f64 a a)) (pow.f64 b 3))))) (fma.f64 -2 (/.f64 (*.f64 (*.f64 (pow.f64 a 4) 256) (+.f64 (*.f64 1/16 (pow.f64 c 4)) (*.f64 (pow.f64 c 4) 1/64))) (*.f64 c (*.f64 c (*.f64 16 (*.f64 a (pow.f64 b 5)))))) (/.f64 (*.f64 (*.f64 c (*.f64 a a)) 1/2) (pow.f64 b 3)))))
(*.f64 1/2 (/.f64 a b))

eval664.0ms (3.3%)

Compiler

Compiled 34517 to 20593 computations (40.3% saved)

prune387.0ms (1.9%)

Pruning

33 alts after pruning (29 fresh and 4 done)

PrunedKeptTotal
New85617873
Fresh61218
Picked101
Done246
Total86533898
Error
4.8b
Counts
898 → 33
Alt Table
Click to see full alt table
StatusErrorProgram
24.1b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (-.f64 (/.f64 c b) (/.f64 b a)))
31.0b
(if (>=.f64 b 0) (exp.f64 (log.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
28.0b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
33.9b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
44.0b
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
28.4b
(if (>=.f64 b 0) (/.f64 (/.f64 (*.f64 c -2) (cbrt.f64 (pow.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) 2))) (cbrt.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
28.0b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (pow.f64 b 2))))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 (*.f64 b b) 1) (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
22.9b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 b)) 2)) (cbrt.f64 (log.f64 b)))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
31.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (-.f64 a (*.f64 (/.f64 b c) b)) (*.f64 (/.f64 b c) a)))
31.8b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (*.f64 (sqrt.f64 (*.f64 a -4)) (sqrt.f64 c))) (*.f64 2 a)))
28.9b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2))))) (*.f64 (-.f64 (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) b) (/.f64 1/2 a)))
24.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
24.4b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (cbrt.f64 (-.f64 (/.f64 c b) (/.f64 b a))) 3))
27.9b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (-.f64 (exp.f64 (log.f64 (hypot.f64 b (*.f64 (sqrt.f64 (*.f64 a -4)) (sqrt.f64 c))))) b) (/.f64 1/2 a)))
24.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (-.f64 (*.f64 (/.f64 (*.f64 c 2) b) a) b)) (*.f64 2 a)))
20.7b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))) b) (/.f64 1/2 a)))
22.1b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (pow.f64 (E.f64) (log.f64 b))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
30.4b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (cbrt.f64 (pow.f64 (/.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))) (*.f64 a -2)) 3)))
20.7b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (-.f64 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) b) (/.f64 1/2 a)))
22.4b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (exp.f64 (*.f64 (*.f64 (log.f64 b) 3) 1/3))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
19.2b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.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 1/2 a)))
30.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (/.f64 (-.f64 (*.f64 c a) (*.f64 b b)) b) a))
28.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 2 a)))
29.5b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 1/2 (/.f64 a (+.f64 b (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 -4 a))) b)))))
20.7b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (pow.f64 (cbrt.f64 (/.f64 a (/.f64 b c))) 3) b)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
24.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
21.0b
(if (>=.f64 b 0) (pow.f64 (cbrt.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2))) 3) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
36.1b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
34.9b
(if (>=.f64 b 0) (pow.f64 (pow.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2)) 3) 1/3) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
20.8b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (-.f64 (pow.f64 (exp.f64 1) (log.f64 (hypot.f64 (sqrt.f64 (*.f64 a (*.f64 -4 c))) b))) b) (/.f64 1/2 a)))
38.5b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (*.f64 2 (*.f64 1/2 (/.f64 b c))) -1))
35.4b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (pow.f64 (/.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))) (*.f64 a -2)) 3) 1/3))
38.5b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
Compiler

Compiled 2081 to 1395 computations (33% saved)

localize51.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.2b
(+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))
2.9b
(*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b))))
5.4b
(*.f64 a (/.f64 c b))
21.7b
(sqrt.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b)))
Compiler

Compiled 160 to 77 computations (51.9% saved)

series7.0ms (0%)

Counts
2 → 56
Calls

18 calls:

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

rewrite78.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
500×log-prod_binary64
436×prod-exp_binary64
364×exp-prod_binary64
341×pow-prod-down_binary64
297×fma-def_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01024
121223
2273323
Stop Event
node limit
Counts
2 → 129
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b)))
(+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/6) (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 (-.f64 (*.f64 (pow.f64 (*.f64 c a) 2) 16) (pow.f64 b 4))) (sqrt.f64 (-.f64 (*.f64 a (*.f64 -4 c)) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (fma.f64 (pow.f64 (*.f64 c a) 3) -64 (pow.f64 b 6))) (hypot.f64 (*.f64 a (*.f64 -4 c)) (sqrt.f64 (*.f64 (*.f64 b b) (fma.f64 b b (neg.f64 (*.f64 a (*.f64 -4 c))))))))))) (#(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 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3) 1/6)))) (#(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 pow.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/6) 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 (exp.f64 1) (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/2) (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))))) 2)) (cbrt.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))))) (sqrt.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))))))))) (#(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 hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 a (*.f64 -4 c))) b)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))))))) (#(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 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/4 (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (pow.f64 (*.f64 c a) 2) 16) (-.f64 (*.f64 a (*.f64 -4 c)) (*.f64 b b))) (/.f64 (pow.f64 b 4) (-.f64 (*.f64 a (*.f64 -4 c)) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))) (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (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))) (pow.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 2) (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)) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 (*.f64 c a) 3) -64 (pow.f64 b 6)) (/.f64 1 (-.f64 (fma.f64 (pow.f64 (*.f64 c a) 2) 16 (pow.f64 b 4)) (*.f64 (*.f64 a (*.f64 -4 c)) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (pow.f64 (*.f64 c a) 2) 16) (pow.f64 b 4)) (/.f64 1 (-.f64 (*.f64 a (*.f64 -4 c)) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/4) (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 5/6) (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (fma.f64 (pow.f64 (*.f64 c a) 2) 16 (pow.f64 b 4)) (*.f64 (*.f64 a (*.f64 -4 c)) (*.f64 b b))) (fma.f64 (pow.f64 (*.f64 c a) 3) -64 (pow.f64 b 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 a (*.f64 -4 c)) (*.f64 b b)) (-.f64 (*.f64 (pow.f64 (*.f64 c a) 2) 16) (pow.f64 b 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 c a) 3) -64 (pow.f64 b 6)) (-.f64 (fma.f64 (pow.f64 (*.f64 c a) 2) 16 (pow.f64 b 4)) (*.f64 (*.f64 a (*.f64 -4 c)) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (*.f64 c a) 3) -64 (pow.f64 b 6)) (+.f64 (pow.f64 b 4) (-.f64 (*.f64 (pow.f64 (*.f64 c a) 2) 16) (*.f64 (*.f64 a (*.f64 -4 c)) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 (*.f64 c a) 2) 16) (pow.f64 b 4)) (-.f64 (*.f64 a (*.f64 -4 c)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 c a) 3) -64 (pow.f64 b 6))) (neg.f64 (-.f64 (fma.f64 (pow.f64 (*.f64 c a) 2) 16 (pow.f64 b 4)) (*.f64 (*.f64 a (*.f64 -4 c)) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (*.f64 c a) 2) 16) (pow.f64 b 4))) (neg.f64 (-.f64 (*.f64 a (*.f64 -4 c)) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 b 4) (*.f64 (pow.f64 (*.f64 c a) 2) 16)) (fma.f64 b b (neg.f64 (*.f64 a (*.f64 -4 c)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.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/6) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (fma.f64 (pow.f64 (*.f64 c a) 2) 16 (pow.f64 b 4)) (*.f64 (*.f64 a (*.f64 -4 c)) (*.f64 b b))) (fma.f64 (pow.f64 (*.f64 c a) 3) -64 (pow.f64 b 6))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 a (*.f64 -4 c)) (*.f64 b b)) (-.f64 (*.f64 (pow.f64 (*.f64 c a) 2) 16) (pow.f64 b 4))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) 2)) (cbrt.f64 (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))) (sqrt.f64 (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a (*.f64 -4 c)))) (exp.f64 (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 c) (*.f64 a -4)) (+.f64 1 (expm1.f64 (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 a (*.f64 -4 c)))) (+.f64 1 (expm1.f64 (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 b b))) (pow.f64 (exp.f64 c) (*.f64 a -4))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 b b)) (+.f64 1 (expm1.f64 (*.f64 a (*.f64 -4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 b b))) (+.f64 1 (expm1.f64 (*.f64 a (*.f64 -4 c))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.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))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))) 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 1/2) (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))) 1) (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))) (*.f64 (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 1/2) (*.f64 (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))) 1) (*.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 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))) (*.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 1/2) (*.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))) 1) (*.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c))))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c (*.f64 a -4) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a (*.f64 -4 c) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -4 (*.f64 c a) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a -4) c (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a (*.f64 -4 c)) 1 (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b b (*.f64 a (*.f64 -4 c)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 b b) 1 (*.f64 a (*.f64 -4 c)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 a (*.f64 -4 c)) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 b b) (*.f64 a (*.f64 -4 c)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 2) (*.f64 (cbrt.f64 b) b) (*.f64 a (*.f64 -4 c)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 b) b) (pow.f64 (cbrt.f64 b) 2) (*.f64 a (*.f64 -4 c)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 a -4)) 2) (*.f64 (cbrt.f64 (*.f64 a -4)) c) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (cbrt.f64 c) (*.f64 a -4)) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 a (*.f64 -4 c))) (pow.f64 (cbrt.f64 (*.f64 a (*.f64 -4 c))) 2) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 a (*.f64 -4 c))) 2) (cbrt.f64 (*.f64 a (*.f64 -4 c))) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a -4)) (*.f64 (sqrt.f64 (*.f64 a -4)) c) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (*.f64 (sqrt.f64 c) (*.f64 a -4)) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a (*.f64 -4 c))) (sqrt.f64 (*.f64 a (*.f64 -4 c))) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (pow.f64 b 3/2) (*.f64 a (*.f64 -4 c)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c a) -4 (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 b 3/2) (sqrt.f64 b) (*.f64 a (*.f64 -4 c)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 5) (cbrt.f64 b) (*.f64 a (*.f64 -4 c)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c -4) a (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c (pow.f64 (cbrt.f64 (*.f64 a -4)) 2)) (cbrt.f64 (*.f64 a -4)) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c (sqrt.f64 (*.f64 a -4))) (sqrt.f64 (*.f64 a -4)) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 a -4) (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 c) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 a -4) (sqrt.f64 c)) (sqrt.f64 c) (*.f64 b b))))))

simplify88.0ms (0.4%)

Algorithm
egg-herbie
Rules
450×distribute-neg-frac_binary64
361×times-frac_binary64
338×unswap-sqr_binary64
308×fma-neg_binary64
294×neg-mul-1_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0771001
1227934
2742911
33756903
45043903
56902903
Stop Event
node limit
Counts
185 → 157
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)))))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
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))))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(*.f64 -4 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(*.f64 -4 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(*.f64 -4 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(*.f64 -4 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(*.f64 -4 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
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)
(fma.f64 -2 (*.f64 a (/.f64 c b)) 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 (*.f64 c c) (pow.f64 b 3)) (*.f64 a a)) (fma.f64 -2 (*.f64 (/.f64 c b) a) b))
(+.f64 b (*.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (*.f64 a a) (/.f64 (*.f64 c c) (pow.f64 b 3))))))
(-.f64 b (*.f64 2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(+.f64 b (*.f64 -2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(+.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 -2 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 a a)) (fma.f64 -2 (*.f64 (/.f64 c b) a) b)) (*.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))
(+.f64 (fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) b) (*.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (*.f64 a a) (/.f64 (*.f64 c c) (pow.f64 b 3))))))
(+.f64 (fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) b) (*.f64 -2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(+.f64 (fma.f64 -4 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 5)) (pow.f64 c 3)) b) (*.f64 -2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
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)
(fma.f64 -2 (*.f64 a (/.f64 c b)) 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 (*.f64 c c) (pow.f64 b 3)) (*.f64 a a)) (fma.f64 -2 (*.f64 (/.f64 c b) a) b))
(+.f64 b (*.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (*.f64 a a) (/.f64 (*.f64 c c) (pow.f64 b 3))))))
(-.f64 b (*.f64 2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(+.f64 b (*.f64 -2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(+.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 -2 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 a a)) (fma.f64 -2 (*.f64 (/.f64 c b) a) b)) (*.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))
(+.f64 (fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) b) (*.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (*.f64 a a) (/.f64 (*.f64 c c) (pow.f64 b 3))))))
(+.f64 (fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) b) (*.f64 -2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(+.f64 (fma.f64 -4 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 5)) (pow.f64 c 3)) b) (*.f64 -2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(*.f64 (sqrt.f64 -4) (sqrt.f64 (*.f64 c a)))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (*.f64 c a)))) (/.f64 (*.f64 b b) (sqrt.f64 -4))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (sqrt.f64 (/.f64 (/.f64 1 a) c)) (*.f64 (/.f64 (*.f64 b b) (sqrt.f64 -4)) 1/2)))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 a) c)) (/.f64 (*.f64 b b) (sqrt.f64 -4)))))
(fma.f64 (sqrt.f64 -4) (sqrt.f64 (*.f64 c a)) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 (*.f64 b b) 1/2) (sqrt.f64 -4))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (*.f64 c a)))) (/.f64 (*.f64 b b) (sqrt.f64 -4)))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (*.f64 -4 (sqrt.f64 -4)))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (sqrt.f64 (/.f64 (/.f64 1 a) c)) (*.f64 (/.f64 (*.f64 b b) (sqrt.f64 -4)) 1/2))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 a) c)) (/.f64 (*.f64 b b) (sqrt.f64 -4))) (*.f64 (/.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) (pow.f64 a 3))) (/.f64 (sqrt.f64 -4) (pow.f64 b 4))) 1/32)))
(fma.f64 (sqrt.f64 -4) (sqrt.f64 (*.f64 c a)) (*.f64 (*.f64 (/.f64 b (sqrt.f64 -4)) b) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (*.f64 c a)))) (*.f64 (/.f64 (*.f64 b b) -4) (*.f64 -1/8 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) (pow.f64 a 3))))))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3))) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (*.f64 c a)))) (/.f64 (*.f64 b b) (sqrt.f64 -4))))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (*.f64 -4 (sqrt.f64 -4)))) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.f64 (sqrt.f64 (/.f64 (/.f64 1 a) c)) (*.f64 (/.f64 (*.f64 b b) (sqrt.f64 -4)) 1/2)))))
(fma.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (*.f64 1/16 (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 a) c)) (/.f64 (*.f64 b b) (sqrt.f64 -4))) (*.f64 (/.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) (pow.f64 a 3))) (/.f64 (sqrt.f64 -4) (pow.f64 b 4))) 1/32))))
(fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -4) 5))) (fma.f64 (sqrt.f64 -4) (sqrt.f64 (*.f64 c a)) (*.f64 (*.f64 (/.f64 b (sqrt.f64 -4)) b) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (*.f64 c a)))) (*.f64 (/.f64 (*.f64 b b) -4) (*.f64 -1/8 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) (pow.f64 a 3)))))))))
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)
(fma.f64 -2 (*.f64 a (/.f64 c b)) 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 (*.f64 c c) (pow.f64 b 3)) (*.f64 a a)) (fma.f64 -2 (*.f64 (/.f64 c b) a) b))
(+.f64 b (*.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (*.f64 a a) (/.f64 (*.f64 c c) (pow.f64 b 3))))))
(-.f64 b (*.f64 2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(+.f64 b (*.f64 -2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(+.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 -2 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 a a)) (fma.f64 -2 (*.f64 (/.f64 c b) a) b)) (*.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3)))))
(+.f64 (fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) b) (*.f64 -2 (fma.f64 (/.f64 c b) a (*.f64 (*.f64 a a) (/.f64 (*.f64 c c) (pow.f64 b 3))))))
(+.f64 (fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) b) (*.f64 -2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(+.f64 (fma.f64 -4 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 5)) (pow.f64 c 3)) b) (*.f64 -2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))))
(*.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))
(-.f64 (/.f64 (*.f64 (*.f64 2 a) c) b) b)
(-.f64 (*.f64 (/.f64 2 b) (*.f64 c a)) b)
(-.f64 (/.f64 (*.f64 c (*.f64 a 2)) b) 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)))
(-.f64 (*.f64 2 (+.f64 (*.f64 (/.f64 c b) a) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 a a)))) b)
(-.f64 (*.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (*.f64 a a) (/.f64 (*.f64 c c) (pow.f64 b 3))))) b)
(-.f64 (*.f64 2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))) 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 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) 4 (/.f64 (*.f64 2 (*.f64 c (*.f64 c (*.f64 a a)))) (pow.f64 b 3))) b))
(fma.f64 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) 4 (-.f64 (*.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (*.f64 a a) (/.f64 (*.f64 c c) (pow.f64 b 3))))) b))
(-.f64 (*.f64 2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a)))))) (fma.f64 -4 (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) b))
(fma.f64 2 (*.f64 c (+.f64 (/.f64 a b) (/.f64 c (/.f64 (pow.f64 b 3) (*.f64 a a))))) (-.f64 (*.f64 (*.f64 (/.f64 (pow.f64 a 3) (pow.f64 b 5)) (pow.f64 c 3)) 4) b))
(pow.f64 b 2)
(*.f64 b b)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(*.f64 -4 (*.f64 c a))
(*.f64 (*.f64 c a) -4)
(*.f64 c (*.f64 a -4))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(*.f64 -4 (*.f64 c a))
(*.f64 (*.f64 c a) -4)
(*.f64 c (*.f64 a -4))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(pow.f64 b 2)
(*.f64 b b)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(*.f64 -4 (*.f64 c a))
(*.f64 (*.f64 c a) -4)
(*.f64 c (*.f64 a -4))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(*.f64 -4 (*.f64 c a))
(*.f64 (*.f64 c a) -4)
(*.f64 c (*.f64 a -4))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(*.f64 -4 (*.f64 c a))
(*.f64 (*.f64 c a) -4)
(*.f64 c (*.f64 a -4))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(pow.f64 b 2)
(*.f64 b b)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(pow.f64 b 2)
(*.f64 b b)
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))
(+.f64 (pow.f64 b 2) (*.f64 -4 (*.f64 c a)))
(+.f64 (*.f64 b b) (*.f64 (*.f64 c a) -4))
(fma.f64 b b (*.f64 c (*.f64 a -4)))
(fma.f64 c (*.f64 a -4) (*.f64 b b))

localize14.0ms (0.1%)

Compiler

Compiled 45 to 21 computations (53.3% saved)

localize49.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))))
4.0b
(/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a))
5.3b
(*.f64 (/.f64 (*.f64 c 2) b) a)
15.7b
(sqrt.f64 (*.f64 c (*.f64 a -4)))
Compiler

Compiled 127 to 80 computations (37% saved)

series59.0ms (0.3%)

Counts
1 → 14
Calls

9 calls:

TimeVariablePointExpression
45.0ms
c
@-inf
(/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))))
3.0ms
c
@inf
(/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))))
3.0ms
a
@inf
(/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))))
2.0ms
a
@-inf
(/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))))
2.0ms
c
@0
(/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))))

rewrite87.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
703×log-prod_binary64
360×fma-def_binary64
338×pow2_binary64
255×pow-unpow_binary64
237×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify117.0ms (0.6%)

Algorithm
egg-herbie
Rules
852×associate-/l/_binary64
541×times-frac_binary64
506×associate-+l+_binary64
391×associate-+r+_binary64
299×sqr-pow_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
068554
1203490
2705469
33788453
44505453
54784453
65364453
76620453
86911453
Stop Event
node limit
Counts
65 → 67
Calls
Call 1
Inputs
(*.f64 -2 (/.f64 c b))
(*.f64 -2 (*.f64 (sqrt.f64 (/.f64 c a)) (/.f64 1 (sqrt.f64 -4))))
(+.f64 (*.f64 2 (/.f64 b (*.f64 a (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -2 (*.f64 (sqrt.f64 (/.f64 c a)) (/.f64 1 (sqrt.f64 -4)))))
(+.f64 (*.f64 2 (/.f64 b (*.f64 a (pow.f64 (sqrt.f64 -4) 2)))) (+.f64 (*.f64 -2 (*.f64 (sqrt.f64 (/.f64 c a)) (/.f64 1 (sqrt.f64 -4)))) (*.f64 -2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (pow.f64 (sqrt.f64 -4) 3))))))
(+.f64 (*.f64 2 (/.f64 b (*.f64 a (pow.f64 (sqrt.f64 -4) 2)))) (+.f64 (*.f64 -2 (*.f64 (sqrt.f64 (/.f64 c a)) (/.f64 1 (sqrt.f64 -4)))) (+.f64 (*.f64 -2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 2 (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))))))))
(*.f64 -2 (/.f64 c b))
(+.f64 (*.f64 -2 (/.f64 c b)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (pow.f64 c 3) a)) (/.f64 (sqrt.f64 -4) (pow.f64 b 2)))))
(+.f64 (*.f64 -2 (/.f64 c b)) (+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (pow.f64 c 3) a)) (/.f64 (sqrt.f64 -4) (pow.f64 b 2))))))
(+.f64 (*.f64 -2 (/.f64 c b)) (+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (pow.f64 c 5) (pow.f64 a 3))) (/.f64 (pow.f64 (sqrt.f64 -4) 3) (pow.f64 b 4)))) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (pow.f64 c 3) a)) (/.f64 (sqrt.f64 -4) (pow.f64 b 2)))))))
(*.f64 -2 (/.f64 c b))
(+.f64 (*.f64 -2 (/.f64 c b)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (pow.f64 c 3) a)) (/.f64 (sqrt.f64 -4) (pow.f64 b 2)))))
(+.f64 (*.f64 -2 (/.f64 c b)) (+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (pow.f64 c 3) a)) (/.f64 (sqrt.f64 -4) (pow.f64 b 2))))))
(+.f64 (*.f64 -2 (/.f64 c b)) (+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (pow.f64 c 5) (pow.f64 a 3))) (/.f64 (pow.f64 (sqrt.f64 -4) 3) (pow.f64 b 4)))) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (pow.f64 c 3) a)) (/.f64 (sqrt.f64 -4) (pow.f64 b 2)))))))
(*.f64 -2 (/.f64 c b))
Outputs
(*.f64 -2 (/.f64 c b))
(/.f64 -2 (/.f64 b c))
(*.f64 -2 (*.f64 (sqrt.f64 (/.f64 c a)) (/.f64 1 (sqrt.f64 -4))))
(*.f64 (*.f64 -2 (sqrt.f64 (/.f64 c a))) (/.f64 1 (sqrt.f64 -4)))
(*.f64 -2 (/.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)))
(+.f64 (*.f64 2 (/.f64 b (*.f64 a (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 -2 (*.f64 (sqrt.f64 (/.f64 c a)) (/.f64 1 (sqrt.f64 -4)))))
(fma.f64 2 (/.f64 (/.f64 b a) (pow.f64 (sqrt.f64 -4) 2)) (*.f64 (*.f64 -2 (sqrt.f64 (/.f64 c a))) (/.f64 1 (sqrt.f64 -4))))
(fma.f64 -2 (/.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (*.f64 -1/2 (/.f64 b a)))
(fma.f64 -2 (/.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (/.f64 (*.f64 -1/2 b) a))
(fma.f64 -2 (/.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (*.f64 (/.f64 b a) -1/2))
(+.f64 (*.f64 2 (/.f64 b (*.f64 a (pow.f64 (sqrt.f64 -4) 2)))) (+.f64 (*.f64 -2 (*.f64 (sqrt.f64 (/.f64 c a)) (/.f64 1 (sqrt.f64 -4)))) (*.f64 -2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (pow.f64 (sqrt.f64 -4) 3))))))
(fma.f64 2 (/.f64 (/.f64 b a) (pow.f64 (sqrt.f64 -4) 2)) (*.f64 -2 (+.f64 (*.f64 (sqrt.f64 (/.f64 c a)) (/.f64 1 (sqrt.f64 -4))) (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) (pow.f64 a 3))) (/.f64 (*.f64 b b) (pow.f64 (sqrt.f64 -4) 3))))))
(fma.f64 -2 (+.f64 (/.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (*.f64 (/.f64 b (sqrt.f64 -4)) (/.f64 b -4)))) (*.f64 -1/2 (/.f64 b a)))
(fma.f64 -2 (/.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (fma.f64 -1/2 (/.f64 b a) (*.f64 1/2 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (sqrt.f64 -4) (*.f64 b b))))))
(fma.f64 -1/2 (/.f64 b a) (*.f64 (/.f64 -2 (sqrt.f64 -4)) (+.f64 (sqrt.f64 (/.f64 c a)) (/.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 -4 (*.f64 b b))))))
(fma.f64 -1/2 (/.f64 b a) (*.f64 (/.f64 -2 (sqrt.f64 -4)) (+.f64 (sqrt.f64 (/.f64 c a)) (/.f64 (sqrt.f64 (/.f64 (/.f64 1 c) (pow.f64 a 3))) (/.f64 -4 (*.f64 b b))))))
(+.f64 (*.f64 2 (/.f64 b (*.f64 a (pow.f64 (sqrt.f64 -4) 2)))) (+.f64 (*.f64 -2 (*.f64 (sqrt.f64 (/.f64 c a)) (/.f64 1 (sqrt.f64 -4)))) (+.f64 (*.f64 -2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 2 (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4))))))))
(fma.f64 2 (/.f64 (/.f64 b a) (pow.f64 (sqrt.f64 -4) 2)) (fma.f64 -2 (*.f64 (sqrt.f64 (/.f64 c a)) (/.f64 1 (sqrt.f64 -4))) (fma.f64 -2 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) (pow.f64 a 3))) (/.f64 (*.f64 b b) (pow.f64 (sqrt.f64 -4) 3))) (/.f64 (*.f64 2 (pow.f64 b 3)) (*.f64 (*.f64 c (*.f64 a a)) (pow.f64 (sqrt.f64 -4) 4))))))
(+.f64 (*.f64 -1/2 (/.f64 b a)) (fma.f64 -2 (+.f64 (/.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (*.f64 (/.f64 b (sqrt.f64 -4)) (/.f64 b -4)))) (*.f64 2 (/.f64 (pow.f64 b 3) (*.f64 (*.f64 a a) (*.f64 16 c))))))
(fma.f64 -2 (/.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (fma.f64 -1/2 (/.f64 b a) (fma.f64 (/.f64 1/8 (*.f64 a a)) (/.f64 (pow.f64 b 3) c) (*.f64 1/2 (/.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (sqrt.f64 -4) (*.f64 b b)))))))
(fma.f64 -1/2 (/.f64 b a) (fma.f64 (/.f64 1/8 (*.f64 a a)) (/.f64 (pow.f64 b 3) c) (*.f64 (/.f64 -2 (sqrt.f64 -4)) (+.f64 (sqrt.f64 (/.f64 c a)) (/.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 -4 (*.f64 b b)))))))
(fma.f64 -1/2 (/.f64 b a) (fma.f64 (/.f64 1/8 (*.f64 a a)) (/.f64 (pow.f64 b 3) c) (*.f64 (/.f64 -2 (sqrt.f64 -4)) (+.f64 (sqrt.f64 (/.f64 c a)) (/.f64 (sqrt.f64 (/.f64 (/.f64 1 c) (pow.f64 a 3))) (/.f64 -4 (*.f64 b b)))))))
(*.f64 -2 (/.f64 c b))
(/.f64 -2 (/.f64 b c))
(+.f64 (*.f64 -2 (/.f64 c b)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (pow.f64 c 3) a)) (/.f64 (sqrt.f64 -4) (pow.f64 b 2)))))
(fma.f64 -2 (/.f64 c b) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (/.f64 (sqrt.f64 -4) (*.f64 b b)))))
(fma.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (/.f64 (*.f64 (sqrt.f64 -4) 2) (*.f64 b b)) (*.f64 -2 (/.f64 c b)))
(fma.f64 (*.f64 (pow.f64 c 3/2) (sqrt.f64 a)) (/.f64 (*.f64 (sqrt.f64 -4) 2) (*.f64 b b)) (*.f64 -2 (/.f64 c b)))
(fma.f64 2 (/.f64 (*.f64 (sqrt.f64 -4) (*.f64 (pow.f64 c 3/2) (sqrt.f64 a))) (*.f64 b b)) (/.f64 -2 (/.f64 b c)))
(+.f64 (*.f64 -2 (/.f64 c b)) (+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (pow.f64 c 3) a)) (/.f64 (sqrt.f64 -4) (pow.f64 b 2))))))
(fma.f64 -2 (/.f64 c b) (fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (/.f64 (sqrt.f64 -4) (*.f64 b b))))))
(fma.f64 -2 (/.f64 c b) (fma.f64 2 (*.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (/.f64 (sqrt.f64 -4) (*.f64 b b))) (/.f64 -2 (/.f64 (pow.f64 b 3) (*.f64 (*.f64 a -4) (*.f64 c c))))))
(fma.f64 -2 (/.f64 c b) (fma.f64 2 (*.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (/.f64 (sqrt.f64 -4) (*.f64 b b))) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 8 a))))
(fma.f64 -2 (/.f64 c b) (fma.f64 2 (*.f64 (*.f64 (pow.f64 c 3/2) (sqrt.f64 a)) (/.f64 (sqrt.f64 -4) (*.f64 b b))) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 8 a))))
(fma.f64 -2 (/.f64 c b) (fma.f64 2 (/.f64 (*.f64 (sqrt.f64 -4) (*.f64 (pow.f64 c 3/2) (sqrt.f64 a))) (*.f64 b b)) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 8 a))))
(+.f64 (*.f64 -2 (/.f64 c b)) (+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (pow.f64 c 5) (pow.f64 a 3))) (/.f64 (pow.f64 (sqrt.f64 -4) 3) (pow.f64 b 4)))) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (pow.f64 c 3) a)) (/.f64 (sqrt.f64 -4) (pow.f64 b 2)))))))
(fma.f64 -2 (/.f64 c b) (fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 5))) (/.f64 (pow.f64 (sqrt.f64 -4) 3) (pow.f64 b 4))) (*.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (/.f64 (sqrt.f64 -4) (*.f64 b b)))))))
(fma.f64 -2 (/.f64 c b) (fma.f64 -2 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 a -4)) (*.f64 2 (fma.f64 (sqrt.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 5))) (/.f64 (*.f64 (sqrt.f64 -4) -4) (pow.f64 b 4)) (*.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (/.f64 (sqrt.f64 -4) (*.f64 b b)))))))
(fma.f64 -2 (/.f64 c b) (fma.f64 2 (*.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (/.f64 (sqrt.f64 -4) (*.f64 b b))) (fma.f64 (sqrt.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 5))) (/.f64 -8 (/.f64 (pow.f64 b 4) (sqrt.f64 -4))) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 8 a)))))
(fma.f64 2 (*.f64 (/.f64 (sqrt.f64 -4) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (*.f64 (/.f64 -4 (*.f64 b b)) (*.f64 (pow.f64 c 5/2) (pow.f64 a 3/2))))) (fma.f64 -2 (/.f64 c b) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 8 a))))
(fma.f64 2 (*.f64 (/.f64 (sqrt.f64 -4) (*.f64 b b)) (+.f64 (*.f64 (pow.f64 c 3/2) (sqrt.f64 a)) (*.f64 (/.f64 -4 (*.f64 b b)) (*.f64 (pow.f64 c 5/2) (pow.f64 a 3/2))))) (fma.f64 -2 (/.f64 c b) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 8 a))))
(fma.f64 2 (*.f64 (/.f64 (sqrt.f64 -4) (*.f64 b b)) (+.f64 (*.f64 (pow.f64 c 3/2) (sqrt.f64 a)) (*.f64 (*.f64 (pow.f64 c 5/2) (pow.f64 a 3/2)) (/.f64 -4 (*.f64 b b))))) (fma.f64 -2 (/.f64 c b) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 8 a))))
(*.f64 -2 (/.f64 c b))
(/.f64 -2 (/.f64 b c))
(+.f64 (*.f64 -2 (/.f64 c b)) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (pow.f64 c 3) a)) (/.f64 (sqrt.f64 -4) (pow.f64 b 2)))))
(fma.f64 -2 (/.f64 c b) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (/.f64 (sqrt.f64 -4) (*.f64 b b)))))
(fma.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (/.f64 (*.f64 (sqrt.f64 -4) 2) (*.f64 b b)) (*.f64 -2 (/.f64 c b)))
(fma.f64 (*.f64 (pow.f64 c 3/2) (sqrt.f64 a)) (/.f64 (*.f64 (sqrt.f64 -4) 2) (*.f64 b b)) (*.f64 -2 (/.f64 c b)))
(fma.f64 2 (/.f64 (*.f64 (sqrt.f64 -4) (*.f64 (pow.f64 c 3/2) (sqrt.f64 a))) (*.f64 b b)) (/.f64 -2 (/.f64 b c)))
(+.f64 (*.f64 -2 (/.f64 c b)) (+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (pow.f64 c 3) a)) (/.f64 (sqrt.f64 -4) (pow.f64 b 2))))))
(fma.f64 -2 (/.f64 c b) (fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (/.f64 (sqrt.f64 -4) (*.f64 b b))))))
(fma.f64 -2 (/.f64 c b) (fma.f64 2 (*.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (/.f64 (sqrt.f64 -4) (*.f64 b b))) (/.f64 -2 (/.f64 (pow.f64 b 3) (*.f64 (*.f64 a -4) (*.f64 c c))))))
(fma.f64 -2 (/.f64 c b) (fma.f64 2 (*.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (/.f64 (sqrt.f64 -4) (*.f64 b b))) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 8 a))))
(fma.f64 -2 (/.f64 c b) (fma.f64 2 (*.f64 (*.f64 (pow.f64 c 3/2) (sqrt.f64 a)) (/.f64 (sqrt.f64 -4) (*.f64 b b))) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 8 a))))
(fma.f64 -2 (/.f64 c b) (fma.f64 2 (/.f64 (*.f64 (sqrt.f64 -4) (*.f64 (pow.f64 c 3/2) (sqrt.f64 a))) (*.f64 b b)) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 8 a))))
(+.f64 (*.f64 -2 (/.f64 c b)) (+.f64 (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 a (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (+.f64 (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (pow.f64 c 5) (pow.f64 a 3))) (/.f64 (pow.f64 (sqrt.f64 -4) 3) (pow.f64 b 4)))) (*.f64 2 (*.f64 (sqrt.f64 (*.f64 (pow.f64 c 3) a)) (/.f64 (sqrt.f64 -4) (pow.f64 b 2)))))))
(fma.f64 -2 (/.f64 c b) (fma.f64 -2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 a (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 2 (+.f64 (*.f64 (sqrt.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 5))) (/.f64 (pow.f64 (sqrt.f64 -4) 3) (pow.f64 b 4))) (*.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (/.f64 (sqrt.f64 -4) (*.f64 b b)))))))
(fma.f64 -2 (/.f64 c b) (fma.f64 -2 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 a -4)) (*.f64 2 (fma.f64 (sqrt.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 5))) (/.f64 (*.f64 (sqrt.f64 -4) -4) (pow.f64 b 4)) (*.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (/.f64 (sqrt.f64 -4) (*.f64 b b)))))))
(fma.f64 -2 (/.f64 c b) (fma.f64 2 (*.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (/.f64 (sqrt.f64 -4) (*.f64 b b))) (fma.f64 (sqrt.f64 (*.f64 (pow.f64 a 3) (pow.f64 c 5))) (/.f64 -8 (/.f64 (pow.f64 b 4) (sqrt.f64 -4))) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 8 a)))))
(fma.f64 2 (*.f64 (/.f64 (sqrt.f64 -4) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 a (pow.f64 c 3))) (*.f64 (/.f64 -4 (*.f64 b b)) (*.f64 (pow.f64 c 5/2) (pow.f64 a 3/2))))) (fma.f64 -2 (/.f64 c b) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 8 a))))
(fma.f64 2 (*.f64 (/.f64 (sqrt.f64 -4) (*.f64 b b)) (+.f64 (*.f64 (pow.f64 c 3/2) (sqrt.f64 a)) (*.f64 (/.f64 -4 (*.f64 b b)) (*.f64 (pow.f64 c 5/2) (pow.f64 a 3/2))))) (fma.f64 -2 (/.f64 c b) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 8 a))))
(fma.f64 2 (*.f64 (/.f64 (sqrt.f64 -4) (*.f64 b b)) (+.f64 (*.f64 (pow.f64 c 3/2) (sqrt.f64 a)) (*.f64 (*.f64 (pow.f64 c 5/2) (pow.f64 a 3/2)) (/.f64 -4 (*.f64 b b))))) (fma.f64 -2 (/.f64 c b) (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 8 a))))
(*.f64 -2 (/.f64 c b))
(/.f64 -2 (/.f64 b c))

localize38.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a))
0.7b
(-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b)
1.5b
(fma.f64 b b (*.f64 c (*.f64 a -4)))
21.7b
(sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))
Compiler

Compiled 91 to 52 computations (42.9% saved)

series5.0ms (0%)

Counts
1 → 20
Calls

9 calls:

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

rewrite65.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
737×prod-diff_binary64
675×log-prod_binary64
315×fma-def_binary64
249×expm1-udef_binary64
249×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01322
128121
2364121
Stop Event
node limit
Counts
1 → 47
Calls
Call 1
Inputs
(*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (/.f64 1/2 a)) (*.f64 (neg.f64 b) (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1/2 a) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (*.f64 (/.f64 1/2 a) (neg.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 1/2 a)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))) (cbrt.f64 (pow.f64 (exp.f64 (/.f64 1/2 a)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 1/2 a)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 1/2 a)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 1/2 a)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (*.f64 a 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 a (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3)) (*.f64 (*.f64 a 2) (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (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 (*.f64 a 2) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) 1/2) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) 1/2)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3)) 1/2) (*.f64 (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 c (*.f64 a -4) (*.f64 b b))) a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) 1/2) (*.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3)) 1) (*.f64 (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 c (*.f64 a -4) (*.f64 b b))) (*.f64 a 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) 1) (*.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (*.f64 a 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3)) -1/2) (*.f64 (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 c (*.f64 a -4) (*.f64 b b))) (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) -1/2) (*.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (neg.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3))) (*.f64 a (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 c (*.f64 a -4) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3))) (*.f64 (neg.f64 a) (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 c (*.f64 a -4) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b))) (*.f64 a (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b))) (*.f64 (neg.f64 a) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) 1/2) 1) a)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) 1/2) (pow.f64 (cbrt.f64 a) 2)) (cbrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) 1/2) (sqrt.f64 a)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3)) (/.f64 1/2 a)) (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 c (*.f64 a -4) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (/.f64 1/2 a)) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) -1/2) (neg.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1/2 a) (-.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) (pow.f64 b 3))) (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 c (*.f64 a -4) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1/2 a) (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b))) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 1/2 a)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) 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 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (/.f64 1/2 a) (*.f64 (neg.f64 b) (/.f64 1/2 a)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1/2 a) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 (/.f64 1/2 a) (neg.f64 b)))))))

simplify67.0ms (0.3%)

Algorithm
egg-herbie
Rules
842×fma-neg_binary64
658×associate-*l*_binary64
655×associate-*r*_binary64
613×times-frac_binary64
413×fma-def_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0111716
1336686
21221620
37420620
Stop Event
node limit
Counts
67 → 75
Calls
Call 1
Inputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (+.f64 (*.f64 -1/2 (/.f64 b a)) (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 5)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))))))
(*.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 (pow.f64 a 3) (+.f64 (*.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -2 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
Outputs
(*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)))
(*.f64 (*.f64 1/2 (sqrt.f64 (/.f64 c a))) (sqrt.f64 -4))
(*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 (sqrt.f64 -4) 1/2))
(*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 1/2 (sqrt.f64 -4)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a)))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (*.f64 -1/2 (/.f64 b a)))
(fma.f64 -1/2 (/.f64 b a) (*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 (sqrt.f64 -4) 1/2)))
(fma.f64 (sqrt.f64 (/.f64 c a)) (*.f64 1/2 (sqrt.f64 -4)) (*.f64 (/.f64 -1/2 a) b))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (*.f64 -1/2 (/.f64 b a))))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) (pow.f64 a 3))) (/.f64 (*.f64 b b) (sqrt.f64 -4))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (*.f64 -1/2 (/.f64 b a))))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) (pow.f64 a 3))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (fma.f64 -1/2 (/.f64 b a) (*.f64 (sqrt.f64 (/.f64 c a)) (*.f64 (sqrt.f64 -4) 1/2))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (fma.f64 -1/2 (/.f64 b a) (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) (pow.f64 a 3))) (/.f64 (*.f64 (*.f64 b b) 1/4) (sqrt.f64 -4)))))
(+.f64 (*.f64 1/4 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (sqrt.f64 -4)))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4))) (+.f64 (*.f64 -1/2 (/.f64 b a)) (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 5)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))))))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) (pow.f64 a 3))) (/.f64 (*.f64 b b) (sqrt.f64 -4))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (fma.f64 -1/2 (/.f64 b a) (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 5)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -4) 3)))))))
(fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) (pow.f64 a 3))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (fma.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) (pow.f64 a 5))) (/.f64 (pow.f64 b 4) (*.f64 (sqrt.f64 -4) -4))) (*.f64 -1/2 (/.f64 b a)))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -4)) (fma.f64 1/4 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) (pow.f64 a 3))) (/.f64 b (/.f64 (sqrt.f64 -4) b))) (fma.f64 -1/2 (/.f64 b a) (*.f64 (/.f64 (sqrt.f64 (/.f64 (/.f64 1 (pow.f64 c 3)) (pow.f64 a 5))) (/.f64 (sqrt.f64 -4) (pow.f64 b 4))) 1/64))))
(*.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 a (*.f64 c c)) (pow.f64 b 3)) (neg.f64 (/.f64 c b)))
(-.f64 (/.f64 (neg.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 a (*.f64 c c)) (pow.f64 b 3)) (fma.f64 -1 (/.f64 c b) (*.f64 -2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))))))
(-.f64 (-.f64 (/.f64 (*.f64 (*.f64 (*.f64 -2 a) a) (pow.f64 c 3)) (pow.f64 b 5)) (/.f64 c b)) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a))
(-.f64 (*.f64 -2 (/.f64 a (/.f64 (/.f64 (pow.f64 b 5) (pow.f64 c 3)) a))) (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 a (*.f64 c c)) (pow.f64 b 3)) (fma.f64 -1/4 (/.f64 (+.f64 (pow.f64 (*.f64 -2 (*.f64 (*.f64 c c) (*.f64 a a))) 2) (*.f64 (*.f64 16 (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))) (-.f64 (/.f64 (*.f64 (*.f64 (*.f64 -2 a) a) (pow.f64 c 3)) (pow.f64 b 5)) (/.f64 c b))) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a))
(fma.f64 (/.f64 -1/4 a) (/.f64 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 20) (pow.f64 b 7)) (-.f64 (*.f64 -2 (/.f64 a (/.f64 (/.f64 (pow.f64 b 5) (pow.f64 c 3)) a))) (fma.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) 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 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)) (+.f64 (/.f64 c b) (*.f64 -1 (/.f64 b a))))
(+.f64 (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 b 3)) (+.f64 (/.f64 c b) (neg.f64 (/.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 (*.f64 a (*.f64 c c)) (pow.f64 b 3)) (/.f64 c b)) (fma.f64 2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))) (neg.f64 (/.f64 b a))))
(+.f64 (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a) (+.f64 (-.f64 (/.f64 c b) (/.f64 b a)) (/.f64 (*.f64 (pow.f64 c 3) 2) (/.f64 (pow.f64 b 5) (*.f64 a a)))))
(-.f64 (fma.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a (fma.f64 2 (/.f64 a (/.f64 (/.f64 (pow.f64 b 5) (pow.f64 c 3)) a)) (/.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 a (*.f64 c c)) (pow.f64 b 3)) (neg.f64 (/.f64 c b)))
(-.f64 (/.f64 (neg.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 a (*.f64 c c)) (pow.f64 b 3)) (fma.f64 -1 (/.f64 c b) (*.f64 -2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))))))
(-.f64 (-.f64 (/.f64 (*.f64 (*.f64 (*.f64 -2 a) a) (pow.f64 c 3)) (pow.f64 b 5)) (/.f64 c b)) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a))
(-.f64 (*.f64 -2 (/.f64 a (/.f64 (/.f64 (pow.f64 b 5) (pow.f64 c 3)) a))) (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 a (*.f64 c c)) (pow.f64 b 3)) (fma.f64 -1/4 (*.f64 (/.f64 (pow.f64 c 4) a) (/.f64 (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 -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) a) (/.f64 (fma.f64 16 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) (*.f64 4 (/.f64 (pow.f64 a 4) (pow.f64 b 6)))) b)) (-.f64 (/.f64 (*.f64 (*.f64 (*.f64 -2 a) a) (pow.f64 c 3)) (pow.f64 b 5)) (/.f64 c b))) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a))
(fma.f64 (/.f64 (pow.f64 c 4) a) (*.f64 -1/4 (/.f64 (*.f64 (/.f64 (pow.f64 a 4) (pow.f64 b 6)) 20) b)) (-.f64 (*.f64 -2 (/.f64 a (/.f64 (/.f64 (pow.f64 b 5) (pow.f64 c 3)) a))) (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 (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 a (*.f64 c c)) (pow.f64 b 3)) (neg.f64 (/.f64 c b)))
(-.f64 (/.f64 (neg.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 a (*.f64 c c)) (pow.f64 b 3)) (fma.f64 -1 (/.f64 c b) (*.f64 -2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))))))
(-.f64 (-.f64 (/.f64 (*.f64 (*.f64 (*.f64 -2 a) a) (pow.f64 c 3)) (pow.f64 b 5)) (/.f64 c b)) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a))
(-.f64 (*.f64 -2 (/.f64 a (/.f64 (/.f64 (pow.f64 b 5) (pow.f64 c 3)) a))) (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 (pow.f64 a 3) (+.f64 (*.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -2 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (*.f64 -2 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(fma.f64 -1 (/.f64 (*.f64 a (*.f64 c c)) (pow.f64 b 3)) (fma.f64 -1 (/.f64 c b) (fma.f64 -1/4 (/.f64 (pow.f64 a 3) (/.f64 b (fma.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) (pow.f64 (*.f64 -2 (/.f64 (*.f64 c c) (pow.f64 b 3))) 2)))) (*.f64 -2 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a)))))))
(-.f64 (-.f64 (fma.f64 -1/4 (*.f64 (/.f64 (pow.f64 a 3) b) (fma.f64 16 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) (*.f64 4 (/.f64 (pow.f64 c 4) (pow.f64 b 6))))) (/.f64 (*.f64 (*.f64 (*.f64 -2 a) a) (pow.f64 c 3)) (pow.f64 b 5))) (/.f64 c b)) (*.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a))
(-.f64 (fma.f64 -1/4 (/.f64 (pow.f64 a 3) (/.f64 b (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 6)) 20))) (*.f64 -2 (/.f64 a (/.f64 (/.f64 (pow.f64 b 5) (pow.f64 c 3)) a)))) (fma.f64 (*.f64 (/.f64 c (pow.f64 b 3)) c) a (/.f64 c b)))

localize89.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
5.8b
(/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))
15.7b
(sqrt.f64 (*.f64 c (*.f64 a -4)))
17.5b
(-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b))
21.7b
(sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))
Compiler

Compiled 235 to 127 computations (46% saved)

series32.0ms (0.2%)

Counts
2 → 48
Calls

18 calls:

TimeVariablePointExpression
6.0ms
c
@inf
(/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))
5.0ms
c
@-inf
(/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))
4.0ms
a
@inf
(/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))
4.0ms
a
@-inf
(/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))
3.0ms
c
@0
(/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))

rewrite102.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
796×log-prod_binary64
565×fma-def_binary64
300×fma-neg_binary64
273×expm1-udef_binary64
273×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01451
131632
2463132
Stop Event
node limit
Counts
2 → 208
Calls
Call 1
Inputs
(-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b))
(/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b (neg.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 (*.f64 b (neg.f64 b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) (fma.f64 (neg.f64 b) b (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) (fma.f64 (*.f64 b (neg.f64 b)) 1 (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 b b))) (cbrt.f64 (pow.f64 b 4)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 c (*.f64 a -4)) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 b (neg.f64 b)) (fma.f64 a (*.f64 -4 c) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)))) (cbrt.f64 (exp.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)))))) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (pow.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) 2) (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (sqrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 3) (pow.f64 b 6)) (/.f64 1 (fma.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (fma.f64 b b (*.f64 b b))) (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 2) (pow.f64 b 4)) (/.f64 1 (fma.f64 c (*.f64 a -4) (fma.f64 b b (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (fma.f64 b b (*.f64 b b))) (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 2)) (-.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 3) (pow.f64 b 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 c (*.f64 a -4) (fma.f64 b b (*.f64 b b))) (-.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 2) (pow.f64 b 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 3) (pow.f64 b 6)) (fma.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (fma.f64 b b (*.f64 b b))) (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 2) (pow.f64 b 4)) (fma.f64 c (*.f64 a -4) (fma.f64 b b (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 3) (pow.f64 b 6))) (neg.f64 (fma.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (fma.f64 b b (*.f64 b b))) (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 2) (pow.f64 b 4))) (neg.f64 (fma.f64 c (*.f64 a -4) (fma.f64 b b (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 3) (pow.f64 (*.f64 b (neg.f64 b)) 3)) (+.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 2) (-.f64 (*.f64 (*.f64 b (neg.f64 b)) (*.f64 b (neg.f64 b))) (*.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b (neg.f64 b))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 2) (*.f64 (*.f64 b (neg.f64 b)) (*.f64 b (neg.f64 b)))) (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b (neg.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)))) (pow.f64 (exp.f64 b) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 b) b) (pow.f64 (pow.f64 (exp.f64 a) -4) c)) (pow.f64 (exp.f64 b) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) (+.f64 1 (expm1.f64 (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)))) (+.f64 1 (expm1.f64 (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (*.f64 (pow.f64 (exp.f64 b) b) (pow.f64 (pow.f64 (exp.f64 a) -4) c)) (+.f64 1 (expm1.f64 (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)))) (exp.f64 (*.f64 b (neg.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 b) b) (pow.f64 (pow.f64 (exp.f64 a) -4) c)) (exp.f64 (*.f64 b (neg.f64 b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) (/.f64 1 (pow.f64 (exp.f64 b) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)))) (/.f64 1 (pow.f64 (exp.f64 b) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (*.f64 (pow.f64 (exp.f64 b) b) (pow.f64 (pow.f64 (exp.f64 a) -4) c)) (/.f64 1 (pow.f64 (exp.f64 b) b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 b (neg.f64 b))) (exp.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 b) b)) (exp.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 b (neg.f64 b))) (+.f64 1 (expm1.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 b) b)) (+.f64 1 (expm1.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 b (neg.f64 b))) (*.f64 (pow.f64 (exp.f64 b) b) (pow.f64 (pow.f64 (exp.f64 a) -4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 b) b)) (*.f64 (pow.f64 (exp.f64 b) b) (pow.f64 (pow.f64 (exp.f64 a) -4) c))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 c (*.f64 a -4) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 a (*.f64 -4 c) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -4 (*.f64 c a) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 a -4) c (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b (neg.f64 b) (fma.f64 a (*.f64 -4 c) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 1 (*.f64 b (neg.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 1 (*.f64 (*.f64 b (neg.f64 b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) 1 (fma.f64 (neg.f64 b) b (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) 1 (fma.f64 (*.f64 b (neg.f64 b)) 1 (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 b b))) (cbrt.f64 (pow.f64 b 4)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c (*.f64 a -4)) 1 (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) (sqrt.f64 (*.f64 c (*.f64 a -4))) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 b (neg.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 (*.f64 b (neg.f64 b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (fma.f64 (neg.f64 b) b (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (fma.f64 (*.f64 b (neg.f64 b)) 1 (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 b b))) (cbrt.f64 (pow.f64 b 4)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b (neg.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 (*.f64 b (neg.f64 b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) (fma.f64 (neg.f64 b) b (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) (fma.f64 (*.f64 b (neg.f64 b)) 1 (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 b b))) (cbrt.f64 (pow.f64 b 4)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 c (*.f64 a -4)) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 b (neg.f64 b)) (fma.f64 a (*.f64 -4 c) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) (pow.f64 (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) 2) (*.f64 b (neg.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) (pow.f64 (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) 2) (*.f64 (*.f64 b (neg.f64 b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) (*.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (*.f64 b (neg.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) (*.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (*.f64 (*.f64 b (neg.f64 b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) 2) (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) (*.f64 b (neg.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) 2) (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) (*.f64 (*.f64 b (neg.f64 b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (*.f64 a a) 16)) (*.f64 (cbrt.f64 (*.f64 a -4)) c) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (cbrt.f64 c) (*.f64 a -4)) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (pow.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) 2) (fma.f64 (neg.f64 b) b (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (pow.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) 2) (fma.f64 (*.f64 b (neg.f64 b)) 1 (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (pow.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 b b))) (cbrt.f64 (pow.f64 b 4)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) 2) (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (fma.f64 (neg.f64 b) b (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) 2) (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (fma.f64 (*.f64 b (neg.f64 b)) 1 (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) 2) (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 b b))) (cbrt.f64 (pow.f64 b 4)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 c (*.f64 a -4))) (pow.f64 (cbrt.f64 (*.f64 c (*.f64 a -4))) 2) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 c (*.f64 a -4))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 c (*.f64 a -4)))) (sqrt.f64 (*.f64 c (*.f64 a -4)))) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 c (*.f64 a -4))) 2) (cbrt.f64 (*.f64 c (*.f64 a -4))) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 b 4)) (neg.f64 (cbrt.f64 (*.f64 b b))) (fma.f64 a (*.f64 -4 c) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 1/4) (*.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 1/4) (sqrt.f64 (*.f64 c (*.f64 a -4)))) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 a -4)) (*.f64 (sqrt.f64 (*.f64 a -4)) c) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (*.f64 (sqrt.f64 c) (*.f64 a -4)) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 c) (*.f64 (sqrt.f64 (*.f64 a -4)) (sqrt.f64 (*.f64 c (*.f64 a -4)))) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (*.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (*.f64 b (neg.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (*.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (*.f64 (*.f64 b (neg.f64 b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (sqrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (fma.f64 (neg.f64 b) b (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (sqrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (fma.f64 (*.f64 b (neg.f64 b)) 1 (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (sqrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 b b))) (cbrt.f64 (pow.f64 b 4)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 3) (pow.f64 b 6)) (/.f64 1 (fma.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (fma.f64 b b (*.f64 b b))) (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 2))) (fma.f64 (neg.f64 b) b (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 3) (pow.f64 b 6)) (/.f64 1 (fma.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (fma.f64 b b (*.f64 b b))) (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 2))) (fma.f64 (*.f64 b (neg.f64 b)) 1 (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 3) (pow.f64 b 6)) (/.f64 1 (fma.f64 (*.f64 b b) (fma.f64 c (*.f64 a -4) (fma.f64 b b (*.f64 b b))) (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 b b))) (cbrt.f64 (pow.f64 b 4)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 b) b (fma.f64 a (*.f64 -4 c) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 2) (pow.f64 b 4)) (/.f64 1 (fma.f64 c (*.f64 a -4) (fma.f64 b b (*.f64 b b)))) (fma.f64 (neg.f64 b) b (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 2) (pow.f64 b 4)) (/.f64 1 (fma.f64 c (*.f64 a -4) (fma.f64 b b (*.f64 b b)))) (fma.f64 (*.f64 b (neg.f64 b)) 1 (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 2) (pow.f64 b 4)) (/.f64 1 (fma.f64 c (*.f64 a -4) (fma.f64 b b (*.f64 b b)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 b b))) (cbrt.f64 (pow.f64 b 4)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c a) -4 (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (*.f64 b (neg.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (*.f64 (*.f64 b (neg.f64 b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) (pow.f64 (*.f64 c (*.f64 a -4)) 1/4)) (pow.f64 (*.f64 c (*.f64 a -4)) 1/4) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 b (neg.f64 b))) (cbrt.f64 (*.f64 b (neg.f64 b)))) (cbrt.f64 (*.f64 b (neg.f64 b))) (fma.f64 a (*.f64 -4 c) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 b (neg.f64 b))) (sqrt.f64 (*.f64 b (neg.f64 b))) (fma.f64 a (*.f64 -4 c) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 b b) (fma.f64 a (*.f64 -4 c) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 b 4))) (cbrt.f64 (*.f64 b b)) (fma.f64 a (*.f64 -4 c) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 b) 1) b (fma.f64 a (*.f64 -4 c) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (*.f64 b (neg.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (*.f64 (*.f64 b (neg.f64 b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 b) (cbrt.f64 (*.f64 b b))) (cbrt.f64 b) (fma.f64 a (*.f64 -4 c) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 b) (sqrt.f64 b)) (sqrt.f64 b) (fma.f64 a (*.f64 -4 c) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c -4) a (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c (cbrt.f64 (*.f64 (*.f64 a a) 16))) (cbrt.f64 (*.f64 a -4)) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 c (sqrt.f64 (*.f64 a -4))) (sqrt.f64 (*.f64 a -4)) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 a -4) (pow.f64 (cbrt.f64 c) 2)) (cbrt.f64 c) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 a -4) (sqrt.f64 c)) (sqrt.f64 c) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) (cbrt.f64 (*.f64 c (*.f64 a -4)))) (cbrt.f64 (sqrt.f64 (*.f64 c (*.f64 a -4)))) (-.f64 (*.f64 b b) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) (sqrt.f64 c)) (sqrt.f64 (*.f64 a -4)) (-.f64 (*.f64 b b) (*.f64 b b)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (neg.f64 (/.f64 (*.f64 b b) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))) (cbrt.f64 (exp.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (log.f64 (cbrt.f64 (exp.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (log.f64 (sqrt.f64 (exp.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (/.f64 (*.f64 b b) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) (/.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (pow.f64 (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2) (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) 2) (*.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (/.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (sqrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (*.f64 (sqrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (/.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (/.f64 1 (neg.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) 2) 1) (/.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) 1) (/.f64 (sqrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 2)) (/.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) 2) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 2)) (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 2)) (/.f64 (sqrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))) (/.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) 2) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))) (/.f64 (cbrt.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) (-.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 3/2) (pow.f64 b 3))) (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 a (*.f64 -4 c) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) (neg.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (exp.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 b) (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 b)) (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 b) (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 b)) (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (exp.f64 b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (+.f64 1 (expm1.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (+.f64 1 (expm1.f64 b))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b)) 3) (pow.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 b 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (/.f64 1 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (neg.f64 (/.f64 (*.f64 b b) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) 1 b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (neg.f64 (/.f64 (*.f64 b b) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 b) (cbrt.f64 (*.f64 b b)) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 b b)) (cbrt.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (sqrt.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 b) (sqrt.f64 b) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (/.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))) (cbrt.f64 (/.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))) (cbrt.f64 (/.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))) (neg.f64 (/.f64 (*.f64 b b) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 b 4))) (sqrt.f64 (cbrt.f64 (*.f64 b b))) (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) 2)) (sqrt.f64 (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)))) b)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))) (sqrt.f64 (/.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))) (neg.f64 (/.f64 (*.f64 b b) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 2)) (/.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))) (neg.f64 (/.f64 (*.f64 b b) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))) (/.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))) (neg.f64 (/.f64 (*.f64 b b) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) 2) 1) (/.f64 (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (neg.f64 (/.f64 (*.f64 b b) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) 1) (/.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) (neg.f64 (/.f64 (*.f64 b b) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) 2) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 2)) (/.f64 (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))) (neg.f64 (/.f64 (*.f64 b b) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (pow.f64 (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 2)) (/.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (cbrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))) (neg.f64 (/.f64 (*.f64 b b) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) 2) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))) (/.f64 (cbrt.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b))) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))) (neg.f64 (/.f64 (*.f64 b b) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))) (/.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))) (neg.f64 (/.f64 (*.f64 b b) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (-.f64 (pow.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) 3/2) (pow.f64 b 3))) (fma.f64 b (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (fma.f64 a (*.f64 -4 c) (*.f64 b b))) (neg.f64 (/.f64 (*.f64 b b) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (-.f64 (fma.f64 a (*.f64 -4 c) (*.f64 b b)) (*.f64 b b))) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) (neg.f64 (/.f64 (*.f64 b b) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b))))))))

simplify77.0ms (0.4%)

Algorithm
egg-herbie
Rules
635×fma-neg_binary64
627×times-frac_binary64
484×fma-def_binary64
449×associate-/l*_binary64
386×unswap-sqr_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0121976
1375814
21571759
36437742
Stop Event
node limit
Counts
256 → 233
Calls
Call 1
Inputs
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 (sqrt.f64 (*.f64 c a)) (/.f64 1 (sqrt.f64 -4))))
(+.f64 (*.f64 -4 (*.f64 (sqrt.f64 (*.f64 c a)) (/.f64 1 (sqrt.f64 -4)))) (*.f64 -4 (/.f64 b (pow.f64 (sqrt.f64 -4) 2))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))) (pow.f64 b 2))) (+.f64 (*.f64 -4 (*.f64 (sqrt.f64 (*.f64 c a)) (/.f64 1 (sqrt.f64 -4)))) (*.f64 -4 (/.f64 b (pow.f64 (sqrt.f64 -4) 2)))))
(+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 2 (/.f64 1 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 4))))) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))) (sqrt.f64 -4))))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))) (pow.f64 b 2))) (+.f64 (*.f64 -4 (*.f64 (sqrt.f64 (*.f64 c a)) (/.f64 1 (sqrt.f64 -4)))) (*.f64 -4 (/.f64 b (pow.f64 (sqrt.f64 -4) 2))))))
(*.f64 -8 (/.f64 b (pow.f64 (sqrt.f64 -4) 2)))
(+.f64 (*.f64 -8 (/.f64 b (pow.f64 (sqrt.f64 -4) 2))) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -8 (/.f64 b (pow.f64 (sqrt.f64 -4) 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 1/2 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))))) (pow.f64 b 3))) (*.f64 -2 (/.f64 (*.f64 c a) b))))
(+.f64 (*.f64 -8 (/.f64 b (pow.f64 (sqrt.f64 -4) 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 1/2 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))))) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4)))) (+.f64 (*.f64 1/4 (*.f64 c (*.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 1/2 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))))) (*.f64 a (pow.f64 (sqrt.f64 -4) 2))))) (*.f64 8 (/.f64 (+.f64 (*.f64 1/16 (*.f64 (pow.f64 c 4) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 8)))) (pow.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4)))) 2)) (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 4))))))) (pow.f64 b 5))) (*.f64 -2 (/.f64 (*.f64 c a) b)))))
(*.f64 2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 5)))))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 4) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 7))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (+.f64 (*.f64 -1/32 (/.f64 (*.f64 (pow.f64 c 4) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 7))) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 5)))))))
Outputs
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 c a))
(*.f64 -4 (*.f64 (sqrt.f64 (*.f64 c a)) (/.f64 1 (sqrt.f64 -4))))
(*.f64 -4 (/.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)))
(*.f64 (sqrt.f64 (*.f64 c a)) (/.f64 -4 (sqrt.f64 -4)))
(+.f64 (*.f64 -4 (*.f64 (sqrt.f64 (*.f64 c a)) (/.f64 1 (sqrt.f64 -4)))) (*.f64 -4 (/.f64 b (pow.f64 (sqrt.f64 -4) 2))))
(*.f64 -4 (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (/.f64 1 (sqrt.f64 -4))) (/.f64 b (pow.f64 (sqrt.f64 -4) 2))))
(*.f64 -4 (+.f64 (/.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (/.f64 b -4)))
(fma.f64 (sqrt.f64 (*.f64 c a)) (/.f64 -4 (sqrt.f64 -4)) (*.f64 1 b))
(fma.f64 (sqrt.f64 (*.f64 c a)) (/.f64 -4 (sqrt.f64 -4)) b)
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))) (pow.f64 b 2))) (+.f64 (*.f64 -4 (*.f64 (sqrt.f64 (*.f64 c a)) (/.f64 1 (sqrt.f64 -4)))) (*.f64 -4 (/.f64 b (pow.f64 (sqrt.f64 -4) 2)))))
(fma.f64 -1 (*.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))) 2) (*.f64 b b)) (*.f64 -4 (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (/.f64 1 (sqrt.f64 -4))) (/.f64 b (pow.f64 (sqrt.f64 -4) 2)))))
(-.f64 (*.f64 -4 (+.f64 (/.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (/.f64 b -4))) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 -1/4 (sqrt.f64 -4)) 2)) (*.f64 b b)))
(fma.f64 -4 (/.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (fma.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) a)) (/.f64 1/2 (sqrt.f64 -4))) (*.f64 b b) (*.f64 1 b)))
(fma.f64 -4 (/.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (fma.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) a)) (/.f64 1/2 (sqrt.f64 -4))) (*.f64 b b) b))
(+.f64 (*.f64 (pow.f64 b 3) (-.f64 (*.f64 2 (/.f64 1 (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 4))))) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))) (sqrt.f64 -4))))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 4 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3)))) (*.f64 -2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))))) (pow.f64 b 2))) (+.f64 (*.f64 -4 (*.f64 (sqrt.f64 (*.f64 c a)) (/.f64 1 (sqrt.f64 -4)))) (*.f64 -4 (/.f64 b (pow.f64 (sqrt.f64 -4) 2))))))
(fma.f64 (pow.f64 b 3) (-.f64 (/.f64 2 (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 4))) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))) 2) (sqrt.f64 -4)))) (fma.f64 -1 (*.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 1 (pow.f64 (sqrt.f64 -4) 3))) 2) (*.f64 b b)) (*.f64 -4 (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (/.f64 1 (sqrt.f64 -4))) (/.f64 b (pow.f64 (sqrt.f64 -4) 2))))))
(fma.f64 (pow.f64 b 3) (-.f64 (/.f64 2 (*.f64 c (*.f64 a 16))) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 -1/4 (sqrt.f64 -4)) 2)) (sqrt.f64 -4)))) (-.f64 (*.f64 -4 (+.f64 (/.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (/.f64 b -4))) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 -1/4 (sqrt.f64 -4)) 2)) (*.f64 b b))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) a)) (/.f64 1/2 (sqrt.f64 -4))) (*.f64 b b) (fma.f64 (pow.f64 b 3) (fma.f64 (sqrt.f64 (/.f64 (/.f64 1 c) a)) (neg.f64 (/.f64 (*.f64 2 (sqrt.f64 (/.f64 (/.f64 1 c) a))) 16)) (/.f64 1/8 (*.f64 c a))) (fma.f64 (sqrt.f64 (*.f64 c a)) (/.f64 -4 (sqrt.f64 -4)) (*.f64 1 b))))
(+.f64 (fma.f64 (sqrt.f64 (*.f64 c a)) (/.f64 -4 (sqrt.f64 -4)) b) (*.f64 (*.f64 b b) (fma.f64 b (+.f64 (/.f64 1/8 (*.f64 c a)) (/.f64 (*.f64 (/.f64 (/.f64 (/.f64 1 c) a) (*.f64 -4 (sqrt.f64 -4))) -2) (sqrt.f64 -4))) (*.f64 (sqrt.f64 (/.f64 (/.f64 1 c) a)) (/.f64 1/2 (sqrt.f64 -4))))))
(*.f64 -8 (/.f64 b (pow.f64 (sqrt.f64 -4) 2)))
(*.f64 (/.f64 b (pow.f64 (sqrt.f64 -4) 2)) -8)
(*.f64 (/.f64 b -4) -8)
(*.f64 2 b)
(+.f64 (*.f64 -8 (/.f64 b (pow.f64 (sqrt.f64 -4) 2))) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(fma.f64 -8 (/.f64 b (pow.f64 (sqrt.f64 -4) 2)) (*.f64 -2 (/.f64 (*.f64 c a) b)))
(fma.f64 (/.f64 b -4) -8 (*.f64 -2 (*.f64 (/.f64 c b) a)))
(fma.f64 -2 (*.f64 (/.f64 a b) c) (*.f64 2 b))
(+.f64 (*.f64 -8 (/.f64 b (pow.f64 (sqrt.f64 -4) 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 1/2 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))))) (pow.f64 b 3))) (*.f64 -2 (/.f64 (*.f64 c a) b))))
(fma.f64 -8 (/.f64 b (pow.f64 (sqrt.f64 -4) 2)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 (*.f64 c c) (*.f64 (pow.f64 (sqrt.f64 -4) 2) (*.f64 a a))) -1/2) (pow.f64 b 3)) (*.f64 -2 (/.f64 (*.f64 c a) b))))
(fma.f64 (/.f64 b -4) -8 (-.f64 (*.f64 -2 (*.f64 (/.f64 c b) a)) (/.f64 (*.f64 (*.f64 (*.f64 c a) (*.f64 c a)) 2) (pow.f64 b 3))))
(+.f64 (fma.f64 -2 (*.f64 (/.f64 a b) c) (*.f64 2 b)) (/.f64 (*.f64 -2 (*.f64 a (*.f64 a (*.f64 c c)))) (pow.f64 b 3)))
(fma.f64 -2 (*.f64 (/.f64 a b) c) (fma.f64 2 b (/.f64 (*.f64 -2 (*.f64 a (*.f64 a (*.f64 c c)))) (pow.f64 b 3))))
(+.f64 (*.f64 -8 (/.f64 b (pow.f64 (sqrt.f64 -4) 2))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 1/2 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))))) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4)))) (+.f64 (*.f64 1/4 (*.f64 c (*.f64 (+.f64 (*.f64 -1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 1/2 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))))) (*.f64 a (pow.f64 (sqrt.f64 -4) 2))))) (*.f64 8 (/.f64 (+.f64 (*.f64 1/16 (*.f64 (pow.f64 c 4) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 8)))) (pow.f64 (*.f64 -1/8 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 4)))) 2)) (*.f64 c (*.f64 a (pow.f64 (sqrt.f64 -4) 4))))))) (pow.f64 b 5))) (*.f64 -2 (/.f64 (*.f64 c a) b)))))
(fma.f64 -8 (/.f64 b (pow.f64 (sqrt.f64 -4) 2)) (fma.f64 -1 (/.f64 (*.f64 (*.f64 (*.f64 c c) (*.f64 (pow.f64 (sqrt.f64 -4) 2) (*.f64 a a))) -1/2) (pow.f64 b 3)) (fma.f64 -1 (/.f64 (fma.f64 -1/4 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 (sqrt.f64 -4) 4) (pow.f64 a 3))) (fma.f64 1/4 (*.f64 c (*.f64 (*.f64 (*.f64 (*.f64 c c) (*.f64 (pow.f64 (sqrt.f64 -4) 2) (*.f64 a a))) -1/2) (*.f64 a (pow.f64 (sqrt.f64 -4) 2)))) (*.f64 8 (/.f64 (fma.f64 1/16 (*.f64 (pow.f64 c 4) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 8))) (pow.f64 (*.f64 (*.f64 -1/8 (*.f64 c c)) (*.f64 (pow.f64 (sqrt.f64 -4) 4) (*.f64 a a))) 2)) (*.f64 (*.f64 c a) (pow.f64 (sqrt.f64 -4) 4)))))) (pow.f64 b 5)) (*.f64 -2 (/.f64 (*.f64 c a) b)))))
(fma.f64 (/.f64 b -4) -8 (-.f64 (-.f64 (*.f64 -2 (*.f64 (/.f64 c b) a)) (/.f64 (+.f64 (*.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) -4) (fma.f64 1/4 (*.f64 (*.f64 (*.f64 (*.f64 c a) (*.f64 c a)) 2) (*.f64 -4 (*.f64 c a))) (*.f64 (/.f64 8 (*.f64 c a)) (/.f64 (+.f64 (*.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 4)) 16) (pow.f64 (*.f64 (*.f64 (*.f64 c a) (*.f64 c a)) -2) 2)) 16)))) (pow.f64 b 5))) (/.f64 (*.f64 (*.f64 (*.f64 c a) (*.f64 c a)) 2) (pow.f64 b 3))))
(+.f64 (fma.f64 -2 (*.f64 (/.f64 a b) c) (*.f64 2 b)) (-.f64 (/.f64 (*.f64 -2 (*.f64 a (*.f64 a (*.f64 c c)))) (pow.f64 b 3)) (/.f64 (fma.f64 (/.f64 1/2 a) (/.f64 (*.f64 (*.f64 (pow.f64 a 4) 256) (+.f64 (*.f64 1/16 (pow.f64 c 4)) (*.f64 (pow.f64 c 4) 1/64))) c) (*.f64 -4 (+.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (*.f64 (*.f64 c 1/4) (*.f64 a (*.f64 2 (*.f64 a (*.f64 a (*.f64 c c))))))))) (pow.f64 b 5))))
(-.f64 (fma.f64 -2 (*.f64 (/.f64 a b) c) (fma.f64 2 b (/.f64 (*.f64 -2 (*.f64 a (*.f64 a (*.f64 c c)))) (pow.f64 b 3)))) (/.f64 (fma.f64 (/.f64 1/2 a) (/.f64 (*.f64 (*.f64 (pow.f64 a 4) 256) (+.f64 (*.f64 1/16 (pow.f64 c 4)) (*.f64 (pow.f64 c 4) 1/64))) c) (*.f64 -4 (+.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (*.f64 (*.f64 c 1/4) (*.f64 a (*.f64 2 (*.f64 a (*.f64 a (*.f64 c c))))))))) (pow.f64 b 5)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(*.f64 2 (*.f64 (/.f64 c b) a))
(*.f64 2 (*.f64 (/.f64 a b) c))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))))
(fma.f64 2 (/.f64 (*.f64 c a) b) (*.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 (pow.f64 (sqrt.f64 -4) 2) (*.f64 a a))))))
(fma.f64 2 (*.f64 (/.f64 c b) a) (/.f64 (*.f64 (*.f64 (*.f64 c a) (*.f64 c a)) 2) (pow.f64 b 3)))
(fma.f64 2 (*.f64 (/.f64 a b) c) (/.f64 (*.f64 2 (*.f64 a (*.f64 a (*.f64 c c)))) (pow.f64 b 3)))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 5)))))
(fma.f64 2 (/.f64 (*.f64 c a) b) (fma.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 (pow.f64 (sqrt.f64 -4) 2) (*.f64 a a)))) (*.f64 1/4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 (sqrt.f64 -4) 4) (pow.f64 a 3)))))))
(fma.f64 2 (*.f64 (/.f64 c b) a) (fma.f64 1/4 (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 16 (pow.f64 a 3))) (/.f64 (*.f64 (*.f64 (*.f64 c a) (*.f64 c a)) 2) (pow.f64 b 3))))
(fma.f64 2 (*.f64 (/.f64 a b) c) (fma.f64 1/4 (*.f64 (*.f64 16 (pow.f64 a 3)) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) (/.f64 (*.f64 2 (*.f64 a (*.f64 a (*.f64 c c)))) (pow.f64 b 3))))
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -1/8 (/.f64 (*.f64 (pow.f64 c 4) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 7))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (sqrt.f64 -4) 2))) (pow.f64 b 3))) (+.f64 (*.f64 -1/32 (/.f64 (*.f64 (pow.f64 c 4) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 6))) (pow.f64 b 7))) (*.f64 1/4 (/.f64 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 a 3) (pow.f64 (sqrt.f64 -4) 4))) (pow.f64 b 5)))))))
(fma.f64 2 (/.f64 (*.f64 c a) b) (fma.f64 -1/8 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 6)))) (fma.f64 -1/2 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) (*.f64 (pow.f64 (sqrt.f64 -4) 2) (*.f64 a a)))) (fma.f64 -1/32 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 a 4) (pow.f64 (sqrt.f64 -4) 6)))) (*.f64 1/4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 (sqrt.f64 -4) 4) (pow.f64 a 3)))))))))
(fma.f64 2 (*.f64 (/.f64 c b) a) (+.f64 (fma.f64 (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (*.f64 (pow.f64 a 4) -64)) -1/32 (/.f64 1/4 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 a 3) (*.f64 16 (pow.f64 c 3)))))) (fma.f64 -1/8 (*.f64 (/.f64 (pow.f64 c 4) (pow.f64 b 7)) (*.f64 (pow.f64 a 4) -64)) (/.f64 (*.f64 (*.f64 (*.f64 c a) (*.f64 c a)) 2) (pow.f64 b 3)))))
(fma.f64 2 (*.f64 (/.f64 a b) c) (fma.f64 -1/8 (/.f64 (pow.f64 c 4) (/.f64 (/.f64 (pow.f64 b 7) -64) (pow.f64 a 4))) (fma.f64 1/4 (*.f64 (*.f64 16 (pow.f64 a 3)) (/.f64 (pow.f64 c 3) (pow.f64 b 5))) (fma.f64 (/.f64 (pow.f64 c 4) (/.f64 (/.f64 (pow.f64 b 7) -64) (pow.f64 a 4))) -1/32 (/.f64 (*.f64 2 (*.f64 a (*.f64 a (*.f64 c c)))) (pow.f64 b 3))))))

eval835.0ms (4.1%)

Compiler

Compiled 43126 to 25495 computations (40.9% saved)

prune215.0ms (1.1%)

Pruning

35 alts after pruning (31 fresh and 4 done)

PrunedKeptTotal
New1012141026
Fresh71724
Picked101
Done448
Total1024351059
Error
2.9b
Counts
1059 → 35
Alt Table
Click to see full alt table
StatusErrorProgram
35.1b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (cbrt.f64 (pow.f64 (*.f64 a (*.f64 -4 c)) 3/2)))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
43.4b
(if (>=.f64 b 0) (cbrt.f64 (pow.f64 (/.f64 (*.f64 c -2) (fma.f64 (sqrt.f64 (*.f64 a -4)) (sqrt.f64 c) b)) 3)) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
31.0b
(if (>=.f64 b 0) (exp.f64 (log.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
40.3b
(if (>=.f64 b 0) (*.f64 (pow.f64 (cbrt.f64 (+.f64 c c)) 2) (*.f64 (cbrt.f64 (+.f64 c c)) (/.f64 -1 (fma.f64 (sqrt.f64 (*.f64 a -4)) (sqrt.f64 c) b)))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
38.5b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (*.f64 2 (*.f64 1/2 (/.f64 b c))) -1))
51.4b
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
28.0b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (pow.f64 b 2))))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 (*.f64 b b) 1) (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
33.8b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a))
22.9b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 b)) 2)) (cbrt.f64 (log.f64 b)))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
31.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (-.f64 a (*.f64 (/.f64 b c) b)) (*.f64 (/.f64 b c) a)))
31.8b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (*.f64 (sqrt.f64 (*.f64 a -4)) (sqrt.f64 c))) (*.f64 2 a)))
24.4b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (cbrt.f64 (-.f64 (/.f64 c b) (/.f64 b a))) 3))
27.9b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (-.f64 (exp.f64 (log.f64 (hypot.f64 b (*.f64 (sqrt.f64 (*.f64 a -4)) (sqrt.f64 c))))) b) (/.f64 1/2 a)))
24.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (-.f64 (*.f64 (/.f64 (*.f64 c 2) b) a) b)) (*.f64 2 a)))
20.7b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))) b) (/.f64 1/2 a)))
22.1b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (pow.f64 (E.f64) (log.f64 b))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
22.3b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (pow.f64 (exp.f64 1) (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))))) b) (/.f64 1/2 a)))
47.3b
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a))
30.4b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (cbrt.f64 (pow.f64 (/.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))) (*.f64 a -2)) 3)))
20.7b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (-.f64 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) b) (/.f64 1/2 a)))
35.8b
(if (>=.f64 b 0) (*.f64 2 (/.f64 1 (/.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) c))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
40.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (*.f64 (sqrt.f64 (*.f64 a -4)) (sqrt.f64 c)))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
38.5b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
22.4b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (exp.f64 (*.f64 (*.f64 (log.f64 b) 3) 1/3))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
30.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (/.f64 (-.f64 (*.f64 c a) (*.f64 b b)) b) a))
28.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 2 a)))
29.5b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 1/2 (/.f64 a (+.f64 b (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 -4 a))) b)))))
47.4b
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (*.f64 b -2) (/.f64 1/2 a)))
35.8b
(if (>=.f64 b 0) (*.f64 (/.f64 c 1) (/.f64 2 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
20.7b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (pow.f64 (cbrt.f64 (/.f64 a (/.f64 b c))) 3) b)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
49.3b
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) b) (/.f64 1/2 a)))
35.4b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (pow.f64 (/.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))) (*.f64 a -2)) 3) 1/3))
38.9b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (fma.f64 -2 (*.f64 a (/.f64 c b)) b) b) (/.f64 1/2 a)))
47.4b
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
34.9b
(if (>=.f64 b 0) (pow.f64 (pow.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2)) 3) 1/3) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
Compiler

Compiled 1089 to 738 computations (32.2% saved)

regimes726.0ms (3.6%)

Counts
66 → 5
Calls
Call 1
Inputs
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (*.f64 b -2) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (/.f64 (-.f64 (*.f64 c a) (*.f64 b b)) b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (-.f64 a (*.f64 (/.f64 b c) b)) (*.f64 (/.f64 b c) a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (-.f64 (*.f64 (/.f64 (*.f64 c 2) b) a) b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (*.f64 2 (*.f64 1/2 (/.f64 b c))) -1))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 2 (/.f64 1 (/.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) c))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 (/.f64 c 1) (/.f64 2 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (fma.f64 -2 (*.f64 a (/.f64 c b)) b) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.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 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (*.f64 -1 b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.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 (*.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) b)) (pow.f64 (cbrt.f64 (-.f64 (/.f64 c b) (/.f64 b a))) 3))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (pow.f64 b 2))))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 (*.f64 b b) 1) (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (*.f64 (sqrt.f64 (*.f64 a -4)) (sqrt.f64 c)))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (*.f64 (sqrt.f64 (*.f64 a -4)) (sqrt.f64 c))) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 1/2 (/.f64 a (+.f64 b (hypot.f64 (sqrt.f64 (*.f64 c (*.f64 -4 a))) b)))))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (cbrt.f64 (pow.f64 (*.f64 a (*.f64 -4 c)) 3/2)))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (exp.f64 (*.f64 (*.f64 (log.f64 b) 3) 1/3))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (pow.f64 b 2))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.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 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (pow.f64 (E.f64) (log.f64 b))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (exp.f64 (*.f64 (log.f64 (cbrt.f64 b)) 3))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (pow.f64 (pow.f64 (cbrt.f64 b) 2) 3/2)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (pow.f64 (exp.f64 1/2) (*.f64 2 (log.f64 b)))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (exp.f64 (log.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (*.f64 2 (/.f64 a (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))))) -1))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (pow.f64 (cbrt.f64 (/.f64 a (/.f64 b c))) 3) b)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (pow.f64 (cbrt.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2))) 3) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (pow.f64 (cbrt.f64 (*.f64 (fma.f64 b -2 (*.f64 (*.f64 2 (/.f64 c b)) a)) (/.f64 1/2 a))) 3))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2))))) (*.f64 (-.f64 (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (-.f64 (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (pow.f64 (pow.f64 (/.f64 c (*.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) -1/2)) 3) 1/3) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (/.f64 (-.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) (*.f64 b b)) (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
(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) (fma.f64 c (*.f64 a -4) (fma.f64 c (*.f64 a -4) (*.f64 a (*.f64 4 c))))))) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (-.f64 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (cbrt.f64 (pow.f64 (/.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))) (*.f64 a -2)) 3)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (pow.f64 (/.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))) (*.f64 a -2)) 3) 1/3))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (-.f64 (sqrt.f64 (pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) 4)) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (cbrt.f64 (pow.f64 (/.f64 (*.f64 c -2) (fma.f64 (sqrt.f64 (*.f64 a -4)) (sqrt.f64 c) b)) 3)) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (-.f64 (exp.f64 (log.f64 (hypot.f64 b (*.f64 (sqrt.f64 (*.f64 a -4)) (sqrt.f64 c))))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (pow.f64 (exp.f64 1) (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 a (*.f64 -4 c)))))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (-.f64 (pow.f64 (exp.f64 1) (log.f64 (hypot.f64 (sqrt.f64 (*.f64 a (*.f64 -4 c))) b))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (/.f64 (*.f64 c -2) (cbrt.f64 (pow.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)) 2))) (cbrt.f64 (+.f64 b (fma.f64 (/.f64 a (/.f64 b c)) -2 b)))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 (pow.f64 (cbrt.f64 (+.f64 c c)) 2) (*.f64 (cbrt.f64 (+.f64 c c)) (/.f64 -1 (fma.f64 (sqrt.f64 (*.f64 a -4)) (sqrt.f64 c) b)))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 b)) 2)) (cbrt.f64 (log.f64 b)))))) (*.f64 (-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
Outputs
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (-.f64 (*.f64 (/.f64 (*.f64 c 2) b) a) b)) (*.f64 2 a)))
(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) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.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 (*.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 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a))
Calls

4 calls:

253.0ms
a
230.0ms
c
105.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)))
88.0ms
b
Results
ErrorSegmentsBranch
13.3b9a
6.7b3b
13.1b8c
6.7b5(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)))
Compiler

Compiled 2072 to 1218 computations (41.2% saved)

bsearch2.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.437000039812449e+259
2.3080355754556017e+264
0.0ms
-0.0
7.243e-321
0.0ms
-4.419046245787836e-250
-1.0535249534265867e-278
0.0ms
-inf
-4.273767823009184e+270
Compiler

Compiled 47 to 31 computations (34% saved)

regimes320.0ms (1.6%)

Counts
26 → 4
Calls
Call 1
Inputs
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (*.f64 b -2) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (/.f64 (-.f64 (*.f64 c a) (*.f64 b b)) b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (-.f64 a (*.f64 (/.f64 b c) b)) (*.f64 (/.f64 b c) a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (-.f64 (*.f64 (/.f64 (*.f64 c 2) b) a) b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (*.f64 2 (*.f64 1/2 (/.f64 b c))) -1))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 2 (/.f64 1 (/.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) c))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 (/.f64 c 1) (/.f64 2 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (fma.f64 -2 (*.f64 a (/.f64 c b)) b) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.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 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (*.f64 -1 b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.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 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.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 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (*.f64 -1 b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
Calls

3 calls:

177.0ms
c
70.0ms
a
55.0ms
b
Results
ErrorSegmentsBranch
16.8b3a
6.7b4b
14.1b8c
Compiler

Compiled 681 to 376 computations (44.8% saved)

bsearch317.0ms (1.6%)

Algorithm
binary-search
Steps
TimeLeftRight
161.0ms
7.05958389090388e+45
8.30166862876117e+47
46.0ms
-8.527114402428522e-296
-3.3334029917621184e-298
110.0ms
-1.3360581970240662e+71
-5.307028150269202e+53
Compiler

Compiled 1530 to 1000 computations (34.6% saved)

regimes210.0ms (1%)

Counts
24 → 4
Calls
Call 1
Inputs
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (*.f64 b -2) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (/.f64 (-.f64 (*.f64 c a) (*.f64 b b)) b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (-.f64 a (*.f64 (/.f64 b c) b)) (*.f64 (/.f64 b c) a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (-.f64 (*.f64 (/.f64 (*.f64 c 2) b) a) b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (*.f64 2 (*.f64 1/2 (/.f64 b c))) -1))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 2 (/.f64 1 (/.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) c))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 (/.f64 c 1) (/.f64 2 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (fma.f64 -2 (*.f64 a (/.f64 c b)) b) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.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 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.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 (*.f64 4 a) c))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
Calls

3 calls:

86.0ms
c
66.0ms
b
44.0ms
a
Results
ErrorSegmentsBranch
16.9b3a
6.7b4b
14.2b8c
Compiler

Compiled 621 to 343 computations (44.8% saved)

bsearch304.0ms (1.5%)

Algorithm
binary-search
Steps
TimeLeftRight
167.0ms
7.05958389090388e+45
8.30166862876117e+47
50.0ms
-8.527114402428522e-296
-3.3334029917621184e-298
87.0ms
-1.3360581970240662e+71
-5.307028150269202e+53
Compiler

Compiled 1586 to 1042 computations (34.3% saved)

regimes182.0ms (0.9%)

Counts
23 → 4
Calls
Call 1
Inputs
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (*.f64 b -2) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (/.f64 (-.f64 (*.f64 c a) (*.f64 b b)) b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (-.f64 a (*.f64 (/.f64 b c) b)) (*.f64 (/.f64 b c) a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (-.f64 (*.f64 (/.f64 (*.f64 c 2) b) a) b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (*.f64 2 (*.f64 1/2 (/.f64 b c))) -1))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 2 (/.f64 1 (/.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) c))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 (/.f64 c 1) (/.f64 2 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (fma.f64 -2 (*.f64 a (/.f64 c b)) b) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
Outputs
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
Calls

3 calls:

82.0ms
c
44.0ms
a
43.0ms
b
Results
ErrorSegmentsBranch
17.0b3a
6.7b4b
14.3b8c
Compiler

Compiled 585 to 325 computations (44.4% saved)

bsearch290.0ms (1.4%)

Algorithm
binary-search
Steps
TimeLeftRight
165.0ms
7.05958389090388e+45
8.30166862876117e+47
49.0ms
-8.527114402428522e-296
-3.3334029917621184e-298
76.0ms
-1.3360581970240662e+71
-5.307028150269202e+53
Compiler

Compiled 1552 to 1025 computations (34% saved)

regimes166.0ms (0.8%)

Counts
22 → 4
Calls
Call 1
Inputs
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (*.f64 b -2) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (/.f64 (-.f64 (*.f64 c a) (*.f64 b b)) b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (-.f64 a (*.f64 (/.f64 b c) b)) (*.f64 (/.f64 b c) a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (-.f64 (*.f64 (/.f64 (*.f64 c 2) b) a) b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (*.f64 2 (*.f64 1/2 (/.f64 b c))) -1))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 2 (/.f64 1 (/.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) c))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 (/.f64 c 1) (/.f64 2 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (fma.f64 -2 (*.f64 a (/.f64 c b)) b) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))) b) (/.f64 1/2 a)))
Outputs
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
Calls

3 calls:

64.0ms
c
49.0ms
b
41.0ms
a
Results
ErrorSegmentsBranch
17.6b4a
10.5b4b
16.6b6c
Compiler

Compiled 550 to 304 computations (44.7% saved)

bsearch172.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
59.0ms
2.072000830148255e-98
3.550466363131977e-98
46.0ms
-8.527114402428522e-296
-3.3334029917621184e-298
67.0ms
-1.3360581970240662e+71
-5.307028150269202e+53
Compiler

Compiled 1224 to 795 computations (35% saved)

regimes160.0ms (0.8%)

Counts
21 → 4
Calls
Call 1
Inputs
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (*.f64 b -2) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (/.f64 (-.f64 (*.f64 c a) (*.f64 b b)) b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (-.f64 a (*.f64 (/.f64 b c) b)) (*.f64 (/.f64 b c) a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (-.f64 (*.f64 (/.f64 (*.f64 c 2) b) a) b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (*.f64 2 (*.f64 1/2 (/.f64 b c))) -1))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 2 (/.f64 1 (/.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) c))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 (/.f64 c 1) (/.f64 2 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (fma.f64 -2 (*.f64 a (/.f64 c b)) b) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
Outputs
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
Calls

3 calls:

53.0ms
c
51.0ms
b
44.0ms
a
Results
ErrorSegmentsBranch
19.9b5a
12.8b4b
19.6b6c
Compiler

Compiled 516 to 286 computations (44.6% saved)

bsearch266.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
59.0ms
2.072000830148255e-98
3.550466363131977e-98
47.0ms
-8.527114402428522e-296
-3.3334029917621184e-298
159.0ms
-7.077210347669159e-59
-2.5532745921561705e-64
Compiler

Compiled 1024 to 680 computations (33.6% saved)

regimes91.0ms (0.5%)

Counts
14 → 4
Calls
Call 1
Inputs
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (*.f64 b -2) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (/.f64 (-.f64 (*.f64 c a) (*.f64 b b)) b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (-.f64 a (*.f64 (/.f64 b c) b)) (*.f64 (/.f64 b c) a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (-.f64 (*.f64 (/.f64 (*.f64 c 2) b) a) b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (*.f64 2 (*.f64 1/2 (/.f64 b c))) -1))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a))
Outputs
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
Calls

3 calls:

34.0ms
b
28.0ms
a
22.0ms
c
Results
ErrorSegmentsBranch
21.4b4a
12.8b4b
22.7b3c
Compiler

Compiled 301 to 156 computations (48.2% saved)

bsearch266.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
59.0ms
2.072000830148255e-98
3.550466363131977e-98
46.0ms
-8.527114402428522e-296
-3.3334029917621184e-298
160.0ms
-7.077210347669159e-59
-2.5532745921561705e-64
Compiler

Compiled 928 to 616 computations (33.6% saved)

regimes53.0ms (0.3%)

Counts
13 → 3
Calls
Call 1
Inputs
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (*.f64 b -2) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (/.f64 (-.f64 (*.f64 c a) (*.f64 b b)) b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (-.f64 a (*.f64 (/.f64 b c) b)) (*.f64 (/.f64 b c) a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (-.f64 (*.f64 (/.f64 (*.f64 c 2) b) a) b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (*.f64 2 (*.f64 1/2 (/.f64 b c))) -1))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
Outputs
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
Calls

3 calls:

20.0ms
b
20.0ms
a
8.0ms
c
Results
ErrorSegmentsBranch
22.8b3a
17.1b3b
24.0b1c
Compiler

Compiled 280 to 145 computations (48.2% saved)

bsearch197.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
37.0ms
7.442613736016691e-173
1.4657227142936041e-172
160.0ms
-7.077210347669159e-59
-2.5532745921561705e-64
Compiler

Compiled 600 to 397 computations (33.8% saved)

regimes35.0ms (0.2%)

Counts
12 → 1
Calls
Call 1
Inputs
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (*.f64 b -2) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (/.f64 (-.f64 (*.f64 c a) (*.f64 b b)) b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (-.f64 a (*.f64 (/.f64 b c) b)) (*.f64 (/.f64 b c) a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (-.f64 (*.f64 (/.f64 (*.f64 c 2) b) a) b)) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))) (*.f64 2 a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (*.f64 2 (*.f64 1/2 (/.f64 b c))) -1))
Outputs
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
Calls

3 calls:

11.0ms
a
9.0ms
b
7.0ms
c
Results
ErrorSegmentsBranch
24.0b1a
24.0b1b
24.0b1c
Compiler

Compiled 261 to 134 computations (48.7% saved)

regimes38.0ms (0.2%)

Counts
4 → 2
Calls
Call 1
Inputs
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (*.f64 b -2) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
Outputs
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b))
Calls

3 calls:

14.0ms
a
14.0ms
c
8.0ms
b
Results
ErrorSegmentsBranch
34.2b4a
23.9b2b
35.8b4c
Compiler

Compiled 69 to 38 computations (44.9% saved)

bsearch37.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
37.0ms
7.442613736016691e-173
1.4657227142936041e-172
Compiler

Compiled 183 to 123 computations (32.8% saved)

regimes13.0ms (0.1%)

Accuracy

Total -0.2b remaining (-0.5%)

Threshold costs -0.2b (-0.5%)

Counts
3 → 1
Calls
Call 1
Inputs
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a))
(if (>=.f64 b 0) (/.f64 b a) (*.f64 (*.f64 b -2) (/.f64 1/2 a)))
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
Outputs
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a))
Calls

3 calls:

4.0ms
b
4.0ms
a
4.0ms
c
Results
ErrorSegmentsBranch
47.3b1a
47.3b1b
47.3b1c
Compiler

Compiled 54 to 31 computations (42.6% saved)

simplify54.0ms (0.3%)

Algorithm
egg-herbie
Rules
28×+-commutative_binary64
26×*-commutative_binary64
23×sub-neg_binary64
14×neg-sub0_binary64
14×neg-mul-1_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01211548
11591528
21971528
32331528
42531528
52611528
62621528
Stop Event
fuel
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 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (-.f64 (*.f64 (/.f64 (*.f64 c 2) b) a) b)) (*.f64 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))) -1612226962694291/4030567406735727282351225165683873035574701889313671280883489296162978382543372035785043761349923613698382530160958318167742519832631573007587730243400112738864034149162331269597866193210040596412843573823632724030670381872189039145190406026970187961498554846937088) (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 (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 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 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))) 50000000000000003266738805287308653501605199739146814887821596086563461013494373946761448597312155060070293180948971897031843103500694344949068611787290981147319320624060201170423586274511321235373747132066454419887471021888328522748504544214667767597984907264) (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 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a))))))
(if (<=.f64 b -549999999999999975003873838340241420593026678583721984) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))) (if (<=.f64 b 7200000000000000001312721067947729382182748160) (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) (*.f64 -1 b)) (*.f64 2 a))) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -549999999999999975003873838340241420593026678583721984) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))) (if (<=.f64 b 7200000000000000001312721067947729382182748160) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a))) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -549999999999999975003873838340241420593026678583721984) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))) b) (/.f64 1/2 a))) (if (<=.f64 b 7200000000000000001312721067947729382182748160) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a))) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -549999999999999975003873838340241420593026678583721984) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))) b) (/.f64 1/2 a))) (if (<=.f64 b 6464391641595969/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a)) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -3853560729817883/14821387422376473014217086081112052205218558037201992197050570753012880593911808) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 2 a))) (if (<=.f64 b 6464391641595969/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a)) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -3853560729817883/14821387422376473014217086081112052205218558037201992197050570753012880593911808) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a))) (if (<=.f64 b 6464391641595969/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a)) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -3853560729817883/14821387422376473014217086081112052205218558037201992197050570753012880593911808) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b 5221298924585947/69617318994479297159441705409245167921344429126717528237597542082203295398081625160307507496908132931192662194421301381083506846944815643283884602656894137393981852330936660004926669193216) (if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a))) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
(if (<=.f64 b 5221298924585947/69617318994479297159441705409245167921344429126717528237597542082203295398081625160307507496908132931192662194421301381083506846944815643283884602656894137393981852330936660004926669193216) (if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a)) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.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 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (-.f64 (*.f64 (/.f64 (*.f64 c 2) b) a) b)) (*.f64 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))) -1612226962694291/4030567406735727282351225165683873035574701889313671280883489296162978382543372035785043761349923613698382530160958318167742519832631573007587730243400112738864034149162331269597866193210040596412843573823632724030670381872189039145190406026970187961498554846937088) (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 (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 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 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))) 50000000000000003266738805287308653501605199739146814887821596086563461013494373946761448597312155060070293180948971897031843103500694344949068611787290981147319320624060201170423586274511321235373747132066454419887471021888328522748504544214667767597984907264) (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 c (*.f64 a -4))))) (/.f64 (neg.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 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (-.f64 (*.f64 a (/.f64 (*.f64 2 c) b)) b)) (*.f64 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))) -1612226962694291/4030567406735727282351225165683873035574701889313671280883489296162978382543372035785043761349923613698382530160958318167742519832631573007587730243400112738864034149162331269597866193210040596412843573823632724030670381872189039145190406026970187961498554846937088) (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 (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 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a))))) (*.f64 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))) 50000000000000003266738805287308653501605199739146814887821596086563461013494373946761448597312155060070293180948971897031843103500694344949068611787290981147319320624060201170423586274511321235373747132066454419887471021888328522748504544214667767597984907264) (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 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.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 a -4)))))) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))) b) (*.f64 2 a))) -inf.0) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (-.f64 (-.f64 (*.f64 a (/.f64 (*.f64 2 c) b)) b) b) (*.f64 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 a -4)))))) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))) b) (*.f64 2 a))) -1612226962694291/4030567406735727282351225165683873035574701889313671280883489296162978382543372035785043761349923613698382530160958318167742519832631573007587730243400112738864034149162331269597866193210040596412843573823632724030670381872189039145190406026970187961498554846937088) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))))) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))) b) (*.f64 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 a -4)))))) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))) b) (*.f64 2 a))) 0) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))) b) (*.f64 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 a -4)))))) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))) b) (*.f64 2 a))) 50000000000000003266738805287308653501605199739146814887821596086563461013494373946761448597312155060070293180948971897031843103500694344949068611787290981147319320624060201170423586274511321235373747132066454419887471021888328522748504544214667767597984907264) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))))) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.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 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a))))))
(if (<=.f64 b -549999999999999975003873838340241420593026678583721984) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))) (if (<=.f64 b 7200000000000000001312721067947729382182748160) (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) (*.f64 -1 b)) (*.f64 2 a))) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -549999999999999975003873838340241420593026678583721984) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a))))) (*.f64 2 a))) (if (<=.f64 b 7200000000000000001312721067947729382182748160) (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) b) (*.f64 2 a))) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -549999999999999975003873838340241420593026678583721984) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))) b) (*.f64 2 a))) (if (<=.f64 b 7200000000000000001312721067947729382182748160) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))))) (/.f64 (-.f64 (neg.f64 b) b) (*.f64 2 a))) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -549999999999999975003873838340241420593026678583721984) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a))) (if (<=.f64 b 7200000000000000001312721067947729382182748160) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a))) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -549999999999999975003873838340241420593026678583721984) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a))))) (*.f64 2 a))) (if (<=.f64 b 7200000000000000001312721067947729382182748160) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))))) (/.f64 (fma.f64 b -2 (*.f64 a (/.f64 (*.f64 2 c) b))) (*.f64 2 a))) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -549999999999999975003873838340241420593026678583721984) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b))) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))) b) (*.f64 2 a))) (if (<=.f64 b 7200000000000000001312721067947729382182748160) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))))) (/.f64 (fma.f64 b -2 (*.f64 a (/.f64 (*.f64 2 c) b))) (*.f64 2 a))) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -549999999999999975003873838340241420593026678583721984) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))) b) (/.f64 1/2 a))) (if (<=.f64 b 7200000000000000001312721067947729382182748160) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a))) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -549999999999999975003873838340241420593026678583721984) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a))) (if (<=.f64 b 7200000000000000001312721067947729382182748160) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))))) (/.f64 (fma.f64 b -2 (*.f64 a (/.f64 (*.f64 2 c) b))) (*.f64 2 a))) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -549999999999999975003873838340241420593026678583721984) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a))) (if (<=.f64 b 7200000000000000001312721067947729382182748160) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))))) (/.f64 (fma.f64 b -2 (*.f64 a (/.f64 (*.f64 2 c) b))) (*.f64 2 a))) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -549999999999999975003873838340241420593026678583721984) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))) b) (/.f64 1/2 a))) (if (<=.f64 b 6464391641595969/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a)) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -549999999999999975003873838340241420593026678583721984) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a))) (if (<=.f64 b 6464391641595969/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a)) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -3853560729817883/14821387422376473014217086081112052205218558037201992197050570753012880593911808) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4)))) (*.f64 2 a))) (if (<=.f64 b 6464391641595969/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a)) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -3853560729817883/14821387422376473014217086081112052205218558037201992197050570753012880593911808) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (*.f64 2 a))) (if (<=.f64 b 6464391641595969/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a)) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -3853560729817883/14821387422376473014217086081112052205218558037201992197050570753012880593911808) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a))) (if (<=.f64 b 6464391641595969/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a)) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -3853560729817883/14821387422376473014217086081112052205218558037201992197050570753012880593911808) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b -7823560522920799/92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592) (if (>=.f64 b 0) (/.f64 b a) (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))) (if (<=.f64 b 6464391641595969/307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -4))))) (/.f64 (neg.f64 b) a)) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))))
(if (<=.f64 b -3853560729817883/14821387422376473014217086081112052205218558037201992197050570753012880593911808) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b 5221298924585947/69617318994479297159441705409245167921344429126717528237597542082203295398081625160307507496908132931192662194421301381083506846944815643283884602656894137393981852330936660004926669193216) (if (>=.f64 b 0) (/.f64 b a) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b) (/.f64 1/2 a))) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))))
(if (<=.f64 b -3853560729817883/14821387422376473014217086081112052205218558037201992197050570753012880593911808) (if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a))) (if (<=.f64 b 5221298924585947/69617318994479297159441705409245167921344429126717528237597542082203295398081625160307507496908132931192662194421301381083506846944815643283884602656894137393981852330936660004926669193216) (if (>=.f64 b 0) (/.f64 b a) (*.f64 (/.f64 1/2 a) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -4))) b))) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))))
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
(if (<=.f64 b 5221298924585947/69617318994479297159441705409245167921344429126717528237597542082203295398081625160307507496908132931192662194421301381083506846944815643283884602656894137393981852330936660004926669193216) (if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a)) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 c b)))
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a))
Compiler

Compiled 1059 to 629 computations (40.6% saved)

soundness596.0ms (3%)

Algorithm
egg-herbie
Rules
1224×fma-def_binary64
971×fma-neg_binary64
721×times-frac_binary64
721×times-frac_binary64
721×times-frac_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01332386
14222292
214832157
01332386
14222292
214832157
01332386
14222292
214832157
01332386
14222292
214832157
013728
123674
247674
382674
4125674
5176674
6284674
7373674
8730674
91680674
104009674
115844674
126675674
136804674
146864674
156864674
167910674
Stop Event
node limit
node limit
node limit
node limit
node limit
Compiler

Compiled 287 to 199 computations (30.7% saved)

end300.0ms (1.5%)

Compiler

Compiled 1029 to 546 computations (46.9% saved)

Profiling

Loading profile data...