Details

Time bar (total: 14.3s)

analyze546.0ms (3.8%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
0%99.9%0.1%6
7.8%85.8%6.4%7
10.1%83.5%6.4%8
16.8%74.5%8.7%9
29.1%57.5%13.4%10
33.6%51.4%15%11
39.2%42.7%18.1%12
Compiler

Compiled 42 to 27 computations (35.7% saved)

sample2.5s (17.7%)

Results
2.0s8256×body256valid
547.0ms1591×body256invalid

preprocess78.0ms (0.5%)

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)

simplify154.0ms (1.1%)

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
22.2b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
22.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
22.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 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
Compiler

Compiled 78 to 50 computations (35.9% saved)

localize54.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))))
1.0b
(-.f64 (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b)
1.2b
(fma.f64 b b (*.f64 c (*.f64 a -4)))
24.8b
(sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))
Compiler

Compiled 140 to 84 computations (40% saved)

series25.0ms (0.2%)

Counts
4 → 96
Calls

36 calls:

TimeVariablePointExpression
2.0ms
b
@-inf
(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))))

rewrite101.0ms (0.7%)

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)))))

simplify66.0ms (0.5%)

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))))))))

localize60.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
1.0b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
1.0b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
24.8b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 148 to 79 computations (46.6% saved)

series18.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
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
b
@0
(-.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))))

rewrite129.0ms (0.9%)

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))))))

simplify74.0ms (0.5%)

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.3s (9%)

Compiler

Compiled 54426 to 33141 computations (39.1% saved)

prune614.0ms (4.3%)

Pruning

16 alts after pruning (15 fresh and 1 done)

PrunedKeptTotal
New1099151114
Fresh000
Picked101
Done011
Total1100161116
Error
5.9b
Counts
1116 → 16
Alt Table
Click to see full alt table
StatusErrorProgram
25.8b
(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.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 (fma.f64 b b (*.f64 c (*.f64 a -4)))) b) (/.f64 1/2 a)))
25.7b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (cbrt.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2)))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
26.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 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
22.4b
(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 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 3/2) b) (/.f64 1/2 a)))
22.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.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 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
18.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)))
18.8b
(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)))
18.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)))
26.0b
(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)))
31.6b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (/.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)))))) (/.f64 1/2 a)))
22.3b
(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 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) 2) b) (/.f64 1/2 a)))
24.8b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (pow.f64 (sqrt.f64 (-.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) b)) 2) (/.f64 1/2 a)))
22.4b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (pow.f64 (cbrt.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)))
25.8b
(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)))
27.8b
(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)))
Compiler

Compiled 1225 to 808 computations (34% saved)

localize115.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
3.0b
(/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b)))
5.0b
(/.f64 c (/.f64 b a))
24.8b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 159 to 75 computations (52.8% saved)

series29.0ms (0.2%)

Counts
2 → 72
Calls

18 calls:

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

rewrite189.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
828×prod-diff_binary64
249×expm1-udef_binary64
249×log1p-udef_binary64
237×fma-def_binary64
228×log-div_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify74.0ms (0.5%)

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
162 → 106
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))))))

localize73.0ms (0.5%)

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))
1.0b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
1.0b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
24.8b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 121 to 62 computations (48.8% saved)

series18.0ms (0.1%)

Counts
1 → 20
Calls

9 calls:

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

rewrite119.0ms (0.8%)

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))))))

simplify62.0ms (0.4%)

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))))

localize56.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.2b
(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))))
3.4b
(*.f64 a (/.f64 c b))
24.8b
(sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))
Compiler

Compiled 152 to 76 computations (50% saved)

series9.0ms (0.1%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
4.0ms
c
@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))))
0.0ms
a
@-inf
(*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b))))
0.0ms
c
@inf
(*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b))))
0.0ms
a
@0
(*.f64 a (/.f64 c b))

rewrite64.0ms (0.5%)

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))))))

simplify66.0ms (0.5%)

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))))))

localize158.0ms (1.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.2b
(fma.f64 b b (*.f64 c (*.f64 a -4)))
8.3b
(-.f64 (pow.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 3/2) b)
24.8b
(sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))
25.6b
(cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))
Compiler

Compiled 178 to 102 computations (42.7% saved)

series53.0ms (0.4%)

Counts
2 → 26
Calls

18 calls:

TimeVariablePointExpression
27.0ms
b
@0
(-.f64 (pow.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 3/2) b)
5.0ms
a
@0
(-.f64 (pow.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 3/2) b)
3.0ms
c
@0
(-.f64 (pow.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 3/2) b)
3.0ms
a
@0
(cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))
3.0ms
b
@0
(cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))

rewrite80.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
730×prod-diff_binary64
524×log-prod_binary64
340×fma-def_binary64
311×pow2_binary64
211×expm1-udef_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

simplify85.0ms (0.6%)

Algorithm
egg-herbie
Rules
544×unswap-sqr_binary64
329×distribute-lft-in_binary64
329×distribute-rgt-in_binary64
319×associate-*r*_binary64
311×associate-+l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02251817
17381691
228641522
369261522
Stop Event
node limit
Counts
152 → 164
Calls
Call 1
Inputs
(pow.f64 (pow.f64 b 2) 1/3)
(+.f64 (*.f64 -4/3 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/9))) (pow.f64 (pow.f64 b 2) 1/3))
(+.f64 (*.f64 -16/9 (*.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/9))) (+.f64 (*.f64 -4/3 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/9))) (pow.f64 (pow.f64 b 2) 1/3)))
(+.f64 (*.f64 -16/9 (*.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/9))) (+.f64 (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 c 3) (+.f64 (*.f64 128/9 (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (*.f64 (pow.f64 a 3) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3)))) (*.f64 -64/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3) (pow.f64 a 3))))) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3))) (+.f64 (*.f64 -4/3 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/9))) (pow.f64 (pow.f64 b 2) 1/3))))
(pow.f64 (pow.f64 b 2) 1/3)
(+.f64 (*.f64 -4/3 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/9))) (pow.f64 (pow.f64 b 2) 1/3))
(+.f64 (*.f64 -16/9 (*.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/9))) (+.f64 (*.f64 -4/3 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/9))) (pow.f64 (pow.f64 b 2) 1/3)))
(+.f64 (*.f64 -16/9 (*.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/9))) (+.f64 (*.f64 -4/3 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/9))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3) (*.f64 (pow.f64 a 3) (+.f64 (*.f64 128/9 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3)))) (*.f64 -64/27 (*.f64 (pow.f64 c 3) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3))))))) (pow.f64 (pow.f64 b 2) 1/3))))
(*.f64 (pow.f64 (*.f64 c (*.f64 1 a)) 1/3) (cbrt.f64 -4))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 1/3) (/.f64 (pow.f64 b 2) (pow.f64 (cbrt.f64 -4) 2)))) (*.f64 (pow.f64 (*.f64 c (*.f64 1 a)) 1/3) (cbrt.f64 -4)))
(+.f64 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5))) 1/3) (/.f64 (pow.f64 b 4) (pow.f64 (cbrt.f64 -4) 5)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 1/3) (/.f64 (pow.f64 b 2) (pow.f64 (cbrt.f64 -4) 2)))) (*.f64 (pow.f64 (*.f64 c (*.f64 1 a)) 1/3) (cbrt.f64 -4))))
(+.f64 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5))) 1/3) (/.f64 (pow.f64 b 4) (pow.f64 (cbrt.f64 -4) 5)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 1/3) (/.f64 (pow.f64 b 2) (pow.f64 (cbrt.f64 -4) 2)))) (+.f64 (*.f64 (pow.f64 (*.f64 c (*.f64 1 a)) 1/3) (cbrt.f64 -4)) (*.f64 5/81 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 c 8) (pow.f64 a 8))) 1/3) (/.f64 (pow.f64 b 6) (pow.f64 (cbrt.f64 -4) 8)))))))
(-.f64 (pow.f64 (pow.f64 (pow.f64 b 2) 1/3) 3/2) b)
(-.f64 (+.f64 (*.f64 -2 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 b) 1/9))) (pow.f64 (pow.f64 (pow.f64 b 2) 1/3) 3/2)) b)
(-.f64 (+.f64 (*.f64 (pow.f64 c 2) (*.f64 (+.f64 (*.f64 3/4 (+.f64 (*.f64 -16/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9) (pow.f64 a 2))) (*.f64 -32/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9) (pow.f64 a 2))))) (*.f64 2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9) (pow.f64 a 2)))) b)) (+.f64 (*.f64 -2 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 b) 1/9))) (pow.f64 (pow.f64 (pow.f64 b 2) 1/3) 3/2))) b)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -3/2 (*.f64 (*.f64 (+.f64 (*.f64 -16/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9) (pow.f64 a 2))) (*.f64 -32/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9) (pow.f64 a 2)))) a) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/9))) (+.f64 (*.f64 1/4 (+.f64 (*.f64 -2 (/.f64 (+.f64 (*.f64 128/9 (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (*.f64 (pow.f64 a 3) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3)))) (*.f64 -64/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3) (pow.f64 a 3)))) (pow.f64 b 2))) (+.f64 (*.f64 -128/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/3) (pow.f64 a 3))) (*.f64 -128/9 (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (*.f64 (pow.f64 a 3) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/3))))))) (*.f64 -4/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/3) (pow.f64 a 3))))) (*.f64 (pow.f64 c 3) b)) (+.f64 (*.f64 (pow.f64 c 2) (*.f64 (+.f64 (*.f64 3/4 (+.f64 (*.f64 -16/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9) (pow.f64 a 2))) (*.f64 -32/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9) (pow.f64 a 2))))) (*.f64 2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9) (pow.f64 a 2)))) b)) (+.f64 (*.f64 -2 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 b) 1/9))) (pow.f64 (pow.f64 (pow.f64 b 2) 1/3) 3/2)))) b)
(-.f64 (pow.f64 (pow.f64 (pow.f64 b 2) 1/3) 3/2) b)
(-.f64 (+.f64 (*.f64 -2 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 b) 1/9))) (pow.f64 (pow.f64 (pow.f64 b 2) 1/3) 3/2)) b)
(-.f64 (+.f64 (*.f64 -2 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 b) 1/9))) (+.f64 (*.f64 (pow.f64 a 2) (*.f64 (+.f64 (*.f64 3/4 (+.f64 (*.f64 -16/9 (*.f64 (pow.f64 c 2) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9))) (*.f64 -32/9 (*.f64 (pow.f64 c 2) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9))))) (*.f64 2 (*.f64 (pow.f64 c 2) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9)))) b)) (pow.f64 (pow.f64 (pow.f64 b 2) 1/3) 3/2))) b)
(-.f64 (+.f64 (*.f64 -2 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 b) 1/9))) (+.f64 (*.f64 (pow.f64 a 2) (*.f64 (+.f64 (*.f64 3/4 (+.f64 (*.f64 -16/9 (*.f64 (pow.f64 c 2) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9))) (*.f64 -32/9 (*.f64 (pow.f64 c 2) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9))))) (*.f64 2 (*.f64 (pow.f64 c 2) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9)))) b)) (+.f64 (*.f64 (pow.f64 a 3) (*.f64 b (+.f64 (*.f64 -4/3 (*.f64 (pow.f64 c 3) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/3))) (+.f64 (*.f64 1/4 (+.f64 (*.f64 -128/9 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/3)))) (+.f64 (*.f64 -128/27 (*.f64 (pow.f64 c 3) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/3))) (*.f64 -2 (/.f64 (+.f64 (*.f64 128/9 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3)))) (*.f64 -64/27 (*.f64 (pow.f64 c 3) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3)))) (pow.f64 b 2)))))) (*.f64 -3/2 (*.f64 (*.f64 c (+.f64 (*.f64 -16/9 (*.f64 (pow.f64 c 2) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9))) (*.f64 -32/9 (*.f64 (pow.f64 c 2) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9))))) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/9))))))) (pow.f64 (pow.f64 (pow.f64 b 2) 1/3) 3/2)))) b)
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 -1 b))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (sqrt.f64 -4) (pow.f64 b 2)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 -1 b)))
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (*.f64 (sqrt.f64 -4) (*.f64 (pow.f64 b 4) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 c 2) (pow.f64 a 2)))) (*.f64 1/16 (-.f64 (*.f64 -4/3 (*.f64 (/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (cbrt.f64 -4) 6)))) (pow.f64 1 1/3))) (*.f64 8/3 (/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (cbrt.f64 -4) 6))))))))))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (sqrt.f64 -4) (pow.f64 b 2)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 -1 b))))
(*.f64 -1 b)
(*.f64 -1 b)
Outputs
(pow.f64 (pow.f64 b 2) 1/3)
(cbrt.f64 (*.f64 b b))
(+.f64 (*.f64 -4/3 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/9))) (pow.f64 (pow.f64 b 2) 1/3))
(fma.f64 -4/3 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18))) (cbrt.f64 (*.f64 b b)))
(fma.f64 -4/3 (*.f64 c (*.f64 (*.f64 a (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18))) (cbrt.f64 (*.f64 b b)))
(+.f64 (*.f64 -16/9 (*.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/9))) (+.f64 (*.f64 -4/3 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/9))) (pow.f64 (pow.f64 b 2) 1/3)))
(fma.f64 -16/9 (*.f64 (*.f64 c c) (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18)))) (fma.f64 -4/3 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18))) (cbrt.f64 (*.f64 b b))))
(fma.f64 -16/9 (*.f64 c (*.f64 c (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18))))) (fma.f64 -4/3 (*.f64 c (*.f64 (*.f64 a (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18))) (cbrt.f64 (*.f64 b b))))
(+.f64 (*.f64 -16/9 (*.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/9))) (+.f64 (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 c 3) (+.f64 (*.f64 128/9 (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (*.f64 (pow.f64 a 3) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3)))) (*.f64 -64/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3) (pow.f64 a 3))))) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3))) (+.f64 (*.f64 -4/3 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/9))) (pow.f64 (pow.f64 b 2) 1/3))))
(fma.f64 -16/9 (*.f64 (*.f64 c c) (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18)))) (fma.f64 -1/3 (*.f64 (pow.f64 c 3) (*.f64 (+.f64 (*.f64 128/9 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4))))) (*.f64 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4)))) -64/27)) (cbrt.f64 (/.f64 1 (pow.f64 b 4))))) (fma.f64 -4/3 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18))) (cbrt.f64 (*.f64 b b)))))
(fma.f64 -16/9 (*.f64 c (*.f64 c (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18))))) (fma.f64 -4/3 (*.f64 c (*.f64 (*.f64 a (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18))) (fma.f64 -1/3 (*.f64 (*.f64 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4)))) 320/27) (*.f64 (pow.f64 c 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4))))) (cbrt.f64 (*.f64 b b)))))
(fma.f64 -16/9 (*.f64 c (*.f64 c (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18))))) (fma.f64 -4/3 (*.f64 c (*.f64 (*.f64 a (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18))) (fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4)))) (*.f64 (*.f64 (pow.f64 c 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4)))) 320/27)) (cbrt.f64 (*.f64 b b)))))
(pow.f64 (pow.f64 b 2) 1/3)
(cbrt.f64 (*.f64 b b))
(+.f64 (*.f64 -4/3 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/9))) (pow.f64 (pow.f64 b 2) 1/3))
(fma.f64 -4/3 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18))) (cbrt.f64 (*.f64 b b)))
(fma.f64 -4/3 (*.f64 c (*.f64 (*.f64 a (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18))) (cbrt.f64 (*.f64 b b)))
(+.f64 (*.f64 -16/9 (*.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/9))) (+.f64 (*.f64 -4/3 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/9))) (pow.f64 (pow.f64 b 2) 1/3)))
(fma.f64 -16/9 (*.f64 (*.f64 c c) (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18)))) (fma.f64 -4/3 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18))) (cbrt.f64 (*.f64 b b))))
(fma.f64 -16/9 (*.f64 c (*.f64 c (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18))))) (fma.f64 -4/3 (*.f64 c (*.f64 (*.f64 a (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18))) (cbrt.f64 (*.f64 b b))))
(+.f64 (*.f64 -16/9 (*.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/9))) (+.f64 (*.f64 -4/3 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/9))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3) (*.f64 (pow.f64 a 3) (+.f64 (*.f64 128/9 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3)))) (*.f64 -64/27 (*.f64 (pow.f64 c 3) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3))))))) (pow.f64 (pow.f64 b 2) 1/3))))
(fma.f64 -16/9 (*.f64 (*.f64 c c) (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18)))) (fma.f64 -1/3 (*.f64 (pow.f64 c 3) (*.f64 (+.f64 (*.f64 128/9 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4))))) (*.f64 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4)))) -64/27)) (cbrt.f64 (/.f64 1 (pow.f64 b 4))))) (fma.f64 -4/3 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18))) (cbrt.f64 (*.f64 b b)))))
(fma.f64 -16/9 (*.f64 c (*.f64 c (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18))))) (fma.f64 -4/3 (*.f64 c (*.f64 (*.f64 a (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18))) (fma.f64 -1/3 (*.f64 (*.f64 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4)))) 320/27) (*.f64 (pow.f64 c 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4))))) (cbrt.f64 (*.f64 b b)))))
(fma.f64 -16/9 (*.f64 c (*.f64 c (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 14)) 1/18))))) (fma.f64 -4/3 (*.f64 c (*.f64 (*.f64 a (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/18))) (fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4)))) (*.f64 (*.f64 (pow.f64 c 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4)))) 320/27)) (cbrt.f64 (*.f64 b b)))))
(*.f64 (pow.f64 (*.f64 c (*.f64 1 a)) 1/3) (cbrt.f64 -4))
(*.f64 (cbrt.f64 (*.f64 c a)) (cbrt.f64 -4))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 1/3) (/.f64 (pow.f64 b 2) (pow.f64 (cbrt.f64 -4) 2)))) (*.f64 (pow.f64 (*.f64 c (*.f64 1 a)) 1/3) (cbrt.f64 -4)))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (*.f64 c c) (*.f64 a a)))) (/.f64 (*.f64 b b) (pow.f64 (cbrt.f64 -4) 2))) (*.f64 (cbrt.f64 (*.f64 c a)) (cbrt.f64 -4)))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (/.f64 1 (*.f64 c c)) (*.f64 a a))) (/.f64 b (/.f64 (pow.f64 (cbrt.f64 -4) 2) b))) (*.f64 (cbrt.f64 (*.f64 c a)) (cbrt.f64 -4)))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 c (*.f64 c (*.f64 a a))))) (*.f64 (/.f64 b (pow.f64 (cbrt.f64 -4) 2)) b)) (*.f64 (cbrt.f64 (*.f64 c a)) (cbrt.f64 -4)))
(+.f64 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5))) 1/3) (/.f64 (pow.f64 b 4) (pow.f64 (cbrt.f64 -4) 5)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 1/3) (/.f64 (pow.f64 b 2) (pow.f64 (cbrt.f64 -4) 2)))) (*.f64 (pow.f64 (*.f64 c (*.f64 1 a)) 1/3) (cbrt.f64 -4))))
(fma.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 4) (pow.f64 (cbrt.f64 -4) 5))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (*.f64 c c) (*.f64 a a)))) (/.f64 (*.f64 b b) (pow.f64 (cbrt.f64 -4) 2))) (*.f64 (cbrt.f64 (*.f64 c a)) (cbrt.f64 -4))))
(fma.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 4) (pow.f64 (cbrt.f64 -4) 5))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (/.f64 1 (*.f64 c c)) (*.f64 a a))) (/.f64 b (/.f64 (pow.f64 (cbrt.f64 -4) 2) b))) (*.f64 (cbrt.f64 (*.f64 c a)) (cbrt.f64 -4))))
(fma.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 4) (pow.f64 (cbrt.f64 -4) 5))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 c (*.f64 c (*.f64 a a))))) (*.f64 (/.f64 b (pow.f64 (cbrt.f64 -4) 2)) b)) (*.f64 (cbrt.f64 (*.f64 c a)) (cbrt.f64 -4))))
(+.f64 (*.f64 -1/9 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5))) 1/3) (/.f64 (pow.f64 b 4) (pow.f64 (cbrt.f64 -4) 5)))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 1/3) (/.f64 (pow.f64 b 2) (pow.f64 (cbrt.f64 -4) 2)))) (+.f64 (*.f64 (pow.f64 (*.f64 c (*.f64 1 a)) 1/3) (cbrt.f64 -4)) (*.f64 5/81 (*.f64 (pow.f64 (/.f64 1 (*.f64 (pow.f64 c 8) (pow.f64 a 8))) 1/3) (/.f64 (pow.f64 b 6) (pow.f64 (cbrt.f64 -4) 8)))))))
(fma.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 4) (pow.f64 (cbrt.f64 -4) 5))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (*.f64 c c) (*.f64 a a)))) (/.f64 (*.f64 b b) (pow.f64 (cbrt.f64 -4) 2))) (fma.f64 (cbrt.f64 (*.f64 c a)) (cbrt.f64 -4) (*.f64 5/81 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 c 8) (pow.f64 a 8)))) (/.f64 (pow.f64 b 6) (pow.f64 (cbrt.f64 -4) 8)))))))
(fma.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 4) (pow.f64 (cbrt.f64 -4) 5))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 (/.f64 1 (*.f64 c c)) (*.f64 a a))) (/.f64 b (/.f64 (pow.f64 (cbrt.f64 -4) 2) b))) (fma.f64 (cbrt.f64 (*.f64 c a)) (cbrt.f64 -4) (*.f64 5/81 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 c 8) (pow.f64 a 8)))) (/.f64 (pow.f64 b 6) (pow.f64 (cbrt.f64 -4) 8)))))))
(fma.f64 -1/9 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 4) (pow.f64 (cbrt.f64 -4) 5))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (*.f64 c (*.f64 c (*.f64 a a))))) (*.f64 (/.f64 b (pow.f64 (cbrt.f64 -4) 2)) b)) (fma.f64 (cbrt.f64 (*.f64 c a)) (cbrt.f64 -4) (*.f64 (cbrt.f64 (/.f64 1 (*.f64 (pow.f64 c 8) (pow.f64 a 8)))) (/.f64 (*.f64 (pow.f64 b 6) 5/81) (pow.f64 (cbrt.f64 -4) 8))))))
(-.f64 (pow.f64 (pow.f64 (pow.f64 b 2) 1/3) 3/2) b)
(-.f64 (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2) b)
(-.f64 (+.f64 (*.f64 -2 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 b) 1/9))) (pow.f64 (pow.f64 (pow.f64 b 2) 1/3) 3/2)) b)
(-.f64 (fma.f64 -2 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (/.f64 1 b) 1/18) (pow.f64 (/.f64 1 b) 1/18))) (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2)) b)
(fma.f64 (*.f64 (*.f64 c a) -2) (*.f64 (pow.f64 (/.f64 1 b) 1/18) (pow.f64 (/.f64 1 b) 1/18)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2) b))
(-.f64 (+.f64 (*.f64 (pow.f64 c 2) (*.f64 (+.f64 (*.f64 3/4 (+.f64 (*.f64 -16/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9) (pow.f64 a 2))) (*.f64 -32/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9) (pow.f64 a 2))))) (*.f64 2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9) (pow.f64 a 2)))) b)) (+.f64 (*.f64 -2 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 b) 1/9))) (pow.f64 (pow.f64 (pow.f64 b 2) 1/3) 3/2))) b)
(-.f64 (fma.f64 (*.f64 c c) (*.f64 b (fma.f64 3/4 (*.f64 (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18))) -16/3) (*.f64 2 (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18)))))) (fma.f64 -2 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (/.f64 1 b) 1/18) (pow.f64 (/.f64 1 b) 1/18))) (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2))) b)
(fma.f64 (*.f64 (*.f64 c c) (fma.f64 2 (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18))) (*.f64 (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18))) -4))) b (-.f64 (fma.f64 -2 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (/.f64 1 b) 1/18) (pow.f64 (/.f64 1 b) 1/18))) (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2)) b))
(fma.f64 (*.f64 (*.f64 c c) (*.f64 (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18))) -2)) b (fma.f64 (*.f64 (*.f64 c a) -2) (*.f64 (pow.f64 (/.f64 1 b) 1/18) (pow.f64 (/.f64 1 b) 1/18)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2) b)))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -3/2 (*.f64 (*.f64 (+.f64 (*.f64 -16/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9) (pow.f64 a 2))) (*.f64 -32/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9) (pow.f64 a 2)))) a) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/9))) (+.f64 (*.f64 1/4 (+.f64 (*.f64 -2 (/.f64 (+.f64 (*.f64 128/9 (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (*.f64 (pow.f64 a 3) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3)))) (*.f64 -64/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3) (pow.f64 a 3)))) (pow.f64 b 2))) (+.f64 (*.f64 -128/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/3) (pow.f64 a 3))) (*.f64 -128/9 (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (*.f64 (pow.f64 a 3) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/3))))))) (*.f64 -4/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/3) (pow.f64 a 3))))) (*.f64 (pow.f64 c 3) b)) (+.f64 (*.f64 (pow.f64 c 2) (*.f64 (+.f64 (*.f64 3/4 (+.f64 (*.f64 -16/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9) (pow.f64 a 2))) (*.f64 -32/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9) (pow.f64 a 2))))) (*.f64 2 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9) (pow.f64 a 2)))) b)) (+.f64 (*.f64 -2 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 b) 1/9))) (pow.f64 (pow.f64 (pow.f64 b 2) 1/3) 3/2)))) b)
(-.f64 (fma.f64 (fma.f64 -3/2 (*.f64 (*.f64 (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18))) -16/3) (*.f64 a (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/18)))) (fma.f64 1/4 (fma.f64 -2 (/.f64 (+.f64 (*.f64 128/9 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4))))) (*.f64 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4)))) -64/27)) (*.f64 b b)) (fma.f64 -128/27 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 10)))) (*.f64 -128/9 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 10))))))) (*.f64 -4/3 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 10))))))) (*.f64 b (pow.f64 c 3)) (fma.f64 (*.f64 c c) (*.f64 b (fma.f64 3/4 (*.f64 (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18))) -16/3) (*.f64 2 (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18)))))) (fma.f64 -2 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (/.f64 1 b) 1/18) (pow.f64 (/.f64 1 b) 1/18))) (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2)))) b)
(fma.f64 (fma.f64 -3/2 (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18)) (*.f64 (*.f64 a a) -16/3)) (*.f64 a (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/18)))) (fma.f64 -4/3 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 10)))) (*.f64 1/4 (fma.f64 -2 (/.f64 (*.f64 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4)))) 320/27) (*.f64 b b)) (*.f64 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 10)))) -512/27))))) (*.f64 b (pow.f64 c 3)) (fma.f64 (*.f64 (*.f64 c c) (fma.f64 2 (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18))) (*.f64 (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18))) -4))) b (-.f64 (fma.f64 -2 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (/.f64 1 b) 1/18) (pow.f64 (/.f64 1 b) 1/18))) (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2)) b)))
(+.f64 (fma.f64 -2 (*.f64 a (*.f64 c (*.f64 (pow.f64 (/.f64 1 b) 1/18) (pow.f64 (/.f64 1 b) 1/18)))) (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2)) (-.f64 (*.f64 b (*.f64 (*.f64 c c) (+.f64 (*.f64 (fma.f64 -3/2 (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18)) (*.f64 (*.f64 a a) -16/3)) (*.f64 a (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/18)))) (fma.f64 -4/3 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 10)))) (*.f64 1/4 (fma.f64 -2 (*.f64 (/.f64 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4)))) b) (/.f64 320/27 b)) (*.f64 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 10)))) -512/27))))) c) (*.f64 (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18))) -2)))) b))
(+.f64 (fma.f64 (*.f64 (*.f64 c a) -2) (*.f64 (pow.f64 (/.f64 1 b) 1/18) (pow.f64 (/.f64 1 b) 1/18)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2) b)) (*.f64 b (*.f64 (*.f64 c c) (+.f64 (*.f64 (fma.f64 -3/2 (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18)) (*.f64 (*.f64 a a) -16/3)) (*.f64 a (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/18)))) (fma.f64 -4/3 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 10)))) (*.f64 1/4 (fma.f64 -2 (*.f64 (/.f64 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4)))) b) (/.f64 320/27 b)) (*.f64 (*.f64 (pow.f64 a 3) (cbrt.f64 (/.f64 1 (pow.f64 b 10)))) -512/27))))) c) (*.f64 (*.f64 (*.f64 a a) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18))) -2)))))
(-.f64 (pow.f64 (pow.f64 (pow.f64 b 2) 1/3) 3/2) b)
(-.f64 (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2) b)
(-.f64 (+.f64 (*.f64 -2 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 b) 1/9))) (pow.f64 (pow.f64 (pow.f64 b 2) 1/3) 3/2)) b)
(-.f64 (fma.f64 -2 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (/.f64 1 b) 1/18) (pow.f64 (/.f64 1 b) 1/18))) (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2)) b)
(fma.f64 (*.f64 (*.f64 c a) -2) (*.f64 (pow.f64 (/.f64 1 b) 1/18) (pow.f64 (/.f64 1 b) 1/18)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2) b))
(-.f64 (+.f64 (*.f64 -2 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 b) 1/9))) (+.f64 (*.f64 (pow.f64 a 2) (*.f64 (+.f64 (*.f64 3/4 (+.f64 (*.f64 -16/9 (*.f64 (pow.f64 c 2) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9))) (*.f64 -32/9 (*.f64 (pow.f64 c 2) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9))))) (*.f64 2 (*.f64 (pow.f64 c 2) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9)))) b)) (pow.f64 (pow.f64 (pow.f64 b 2) 1/3) 3/2))) b)
(-.f64 (fma.f64 -2 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (/.f64 1 b) 1/18) (pow.f64 (/.f64 1 b) 1/18))) (fma.f64 (*.f64 a a) (*.f64 b (fma.f64 3/4 (*.f64 (*.f64 (*.f64 c c) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18))) -16/3) (*.f64 2 (*.f64 (*.f64 c c) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18)))))) (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2))) b)
(-.f64 (fma.f64 -2 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (/.f64 1 b) 1/18) (pow.f64 (/.f64 1 b) 1/18))) (fma.f64 (*.f64 a a) (*.f64 b (fma.f64 2 (*.f64 c (*.f64 c (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18)))) (*.f64 (*.f64 c (*.f64 c (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18)))) -4))) (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2))) b)
(-.f64 (fma.f64 -2 (*.f64 a (*.f64 c (*.f64 (pow.f64 (/.f64 1 b) 1/18) (pow.f64 (/.f64 1 b) 1/18)))) (fma.f64 (*.f64 a a) (*.f64 b (*.f64 (*.f64 c (*.f64 c (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18)))) -2)) (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2))) b)
(-.f64 (+.f64 (*.f64 -2 (*.f64 (*.f64 c a) (pow.f64 (/.f64 1 b) 1/9))) (+.f64 (*.f64 (pow.f64 a 2) (*.f64 (+.f64 (*.f64 3/4 (+.f64 (*.f64 -16/9 (*.f64 (pow.f64 c 2) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9))) (*.f64 -32/9 (*.f64 (pow.f64 c 2) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9))))) (*.f64 2 (*.f64 (pow.f64 c 2) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9)))) b)) (+.f64 (*.f64 (pow.f64 a 3) (*.f64 b (+.f64 (*.f64 -4/3 (*.f64 (pow.f64 c 3) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/3))) (+.f64 (*.f64 1/4 (+.f64 (*.f64 -128/9 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/3)))) (+.f64 (*.f64 -128/27 (*.f64 (pow.f64 c 3) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/3))) (*.f64 -2 (/.f64 (+.f64 (*.f64 128/9 (*.f64 (pow.f64 c 3) (*.f64 (pow.f64 (pow.f64 1 4) 1/9) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3)))) (*.f64 -64/27 (*.f64 (pow.f64 c 3) (pow.f64 (/.f64 1 (pow.f64 b 4)) 1/3)))) (pow.f64 b 2)))))) (*.f64 -3/2 (*.f64 (*.f64 c (+.f64 (*.f64 -16/9 (*.f64 (pow.f64 c 2) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9))) (*.f64 -32/9 (*.f64 (pow.f64 c 2) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/9))))) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/9))))))) (pow.f64 (pow.f64 (pow.f64 b 2) 1/3) 3/2)))) b)
(-.f64 (fma.f64 -2 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (/.f64 1 b) 1/18) (pow.f64 (/.f64 1 b) 1/18))) (fma.f64 (*.f64 a a) (*.f64 b (fma.f64 3/4 (*.f64 (*.f64 (*.f64 c c) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18))) -16/3) (*.f64 2 (*.f64 (*.f64 c c) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18)))))) (fma.f64 (pow.f64 a 3) (*.f64 b (fma.f64 -4/3 (*.f64 (pow.f64 c 3) (cbrt.f64 (/.f64 1 (pow.f64 b 10)))) (fma.f64 1/4 (fma.f64 -128/9 (*.f64 (pow.f64 c 3) (*.f64 1 (cbrt.f64 (/.f64 1 (pow.f64 b 10))))) (fma.f64 -128/27 (*.f64 (pow.f64 c 3) (cbrt.f64 (/.f64 1 (pow.f64 b 10)))) (*.f64 -2 (/.f64 (fma.f64 128/9 (*.f64 (*.f64 (pow.f64 c 3) 1) (cbrt.f64 (/.f64 1 (pow.f64 b 4)))) (*.f64 -64/27 (*.f64 (pow.f64 c 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4)))))) (*.f64 b b))))) (*.f64 -3/2 (*.f64 c (*.f64 (*.f64 (*.f64 (*.f64 c c) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18))) -16/3) (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/18)))))))) (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2)))) b)
(-.f64 (fma.f64 -2 (*.f64 (*.f64 c a) (*.f64 (pow.f64 (/.f64 1 b) 1/18) (pow.f64 (/.f64 1 b) 1/18))) (fma.f64 (*.f64 a a) (*.f64 b (fma.f64 2 (*.f64 c (*.f64 c (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18)))) (*.f64 (*.f64 c (*.f64 c (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18)))) -4))) (fma.f64 (pow.f64 a 3) (*.f64 b (fma.f64 -4/3 (*.f64 (pow.f64 c 3) (cbrt.f64 (/.f64 1 (pow.f64 b 10)))) (fma.f64 -3/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/18)) (*.f64 c (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18)) (*.f64 (*.f64 c c) -16/3)))) (*.f64 1/4 (fma.f64 -128/9 (*.f64 (pow.f64 c 3) (cbrt.f64 (/.f64 1 (pow.f64 b 10)))) (fma.f64 -2 (/.f64 (fma.f64 128/9 (*.f64 (pow.f64 c 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4)))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 b 4))) (*.f64 (pow.f64 c 3) -64/27))) (*.f64 b b)) (*.f64 (pow.f64 c 3) (*.f64 -128/27 (cbrt.f64 (/.f64 1 (pow.f64 b 10))))))))))) (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2)))) b)
(-.f64 (fma.f64 -2 (*.f64 a (*.f64 c (*.f64 (pow.f64 (/.f64 1 b) 1/18) (pow.f64 (/.f64 1 b) 1/18)))) (fma.f64 (*.f64 a a) (*.f64 b (*.f64 (*.f64 c (*.f64 c (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18)))) -2)) (fma.f64 (pow.f64 a 3) (*.f64 b (fma.f64 -4/3 (*.f64 (pow.f64 c 3) (cbrt.f64 (/.f64 1 (pow.f64 b 10)))) (fma.f64 1/4 (+.f64 (*.f64 (/.f64 -2 (*.f64 b b)) (*.f64 (*.f64 (pow.f64 c 3) (cbrt.f64 (/.f64 1 (pow.f64 b 4)))) 320/27)) (*.f64 (*.f64 (pow.f64 c 3) (cbrt.f64 (/.f64 1 (pow.f64 b 10)))) -512/27)) (*.f64 c (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 10)) 1/18)) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18) (pow.f64 (/.f64 1 (pow.f64 b 20)) 1/18)) (*.f64 (*.f64 c c) -16/3))) -3/2))))) (pow.f64 (cbrt.f64 (*.f64 b b)) 3/2)))) 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 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (sqrt.f64 -4) (pow.f64 b 2)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 -1 b)))
(fma.f64 -1/8 (*.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) (neg.f64 b)))
(-.f64 (fma.f64 -1/8 (*.f64 (sqrt.f64 -4) (*.f64 (*.f64 b b) (sqrt.f64 (/.f64 1 (*.f64 c a))))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))) b)
(-.f64 (*.f64 (sqrt.f64 -4) (+.f64 (sqrt.f64 (*.f64 c a)) (*.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 c a)))) (*.f64 b b)))) b)
(+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (*.f64 (sqrt.f64 -4) (*.f64 (pow.f64 b 4) (+.f64 (*.f64 1/128 (/.f64 1 (*.f64 (pow.f64 c 2) (pow.f64 a 2)))) (*.f64 1/16 (-.f64 (*.f64 -4/3 (*.f64 (/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (cbrt.f64 -4) 6)))) (pow.f64 1 1/3))) (*.f64 8/3 (/.f64 1 (*.f64 (pow.f64 c 2) (*.f64 (pow.f64 a 2) (pow.f64 (cbrt.f64 -4) 6))))))))))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (sqrt.f64 -4) (pow.f64 b 2)))) (+.f64 (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4)) (*.f64 -1 b))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (*.f64 (sqrt.f64 -4) (*.f64 (pow.f64 b 4) (+.f64 (/.f64 1/128 (*.f64 (*.f64 c c) (*.f64 a a))) (*.f64 1/16 (-.f64 (*.f64 -4/3 (/.f64 1 (*.f64 (*.f64 c c) (*.f64 (*.f64 a a) (pow.f64 (cbrt.f64 -4) 6))))) (/.f64 8/3 (*.f64 (*.f64 c c) (*.f64 (*.f64 a a) (pow.f64 (cbrt.f64 -4) 6))))))))) (fma.f64 -1/8 (*.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) (neg.f64 b))))
(fma.f64 (sqrt.f64 (*.f64 c a)) (*.f64 (pow.f64 b 4) (*.f64 (fma.f64 1/16 (*.f64 (/.f64 1 (*.f64 (*.f64 c c) (*.f64 (*.f64 a a) 16))) -4) (/.f64 1/128 (*.f64 (*.f64 c a) (*.f64 c a)))) (sqrt.f64 -4))) (-.f64 (fma.f64 -1/8 (*.f64 (sqrt.f64 -4) (*.f64 (*.f64 b b) (sqrt.f64 (/.f64 1 (*.f64 c a))))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4))) b))
(fma.f64 (sqrt.f64 (*.f64 c a)) (*.f64 (pow.f64 b 4) (*.f64 (fma.f64 1/16 (/.f64 -4 (*.f64 c (*.f64 c (*.f64 (*.f64 a a) 16)))) (/.f64 1/128 (*.f64 c (*.f64 c (*.f64 a a))))) (sqrt.f64 -4))) (-.f64 (*.f64 (sqrt.f64 -4) (+.f64 (sqrt.f64 (*.f64 c a)) (*.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 c a)))) (*.f64 b b)))) b))
(*.f64 -1 b)
(neg.f64 b)
(*.f64 -1 b)
(neg.f64 b)

localize113.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
1.2b
(fma.f64 b b (*.f64 c (*.f64 a -4)))
24.8b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
34.0b
(cbrt.f64 (pow.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))) 3/2))
Compiler

Compiled 190 to 109 computations (42.6% saved)

series8.0ms (0.1%)

Counts
1 → 20
Calls

9 calls:

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

rewrite87.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
968×pow1_binary64
901×add-log-exp_binary64
901×log1p-expm1-u_binary64
901×expm1-log1p-u_binary64
110×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify110.0ms (0.8%)

Algorithm
egg-herbie
Rules
448×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
33719555
45007555
56869555
Stop Event
node limit
Counts
42 → 45
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)))))
Outputs
(*.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 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 b (/.f64 (sqrt.f64 -4) 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 (sqrt.f64 -4)) b))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (sqrt.f64 -4)) b)) (*.f64 (sqrt.f64 -4) (sqrt.f64 (*.f64 c a))))
(+.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 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 b (/.f64 (sqrt.f64 -4) b))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (*.f64 (/.f64 b (sqrt.f64 -4)) b)) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.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 -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 b (/.f64 -4 b)) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (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 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 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 b (/.f64 (sqrt.f64 -4) b)))))))
(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 (/.f64 b (sqrt.f64 -4)) b)) (fma.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -4) (*.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 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 b (/.f64 -4 b)) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3))))))))))
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(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 (*.f64 c a) b))))
(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 (/.f64 a b) (+.f64 c (/.f64 (*.f64 a (*.f64 c c)) (*.f64 b b))))))
(+.f64 b (*.f64 -2 (*.f64 (+.f64 1 (/.f64 (*.f64 c a) (*.f64 b b))) (*.f64 a (/.f64 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 (*.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 (*.f64 c a) b)))))
(+.f64 (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -2 (*.f64 (/.f64 c b) a))) (fma.f64 -2 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 a a)) b))
(+.f64 (fma.f64 -4 (/.f64 (pow.f64 a 3) (/.f64 (pow.f64 b 5) (pow.f64 c 3))) 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 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 a 3) (/.f64 (pow.f64 b 5) (pow.f64 c 3))) b) (*.f64 -2 (*.f64 (+.f64 1 (/.f64 (*.f64 c a) (*.f64 b b))) (*.f64 a (/.f64 c b)))))
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))
(fma.f64 2 (/.f64 (*.f64 c a) b) (neg.f64 b))
(-.f64 (*.f64 2 (*.f64 (/.f64 c b) a)) b)
(-.f64 (*.f64 (/.f64 2 b) (*.f64 c a)) b)
(-.f64 (/.f64 (*.f64 (*.f64 c 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 (*.f64 c a) b) (fma.f64 2 (/.f64 (*.f64 (*.f64 c c) (*.f64 a a)) (pow.f64 b 3)) (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 (/.f64 a b) (+.f64 c (/.f64 (*.f64 a (*.f64 c c)) (*.f64 b b))))) b)
(-.f64 (*.f64 2 (*.f64 (+.f64 1 (/.f64 (*.f64 c a) (*.f64 b b))) (*.f64 a (/.f64 c b)))) 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 (*.f64 c a) b) (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) (-.f64 (fma.f64 4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (/.f64 (*.f64 (*.f64 c c) 2) (/.f64 (pow.f64 b 3) (*.f64 a a)))) b))
(fma.f64 4 (/.f64 (pow.f64 a 3) (/.f64 (pow.f64 b 5) (pow.f64 c 3))) (-.f64 (*.f64 2 (fma.f64 (/.f64 c b) a (*.f64 (*.f64 a a) (/.f64 (*.f64 c c) (pow.f64 b 3))))) b))
(fma.f64 2 (*.f64 (/.f64 a b) (+.f64 c (/.f64 (*.f64 a (*.f64 c c)) (*.f64 b b)))) (-.f64 (*.f64 (/.f64 (*.f64 (pow.f64 c 3) 4) (pow.f64 b 5)) (pow.f64 a 3)) b))
(fma.f64 2 (*.f64 (+.f64 1 (/.f64 (*.f64 c a) (*.f64 b b))) (*.f64 a (/.f64 c b))) (-.f64 (*.f64 (/.f64 (*.f64 (pow.f64 c 3) 4) (pow.f64 b 5)) (pow.f64 a 3)) b))
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(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 (*.f64 c a) b))))
(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 (/.f64 a b) (+.f64 c (/.f64 (*.f64 a (*.f64 c c)) (*.f64 b b))))))
(+.f64 b (*.f64 -2 (*.f64 (+.f64 1 (/.f64 (*.f64 c a) (*.f64 b b))) (*.f64 a (/.f64 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 (*.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 (*.f64 c a) b)))))
(+.f64 (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -2 (*.f64 (/.f64 c b) a))) (fma.f64 -2 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 a a)) b))
(+.f64 (fma.f64 -4 (/.f64 (pow.f64 a 3) (/.f64 (pow.f64 b 5) (pow.f64 c 3))) 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 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 a 3) (/.f64 (pow.f64 b 5) (pow.f64 c 3))) b) (*.f64 -2 (*.f64 (+.f64 1 (/.f64 (*.f64 c a) (*.f64 b b))) (*.f64 a (/.f64 c b)))))
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(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 (*.f64 c a) b))))
(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 (/.f64 a b) (+.f64 c (/.f64 (*.f64 a (*.f64 c c)) (*.f64 b b))))))
(+.f64 b (*.f64 -2 (*.f64 (+.f64 1 (/.f64 (*.f64 c a) (*.f64 b b))) (*.f64 a (/.f64 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 (*.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 (*.f64 c a) b)))))
(+.f64 (fma.f64 -4 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (pow.f64 a 3))) (*.f64 -2 (*.f64 (/.f64 c b) a))) (fma.f64 -2 (*.f64 (/.f64 (*.f64 c c) (pow.f64 b 3)) (*.f64 a a)) b))
(+.f64 (fma.f64 -4 (/.f64 (pow.f64 a 3) (/.f64 (pow.f64 b 5) (pow.f64 c 3))) 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 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 a 3) (/.f64 (pow.f64 b 5) (pow.f64 c 3))) b) (*.f64 -2 (*.f64 (+.f64 1 (/.f64 (*.f64 c a) (*.f64 b b))) (*.f64 a (/.f64 c b)))))

eval1.7s (12.2%)

Compiler

Compiled 70877 to 42177 computations (40.5% saved)

prune381.0ms (2.7%)

Pruning

27 alts after pruning (27 fresh and 0 done)

PrunedKeptTotal
New1519251544
Fresh8210
Picked101
Done505
Total1533271560
Error
5.9b
Counts
1560 → 27
Alt Table
Click to see full alt table
StatusErrorProgram
18.8b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) 2) b) (/.f64 1/2 a)))
18.6b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (*.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (cbrt.f64 c) (/.f64 a b))) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
33.9b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (cbrt.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 3/2)))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
31.6b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (/.f64 (-.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)) (*.f64 b b)) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (/.f64 1/2 a)))
24.3b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) b) (/.f64 1/2 a)))
26.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 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
30.3b
(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 (*.f64 (cbrt.f64 (*.f64 c a)) (cbrt.f64 -4)) 3/2) b) (/.f64 1/2 a)))
43.1b
(if (>=.f64 b 0) (*.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 c 2)) 2) 1) (/.f64 (cbrt.f64 (*.f64 c 2)) (-.f64 b (fma.f64 (*.f64 c (/.f64 a b)) -2 b)))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
18.6b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 a b))) 3) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
35.4b
(if (>=.f64 b 0) (pow.f64 (pow.f64 (/.f64 (*.f64 c -2) (+.f64 b (fma.f64 (*.f64 c (/.f64 a b)) -2 b))) 3) 1/3) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
43.1b
(if (>=.f64 b 0) (*.f64 (/.f64 c 1) (/.f64 2 (-.f64 b (fma.f64 (*.f64 c (/.f64 a b)) -2 b)))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
30.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (exp.f64 (log.f64 (/.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))) (*.f64 a -2)))))
22.5b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (-.f64 (/.f64 c b) (/.f64 b a)))
42.6b
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
22.5b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
26.7b
(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)))
22.5b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (pow.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 3/2)))) (*.f64 (-.f64 (pow.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 3/2) b) (/.f64 1/2 a)))
31.4b
(if (>=.f64 b 0) (exp.f64 (log.f64 (/.f64 (*.f64 c -2) (+.f64 b (fma.f64 (*.f64 c (/.f64 a b)) -2 b))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
22.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.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 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
26.1b
(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 (pow.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) 2/3) 3/2) b) (/.f64 1/2 a)))
22.6b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
32.5b
(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 (cbrt.f64 (*.f64 b b)) 3/2) b) (/.f64 1/2 a)))
38.4b
(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) (fma.f64 -2 (/.f64 c (/.f64 b a)) b)) (*.f64 2 a)))
33.1b
(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 (pow.f64 (pow.f64 b 2) 1/3) 3/2) b) (/.f64 1/2 a)))
26.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 c (*.f64 a -4))) b) (/.f64 1/2 a)))
25.8b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (cbrt.f64 (pow.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b)) 3/2)))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 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 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) b) (/.f64 1/2 a)))
Compiler

Compiled 2014 to 1348 computations (33.1% saved)

localize79.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
2.1b
(*.f64 (cbrt.f64 c) (/.f64 a b))
2.6b
(*.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (cbrt.f64 c) (/.f64 a b)))
3.0b
(/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (*.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (cbrt.f64 c) (/.f64 a b))) b)))
24.8b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 201 to 93 computations (53.7% saved)

series49.0ms (0.3%)

Counts
3 → 96
Calls

27 calls:

TimeVariablePointExpression
18.0ms
b
@0
(/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (*.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (cbrt.f64 c) (/.f64 a b))) b)))
9.0ms
c
@-inf
(*.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (cbrt.f64 c) (/.f64 a b)))
2.0ms
a
@0
(*.f64 (cbrt.f64 c) (/.f64 a b))
2.0ms
b
@inf
(*.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (cbrt.f64 c) (/.f64 a b)))
2.0ms
b
@0
(*.f64 (cbrt.f64 c) (/.f64 a b))

rewrite86.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
827×prod-diff_binary64
286×expm1-udef_binary64
286×log1p-udef_binary64
273×fma-def_binary64
237×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify101.0ms (0.7%)

Algorithm
egg-herbie
Rules
532×unswap-sqr_binary64
447×times-frac_binary64
369×distribute-rgt-neg-in_binary64
341×sub-neg_binary64
339×distribute-neg-frac_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0571559
11731535
26471495
337391491
464671491
Stop Event
node limit
Counts
186 → 108
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 c b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(/.f64 b a)
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(/.f64 b a)
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(/.f64 b a)
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(*.f64 -1 (/.f64 c b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(*.f64 -1 (/.f64 c b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(*.f64 -1 (/.f64 c b))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(/.f64 b a)
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(/.f64 b a)
(+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2)))))
(+.f64 (/.f64 b a) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (pow.f64 c 2) (pow.f64 a 3))) (+.f64 (/.f64 (pow.f64 b 3) (*.f64 c (pow.f64 a 2))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(/.f64 (*.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 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
Outputs
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (neg.f64 (/.f64 c b)))
(-.f64 (/.f64 (neg.f64 c) b) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)))
(neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b)))
(*.f64 c (-.f64 (/.f64 -1 b) (/.f64 c (/.f64 (pow.f64 b 3) a))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (neg.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))))))
(-.f64 (-.f64 (/.f64 (neg.f64 c) b) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a))) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)))
(neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (/.f64 c b))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (*.f64 -1 (+.f64 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) (pow.f64 a 3))) (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a)))))))
(-.f64 (-.f64 (-.f64 (/.f64 (neg.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3))) (pow.f64 b 7)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a))) (/.f64 c b)) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)))
(-.f64 (neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b))) (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 4) (pow.f64 b 7)))))
(-.f64 (*.f64 c (-.f64 (/.f64 -1 b) (/.f64 c (/.f64 (pow.f64 b 3) a)))) (*.f64 (*.f64 a a) (+.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) a)))))
(-.f64 (neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b))) (*.f64 (*.f64 a a) (+.f64 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) a)) (/.f64 (pow.f64 c 3) (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 (pow.f64 b 3) (*.f64 c (*.f64 a 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 c (*.f64 a a))) (/.f64 (pow.f64 b 5) (*.f64 c (*.f64 c (pow.f64 a 3))))))
(+.f64 (+.f64 (/.f64 b a) (/.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 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 c (*.f64 a a))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4)))))
(+.f64 (+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (/.f64 (/.f64 (pow.f64 b 7) (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 (/.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 c (*.f64 a a))) (/.f64 (pow.f64 b 5) (*.f64 c (*.f64 c (pow.f64 a 3))))))
(+.f64 (+.f64 (/.f64 b a) (/.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 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 c (*.f64 a a))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4)))))
(+.f64 (+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (/.f64 (/.f64 (pow.f64 b 7) (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 (/.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 c (*.f64 a a))) (/.f64 (pow.f64 b 5) (*.f64 c (*.f64 c (pow.f64 a 3))))))
(+.f64 (+.f64 (/.f64 b a) (/.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 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 c (*.f64 a a))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4)))))
(+.f64 (+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (/.f64 (/.f64 (pow.f64 b 7) (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 (*.f64 c c) (/.f64 (pow.f64 b 3) a)))
(neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b)))
(*.f64 c (-.f64 (/.f64 -1 b) (/.f64 c (/.f64 (pow.f64 b 3) a))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (neg.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))))))
(-.f64 (-.f64 (/.f64 (neg.f64 c) b) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a))) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)))
(neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (/.f64 c b))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (*.f64 -1 (+.f64 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) (pow.f64 a 3))) (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a)))))))
(-.f64 (-.f64 (-.f64 (/.f64 (neg.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3))) (pow.f64 b 7)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a))) (/.f64 c b)) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)))
(-.f64 (neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b))) (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 4) (pow.f64 b 7)))))
(-.f64 (*.f64 c (-.f64 (/.f64 -1 b) (/.f64 c (/.f64 (pow.f64 b 3) a)))) (*.f64 (*.f64 a a) (+.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) a)))))
(-.f64 (neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b))) (*.f64 (*.f64 a a) (+.f64 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) a)) (/.f64 (pow.f64 c 3) (pow.f64 b 5)))))
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (neg.f64 (/.f64 c b)))
(-.f64 (/.f64 (neg.f64 c) b) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)))
(neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b)))
(*.f64 c (-.f64 (/.f64 -1 b) (/.f64 c (/.f64 (pow.f64 b 3) a))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (neg.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))))))
(-.f64 (-.f64 (/.f64 (neg.f64 c) b) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a))) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)))
(neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (/.f64 c b))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (*.f64 -1 (+.f64 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) (pow.f64 a 3))) (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a)))))))
(-.f64 (-.f64 (-.f64 (/.f64 (neg.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3))) (pow.f64 b 7)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a))) (/.f64 c b)) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)))
(-.f64 (neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b))) (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 4) (pow.f64 b 7)))))
(-.f64 (*.f64 c (-.f64 (/.f64 -1 b) (/.f64 c (/.f64 (pow.f64 b 3) a)))) (*.f64 (*.f64 a a) (+.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) a)))))
(-.f64 (neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b))) (*.f64 (*.f64 a a) (+.f64 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) a)) (/.f64 (pow.f64 c 3) (pow.f64 b 5)))))
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (*.f64 -1 (/.f64 c b)))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (neg.f64 (/.f64 c b)))
(-.f64 (/.f64 (neg.f64 c) b) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)))
(neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b)))
(*.f64 c (-.f64 (/.f64 -1 b) (/.f64 c (/.f64 (pow.f64 b 3) a))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (neg.f64 (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a))))))
(-.f64 (-.f64 (/.f64 (neg.f64 c) b) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a))) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a)))
(neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (/.f64 c b))))
(+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))) (+.f64 (*.f64 -1 (/.f64 c b)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3)) (pow.f64 b 7))) (*.f64 -1 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(fma.f64 -1 (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)) (fma.f64 -1 (/.f64 c b) (*.f64 -1 (+.f64 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) (pow.f64 a 3))) (/.f64 (pow.f64 c 3) (/.f64 (pow.f64 b 5) (*.f64 a a)))))))
(-.f64 (-.f64 (-.f64 (/.f64 (neg.f64 (*.f64 (pow.f64 c 4) (pow.f64 a 3))) (pow.f64 b 7)) (*.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a))) (/.f64 c b)) (/.f64 (*.f64 c c) (/.f64 (pow.f64 b 3) a)))
(-.f64 (neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b))) (fma.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (*.f64 a a) (*.f64 (pow.f64 a 3) (/.f64 (pow.f64 c 4) (pow.f64 b 7)))))
(-.f64 (*.f64 c (-.f64 (/.f64 -1 b) (/.f64 c (/.f64 (pow.f64 b 3) a)))) (*.f64 (*.f64 a a) (+.f64 (/.f64 (pow.f64 c 3) (pow.f64 b 5)) (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) a)))))
(-.f64 (neg.f64 (fma.f64 (/.f64 c (/.f64 (pow.f64 b 3) c)) a (/.f64 c b))) (*.f64 (*.f64 a a) (+.f64 (/.f64 (pow.f64 c 4) (/.f64 (pow.f64 b 7) a)) (/.f64 (pow.f64 c 3) (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 (pow.f64 b 3) (*.f64 c (*.f64 a 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 c (*.f64 a a))) (/.f64 (pow.f64 b 5) (*.f64 c (*.f64 c (pow.f64 a 3))))))
(+.f64 (+.f64 (/.f64 b a) (/.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 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 c (*.f64 a a))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4)))))
(+.f64 (+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (/.f64 (/.f64 (pow.f64 b 7) (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 (/.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 c (*.f64 a a))) (/.f64 (pow.f64 b 5) (*.f64 c (*.f64 c (pow.f64 a 3))))))
(+.f64 (+.f64 (/.f64 b a) (/.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 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 c (*.f64 a a))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4))))))
(+.f64 (+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (/.f64 (pow.f64 b 7) (*.f64 (pow.f64 c 3) (pow.f64 a 4)))))
(+.f64 (+.f64 (/.f64 b a) (/.f64 (pow.f64 b 3) (*.f64 c (*.f64 a a)))) (+.f64 (/.f64 (pow.f64 b 5) (*.f64 (*.f64 c c) (pow.f64 a 3))) (/.f64 (/.f64 (pow.f64 b 7) (pow.f64 c 3)) (pow.f64 a 4))))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))
(*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))
(*.f64 (cbrt.f64 c) (/.f64 a b))

localize20.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))
1.0ms
a
@0
(-.f64 (/.f64 c b) (/.f64 b a))
0.0ms
b
@inf
(-.f64 (/.f64 c b) (/.f64 b a))
0.0ms
a
@-inf
(-.f64 (/.f64 c b) (/.f64 b a))

rewrite72.0ms (0.5%)

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))))))

simplify77.0ms (0.5%)

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))

localize56.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.5b
(-.f64 b (fma.f64 (*.f64 c (/.f64 a b)) -2 b))
2.8b
(*.f64 (/.f64 c 1) (/.f64 2 (-.f64 b (fma.f64 (*.f64 c (/.f64 a b)) -2 b))))
4.5b
(*.f64 c (/.f64 a b))
24.8b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 173 to 85 computations (50.9% saved)

series15.0ms (0.1%)

Counts
3 → 108
Calls

27 calls:

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

rewrite95.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
697×log-prod_binary64
490×prod-diff_binary64
251×expm1-udef_binary64
251×log1p-udef_binary64
239×log-div_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify28.0ms (0.2%)

Algorithm
egg-herbie
Rules
16×*-commutative_binary64
15×associate-/l*_binary64
11×associate-/r/_binary64
10×associate-*r*_binary64
associate-*l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09756
114756
229756
356756
486756
597756
Stop Event
saturated
Counts
291 → 187
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 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(*.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))
Outputs
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 (*.f64 c a) b)
(/.f64 c (/.f64 b a))
(*.f64 (/.f64 c b) a)
(*.f64 a (/.f64 c b))
(*.f64 c (/.f64 a b))
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))
(*.f64 2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 2 (*.f64 c a)) b)
(/.f64 (*.f64 2 c) (/.f64 b a))
(*.f64 (/.f64 2 b) (*.f64 c a))
(*.f64 a (*.f64 2 (/.f64 c b)))
(*.f64 c (*.f64 a (/.f64 2 b)))

localize79.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b))
1.0b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
24.8b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
34.0b
(cbrt.f64 (pow.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b)) 3/2))
Compiler

Compiled 196 to 109 computations (44.4% saved)

series6.0ms (0%)

Counts
2 → 56
Calls

18 calls:

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

rewrite67.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
553×log-prod_binary64
364×pow-prod-down_binary64
307×pow2_binary64
302×fma-def_binary64
211×pow-to-exp_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01227
125623
2319023
Stop Event
node limit
Counts
2 → 126
Calls
Call 1
Inputs
(cbrt.f64 (pow.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b)) 3/2))
(+.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 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 (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 (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/4) (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 2)) (sqrt.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (*.f64 (pow.f64 (*.f64 c a) 2) 16) (pow.f64 b 4))) (sqrt.f64 (-.f64 (*.f64 c (*.f64 a -4)) (*.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 c (*.f64 a -4)) (sqrt.f64 (-.f64 (pow.f64 b 4) (*.f64 c (*.f64 (*.f64 a -4) (*.f64 b b)))))))))) (#(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 (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)) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 9/2) 1/9)))) (#(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)) 1/6) 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 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 2) 3/4)))) (#(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/4) 2/3)))) (#(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 (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 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 (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 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1))))) (#(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 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/6)) 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/4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)))) 3/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 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) 1) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) 1/3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 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 c (*.f64 a -4)) (*.f64 b b))) (/.f64 (pow.f64 b 4) (-.f64 (*.f64 c (*.f64 a -4)) (*.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 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 (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 c (*.f64 (*.f64 a -4) (*.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 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)) 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 c (*.f64 (*.f64 a -4) (*.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 c (*.f64 a -4)) (*.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 c (*.f64 (*.f64 a -4) (*.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 c (*.f64 (*.f64 a -4) (*.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 c (*.f64 a -4)) (*.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 c (*.f64 (*.f64 a -4) (*.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 c (*.f64 a -4)) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 b 4) (*.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 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2) 2/3)))) (#(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)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 9/2) 2/9)))) (#(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)) 1/6) 6)))) (#(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 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 2) 3/2)))) (#(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/4) 4/3)))) (#(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 c (*.f64 (*.f64 a -4) (*.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 c (*.f64 a -4)) (*.f64 b b)) (-.f64 (*.f64 (pow.f64 (*.f64 c a) 2) 16) (pow.f64 b 4))) -1)))) (#(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 c (*.f64 a -4)))) (pow.f64 (exp.f64 b) b)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (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 (*.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 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 c (*.f64 a -4))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.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 exp.f64 (*.f64 (*.f64 2 (log.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))))) 3/2))))) (#(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)) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 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 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) 1) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) 1/3) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4))))) 1) 2))))) (#(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 c (*.f64 a -4)) 1 (*.f64 b b))))) (#(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 (*.f64 b b) 1 (*.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 1 (*.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 c (*.f64 a -4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 b) b) (pow.f64 (cbrt.f64 b) 2) (*.f64 c (*.f64 a -4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (*.f64 a a) 16)) (*.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 c (*.f64 a -4))) (cbrt.f64 (*.f64 (pow.f64 (*.f64 c a) 2) 16)) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 c a) 2) 16)) (cbrt.f64 (*.f64 c (*.f64 a -4))) (*.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 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 b) (pow.f64 b 3/2) (*.f64 c (*.f64 a -4)))))) (#(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 c (*.f64 a -4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 b) 5) (cbrt.f64 b) (*.f64 c (*.f64 a -4)))))) (#(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 (cbrt.f64 (*.f64 (*.f64 a a) 16))) (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))))))

simplify85.0ms (0.6%)

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
182 → 154
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))

localize61.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
3.0b
(/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 a b))) 3) b)))
4.5b
(*.f64 c (/.f64 a b))
16.8b
(cbrt.f64 (*.f64 c (/.f64 a b)))
24.8b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 186 to 87 computations (53.2% saved)

series17.0ms (0.1%)

Counts
2 → 11
Calls

18 calls:

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

rewrite79.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
827×prod-diff_binary64
271×expm1-udef_binary64
271×log1p-udef_binary64
253×fma-def_binary64
222×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify11.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0666
11066
21766
32366
42966
53766
64566
75566
86366
97766
Stop Event
saturated
Counts
81 → 72
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 c b))
(*.f64 -1 (/.f64 c b))
(*.f64 -1 (/.f64 c b))
(*.f64 -1 (/.f64 c b))
(*.f64 -1 (/.f64 c b))
(*.f64 -1 (/.f64 c b))
(*.f64 -1 (/.f64 c b))
(*.f64 -1 (/.f64 c b))
(*.f64 -1 (/.f64 c b))
(*.f64 -1 (/.f64 c b))
(*.f64 -1 (/.f64 c b))
Outputs
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)
(*.f64 -1 (/.f64 c b))
(neg.f64 (/.f64 c b))
(/.f64 (neg.f64 c) b)

eval775.0ms (5.4%)

Compiler

Compiled 51358 to 28864 computations (43.8% saved)

prune227.0ms (1.6%)

Pruning

37 alts after pruning (34 fresh and 3 done)

PrunedKeptTotal
New1116171133
Fresh51722
Picked011
Done224
Total1123371160
Error
5.9b
Counts
1160 → 37
Alt Table
Click to see full alt table
StatusErrorProgram
33.9b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (cbrt.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 3/2)))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
43.1b
(if (>=.f64 b 0) (*.f64 (/.f64 c 1) (/.f64 2 (pow.f64 (cbrt.f64 (-.f64 b (fma.f64 c (*.f64 (/.f64 a b) -2) b))) 3))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
26.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 c (*.f64 a -4))) b) (/.f64 1/2 a)))
43.1b
(if (>=.f64 b 0) (/.f64 (/.f64 (*.f64 c 2) (-.f64 b (fma.f64 c (*.f64 (/.f64 a b) -2) b))) 1) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
31.6b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (/.f64 (-.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)) (*.f64 b b)) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (/.f64 1/2 a)))
43.4b
(if (>=.f64 b 0) (exp.f64 (log.f64 (/.f64 (*.f64 c 2) (-.f64 b (fma.f64 c (*.f64 (/.f64 a b) -2) b))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
30.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (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))))))
30.1b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (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))))))
26.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 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
24.3b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) b) (/.f64 1/2 a)))
30.3b
(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 (*.f64 (cbrt.f64 (*.f64 c a)) (cbrt.f64 -4)) 3/2) b) (/.f64 1/2 a)))
29.8b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (exp.f64 (*.f64 (*.f64 3 (log.f64 (-.f64 (/.f64 c b) (/.f64 b a)))) 1/3)))
27.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (-.f64 (/.f64 a b) (*.f64 (/.f64 b c) 1)) (*.f64 (/.f64 b c) (/.f64 a b))))
62.9b
(if (>=.f64 b 0) (*.f64 (/.f64 c 1) (/.f64 2 (-.f64 b (fma.f64 (*.f64 c (/.f64 a b)) -2 b)))) (/.f64 (+.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b)) (*.f64 2 a)))
18.6b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 a b))) 3) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
22.7b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (fma.f64 c (/.f64 a b) (neg.f64 b)) (*.f64 b (/.f64 a b))))
29.7b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (exp.f64 1) (log.f64 (-.f64 (/.f64 c b) (/.f64 b a)))))
29.4b
(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)))
30.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (exp.f64 (log.f64 (/.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))) (*.f64 a -2)))))
22.3b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) b) (/.f64 1/2 a)))
18.6b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (pow.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 a b))) 2) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 c (/.f64 a b))))) 3) 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)) (expm1.f64 (log1p.f64 (-.f64 (/.f64 c b) (/.f64 b a)))))
22.5b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (-.f64 (/.f64 c b) (/.f64 b a)))
29.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (fma.f64 -2 (*.f64 (pow.f64 (cbrt.f64 c) 2) (*.f64 (pow.f64 (*.f64 c 1) 1/3) (/.f64 a b))) b))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
42.6b
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
22.5b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
26.7b
(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)))
43.4b
(if (>=.f64 b 0) (pow.f64 (sqrt.f64 (/.f64 (*.f64 c 2) (-.f64 b (fma.f64 c (*.f64 (/.f64 a b) -2) b)))) 2) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
22.5b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (pow.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 3/2)))) (*.f64 (-.f64 (pow.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 3/2) b) (/.f64 1/2 a)))
22.2b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.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 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
26.1b
(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 (pow.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) 2/3) 3/2) b) (/.f64 1/2 a)))
43.3b
(if (>=.f64 b 0) (pow.f64 (pow.f64 (/.f64 (*.f64 c 2) (-.f64 b (fma.f64 c (*.f64 (/.f64 a b) -2) b))) 3) 1/3) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
38.4b
(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) (fma.f64 -2 (/.f64 c (/.f64 b a)) b)) (*.f64 2 a)))
33.1b
(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 (pow.f64 (pow.f64 b 2) 1/3) 3/2) b) (/.f64 1/2 a)))
18.8b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) 2) b) (/.f64 1/2 a)))
25.8b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (cbrt.f64 (pow.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b)) 3/2)))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
32.5b
(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 (cbrt.f64 (*.f64 b b)) 3/2) b) (/.f64 1/2 a)))
Compiler

Compiled 2587 to 1694 computations (34.5% saved)

localize110.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
4.5b
(*.f64 c (/.f64 a b))
10.4b
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 a b))) 2) 1/3)
16.8b
(cbrt.f64 (*.f64 c (/.f64 a b)))
24.8b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 290 to 125 computations (56.9% saved)

series16.0ms (0.1%)

Counts
1 → 0
Calls

9 calls:

TimeVariablePointExpression
3.0ms
c
@0
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 a b))) 2) 1/3)
3.0ms
b
@-inf
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 a b))) 2) 1/3)
3.0ms
c
@-inf
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 a b))) 2) 1/3)
2.0ms
c
@inf
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 a b))) 2) 1/3)
1.0ms
a
@-inf
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 a b))) 2) 1/3)

rewrite55.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
496×log-prod_binary64
405×prod-exp_binary64
371×exp-prod_binary64
303×pow-prod-down_binary64
266×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01114
123714
2270014
Stop Event
node limit
Counts
1 → 33
Calls
Call 1
Inputs
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 a b))) 2) 1/3)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 c a) b)) 4) 1/18) (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 4)) (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 c a) b)) 4) 1/18))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (exp.f64 (*.f64 (log.f64 (cbrt.f64 c)) 2/3)) (exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 a b))) 2/3)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 c a) b)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2/9 (log.f64 (/.f64 (*.f64 c a) b))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2/9 (log.f64 (/.f64 (*.f64 c a) b))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 c a) b)) 2/9))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 4 (log.f64 (cbrt.f64 (/.f64 (*.f64 c a) b)))) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/3 (*.f64 2/9 (log.f64 (/.f64 (*.f64 c a) b)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 c a) b)) 1) 2/9))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 c a) b)) 1/3) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 1) 2/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2/3 (log.f64 (/.f64 (*.f64 c a) b))) 1) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))) 2/3) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2/9 (log.f64 (/.f64 (*.f64 c a) b))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 2/3 (log.f64 (/.f64 (*.f64 c a) b))) 1/6) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 2/3 (log.f64 (/.f64 (*.f64 c a) b))) 1/6) (log.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (log.f64 (cbrt.f64 (cbrt.f64 (/.f64 (*.f64 c a) b)))) (*.f64 (*.f64 2/3 (log.f64 (/.f64 (*.f64 c a) b))) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (+.f64 (*.f64 (*.f64 2/3 (log.f64 (/.f64 (*.f64 c a) b))) 1/6) (*.f64 (*.f64 2/3 (log.f64 (/.f64 (*.f64 c a) b))) 1/6)))))))

simplify7.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
33 → 33
Calls
Call 1
Inputs
Outputs

localize27.0ms (0.2%)

Compiler

Compiled 61 to 35 computations (42.6% saved)

localize37.0ms (0.3%)

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))
1.0b
(+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))
1.0b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
24.8b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 104 to 54 computations (48.1% saved)

localize107.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))
4.6b
(pow.f64 (*.f64 c (*.f64 a -4)) 3/2)
20.3b
(cbrt.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 3/2))
24.8b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 167 to 100 computations (40.1% saved)

series120.0ms (0.8%)

Counts
2 → 24
Calls

12 calls:

TimeVariablePointExpression
48.0ms
c
@-inf
(pow.f64 (*.f64 c (*.f64 a -4)) 3/2)
30.0ms
c
@0
(pow.f64 (*.f64 c (*.f64 a -4)) 3/2)
13.0ms
a
@-inf
(pow.f64 (*.f64 c (*.f64 a -4)) 3/2)
12.0ms
a
@0
(pow.f64 (*.f64 c (*.f64 a -4)) 3/2)
6.0ms
c
@inf
(pow.f64 (*.f64 c (*.f64 a -4)) 3/2)

rewrite80.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
819×pow1_binary64
768×add-log-exp_binary64
768×log1p-expm1-u_binary64
768×expm1-log1p-u_binary64
749×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0922
118919
2218619
Stop Event
node limit
Counts
2 → 45
Calls
Call 1
Inputs
(cbrt.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 3/2))
(pow.f64 (*.f64 c (*.f64 a -4)) 3/2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sqrt.f64 (*.f64 -4 (*.f64 c a)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 -4 (*.f64 c a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a)))) (cbrt.f64 (*.f64 -4 (*.f64 c a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 -4 (*.f64 c a))) (cbrt.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a)))))))) (#(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 (sqrt.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a)))) (sqrt.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 c 3/2)) (cbrt.f64 (pow.f64 (*.f64 a -4) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 -4 (*.f64 c a))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 -4 (*.f64 c a)))))))) (#(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/3) (sqrt.f64 (*.f64 -4 (*.f64 c a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 c 3/2) 1/3) (pow.f64 (pow.f64 (*.f64 a -4) 3/2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 -4 (*.f64 c a)) 3/4) 1/3) (pow.f64 (pow.f64 (*.f64 -4 (*.f64 c a)) 3/4) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -4 (*.f64 c a)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 -4 (*.f64 c a)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 -4 (*.f64 c a)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (*.f64 -4 (*.f64 c a)) 3/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -4 (*.f64 c a)) (sqrt.f64 (*.f64 -4 (*.f64 c a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 -4 (*.f64 c a)) 3/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) (*.f64 -4 (*.f64 c a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 -4 (*.f64 c a)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 a -4) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 a -4) 3/2) (pow.f64 c 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 -4 (*.f64 c a)) 3/4) (pow.f64 (*.f64 -4 (*.f64 c a)) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 3/2) (pow.f64 (*.f64 -4 (*.f64 c a)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 -4 (*.f64 c a))) 2) 3/2) (pow.f64 (cbrt.f64 (*.f64 -4 (*.f64 c a))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3/2) (pow.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 c a) 3/2) (pow.f64 -4 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 -4 (*.f64 c a)) (cbrt.f64 (*.f64 -4 (*.f64 c a)))) (cbrt.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 -4 (*.f64 c a)) (sqrt.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))))) (sqrt.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 -4 (*.f64 c a)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 -4 (*.f64 c a)) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (*.f64 -4 (*.f64 c a)) 3/2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 -4 (*.f64 c a)) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 -4 (*.f64 c a)) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 3/2 (log.f64 (*.f64 -4 (*.f64 c a)))))))))

simplify65.0ms (0.5%)

Algorithm
egg-herbie
Rules
697×fma-neg_binary64
636×div-sub_binary64
524×fma-def_binary64
465×exp-sum_binary64
365×exp-diff_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
048384
1128384
2331312
3832240
42292240
55990240
Stop Event
node limit
Counts
69 → 52
Calls
Call 1
Inputs
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a)))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a)))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a)))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a)))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 -4 a)) (*.f64 -1 (log.f64 (/.f64 1 c))))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 -4 a)) (*.f64 -1 (log.f64 (/.f64 1 c))))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 -4 a)) (*.f64 -1 (log.f64 (/.f64 1 c))))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 -4 a)) (*.f64 -1 (log.f64 (/.f64 1 c))))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 4 a)) (*.f64 -1 (log.f64 (/.f64 -1 c))))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 4 a)) (*.f64 -1 (log.f64 (/.f64 -1 c))))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 4 a)) (*.f64 -1 (log.f64 (/.f64 -1 c))))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 4 a)) (*.f64 -1 (log.f64 (/.f64 -1 c))))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 -4 c)) (log.f64 a))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 -4 c)) (log.f64 a))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 -4 c)) (log.f64 a))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 -4 c)) (log.f64 a))))
(exp.f64 (*.f64 3/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 a))) (log.f64 (*.f64 -4 c)))))
(exp.f64 (*.f64 3/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 a))) (log.f64 (*.f64 -4 c)))))
(exp.f64 (*.f64 3/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 a))) (log.f64 (*.f64 -4 c)))))
(exp.f64 (*.f64 3/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 a))) (log.f64 (*.f64 -4 c)))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 4 c)) (*.f64 -1 (log.f64 (/.f64 -1 a))))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 4 c)) (*.f64 -1 (log.f64 (/.f64 -1 a))))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 4 c)) (*.f64 -1 (log.f64 (/.f64 -1 a))))))
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 4 c)) (*.f64 -1 (log.f64 (/.f64 -1 a))))))
Outputs
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a)))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a)))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a)))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a)))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 -4 a)) (*.f64 -1 (log.f64 (/.f64 1 c))))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 -4 a)) (*.f64 -1 (log.f64 (/.f64 1 c))))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 -4 a)) (*.f64 -1 (log.f64 (/.f64 1 c))))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 -4 a)) (*.f64 -1 (log.f64 (/.f64 1 c))))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 4 a)) (*.f64 -1 (log.f64 (/.f64 -1 c))))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 4 a)) (*.f64 -1 (log.f64 (/.f64 -1 c))))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 4 a)) (*.f64 -1 (log.f64 (/.f64 -1 c))))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 4 a)) (*.f64 -1 (log.f64 (/.f64 -1 c))))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 -4 c)) (log.f64 a))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 -4 c)) (log.f64 a))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 -4 c)) (log.f64 a))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 -4 c)) (log.f64 a))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 a))) (log.f64 (*.f64 -4 c)))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 a))) (log.f64 (*.f64 -4 c)))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 a))) (log.f64 (*.f64 -4 c)))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 a))) (log.f64 (*.f64 -4 c)))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 4 c)) (*.f64 -1 (log.f64 (/.f64 -1 a))))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 4 c)) (*.f64 -1 (log.f64 (/.f64 -1 a))))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 4 c)) (*.f64 -1 (log.f64 (/.f64 -1 a))))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)
(exp.f64 (*.f64 3/2 (+.f64 (log.f64 (*.f64 4 c)) (*.f64 -1 (log.f64 (/.f64 -1 a))))))
(pow.f64 (exp.f64 3/2) (+.f64 (log.f64 c) (log.f64 (*.f64 -4 a))))
(*.f64 (pow.f64 c 3/2) (pow.f64 (*.f64 -4 a) 3/2))
(pow.f64 (*.f64 (*.f64 a -4) c) 3/2)

localize70.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
2.8b
(*.f64 (/.f64 c 1) (/.f64 2 (pow.f64 (cbrt.f64 (-.f64 b (fma.f64 c (*.f64 (/.f64 a b) -2) b))) 3)))
2.8b
(fma.f64 c (*.f64 (/.f64 a b) -2) b)
7.0b
(cbrt.f64 (-.f64 b (fma.f64 c (*.f64 (/.f64 a b) -2) b)))
24.8b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))
Compiler

Compiled 207 to 113 computations (45.4% saved)

series18.0ms (0.1%)

Counts
3 → 72
Calls

27 calls:

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

rewrite85.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
763×log-prod_binary64
526×prod-diff_binary64
277×expm1-udef_binary64
277×log1p-udef_binary64
260×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify22.0ms (0.2%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
010549
116495
233495
359495
493495
5113495
6115495
Stop Event
saturated
Counts
177 → 111
Calls
Call 1
Inputs
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(*.f64 -2 (/.f64 (*.f64 c a) b))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
b
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(+.f64 b (*.f64 -2 (/.f64 (*.f64 c a) b)))
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a b)) b)
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 -2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 -2 c) a) b)
(*.f64 (/.f64 c b) (*.f64 -2 a))
(*.f64 -2 (*.f64 c (/.f64 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a b)) b)
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 -2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 -2 c) a) b)
(*.f64 (/.f64 c b) (*.f64 -2 a))
(*.f64 -2 (*.f64 c (/.f64 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a b)) 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a b)) b)
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 -2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 -2 c) a) b)
(*.f64 (/.f64 c b) (*.f64 -2 a))
(*.f64 -2 (*.f64 c (/.f64 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a b)) b)
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 -2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 -2 c) a) b)
(*.f64 (/.f64 c b) (*.f64 -2 a))
(*.f64 -2 (*.f64 c (/.f64 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a b)) b)
(*.f64 -2 (/.f64 (*.f64 c a) b))
(*.f64 -2 (/.f64 c (/.f64 b a)))
(/.f64 (*.f64 (*.f64 -2 c) a) b)
(*.f64 (/.f64 c b) (*.f64 -2 a))
(*.f64 -2 (*.f64 c (/.f64 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a b)) 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a b)) 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a 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)
(fma.f64 -2 (*.f64 c (/.f64 a b)) b)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)
(/.f64 b a)

eval763.0ms (5.3%)

Compiler

Compiled 49961 to 29395 computations (41.2% saved)

prune211.0ms (1.5%)

Pruning

36 alts after pruning (33 fresh and 3 done)

PrunedKeptTotal
New110871115
Fresh32629
Picked101
Done437
Total1116361152
Error
4.7b
Counts
1152 → 36
Alt Table
Click to see full alt table
StatusErrorProgram
33.9b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (cbrt.f64 (pow.f64 (*.f64 c (*.f64 a -4)) 3/2)))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
26.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 c (*.f64 a -4))) b) (/.f64 1/2 a)))
43.1b
(if (>=.f64 b 0) (/.f64 (/.f64 (*.f64 c 2) (-.f64 b (fma.f64 c (*.f64 (/.f64 a b) -2) b))) 1) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
38.4b
(if (>=.f64 b 0) (*.f64 (/.f64 c 1) (/.f64 2 (pow.f64 (cbrt.f64 (-.f64 b (*.f64 -2 (*.f64 c (/.f64 a b))))) 3))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
31.6b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (sqrt.f64 (fma.f64 b b (*.f64 c (*.f64 a -4))))))) (*.f64 (/.f64 (-.f64 (fma.f64 (*.f64 c a) -4 (*.f64 b b)) (*.f64 b b)) (+.f64 b (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) (/.f64 1/2 a)))
43.4b
(if (>=.f64 b 0) (exp.f64 (log.f64 (/.f64 (*.f64 c 2) (-.f64 b (fma.f64 c (*.f64 (/.f64 a b) -2) b))))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
30.3b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (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))))))
30.1b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (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))))))
26.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 (fma.f64 b -2 (*.f64 (/.f64 (*.f64 c 2) b) a)) (*.f64 2 a)))
24.3b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (cbrt.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 3/2)) b) (/.f64 1/2 a)))
30.3b
(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 (*.f64 (cbrt.f64 (*.f64 c a)) (cbrt.f64 -4)) 3/2) b) (/.f64 1/2 a)))
29.8b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (exp.f64 (*.f64 (*.f64 3 (log.f64 (-.f64 (/.f64 c b) (/.f64 b a)))) 1/3)))
27.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (-.f64 (/.f64 a b) (*.f64 (/.f64 b c) 1)) (*.f64 (/.f64 b c) (/.f64 a b))))
62.9b
(if (>=.f64 b 0) (*.f64 (/.f64 c 1) (/.f64 2 (-.f64 b (fma.f64 (*.f64 c (/.f64 a b)) -2 b)))) (/.f64 (+.f64 (neg.f64 b) (fma.f64 -2 (/.f64 c (/.f64 b a)) b)) (*.f64 2 a)))
22.7b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (fma.f64 c (/.f64 a b) (neg.f64 b)) (*.f64 b (/.f64 a b))))
29.7b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (pow.f64 (exp.f64 1) (log.f64 (-.f64 (/.f64 c b) (/.f64 b a)))))
29.4b
(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)))
30.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (exp.f64 (log.f64 (/.f64 (-.f64 b (hypot.f64 b (sqrt.f64 (*.f64 -4 (*.f64 a c))))) (*.f64 a -2)))))
22.3b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (exp.f64 (log.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))))) b) (/.f64 1/2 a)))
46.4b
(if (>=.f64 b 0) (/.f64 b a) (/.f64 (neg.f64 b) a))
28.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (expm1.f64 (log1p.f64 (-.f64 (/.f64 c b) (/.f64 b a)))))
38.1b
(if (>=.f64 b 0) (*.f64 (/.f64 c 1) (/.f64 2 (pow.f64 (cbrt.f64 (-.f64 b (exp.f64 (log.f64 (fma.f64 c (*.f64 (/.f64 a b) -2) b))))) 3))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
33.0b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a))))))) (/.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 (*.f64 2 c) (-.f64 (neg.f64 b) (*.f64 (sqrt.f64 (*.f64 a -4)) (sqrt.f64 c)))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
46.4b
(if (>=.f64 b 0) (/.f64 b a) (-.f64 (/.f64 c b) (/.f64 b a)))
22.5b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) b)) (/.f64 (*.f64 b -2) (*.f64 2 a)))
26.7b
(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)))
22.5b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (pow.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 3/2)))) (*.f64 (-.f64 (pow.f64 (cbrt.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b))) 3/2) b) (/.f64 1/2 a)))
26.1b
(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 (pow.f64 (hypot.f64 b (sqrt.f64 (*.f64 c (*.f64 a -4)))) 2/3) 3/2) b) (/.f64 1/2 a)))
43.3b
(if (>=.f64 b 0) (pow.f64 (pow.f64 (/.f64 (*.f64 c 2) (-.f64 b (fma.f64 c (*.f64 (/.f64 a b) -2) b))) 3) 1/3) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
38.4b
(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) (fma.f64 -2 (/.f64 c (/.f64 b a)) b)) (*.f64 2 a)))
32.8b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (pow.f64 (sqrt.f64 (sqrt.f64 (*.f64 -4 (*.f64 c a)))) 2))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
33.1b
(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 (pow.f64 (pow.f64 b 2) 1/3) 3/2) b) (/.f64 1/2 a)))
18.8b
(if (>=.f64 b 0) (*.f64 c (/.f64 -2 (+.f64 b (fma.f64 -2 (*.f64 a (/.f64 c b)) b)))) (*.f64 (-.f64 (pow.f64 (pow.f64 (fma.f64 c (*.f64 a -4) (*.f64 b b)) 1/4) 2) b) (/.f64 1/2 a)))
25.8b
(if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (cbrt.f64 (pow.f64 (+.f64 (*.f64 c (*.f64 a -4)) (*.f64 b b)) 3/2)))) (/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c)))) (*.f64 2 a)))
32.5b
(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 (cbrt.f64 (*.f64 b b)) 3/2) b) (/.f64 1/2 a)))
Compiler

Compiled 1254 to 826 computations (34.1% saved)

regimes718.0ms (5%)

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

4 calls:

240.0ms
c
220.0ms
a
106.0ms
b
99.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)))
Results
ErrorSegmentsBranch
14.4b6a
6.8b3b
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 2306 to 1297 computations (43.8% saved)

bsearch2.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.1545723568485184e+203
1.4042003891016311e+218
0.0ms
-0.0
1.800967834195662e-308
0.0ms
-1.238148081528178e-248
-1.0754833414267676e-262
0.0ms
-inf
-1.194370595407122e+296
Compiler

Compiled 47 to 31 computations (34% saved)

regimes11.0ms (0.1%)

Accuracy

Total -0.1b remaining (-0.3%)

Threshold costs -0.1b (-0.3%)

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

3 calls:

4.0ms
c
3.0ms
a
3.0ms
b
Results
ErrorSegmentsBranch
46.4b1a
46.4b1b
46.4b1c
Compiler

Compiled 40 to 23 computations (42.5% saved)

simplify19.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0724294967311
11014294967311
21394294967311
31754294967311
41954294967311
52034294967311
62044294967311
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) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (*.f64 -1 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))) -5038209258419659/503820925841965910293903145710484129446837736164208910110436162020372297817921504473130470168740451712297816270119789770967814979078946625948466280425014092358004268645291408699733274151255074551605446727954090503833797734023629893148800753371273495187319355867136) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.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 (+.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 (pow.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 a b))) 2) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 c (/.f64 a b))))) 3) 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))) 399999999999999995507643150025317790603737839318199691990013939536117044729447467377770787784002759380743682138222568981925970452302952494566101548778170495658972779864956204711492351920865703458408235008) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.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 (+.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)) (-.f64 (/.f64 c b) (/.f64 b a)))))))
(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) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 4 a) c))))) (/.f64 (+.f64 (neg.f64 b) (*.f64 -1 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))) -5038209258419659/503820925841965910293903145710484129446837736164208910110436162020372297817921504473130470168740451712297816270119789770967814979078946625948466280425014092358004268645291408699733274151255074551605446727954090503833797734023629893148800753371273495187319355867136) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.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 (+.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 (pow.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 a b))) 2) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 c (/.f64 a b))))) 3) 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))) 399999999999999995507643150025317790603737839318199691990013939536117044729447467377770787784002759380743682138222568981925970452302952494566101548778170495658972779864956204711492351920865703458408235008) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.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 (+.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)) (-.f64 (/.f64 c b) (/.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) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))))) (/.f64 (-.f64 (neg.f64 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))) -5038209258419659/503820925841965910293903145710484129446837736164208910110436162020372297817921504473130470168740451712297816270119789770967814979078946625948466280425014092358004268645291408699733274151255074551605446727954090503833797734023629893148800753371273495187319355867136) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.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 c 4)))))))) (/.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) (neg.f64 (fma.f64 -2 (pow.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 a b))) 2) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 c (/.f64 a b))))) 3) 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))) 399999999999999995507643150025317790603737839318199691990013939536117044729447467377770787784002759380743682138222568981925970452302952494566101548778170495658972779864956204711492351920865703458408235008) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.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 c 4)))))))) (/.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) b)) (-.f64 (/.f64 c b) (/.f64 b a)))))))
(if (<=.f64 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))))) (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))) b) (*.f64 2 a))) -inf.0) (if (>=.f64 b 0) (/.f64 (*.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 (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))))) (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))) b) (*.f64 2 a))) -5038209258419659/503820925841965910293903145710484129446837736164208910110436162020372297817921504473130470168740451712297816270119789770967814979078946625948466280425014092358004268645291408699733274151255074551605446727954090503833797734023629893148800753371273495187319355867136) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.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 c 4)))))))) (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 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 c (*.f64 4 a)))))) (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))) b) (*.f64 2 a))) 0) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (+.f64 (neg.f64 b) (-.f64 0 (fma.f64 -2 (pow.f64 (*.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 c (/.f64 a b))) 2) 1/3) (cbrt.f64 (cbrt.f64 (*.f64 c (/.f64 a b))))) 3) b)))) (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 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 c (*.f64 4 a)))))) (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))) b) (*.f64 2 a))) 399999999999999995507643150025317790603737839318199691990013939536117044729447467377770787784002759380743682138222568981925970452302952494566101548778170495658972779864956204711492351920865703458408235008) (if (>=.f64 b 0) (/.f64 (*.f64 2 c) (-.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 c 4)))))))) (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 c (*.f64 4 a)))) b) (*.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 b a) (/.f64 (neg.f64 b) a))
Compiler

Compiled 371 to 220 computations (40.7% saved)

soundness120.0ms (0.8%)

Algorithm
egg-herbie
Rules
842×fma-neg_binary64
721×times-frac_binary64
708×fma-def_binary64
686×associate-*r*_binary64
658×associate-*l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01332386
14222292
214832157
0111716
1336686
21221620
37428620
Stop Event
node limit
node limit
Compiler

Compiled 79 to 51 computations (35.4% saved)

end124.0ms (0.9%)

Compiler

Compiled 368 to 215 computations (41.6% saved)

Profiling

Loading profile data...