Details

Time bar (total: 12.5s)

analyze455.0ms (3.6%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
0%0%99.9%0.1%0%0%0%5
0%0%99.9%0.1%0%0%0%6
0%0%99.9%0.1%0%0%0%7
0%0%99.9%0.1%0%0%0%8
12.7%12.5%85.8%0.1%1.6%0%0%9
17.1%16.4%79.2%0.1%4.3%0%0%10
22.2%20.7%72.4%0.1%6.8%0%0%11
37.9%32.6%53.3%0.1%13.9%0%0%12
Compiler

Compiled 19 to 12 computations (36.8% saved)

sample1.8s (14%)

Results
1.2s8256×body256valid
582.0ms4012×body256infinite
Bogosity

preprocess61.0ms (0.5%)

Algorithm
egg-herbie
Rules
677×div-sub_binary64
461×cancel-sign-sub-inv_binary64
432×distribute-rgt-in_binary64
405×fma-neg_binary64
370×associate-/l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02380
18080
221480
344180
4109380
5325876
033
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
(/.f64 (-.f64 (+.f64 (*.f64 y y) (*.f64 x x)) (*.f64 z z)) (*.f64 x 2))
(/.f64 (-.f64 (+.f64 (*.f64 z z) (*.f64 y y)) (*.f64 x x)) (*.f64 y 2))
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y y)) (*.f64 z 2))
Outputs
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
(/.f64 (-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
(/.f64 (fma.f64 y y (-.f64 (*.f64 x x) (*.f64 z z))) (*.f64 y 2))
(/.f64 (+.f64 y (*.f64 (/.f64 (+.f64 x z) y) (-.f64 x z))) 2)
(/.f64 (-.f64 (+.f64 (*.f64 y y) (*.f64 x x)) (*.f64 z z)) (*.f64 x 2))
(/.f64 (-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z)) (*.f64 x 2))
(/.f64 (fma.f64 y y (-.f64 (*.f64 x x) (*.f64 z z))) (*.f64 x 2))
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (+.f64 y z) x) (-.f64 z y)) x))
(/.f64 (-.f64 (+.f64 (*.f64 z z) (*.f64 y y)) (*.f64 x x)) (*.f64 y 2))
(/.f64 (-.f64 (fma.f64 z z (*.f64 y y)) (*.f64 x x)) (*.f64 y 2))
(/.f64 (-.f64 (fma.f64 y y (*.f64 z z)) (*.f64 x x)) (*.f64 y 2))
(/.f64 (fma.f64 y y (-.f64 (*.f64 z z) (*.f64 x x))) (*.f64 y 2))
(/.f64 (-.f64 y (*.f64 (/.f64 (+.f64 x z) y) (-.f64 x z))) 2)
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y y)) (*.f64 z 2))
(/.f64 (-.f64 (fma.f64 x x (*.f64 z z)) (*.f64 y y)) (*.f64 z 2))
(/.f64 (-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y)) (*.f64 z 2))
(/.f64 (fma.f64 x x (-.f64 (*.f64 z z) (*.f64 y y))) (*.f64 z 2))
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (-.f64 y x) z) (+.f64 x y)) z))
Compiler

Compiled 21 to 14 computations (33.3% saved)

simplify53.0ms (0.4%)

Algorithm
egg-herbie
Rules
803×div-sub_binary64
796×fma-def_binary64
540×times-frac_binary64
406×distribute-rgt-in_binary64
344×sub-neg_binary64
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
01220
12720
26720
313620
432020
575520
6189419
7445119
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
Outputs
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
(/.f64 (-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
(/.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (*.f64 y 2))
(/.f64 (fma.f64 y y (-.f64 (*.f64 x x) (*.f64 z z))) (*.f64 y 2))
(*.f64 -1/2 (-.f64 (*.f64 (+.f64 x z) (/.f64 (-.f64 z x) y)) y))
(*.f64 -1/2 (-.f64 (/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y) y))

eval1.0ms (0%)

Compiler

Compiled 31 to 18 computations (41.9% saved)

prune1.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
12.0b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
12.0b
(*.f64 -1/2 (-.f64 (/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y) y))
27.0b
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
Compiler

Compiled 34 to 21 computations (38.2% saved)

localize14.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y) y)
0.2b
(fma.f64 z z (*.f64 x (neg.f64 x)))
12.2b
(/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y)
Compiler

Compiled 53 to 11 computations (79.2% saved)

series13.0ms (0.1%)

Counts
3 → 96
Calls

24 calls:

TimeVariablePointExpression
2.0ms
y
@inf
(/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y)
1.0ms
z
@0
(/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y)
1.0ms
z
@-inf
(/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y)
1.0ms
y
@0
(/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y)
1.0ms
x
@0
(/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y)

rewrite77.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
993×pow1_binary64
920×add-log-exp_binary64
919×log1p-expm1-u_binary64
919×expm1-log1p-u_binary64
105×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0939
119830
2282230
Stop Event
node limit
Counts
3 → 91
Calls
Call 1
Inputs
(/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y)
(fma.f64 z z (*.f64 x (neg.f64 x)))
(-.f64 (/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 z x) 2) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) 2) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)) 2) (*.f64 (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) (/.f64 (hypot.f64 z x) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 z x) (*.f64 (hypot.f64 z x) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 (hypot.f64 z x) 2)) (/.f64 1 (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (pow.f64 (hypot.f64 z x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)) 2) 1) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 z x) 1) (/.f64 (hypot.f64 z x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (*.f64 y y))) (/.f64 (pow.f64 (hypot.f64 z x) 2) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)) 2) (cbrt.f64 (*.f64 y y))) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 z x) (cbrt.f64 (*.f64 y y))) (/.f64 (hypot.f64 z x) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 y)) (/.f64 (pow.f64 (hypot.f64 z x) 2) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)) 2) (sqrt.f64 y)) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (pow.f64 (hypot.f64 z x) 2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x x) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z z) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 z z) 1) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z z) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (hypot.f64 z x) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 z x) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (hypot.f64 z x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)) 2) (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 z x) (hypot.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 z z) 3) (pow.f64 (*.f64 x x) 3)) (+.f64 (*.f64 (*.f64 z z) (*.f64 z z)) (-.f64 (*.f64 x (pow.f64 x 3)) (*.f64 (*.f64 z z) (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 z z) (*.f64 z z)) (*.f64 x (pow.f64 x 3))) (pow.f64 (hypot.f64 z x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 z x) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (hypot.f64 z x) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 z x) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 (hypot.f64 z x) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (hypot.f64 z x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (hypot.f64 z x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 z x) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (hypot.f64 z x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (hypot.f64 z x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (hypot.f64 z x) 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) (fma.f64 (neg.f64 (cbrt.f64 y)) (cbrt.f64 (*.f64 y y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) (fma.f64 (neg.f64 (sqrt.f64 y)) (sqrt.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 y) (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) (pow.f64 (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) 2) (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) (sqrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 3) (pow.f64 y 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (*.f64 y (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (*.f64 y y)) (/.f64 1 (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) (sqrt.f64 y)) (-.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (*.f64 y (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))) (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 3) (pow.f64 y 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 3) (pow.f64 y 3)) (+.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (*.f64 y (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (*.f64 y y)) (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 3) (pow.f64 y 3))) (neg.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (*.f64 y (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (*.f64 y y))) (neg.f64 (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 3) (pow.f64 (neg.f64 y) 3)) (+.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (-.f64 (*.f64 (neg.f64 y) (neg.f64 y)) (*.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (*.f64 (neg.f64 y) (neg.f64 y))) (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (hypot.f64 z x) 2) (/.f64 1 y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) 2) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) (/.f64 (hypot.f64 z x) (sqrt.f64 y)) (neg.f64 y))))))

simplify96.0ms (0.8%)

Algorithm
egg-herbie
Rules
645×fma-neg_binary64
587×unswap-sqr_binary64
541×cancel-sign-sub-inv_binary64
440×fma-def_binary64
370×associate-/r/_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0221421
1551327
21091153
32301151
45981151
521671151
662581151
Stop Event
node limit
Counts
187 → 113
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(/.f64 (pow.f64 z 2) y)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(/.f64 (pow.f64 z 2) y)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(/.f64 (pow.f64 z 2) y)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(*.f64 -1 (pow.f64 x 2))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(pow.f64 z 2)
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(pow.f64 z 2)
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(pow.f64 z 2)
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(*.f64 -1 (pow.f64 x 2))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(*.f64 -1 (pow.f64 x 2))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(-.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(/.f64 (pow.f64 z 2) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(/.f64 (pow.f64 z 2) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (/.f64 (pow.f64 z 2) y) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(+.f64 (*.f64 -1 y) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 y) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 y) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(*.f64 -1 y)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y)))
(*.f64 -1 y)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y)))
Outputs
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(neg.f64 (/.f64 x (/.f64 y x)))
(*.f64 (neg.f64 x) (/.f64 x y))
(*.f64 x (/.f64 (neg.f64 x) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(neg.f64 (/.f64 x (/.f64 y x)))
(*.f64 (neg.f64 x) (/.f64 x y))
(*.f64 x (/.f64 (neg.f64 x) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(neg.f64 (/.f64 x (/.f64 y x)))
(*.f64 (neg.f64 x) (/.f64 x y))
(*.f64 x (/.f64 (neg.f64 x) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(*.f64 -1 (pow.f64 x 2))
(neg.f64 (*.f64 x x))
(*.f64 x (neg.f64 x))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(pow.f64 z 2)
(*.f64 z z)
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(pow.f64 z 2)
(*.f64 z z)
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(pow.f64 z 2)
(*.f64 z z)
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(*.f64 -1 (pow.f64 x 2))
(neg.f64 (*.f64 x x))
(*.f64 x (neg.f64 x))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(*.f64 -1 (pow.f64 x 2))
(neg.f64 (*.f64 x x))
(*.f64 x (neg.f64 x))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2)))
(+.f64 (*.f64 z z) (neg.f64 (*.f64 x x)))
(-.f64 (*.f64 z z) (*.f64 x x))
(-.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) y)
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (neg.f64 (/.f64 x (/.f64 y x))) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(-.f64 (/.f64 (pow.f64 z 2) y) y)
(-.f64 (/.f64 (*.f64 z z) y) y)
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(neg.f64 (/.f64 x (/.f64 y x)))
(*.f64 (neg.f64 x) (/.f64 x y))
(*.f64 x (/.f64 (neg.f64 x) y))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(neg.f64 (/.f64 x (/.f64 y x)))
(*.f64 (neg.f64 x) (/.f64 x y))
(*.f64 x (/.f64 (neg.f64 x) y))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(/.f64 (+.f64 (pow.f64 z 2) (*.f64 -1 (pow.f64 x 2))) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x)))
(/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (+.f64 x z) (/.f64 y (-.f64 z x)))
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(+.f64 (*.f64 -1 y) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(+.f64 (*.f64 -1 y) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(+.f64 (*.f64 -1 y) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y)))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y)))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y)))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y)))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y)))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y)))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)) y)
(-.f64 (-.f64 (/.f64 z (/.f64 y z)) (/.f64 x (/.f64 y x))) y)
(-.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y) y)
(-.f64 (/.f64 (+.f64 x z) (/.f64 y (-.f64 z x))) y)
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)

localize16.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 x x) (*.f64 y y))
3.7b
(-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z))
25.0b
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
Compiler

Compiled 52 to 14 computations (73.1% saved)

series13.0ms (0.1%)

Counts
3 → 96
Calls

24 calls:

TimeVariablePointExpression
2.0ms
z
@0
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
1.0ms
x
@0
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
1.0ms
y
@inf
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
1.0ms
y
@0
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
1.0ms
x
@inf
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))

rewrite113.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
706×log-prod_binary64
532×fma-def_binary64
276×fma-neg_binary64
241×expm1-udef_binary64
241×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01242
127439
2415939
Stop Event
node limit
Counts
3 → 261
Calls
Call 1
Inputs
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
(-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z))
(+.f64 (*.f64 x x) (*.f64 y y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 (hypot.f64 x y) 2) (/.f64 1/2 y)) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) y)))) (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) y)))))) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) y))))) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (pow.f64 (hypot.f64 x y) 2) (/.f64 1/2 y)) (*.f64 (*.f64 z z) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y))) (cbrt.f64 (pow.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y)) 2)) (cbrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) 2) (*.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y))) (sqrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) (*.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) (/.f64 1 (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 y) (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) y) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) 2) 1) (/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) 1) (/.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) y) (/.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (/.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 y y)) 2)) (/.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (cbrt.f64 (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (+.f64 y y))) (/.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (sqrt.f64 (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) 2) y) (/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) 2) (/.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) 2) 2) (/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) 2) (pow.f64 (cbrt.f64 (+.f64 y y)) 2)) (cbrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) (pow.f64 (cbrt.f64 (+.f64 y y)) 2)) (/.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) (cbrt.f64 (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) 2) (sqrt.f64 (+.f64 y y))) (/.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) (sqrt.f64 (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (/.f64 y (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 2 (/.f64 y (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) 3) (pow.f64 (+.f64 y y) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (/.f64 1/2 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (hypot.f64 x y) 2) (/.f64 1/2 y) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (pow.f64 (hypot.f64 x y) 2) (/.f64 1/2 y)) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (hypot.f64 x y) 2) (/.f64 1/2 y))) (cbrt.f64 (*.f64 (pow.f64 (hypot.f64 x y) 2) (/.f64 1/2 y)))) (cbrt.f64 (*.f64 (pow.f64 (hypot.f64 x y) 2) (/.f64 1/2 y))) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (pow.f64 (hypot.f64 x y) 2) (/.f64 1/2 y))) (sqrt.f64 (*.f64 (pow.f64 (hypot.f64 x y) 2) (/.f64 1/2 y))) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 (/.f64 (pow.f64 (hypot.f64 x y) 2) y) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y) (/.f64 (pow.f64 (hypot.f64 x y) 2) 2) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 y y)) 2)) (/.f64 (pow.f64 (hypot.f64 x y) 2) (cbrt.f64 (+.f64 y y))) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (+.f64 y y))) (/.f64 (pow.f64 (hypot.f64 x y) 2) (sqrt.f64 (+.f64 y y))) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) 2) y) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) 2) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (hypot.f64 x y) y) (/.f64 (hypot.f64 x y) 2) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (hypot.f64 x y) 2) (/.f64 (hypot.f64 x y) y) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) 2) 2) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) y) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) 2) 1) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) (+.f64 y y)) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (hypot.f64 x y) 1) (/.f64 (hypot.f64 x y) (+.f64 y y)) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) 2) (pow.f64 (cbrt.f64 (+.f64 y y)) 2)) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) (cbrt.f64 (+.f64 y y))) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (hypot.f64 x y) (pow.f64 (cbrt.f64 (+.f64 y y)) 2)) (/.f64 (hypot.f64 x y) (cbrt.f64 (+.f64 y y))) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) 2) (sqrt.f64 (+.f64 y y))) (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) (sqrt.f64 (+.f64 y y))) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (hypot.f64 x y) (sqrt.f64 (+.f64 y y))) (/.f64 (hypot.f64 x y) (sqrt.f64 (+.f64 y y))) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x x) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (hypot.f64 x y) 2) (neg.f64 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 (neg.f64 (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (fma.f64 (neg.f64 z) z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (fma.f64 (neg.f64 (*.f64 z z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 z z)) (pow.f64 (hypot.f64 x y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)))) (cbrt.f64 (exp.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)))))) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) 2) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 3) (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (fma.f64 z z (pow.f64 (hypot.f64 x y) 2)) (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2) (pow.f64 z 4)) (/.f64 1 (fma.f64 z z (pow.f64 (hypot.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (hypot.f64 x y) z) (-.f64 (hypot.f64 x y) z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 z z) (fma.f64 z z (pow.f64 (hypot.f64 x y) 2)) (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2)) (-.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 3) (pow.f64 z 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 z z (pow.f64 (hypot.f64 x y) 2)) (-.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2) (pow.f64 z 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 3) (pow.f64 z 6)) (fma.f64 (*.f64 z z) (fma.f64 z z (pow.f64 (hypot.f64 x y) 2)) (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2) (pow.f64 z 4)) (fma.f64 z z (pow.f64 (hypot.f64 x y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 3) (pow.f64 z 6))) (neg.f64 (fma.f64 (*.f64 z z) (fma.f64 z z (pow.f64 (hypot.f64 x y) 2)) (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2) (pow.f64 z 4))) (neg.f64 (fma.f64 z z (pow.f64 (hypot.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 6) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 3)) (+.f64 (pow.f64 x 4) (-.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z))) (*.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 3) (pow.f64 (neg.f64 (*.f64 z z)) 3)) (+.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2) (-.f64 (*.f64 (neg.f64 (*.f64 z z)) (neg.f64 (*.f64 z z))) (*.f64 (pow.f64 (hypot.f64 x y) 2) (neg.f64 (*.f64 z z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z)))) (-.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2) (*.f64 (neg.f64 (*.f64 z z)) (neg.f64 (*.f64 z z)))) (-.f64 (pow.f64 (hypot.f64 x y) 2) (neg.f64 (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 z z) (fma.f64 z z (pow.f64 (hypot.f64 x y) 2)) (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2)) (-.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 3) (pow.f64 z 6))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 z z (pow.f64 (hypot.f64 x y) 2)) (-.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2) (pow.f64 z 4))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (pow.f64 (hypot.f64 x y) 2))) (pow.f64 (exp.f64 z) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (pow.f64 (hypot.f64 x y) 2)) (+.f64 1 (expm1.f64 (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (pow.f64 (hypot.f64 x y) 2))) (+.f64 1 (expm1.f64 (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x x))) (exp.f64 (-.f64 (*.f64 y y) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) x) (/.f64 (pow.f64 (exp.f64 y) y) (pow.f64 (exp.f64 z) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x x))) (/.f64 (pow.f64 (exp.f64 y) y) (pow.f64 (exp.f64 z) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 (hypot.f64 x y) 2))) (exp.f64 (neg.f64 (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (pow.f64 (hypot.f64 x y) 2)) (/.f64 1 (pow.f64 (exp.f64 z) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 (hypot.f64 x y) 2))) (/.f64 1 (pow.f64 (exp.f64 z) z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 z z))) (exp.f64 (pow.f64 (hypot.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 z) z)) (exp.f64 (pow.f64 (hypot.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (*.f64 z z))) (+.f64 1 (expm1.f64 (pow.f64 (hypot.f64 x y) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 z) z)) (+.f64 1 (expm1.f64 (pow.f64 (hypot.f64 x y) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (pow.f64 (exp.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 y) y) (pow.f64 (exp.f64 z) z)) (pow.f64 (exp.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (+.f64 1 (expm1.f64 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 (pow.f64 (exp.f64 y) y) (pow.f64 (exp.f64 z) z)) (+.f64 1 (expm1.f64 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x x (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 1 (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 1 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y y (-.f64 (*.f64 x x) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y y) 1 (-.f64 (*.f64 x x) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (hypot.f64 x y) 2) 1 (neg.f64 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (hypot.f64 x y) 2) 1 (*.f64 (neg.f64 (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (neg.f64 z) (pow.f64 (hypot.f64 x y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) 1 (fma.f64 (neg.f64 z) z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) 1 (fma.f64 (neg.f64 (*.f64 z z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) 1 (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x x) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (hypot.f64 x y) 2) (neg.f64 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (hypot.f64 x y) 2) (*.f64 (neg.f64 (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (fma.f64 (neg.f64 z) z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (fma.f64 (neg.f64 (*.f64 z z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (*.f64 z z)) (pow.f64 (hypot.f64 x y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 z 4)) (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (pow.f64 (hypot.f64 x y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 (pow.f64 y 4)) (-.f64 (*.f64 x x) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) y) (-.f64 (*.f64 x x) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 y 4)) (pow.f64 (cbrt.f64 y) 2) (-.f64 (*.f64 x x) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) 2) (fma.f64 (neg.f64 z) z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) 2) (fma.f64 (neg.f64 (*.f64 z z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) 2) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) 2) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) (fma.f64 (neg.f64 z) z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) 2) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) (fma.f64 (neg.f64 (*.f64 z z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) 2) (cbrt.f64 (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) 2) (neg.f64 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) 2) (*.f64 (neg.f64 (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) 2) (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) (neg.f64 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) 2) (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) (*.f64 (neg.f64 (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 (pow.f64 x 4)) (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 (pow.f64 x 4)) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) x) (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) x) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 4)) (pow.f64 (cbrt.f64 x) 2) (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 4)) (pow.f64 (cbrt.f64 x) 2) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) x) (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) x) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) (fma.f64 (neg.f64 z) z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) (fma.f64 (neg.f64 (*.f64 z z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 x y) (hypot.f64 x y) (neg.f64 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 x y) (hypot.f64 x y) (*.f64 (neg.f64 (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) y) (-.f64 (*.f64 x x) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 3) (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (fma.f64 z z (pow.f64 (hypot.f64 x y) 2)) (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2))) (fma.f64 (neg.f64 z) z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 3) (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (fma.f64 z z (pow.f64 (hypot.f64 x y) 2)) (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2))) (fma.f64 (neg.f64 (*.f64 z z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 3) (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (fma.f64 z z (pow.f64 (hypot.f64 x y) 2)) (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 6) (pow.f64 y 6)) (/.f64 1 (-.f64 (+.f64 (pow.f64 x 4) (pow.f64 y 4)) (pow.f64 (*.f64 x y) 2))) (neg.f64 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 6) (pow.f64 y 6)) (/.f64 1 (-.f64 (+.f64 (pow.f64 x 4) (pow.f64 y 4)) (pow.f64 (*.f64 x y) 2))) (*.f64 (neg.f64 (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2) (pow.f64 z 4)) (/.f64 1 (fma.f64 z z (pow.f64 (hypot.f64 x y) 2))) (fma.f64 (neg.f64 z) z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2) (pow.f64 z 4)) (/.f64 1 (fma.f64 z z (pow.f64 (hypot.f64 x y) 2))) (fma.f64 (neg.f64 (*.f64 z z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2) (pow.f64 z 4)) (/.f64 1 (fma.f64 z z (pow.f64 (hypot.f64 x y) 2))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (/.f64 1 (fma.f64 x x (*.f64 (neg.f64 y) y))) (neg.f64 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (/.f64 1 (fma.f64 x x (*.f64 (neg.f64 y) y))) (*.f64 (neg.f64 (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 z) z (pow.f64 (hypot.f64 x y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 y)) (sqrt.f64 y) (-.f64 (*.f64 x x) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 x)) (sqrt.f64 x) (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (neg.f64 (*.f64 z z))) (cbrt.f64 (neg.f64 (*.f64 z z)))) (cbrt.f64 (neg.f64 (*.f64 z z))) (pow.f64 (hypot.f64 x y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z)))) (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (*.f64 z z))) (sqrt.f64 (neg.f64 (*.f64 z z))) (pow.f64 (hypot.f64 x y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 y (sqrt.f64 (neg.f64 (*.f64 z z)))) (hypot.f64 y (sqrt.f64 (neg.f64 (*.f64 z z)))) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 z z) (pow.f64 (hypot.f64 x y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (hypot.f64 x y) z) (-.f64 (hypot.f64 x y) z) (fma.f64 (neg.f64 z) z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (hypot.f64 x y) z) (-.f64 (hypot.f64 x y) z) (fma.f64 (neg.f64 (*.f64 z z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (hypot.f64 x y) z) (-.f64 (hypot.f64 x y) z) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 (pow.f64 z 4)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 y z) (-.f64 y z) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 z 4))) (pow.f64 (cbrt.f64 z) 2) (pow.f64 (hypot.f64 x y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (-.f64 (*.f64 x x) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 z) 1) z (pow.f64 (hypot.f64 x y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 z) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (pow.f64 (hypot.f64 x y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 z) (sqrt.f64 z)) (sqrt.f64 z) (pow.f64 (hypot.f64 x y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (hypot.f64 x y) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 x 4) (fma.f64 x x (*.f64 (neg.f64 y) y))) (/.f64 (pow.f64 y 4) (fma.f64 x x (*.f64 (neg.f64 y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 x y) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (hypot.f64 x y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) 2) (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 x y) (hypot.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 6) (pow.f64 y 6)) (/.f64 1 (-.f64 (+.f64 (pow.f64 x 4) (pow.f64 y 4)) (pow.f64 (*.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (/.f64 1 (fma.f64 x x (*.f64 (neg.f64 y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (+.f64 (pow.f64 x 4) (pow.f64 y 4)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 x 6) (pow.f64 y 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x x (*.f64 (neg.f64 y) y)) (-.f64 (pow.f64 x 4) (pow.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 6) (pow.f64 y 6)) (-.f64 (+.f64 (pow.f64 x 4) (pow.f64 y 4)) (pow.f64 (*.f64 x y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 6) (pow.f64 y 6)) (+.f64 (pow.f64 y 4) (-.f64 (pow.f64 x 4) (pow.f64 (*.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (fma.f64 x x (*.f64 (neg.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 6) (pow.f64 y 6))) (neg.f64 (-.f64 (+.f64 (pow.f64 x 4) (pow.f64 y 4)) (pow.f64 (*.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4))) (neg.f64 (fma.f64 x x (*.f64 (neg.f64 y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) (-.f64 (*.f64 y y) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 x y) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x y) 2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 x y) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (+.f64 (pow.f64 x 4) (pow.f64 y 4)) (pow.f64 (*.f64 x y) 2)) (+.f64 (pow.f64 x 6) (pow.f64 y 6))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 x x (*.f64 (neg.f64 y) y)) (-.f64 (pow.f64 x 4) (pow.f64 y 4))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (hypot.f64 x y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (hypot.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x x))) (pow.f64 (exp.f64 y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) x) (+.f64 1 (expm1.f64 (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x x))) (+.f64 1 (expm1.f64 (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y y))) (pow.f64 (exp.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 y) y) (+.f64 1 (expm1.f64 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 y y))) (+.f64 1 (expm1.f64 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 x y) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (hypot.f64 x y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (hypot.f64 x y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (hypot.f64 x y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 x y) 2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x x (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 1 (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 y y (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y y) 1 (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x x) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 y y) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 (pow.f64 y 4)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) y) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 y 4)) (pow.f64 (cbrt.f64 y) 2) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 (pow.f64 x 4)) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) x) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 4)) (pow.f64 (cbrt.f64 x) 2) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) x) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) y) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (sqrt.f64 y)) (sqrt.f64 y) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 x)) (sqrt.f64 x) (*.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 y (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 y y))))))

simplify74.0ms (0.6%)

Algorithm
egg-herbie
Rules
815×fma-def_binary64
673×associate-/r/_binary64
639×associate-/l/_binary64
512×associate-*l/_binary64
381×associate-*r/_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0391465
11091371
22511290
36481206
423621149
Stop Event
node limit
Counts
357 → 293
Calls
Call 1
Inputs
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) y))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(*.f64 1/2 y)
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(*.f64 1/2 y)
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 1/2 (+.f64 y (/.f64 (pow.f64 x 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 1/2 (+.f64 y (/.f64 (pow.f64 x 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 1/2 (+.f64 y (/.f64 (pow.f64 x 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 1/2 (+.f64 y (/.f64 (pow.f64 x 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 1/2 (+.f64 y (/.f64 (pow.f64 x 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 1/2 (+.f64 y (/.f64 (pow.f64 x 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(-.f64 (pow.f64 y 2) (pow.f64 z 2))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(pow.f64 x 2)
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(pow.f64 x 2)
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(-.f64 (pow.f64 x 2) (pow.f64 z 2))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(pow.f64 y 2)
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(pow.f64 y 2)
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (+.f64 (pow.f64 y 2) (pow.f64 x 2)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (+.f64 (pow.f64 y 2) (pow.f64 x 2)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (+.f64 (pow.f64 y 2) (pow.f64 x 2)))
(*.f64 -1 (pow.f64 z 2))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2)))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2)))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2)))
(*.f64 -1 (pow.f64 z 2))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2)))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2)))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2)))
(pow.f64 y 2)
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(pow.f64 x 2)
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(pow.f64 x 2)
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(pow.f64 x 2)
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(pow.f64 y 2)
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(pow.f64 y 2)
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
Outputs
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) y))
(*.f64 1/2 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y))
(*.f64 (/.f64 1/2 y) (-.f64 (*.f64 y y) (*.f64 z z)))
(*.f64 1/2 (-.f64 y (*.f64 z (/.f64 z y))))
(*.f64 1/2 (fma.f64 (/.f64 z y) (neg.f64 z) y))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(*.f64 1/2 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 1/2 y))
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(*.f64 1/2 y)
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(*.f64 1/2 y)
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) y))
(*.f64 1/2 (/.f64 (+.f64 (*.f64 y y) (*.f64 x x)) y))
(*.f64 1/2 (/.f64 (fma.f64 y y (*.f64 x x)) y))
(/.f64 1/2 (/.f64 y (fma.f64 x x (*.f64 y y))))
(*.f64 (fma.f64 y y (*.f64 x x)) (/.f64 1/2 y))
(*.f64 1/2 (fma.f64 x (/.f64 x y) y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(*.f64 (*.f64 -1/2 (/.f64 z y)) z)
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(+.f64 (*.f64 1/2 (+.f64 y (/.f64 (pow.f64 x 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 1/2 (+.f64 y (/.f64 (pow.f64 x 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 1/2 (+.f64 y (/.f64 (pow.f64 x 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(*.f64 (*.f64 -1/2 (/.f64 z y)) z)
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(+.f64 (*.f64 1/2 (+.f64 y (/.f64 (pow.f64 x 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 1/2 (+.f64 y (/.f64 (pow.f64 x 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(+.f64 (*.f64 1/2 (+.f64 y (/.f64 (pow.f64 x 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) y) (/.f64 x (/.f64 y x))))
(*.f64 1/2 (+.f64 (*.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))
(*.f64 1/2 (+.f64 y (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z))))
(*.f64 1/2 (fma.f64 (/.f64 (+.f64 z x) y) (-.f64 x z) y))
(-.f64 (pow.f64 y 2) (pow.f64 z 2))
(-.f64 (*.f64 y y) (*.f64 z z))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(pow.f64 x 2)
(*.f64 x x)
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(pow.f64 x 2)
(*.f64 x x)
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(-.f64 (pow.f64 x 2) (pow.f64 z 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(pow.f64 y 2)
(*.f64 y y)
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(pow.f64 y 2)
(*.f64 y y)
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (+.f64 (pow.f64 y 2) (pow.f64 x 2)))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (+.f64 (pow.f64 y 2) (pow.f64 x 2)))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (+.f64 (pow.f64 y 2) (pow.f64 x 2)))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2)))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2)))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2)))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2)))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2)))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(+.f64 (pow.f64 y 2) (+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2)))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(pow.f64 y 2)
(*.f64 y y)
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(pow.f64 x 2)
(*.f64 x x)
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(pow.f64 x 2)
(*.f64 x x)
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(pow.f64 x 2)
(*.f64 x x)
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(pow.f64 y 2)
(*.f64 y y)
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(pow.f64 y 2)
(*.f64 y y)
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))
(+.f64 (pow.f64 y 2) (pow.f64 x 2))
(+.f64 (*.f64 y y) (*.f64 x x))
(fma.f64 y y (*.f64 x x))
(fma.f64 x x (*.f64 y y))

eval126.0ms (1%)

Compiler

Compiled 7983 to 3971 computations (50.3% saved)

prune84.0ms (0.7%)

Pruning

17 alts after pruning (17 fresh and 0 done)

PrunedKeptTotal
New38917406
Fresh000
Picked101
Done101
Total39117408
Error
0.0b
Counts
408 → 17
Alt Table
Click to see full alt table
StatusErrorProgram
46.0b
(*.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) (*.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) (/.f64 1/2 y)))
47.2b
(/.f64 (fma.f64 (*.f64 (neg.f64 z) (sqrt.f64 z)) (sqrt.f64 z) (pow.f64 (hypot.f64 x y) 2)) (*.f64 y 2))
19.6b
(*.f64 -1/2 (-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y))
52.9b
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
43.7b
(/.f64 (/.f64 (-.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z)))) (-.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 y 2))
25.4b
(*.f64 1/2 y)
50.5b
(*.f64 1/2 (/.f64 x (/.f64 y x)))
42.7b
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
12.4b
(*.f64 1/2 (fma.f64 (/.f64 z y) (neg.f64 z) y))
13.4b
(*.f64 1/2 (fma.f64 x (/.f64 x y) y))
52.9b
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
12.4b
(*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y))
13.4b
(*.f64 -1/2 (-.f64 (*.f64 x (/.f64 (neg.f64 x) y)) y))
52.7b
(/.f64 (*.f64 x x) (*.f64 y 2))
12.8b
(*.f64 -1/2 (-.f64 (*.f64 (hypot.f64 z x) (*.f64 (hypot.f64 z x) (/.f64 1 y))) y))
37.2b
(/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 y 2))
22.6b
(*.f64 -1/2 (-.f64 (pow.f64 (/.f64 y (pow.f64 (hypot.f64 z x) 2)) -1) y))
Compiler

Compiled 508 to 314 computations (38.2% saved)

localize10.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 (/.f64 z y) (neg.f64 z) y)
Compiler

Compiled 27 to 9 computations (66.7% saved)

series6.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
2.0ms
y
@-inf
(fma.f64 (/.f64 z y) (neg.f64 z) y)
1.0ms
z
@-inf
(fma.f64 (/.f64 z y) (neg.f64 z) y)
1.0ms
z
@inf
(fma.f64 (/.f64 z y) (neg.f64 z) y)
1.0ms
z
@0
(fma.f64 (/.f64 z y) (neg.f64 z) y)
1.0ms
y
@0
(fma.f64 (/.f64 z y) (neg.f64 z) y)

rewrite53.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
590×pow1_binary64
545×add-log-exp_binary64
544×log1p-expm1-u_binary64
544×expm1-log1p-u_binary64
532×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0610
11278
217348
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(fma.f64 (/.f64 z y) (neg.f64 z) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 y (*.f64 z (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (/.f64 z y)) y)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 z (/.f64 z y)) 1) y)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 (/.f64 z y) z y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (/.f64 z y) z y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (/.f64 z y) z y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (/.f64 z y) z y)) (pow.f64 (cbrt.f64 (fma.f64 (/.f64 z y) z y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (/.f64 z y) z y)) 2) (cbrt.f64 (fma.f64 (/.f64 z y) z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (/.f64 z y) z y)) (sqrt.f64 (fma.f64 (/.f64 z y) z y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 z (/.f64 z y)) 3) (pow.f64 y 3)) (+.f64 (*.f64 (*.f64 z (/.f64 z y)) (*.f64 z (/.f64 z y))) (-.f64 (*.f64 y y) (*.f64 (*.f64 z (/.f64 z y)) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 z (/.f64 z y)) (*.f64 z (/.f64 z y))) (*.f64 y y)) (-.f64 (*.f64 z (/.f64 z y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (/.f64 z y) z y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (/.f64 z y) z y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (/.f64 z y) z y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (/.f64 z y) z y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (/.f64 z y) z y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (/.f64 z y) z y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (/.f64 z y) z y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (/.f64 z y) z y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (/.f64 z y) z y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (/.f64 z y) z y)))))))

simplify59.0ms (0.5%)

Algorithm
egg-herbie
Rules
690×cancel-sign-sub-inv_binary64
503×associate-*l*_binary64
456×div-sub_binary64
434×unswap-sqr_binary64
423×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
09246
119210
239210
377210
4205210
5725210
63108210
75505210
Stop Event
node limit
Counts
45 → 26
Calls
Call 1
Inputs
y
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(*.f64 -1 (/.f64 (pow.f64 z 2) y))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(*.f64 -1 (/.f64 (pow.f64 z 2) y))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(*.f64 -1 (/.f64 (pow.f64 z 2) y))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
y
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
y
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
Outputs
y
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)
(*.f64 -1 (/.f64 (pow.f64 z 2) y))
(neg.f64 (/.f64 (*.f64 z z) y))
(neg.f64 (/.f64 z (/.f64 y z)))
(/.f64 (*.f64 z (neg.f64 z)) y)
(*.f64 (/.f64 z y) (neg.f64 z))
(/.f64 z (/.f64 y (neg.f64 z)))
(*.f64 z (neg.f64 (/.f64 z y)))
(*.f64 (neg.f64 z) (/.f64 z y))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)
(*.f64 -1 (/.f64 (pow.f64 z 2) y))
(neg.f64 (/.f64 (*.f64 z z) y))
(neg.f64 (/.f64 z (/.f64 y z)))
(/.f64 (*.f64 z (neg.f64 z)) y)
(*.f64 (/.f64 z y) (neg.f64 z))
(/.f64 z (/.f64 y (neg.f64 z)))
(*.f64 z (neg.f64 (/.f64 z y)))
(*.f64 (neg.f64 z) (/.f64 z y))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)
(*.f64 -1 (/.f64 (pow.f64 z 2) y))
(neg.f64 (/.f64 (*.f64 z z) y))
(neg.f64 (/.f64 z (/.f64 y z)))
(/.f64 (*.f64 z (neg.f64 z)) y)
(*.f64 (/.f64 z y) (neg.f64 z))
(/.f64 z (/.f64 y (neg.f64 z)))
(*.f64 z (neg.f64 (/.f64 z y)))
(*.f64 (neg.f64 z) (/.f64 z y))
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)
y
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)
y
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)
(+.f64 y (*.f64 -1 (/.f64 (pow.f64 z 2) y)))
(+.f64 y (neg.f64 (/.f64 (*.f64 z z) y)))
(-.f64 y (/.f64 z (/.f64 y z)))
(-.f64 y (*.f64 (/.f64 z y) z))
(-.f64 y (*.f64 z (/.f64 z y)))
(fma.f64 z (neg.f64 (/.f64 z y)) y)
(fma.f64 (neg.f64 z) (/.f64 z y) y)

localize4.0ms (0%)

Compiler

Compiled 8 to 6 computations (25% saved)

localize10.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
7.8b
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
Compiler

Compiled 23 to 11 computations (52.2% saved)

series4.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
z
@0
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
1.0ms
y
@0
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
1.0ms
y
@inf
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
1.0ms
z
@inf
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
0.0ms
y
@-inf
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))

rewrite64.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
831×pow1_binary64
774×add-log-exp_binary64
773×log1p-expm1-u_binary64
773×expm1-log1p-u_binary64
758×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0812
117610
2272910
Stop Event
node limit
Counts
1 → 40
Calls
Call 1
Inputs
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (*.f64 z z) (/.f64 1/2 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 z (/.f64 1 (/.f64 y (*.f64 z 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 z (*.f64 z (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (*.f64 z z) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z z) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z z) (/.f64 1 (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))) (pow.f64 (cbrt.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))) 2) (cbrt.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 z (pow.f64 z 3))) (*.f64 (pow.f64 (cbrt.f64 z) 2) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (sqrt.f64 (*.f64 y 2))) (/.f64 z (sqrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z y) (*.f64 z 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z 1/2) (/.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 y) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (/.f64 y z)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 z (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z 1) (/.f64 z (*.f64 y 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 z (pow.f64 z 3))) 1) (/.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 y 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (/.f64 (*.f64 z z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 z (pow.f64 z 3))) y) (/.f64 (pow.f64 (cbrt.f64 z) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 z (pow.f64 z 3))) 2) (/.f64 (pow.f64 (cbrt.f64 z) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (*.f64 y 2)) z)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (pow.f64 (cbrt.f64 (*.f64 y 2)) 2)) (/.f64 z (cbrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 y 2)) 2)) (/.f64 (*.f64 z z) (cbrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 z (pow.f64 z 3))) (pow.f64 (cbrt.f64 (*.f64 y 2)) 2)) (cbrt.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (*.f64 y 2))) (/.f64 (*.f64 z z) (sqrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 z (pow.f64 z 3))) (sqrt.f64 (*.f64 y 2))) (/.f64 (pow.f64 (cbrt.f64 z) 2) (sqrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 z (sqrt.f64 (*.f64 y 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 y (*.f64 z 1/2)) z) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (sqrt.f64 (exp.f64 (/.f64 z (/.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 z z) 3) (pow.f64 (*.f64 y 2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))))

simplify137.0ms (1.1%)

Algorithm
egg-herbie
Rules
682×associate-/l/_binary64
528×associate-*l*_binary64
493×*-commutative_binary64
470×sqr-pow_binary64
437×associate-*l/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08240
116240
231240
362240
4169240
5615240
62654240
73723240
83933240
94152240
104380240
114718240
126225240
136892240
147688240
Stop Event
node limit
Counts
64 → 42
Calls
Call 1
Inputs
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
Outputs
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))

localize12.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.3b
(-.f64 (*.f64 x x) (*.f64 z z))
12.2b
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
Compiler

Compiled 34 to 12 computations (64.7% saved)

series13.0ms (0.1%)

Counts
2 → 60
Calls

15 calls:

TimeVariablePointExpression
6.0ms
y
@0
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
1.0ms
y
@inf
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
1.0ms
x
@0
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
1.0ms
z
@0
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
1.0ms
x
@inf
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))

rewrite105.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
620×log-prod_binary64
414×fma-def_binary64
359×pow-prod-down_binary64
300×pow2_binary64
207×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01026
122926
2343326
Stop Event
node limit
Counts
2 → 221
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
(-.f64 (*.f64 x x) (*.f64 z z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y)) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y)))) 2)) (log.f64 (cbrt.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y))))) (log.f64 (sqrt.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y)) (*.f64 (*.f64 z z) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2) (*.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2))) 2) (cbrt.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) (*.f64 (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2))) (sqrt.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x z) (neg.f64 (-.f64 x z))) (/.f64 1 (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 y) (-.f64 (*.f64 x x) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x z) (*.f64 (-.f64 x z) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2) 1) (/.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) 1) (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) y) (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x z) 1) (/.f64 (-.f64 x z) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 y y)) -2) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (cbrt.f64 (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 y y) -1/2) (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (sqrt.f64 (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2) y) (/.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) 2) (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2) 2) (/.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x z) 2) (/.f64 (-.f64 x z) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2) (cbrt.f64 (*.f64 4 (*.f64 y y)))) (cbrt.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) (cbrt.f64 (*.f64 4 (*.f64 y y)))) (/.f64 (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) (cbrt.f64 (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x z) (cbrt.f64 (*.f64 4 (*.f64 y y)))) (/.f64 (-.f64 x z) (cbrt.f64 (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2) (sqrt.f64 (+.f64 y y))) (/.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) (sqrt.f64 (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 x z) (sqrt.f64 (+.f64 y y))) (/.f64 (-.f64 x z) (sqrt.f64 (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (+.f64 y y) (+.f64 x z)) (-.f64 x z)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 3) (pow.f64 (+.f64 y y) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (/.f64 (+.f64 y y) (+.f64 x z)) (-.f64 x z)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 3) (pow.f64 (+.f64 y y) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (+.f64 x z) y) (/.f64 (-.f64 x z) 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) (/.f64 1/2 y) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (*.f64 x x) (/.f64 1/2 y)) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y))) 2) (cbrt.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y))) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y))) (sqrt.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y))) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 (/.f64 (*.f64 x x) y) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x y) (/.f64 x 2) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x 2) (/.f64 x y) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y) (/.f64 (*.f64 x x) 2) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 (cbrt.f64 x) x) y) (/.f64 (pow.f64 (cbrt.f64 x) 2) 2) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 (cbrt.f64 x) x) 2) (/.f64 (pow.f64 (cbrt.f64 x) 2) y) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x 1) (/.f64 x (+.f64 y y)) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 (cbrt.f64 x) x) 1) (/.f64 (pow.f64 (cbrt.f64 x) 2) (+.f64 y y)) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (cbrt.f64 (*.f64 4 (*.f64 y y)))) (/.f64 x (cbrt.f64 (+.f64 y y))) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 y y)) -2) (/.f64 (*.f64 x x) (cbrt.f64 (+.f64 y y))) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 (cbrt.f64 x) x) (cbrt.f64 (*.f64 4 (*.f64 y y)))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 (+.f64 y y))) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (sqrt.f64 (+.f64 y y))) (/.f64 x (sqrt.f64 (+.f64 y y))) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (+.f64 y y) -1/2) (/.f64 (*.f64 x x) (sqrt.f64 (+.f64 y y))) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 (cbrt.f64 x) x) (sqrt.f64 (+.f64 y y))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (sqrt.f64 (+.f64 y y))) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x x) (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x x) (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x x) (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (*.f64 (cbrt.f64 z) z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (neg.f64 z)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 (*.f64 x x) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 x x) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 x z)) (-.f64 x z))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 x z)) (-.f64 x z)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 x z)) (-.f64 x z)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 x z)) (-.f64 x z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 x x) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2) (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 6) (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (pow.f64 (hypot.f64 x z) 2) (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (/.f64 1 (pow.f64 (hypot.f64 x z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x z) (-.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x z) (+.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 z z) (pow.f64 (hypot.f64 x z) 2) (pow.f64 x 4)) (-.f64 (pow.f64 x 6) (pow.f64 z 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 (hypot.f64 x z) 2) (-.f64 (pow.f64 x 4) (pow.f64 z 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 6) (pow.f64 z 6)) (fma.f64 (*.f64 z z) (pow.f64 (hypot.f64 x z) 2) (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (hypot.f64 x z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 x 6) (pow.f64 z 6))) (neg.f64 (fma.f64 (*.f64 z z) (pow.f64 (hypot.f64 x z) 2) (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (neg.f64 (pow.f64 (hypot.f64 x z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 6) (pow.f64 (*.f64 z (neg.f64 z)) 3)) (+.f64 (pow.f64 x 4) (-.f64 (pow.f64 (*.f64 z (neg.f64 z)) 2) (*.f64 (*.f64 x x) (*.f64 z (neg.f64 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 3) (pow.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 3)) (+.f64 (pow.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 2) (-.f64 (pow.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 2) (*.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 4) (pow.f64 (*.f64 z (neg.f64 z)) 2)) (-.f64 (*.f64 x x) (*.f64 z (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 2) (pow.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 2)) (-.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (*.f64 z z) (pow.f64 (hypot.f64 x z) 2) (pow.f64 x 4)) (-.f64 (pow.f64 x 6) (pow.f64 z 6))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 x z) 2) (-.f64 (pow.f64 x 4) (pow.f64 z 4))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (+.f64 x z)) (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (*.f64 x x) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 x x))) (pow.f64 (exp.f64 z) z)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 x) x) (+.f64 1 (expm1.f64 (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 x x))) (+.f64 1 (expm1.f64 (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x x))) (exp.f64 (*.f64 z (neg.f64 z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x x))) (pow.f64 (exp.f64 z) (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 (*.f64 x x) (*.f64 z z)))) (exp.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 z (neg.f64 z))) (pow.f64 (exp.f64 x) x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 z (neg.f64 z))) (+.f64 1 (expm1.f64 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 z) (neg.f64 z)) (+.f64 1 (expm1.f64 (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z (neg.f64 z) (*.f64 z z))) (pow.f64 (exp.f64 (+.f64 x z)) (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 z (neg.f64 z) (*.f64 z z))) (+.f64 1 (expm1.f64 (-.f64 (*.f64 x x) (*.f64 z z))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (*.f64 x x) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (*.f64 x x) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (*.f64 x x) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x x (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x x (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x x (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x x (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 1 (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 1 (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 1 (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 1 (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (neg.f64 z) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 1 (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 1 (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 1 (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (*.f64 (cbrt.f64 z) z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 1 (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 1 (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x x) (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x x) (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x x) (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x x) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 x x) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 x x) (*.f64 z z)) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 x x) (*.f64 z z)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (*.f64 (cbrt.f64 z) z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 x x) (*.f64 z z)) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z (neg.f64 z)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 z (neg.f64 z) (*.f64 z z)) (-.f64 (*.f64 x x) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 z) z) (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (*.f64 (cbrt.f64 z) z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2) (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2) (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2) (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (*.f64 (cbrt.f64 z) z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2) (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) 2) (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 z z))) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) x) (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) x) (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) x) (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) x) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 x) x) (pow.f64 (cbrt.f64 x) 2) (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 x) x) (pow.f64 (cbrt.f64 x) 2) (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 x) x) (pow.f64 (cbrt.f64 x) 2) (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 x) x) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 x (sqrt.f64 x)) (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 x (sqrt.f64 x)) (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 x (sqrt.f64 x)) (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 x (sqrt.f64 x)) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (*.f64 (cbrt.f64 z) z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) (hypot.f64 x (sqrt.f64 (*.f64 z (neg.f64 z)))) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 z) z (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 6) (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (pow.f64 (hypot.f64 x z) 2) (pow.f64 x 4))) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 6) (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (pow.f64 (hypot.f64 x z) 2) (pow.f64 x 4))) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 6) (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (pow.f64 (hypot.f64 x z) 2) (pow.f64 x 4))) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (*.f64 (cbrt.f64 z) z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 6) (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (pow.f64 (hypot.f64 x z) 2) (pow.f64 x 4))) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 6) (pow.f64 z 6)) (/.f64 1 (fma.f64 (*.f64 z z) (pow.f64 (hypot.f64 x z) 2) (pow.f64 x 4))) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (/.f64 1 (pow.f64 (hypot.f64 x z) 2)) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (/.f64 1 (pow.f64 (hypot.f64 x z) 2)) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (/.f64 1 (pow.f64 (hypot.f64 x z) 2)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (*.f64 (cbrt.f64 z) z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (/.f64 1 (pow.f64 (hypot.f64 x z) 2)) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (/.f64 1 (pow.f64 (hypot.f64 x z) 2)) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x z) (-.f64 x z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x z) (-.f64 x z) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x z) (-.f64 x z) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (*.f64 (cbrt.f64 z) z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x z) (-.f64 x z) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x z) (-.f64 x z) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x z) (+.f64 x z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x z) (+.f64 x z) (fma.f64 (*.f64 z (neg.f64 z)) 1 (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x z) (+.f64 x z) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 z) 2)) (*.f64 (cbrt.f64 z) z) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x z) (+.f64 x z) (*.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 x z) (+.f64 x z) (+.f64 (fma.f64 z (neg.f64 z) (*.f64 z z)) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 x)) (sqrt.f64 x) (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 x)) (sqrt.f64 x) (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 x)) (sqrt.f64 x) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 z (neg.f64 z) (*.f64 z z))) 2) (cbrt.f64 (fma.f64 z (neg.f64 z) (*.f64 z z))) (-.f64 (*.f64 x x) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (neg.f64 z))) 2) (cbrt.f64 (*.f64 z (neg.f64 z))) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 (sqrt.f64 (*.f64 z (neg.f64 z))) z) (hypot.f64 (sqrt.f64 (*.f64 z (neg.f64 z))) z) (-.f64 (*.f64 x x) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z (neg.f64 z))) (sqrt.f64 (*.f64 z (neg.f64 z))) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 z z) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (*.f64 (cbrt.f64 z) z)) (pow.f64 (cbrt.f64 z) 2) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 z) 1) z (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 z) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 z) (sqrt.f64 z)) (sqrt.f64 z) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (*.f64 z (neg.f64 z)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (fma.f64 z (neg.f64 z) (fma.f64 z (neg.f64 z) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (neg.f64 (-.f64 (*.f64 z z) (fma.f64 z (neg.f64 z) (*.f64 z z)))))))))

simplify67.0ms (0.5%)

Algorithm
egg-herbie
Rules
678×associate-/r/_binary64
625×distribute-rgt-in_binary64
583×distribute-lft-in_binary64
415×associate-*l*_binary64
404×associate-/l/_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
020870
145870
2101870
3238750
4778750
53282750
Stop Event
node limit
Counts
281 → 234
Calls
Call 1
Inputs
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(*.f64 -1 (pow.f64 z 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(pow.f64 x 2)
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(pow.f64 x 2)
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(pow.f64 x 2)
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(*.f64 -1 (pow.f64 z 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(*.f64 -1 (pow.f64 z 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
Outputs
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(/.f64 (*.f64 x x) (/.f64 y 1/2))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(/.f64 (*.f64 x x) (/.f64 y 1/2))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(/.f64 (*.f64 x x) (/.f64 y 1/2))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 z 2)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (*.f64 x x) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (/.f64 (*.f64 x x) (/.f64 y 1/2)))
(*.f64 1/2 (*.f64 (/.f64 (+.f64 z x) y) (-.f64 x z)))
(*.f64 (fma.f64 x x (neg.f64 (*.f64 z z))) (/.f64 1/2 y))
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))
(pow.f64 x 2)
(*.f64 x x)
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))
(pow.f64 x 2)
(*.f64 x x)
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))
(pow.f64 x 2)
(*.f64 x x)
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))
(+.f64 (*.f64 -1 (pow.f64 z 2)) (pow.f64 x 2))
(-.f64 (*.f64 x x) (*.f64 z z))
(*.f64 (+.f64 z x) (-.f64 x z))
(fma.f64 x x (neg.f64 (*.f64 z z)))

localize108.0ms (0.9%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 z x)
0.0b
(-.f64 (*.f64 (hypot.f64 z x) (*.f64 (hypot.f64 z x) (/.f64 1 y))) y)
0.2b
(*.f64 (hypot.f64 z x) (*.f64 (hypot.f64 z x) (/.f64 1 y)))
0.3b
(*.f64 (hypot.f64 z x) (/.f64 1 y))
Compiler

Compiled 60 to 27 computations (55% saved)

series28.0ms (0.2%)

Counts
4 → 132
Calls

33 calls:

TimeVariablePointExpression
4.0ms
x
@0
(*.f64 (hypot.f64 z x) (*.f64 (hypot.f64 z x) (/.f64 1 y)))
2.0ms
z
@0
(*.f64 (hypot.f64 z x) (*.f64 (hypot.f64 z x) (/.f64 1 y)))
2.0ms
x
@inf
(*.f64 (hypot.f64 z x) (*.f64 (hypot.f64 z x) (/.f64 1 y)))
1.0ms
z
@0
(*.f64 (hypot.f64 z x) (/.f64 1 y))
1.0ms
z
@inf
(*.f64 (hypot.f64 z x) (/.f64 1 y))

rewrite156.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
803×prod-diff_binary64
522×log-prod_binary64
346×pow-prod-down_binary64
287×fma-def_binary64
268×pow2_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01040
121334
2278634
Stop Event
node limit
Counts
4 → 196
Calls
Call 1
Inputs
(*.f64 (hypot.f64 z x) (/.f64 1 y))
(*.f64 (hypot.f64 z x) (*.f64 (hypot.f64 z x) (/.f64 1 y)))
(-.f64 (*.f64 (hypot.f64 z x) (*.f64 (hypot.f64 z x) (/.f64 1 y))) y)
(hypot.f64 z x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (hypot.f64 z x) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 z x) y))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 z x) y)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (hypot.f64 z x) y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (hypot.f64 z x) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 y (hypot.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (hypot.f64 z x)) 2) (/.f64 y (cbrt.f64 (hypot.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (hypot.f64 z x)) (/.f64 y (sqrt.f64 (hypot.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (hypot.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) (sqrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (hypot.f64 z x) 1) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (hypot.f64 z x) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (hypot.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (hypot.f64 z x) -1) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 z x) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 z x) y) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 z x) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (hypot.f64 z x) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (hypot.f64 z x) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 3) (pow.f64 y 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (hypot.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (hypot.f64 z x) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (hypot.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (hypot.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (hypot.f64 z x) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (hypot.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (hypot.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (hypot.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 z x) y)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (hypot.f64 z x) 2) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (hypot.f64 z x) 2) 1) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (hypot.f64 z x) 2) -1) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (hypot.f64 z x) (pow.f64 y -1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (hypot.f64 z x) 6) (pow.f64 y -3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (hypot.f64 z x) 6) (pow.f64 y -3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) (fma.f64 -1 y y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 y) (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) (pow.f64 (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) 2) (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) (sqrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 z x) 6) (pow.f64 y -3)) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (*.f64 y y)) (/.f64 1 (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (hypot.f64 z x) (pow.f64 y -1/2) (sqrt.f64 y)) (-.f64 (*.f64 (hypot.f64 z x) (pow.f64 y -1/2)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 y (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2)) (-.f64 (*.f64 (pow.f64 (hypot.f64 z x) 6) (pow.f64 y -3)) (pow.f64 y 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 z x) 6) (pow.f64 y -3)) (pow.f64 y 3)) (fma.f64 y (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (*.f64 y y)) (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 z x) 6) (pow.f64 y -3)) (pow.f64 y 3))) (neg.f64 (fma.f64 y (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (*.f64 y y))) (neg.f64 (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (pow.f64 (hypot.f64 z x) 6) (pow.f64 y -3) (pow.f64 (neg.f64 y) 3)) (+.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (-.f64 (pow.f64 (neg.f64 y) 2) (*.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (pow.f64 (neg.f64 y) 2)) (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 y (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2)) (-.f64 (*.f64 (pow.f64 (hypot.f64 z x) 6) (pow.f64 y -3)) (pow.f64 y 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (*.f64 y y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y))) (exp.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (+.f64 1 (expm1.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y))) (+.f64 1 (expm1.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y))) (exp.f64 (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y))) (/.f64 1 (exp.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 y)) (exp.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 y)) (+.f64 1 (expm1.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 y)) (+.f64 1 (expm1.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 z x) (/.f64 (hypot.f64 z x) y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 z x) (/.f64 (hypot.f64 z x) y) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 y) (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y) (pow.f64 (hypot.f64 z x) 2) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y) (pow.f64 (hypot.f64 z x) 2) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (hypot.f64 z x) y) (hypot.f64 z x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (hypot.f64 z x) y) (hypot.f64 z x) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 1 (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 1 (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) 1 (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) 1 (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y) 1 (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (hypot.f64 z x) 2) (/.f64 1 y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (hypot.f64 z x) 2) (/.f64 1 y) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 z x) y) 2)) (*.f64 (cbrt.f64 (/.f64 (hypot.f64 z x) y)) (hypot.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 z x) y) 2)) (*.f64 (cbrt.f64 (/.f64 (hypot.f64 z x) y)) (hypot.f64 z x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) 2) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) 2) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) 2) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) 2) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (neg.f64 (cbrt.f64 y)) (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) (pow.f64 (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) 2) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) (pow.f64 (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) 2) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) (pow.f64 (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) 2) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) 2) (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) 2) (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) 2) (cbrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (hypot.f64 z x)) 2) (*.f64 (cbrt.f64 (hypot.f64 z x)) (/.f64 (hypot.f64 z x) y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (hypot.f64 z x)) 2) (*.f64 (cbrt.f64 (hypot.f64 z x)) (/.f64 (hypot.f64 z x) y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (hypot.f64 z x) y)) (*.f64 (sqrt.f64 (/.f64 (hypot.f64 z x) y)) (hypot.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (hypot.f64 z x) y)) (*.f64 (sqrt.f64 (/.f64 (hypot.f64 z x) y)) (hypot.f64 z x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 z x) (pow.f64 y -1/2)) (*.f64 (hypot.f64 z x) (pow.f64 y -1/2)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 z x) (pow.f64 y -1/2)) (*.f64 (hypot.f64 z x) (pow.f64 y -1/2)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (neg.f64 (sqrt.f64 y)) (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) (sqrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) (sqrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) (sqrt.f64 (-.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) y)) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (hypot.f64 z x)) (*.f64 (sqrt.f64 (hypot.f64 z x)) (/.f64 (hypot.f64 z x) y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (hypot.f64 z x)) (*.f64 (sqrt.f64 (hypot.f64 z x)) (/.f64 (hypot.f64 z x) y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 z x) 6) (pow.f64 y -3)) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2))) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 z x) 6) (pow.f64 y -3)) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2))) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (pow.f64 (hypot.f64 z x) 6) (pow.f64 y -3)) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2))) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (*.f64 y y)) (/.f64 1 (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y))) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (*.f64 y y)) (/.f64 1 (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y))) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 2) (*.f64 y y)) (/.f64 1 (+.f64 y (/.f64 (pow.f64 (hypot.f64 z x) 2) y))) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 y)) 2) (cbrt.f64 (neg.f64 y)) (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 y)) (sqrt.f64 (neg.f64 y)) (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 y)) (sqrt.f64 y) (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (hypot.f64 z x) (pow.f64 y -1/2) (sqrt.f64 y)) (-.f64 (*.f64 (hypot.f64 z x) (pow.f64 y -1/2)) (sqrt.f64 y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (hypot.f64 z x) (pow.f64 y -1/2) (sqrt.f64 y)) (-.f64 (*.f64 (hypot.f64 z x) (pow.f64 y -1/2)) (sqrt.f64 y)) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (hypot.f64 z x) (pow.f64 y -1/2) (sqrt.f64 y)) (-.f64 (*.f64 (hypot.f64 z x) (pow.f64 y -1/2)) (sqrt.f64 y)) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (hypot.f64 z x) 2) 1) (/.f64 1 y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (hypot.f64 z x) 2) 1) (/.f64 1 y) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 z x) (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 z x) y) 2))) (cbrt.f64 (/.f64 (hypot.f64 z x) y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 z x) (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 z x) y) 2))) (cbrt.f64 (/.f64 (hypot.f64 z x) y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 z x) (sqrt.f64 (/.f64 (hypot.f64 z x) y))) (sqrt.f64 (/.f64 (hypot.f64 z x) y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (hypot.f64 z x) (sqrt.f64 (/.f64 (hypot.f64 z x) y))) (sqrt.f64 (/.f64 (hypot.f64 z x) y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (hypot.f64 z x) y) (pow.f64 (cbrt.f64 (hypot.f64 z x)) 2)) (cbrt.f64 (hypot.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (hypot.f64 z x) y) (pow.f64 (cbrt.f64 (hypot.f64 z x)) 2)) (cbrt.f64 (hypot.f64 z x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (hypot.f64 z x) y) (sqrt.f64 (hypot.f64 z x))) (sqrt.f64 (hypot.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (hypot.f64 z x) y) (sqrt.f64 (hypot.f64 z x))) (sqrt.f64 (hypot.f64 z x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 (hypot.f64 z x) (/.f64 1 (cbrt.f64 y))) 2) (/.f64 1 (cbrt.f64 y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 (hypot.f64 z x) (/.f64 1 (cbrt.f64 y))) 2) (/.f64 1 (cbrt.f64 y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (hypot.f64 z x) 2) (pow.f64 y -1/2)) (pow.f64 y -1/2) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (hypot.f64 z x) 2) (pow.f64 y -1/2)) (pow.f64 y -1/2) (*.f64 (neg.f64 y) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (hypot.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (hypot.f64 z x))) 2)) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 z x)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 z x)))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 z x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (hypot.f64 z x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 z x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (hypot.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (hypot.f64 z x)) (pow.f64 (cbrt.f64 (hypot.f64 z x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 z x)) 2) (cbrt.f64 (hypot.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 z x)) 2) (*.f64 (cbrt.f64 (hypot.f64 z x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 z x)) (sqrt.f64 (hypot.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 z x)) (*.f64 (sqrt.f64 (hypot.f64 z x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 z x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 z x) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 z x) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (hypot.f64 z x)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (hypot.f64 z x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (hypot.f64 z x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (hypot.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (hypot.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (hypot.f64 z x) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (hypot.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (hypot.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (hypot.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 z x)) 1))))))

simplify179.0ms (1.4%)

Algorithm
egg-herbie
Rules
855×associate-/r*_binary64
733×associate-/l*_binary64
489×associate-*r*_binary64
436×associate-*l*_binary64
394×associate-*l/_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02523729
17833257
225512927
Stop Event
node limit
Counts
328 → 302
Calls
Call 1
Inputs
(/.f64 x y)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (/.f64 x y))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (+.f64 (/.f64 x y) (*.f64 -1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3))))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (+.f64 (/.f64 x y) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 5)))) (*.f64 -1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3)))))))
(/.f64 z y)
(+.f64 (/.f64 z y) (*.f64 1/2 (/.f64 (pow.f64 x 2) (*.f64 y z))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3)))) (+.f64 (/.f64 z y) (*.f64 1/2 (/.f64 (pow.f64 x 2) (*.f64 y z)))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3)))) (+.f64 (/.f64 z y) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) (*.f64 y z))) (*.f64 1/16 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 5)))))))
(*.f64 -1 (/.f64 z y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) (*.f64 y z))) (*.f64 -1 (/.f64 z y)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) (*.f64 y z))) (*.f64 -1 (/.f64 z y))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) (*.f64 y z))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 5)))) (*.f64 -1 (/.f64 z y)))))
(/.f64 z y)
(+.f64 (/.f64 z y) (*.f64 1/2 (/.f64 (pow.f64 x 2) (*.f64 y z))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3)))) (+.f64 (/.f64 z y) (*.f64 1/2 (/.f64 (pow.f64 x 2) (*.f64 y z)))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3)))) (+.f64 (/.f64 z y) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) (*.f64 y z))) (*.f64 1/16 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 5)))))))
(/.f64 x y)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (/.f64 x y))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (+.f64 (/.f64 x y) (*.f64 -1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3))))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (+.f64 (/.f64 x y) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 5)))) (*.f64 -1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3)))))))
(*.f64 -1 (/.f64 x y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (*.f64 -1 (/.f64 x y)))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (*.f64 -1 (/.f64 x y))))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 5)))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (*.f64 -1 (/.f64 x y)))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(/.f64 (pow.f64 x 2) y)
(+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 (+.f64 (*.f64 5/64 (/.f64 1 (*.f64 y (pow.f64 x 6)))) (*.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 x 6)))) y))) (pow.f64 z 8)) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 x 6)))) (*.f64 y (pow.f64 x 2)))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2)) (*.f64 y (pow.f64 x 2))))) (pow.f64 z 10)) (+.f64 (*.f64 (+.f64 (*.f64 5/64 (/.f64 1 (*.f64 y (pow.f64 x 6)))) (*.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 x 6)))) y))) (pow.f64 z 8)) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y))))
(/.f64 (pow.f64 z 2) y)
(+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y))
(+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (/.f64 (pow.f64 z 2) y))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 4)))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 4)))) (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (/.f64 (pow.f64 z 2) y))))))
(/.f64 (pow.f64 z 2) y)
(+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y))
(+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (/.f64 (pow.f64 z 2) y))))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 4)))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 4)))) (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (/.f64 (pow.f64 z 2) y))))))
(/.f64 (pow.f64 z 2) y)
(+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 y (pow.f64 z 6)))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) y)) (*.f64 1/16 (/.f64 1 (*.f64 y (pow.f64 z 6)))))) (pow.f64 x 8)) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) (pow.f64 z 4))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 z 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) (pow.f64 z 2)))) (pow.f64 z 2))) (pow.f64 (/.f64 1/16 (pow.f64 z 5)) 2))) y)) (+.f64 (*.f64 1/256 (/.f64 1 (*.f64 y (pow.f64 z 10)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 z 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) (pow.f64 z 2)))) (*.f64 y (pow.f64 z 2)))) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) (*.f64 y (pow.f64 z 4))))))) (pow.f64 x 12)) (+.f64 (*.f64 (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 y (pow.f64 z 6)))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) y)) (*.f64 1/16 (/.f64 1 (*.f64 y (pow.f64 z 6)))))) (pow.f64 x 8)) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y))))
(/.f64 (pow.f64 x 2) y)
(+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 4)))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 4)))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y))))))
(/.f64 (pow.f64 x 2) y)
(+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y))))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 4)))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 4)))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y))))))
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(-.f64 (/.f64 (pow.f64 x 2) y) y)
(-.f64 (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y)) y)
(-.f64 (+.f64 (/.f64 (pow.f64 z 2) y) (+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2)) y)) (*.f64 5/64 (/.f64 1 (*.f64 y (pow.f64 x 6))))) (pow.f64 z 8)) (/.f64 (pow.f64 x 2) y))) y)
(-.f64 (+.f64 (/.f64 (pow.f64 z 2) y) (+.f64 (*.f64 (pow.f64 z 10) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2)) (*.f64 y (pow.f64 x 2)))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 x 6)))) (*.f64 y (pow.f64 x 2)))))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2)) y)) (*.f64 5/64 (/.f64 1 (*.f64 y (pow.f64 x 6))))) (pow.f64 z 8)) (/.f64 (pow.f64 x 2) y)))) y)
(/.f64 (pow.f64 z 2) y)
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (/.f64 (pow.f64 z 2) y)))) y)
(-.f64 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 4)))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 4)))) (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (/.f64 (pow.f64 z 2) y)))))) y)
(/.f64 (pow.f64 z 2) y)
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (/.f64 (pow.f64 z 2) y)))) y)
(-.f64 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 4)))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 4)))) (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (/.f64 (pow.f64 z 2) y)))))) y)
(-.f64 (/.f64 (pow.f64 z 2) y) y)
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 y (pow.f64 z 6)))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) y)) (*.f64 1/16 (/.f64 1 (*.f64 y (pow.f64 z 6)))))) (pow.f64 x 8)) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) (pow.f64 z 4))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 z 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) (pow.f64 z 2)))) (pow.f64 z 2))) (pow.f64 (/.f64 1/16 (pow.f64 z 5)) 2))) y)) (+.f64 (*.f64 1/256 (/.f64 1 (*.f64 y (pow.f64 z 10)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 z 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) (pow.f64 z 2)))) (*.f64 y (pow.f64 z 2)))) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) (*.f64 y (pow.f64 z 4))))))) (pow.f64 x 12)) (+.f64 (*.f64 (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 y (pow.f64 z 6)))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) y)) (*.f64 1/16 (/.f64 1 (*.f64 y (pow.f64 z 6)))))) (pow.f64 x 8)) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))) y)
(/.f64 (pow.f64 x 2) y)
(-.f64 (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y)) y)
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y)))) y)
(-.f64 (+.f64 (*.f64 1/8 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 4)))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 4)))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y)))))) y)
(/.f64 (pow.f64 x 2) y)
(-.f64 (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y)) y)
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y)))) y)
(-.f64 (+.f64 (*.f64 1/8 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 4)))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 4)))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y)))))) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(*.f64 -1 y)
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(*.f64 -1 y)
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
x
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) x)) x)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) x)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3))) x))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) x)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 z 6) (pow.f64 x 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3))) x)))
z
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) z)) z)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) z)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3))) z))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) z)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3))) (+.f64 z (*.f64 1/16 (/.f64 (pow.f64 x 6) (pow.f64 z 5))))))
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) (*.f64 -1/2 (/.f64 (pow.f64 x 2) z)))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) z)) (*.f64 1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)))))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 x 6) (pow.f64 z 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) z)) (*.f64 1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3))))))
z
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) z)) z)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) z)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3))) z))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) z)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3))) (+.f64 z (*.f64 1/16 (/.f64 (pow.f64 x 6) (pow.f64 z 5))))))
x
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) x)) x)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) x)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3))) x))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) x)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 z 6) (pow.f64 x 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3))) x)))
(*.f64 -1 x)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) x)) (*.f64 -1 x))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) x)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (*.f64 -1 x)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) x)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (+.f64 (*.f64 -1 x) (*.f64 -1/16 (/.f64 (pow.f64 z 6) (pow.f64 x 5))))))
Outputs
(/.f64 x y)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (/.f64 x y))
(fma.f64 1/2 (/.f64 (*.f64 z z) (*.f64 x y)) (/.f64 x y))
(fma.f64 1/2 (*.f64 (/.f64 z y) (/.f64 z x)) (/.f64 x y))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (+.f64 (/.f64 x y) (*.f64 -1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3))))))
(fma.f64 1/2 (/.f64 (*.f64 z z) (*.f64 x y)) (+.f64 (/.f64 x y) (*.f64 -1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3))))))
(fma.f64 1/2 (*.f64 (/.f64 z y) (/.f64 z x)) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3))) (/.f64 x y)))
(fma.f64 1/2 (*.f64 (/.f64 z y) (/.f64 z x)) (fma.f64 -1/8 (/.f64 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) y) (/.f64 x y)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (+.f64 (/.f64 x y) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 5)))) (*.f64 -1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3)))))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 z z) (*.f64 x y)) (/.f64 x y)) (fma.f64 1/16 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 5))) (*.f64 -1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3))))))
(+.f64 (fma.f64 1/2 (*.f64 (/.f64 z y) (/.f64 z x)) (/.f64 x y)) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3))) (*.f64 1/16 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 5))))))
(+.f64 (fma.f64 1/2 (*.f64 (/.f64 z y) (/.f64 z x)) (/.f64 x y)) (fma.f64 -1/8 (/.f64 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) y) (*.f64 1/16 (/.f64 (/.f64 (pow.f64 z 6) y) (pow.f64 x 5)))))
(/.f64 z y)
(+.f64 (/.f64 z y) (*.f64 1/2 (/.f64 (pow.f64 x 2) (*.f64 y z))))
(+.f64 (/.f64 z y) (*.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y z))))
(fma.f64 1/2 (*.f64 (/.f64 x y) (/.f64 x z)) (/.f64 z y))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3)))) (+.f64 (/.f64 z y) (*.f64 1/2 (/.f64 (pow.f64 x 2) (*.f64 y z)))))
(fma.f64 -1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3))) (+.f64 (/.f64 z y) (*.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y z)))))
(fma.f64 -1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3))) (fma.f64 1/2 (*.f64 (/.f64 x y) (/.f64 x z)) (/.f64 z y)))
(fma.f64 -1/8 (/.f64 (/.f64 (pow.f64 x 4) y) (pow.f64 z 3)) (fma.f64 1/2 (*.f64 (/.f64 x y) (/.f64 x z)) (/.f64 z y)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3)))) (+.f64 (/.f64 z y) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) (*.f64 y z))) (*.f64 1/16 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 5)))))))
(fma.f64 -1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3))) (+.f64 (/.f64 z y) (fma.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y z)) (*.f64 1/16 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 5)))))))
(+.f64 (fma.f64 1/2 (*.f64 (/.f64 x y) (/.f64 x z)) (*.f64 1/16 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 5))))) (fma.f64 -1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3))) (/.f64 z y)))
(+.f64 (fma.f64 1/16 (/.f64 (/.f64 (pow.f64 x 6) y) (pow.f64 z 5)) (*.f64 (/.f64 1/2 y) (/.f64 x (/.f64 z x)))) (fma.f64 -1/8 (/.f64 (/.f64 (pow.f64 x 4) y) (pow.f64 z 3)) (/.f64 z y)))
(*.f64 -1 (/.f64 z y))
(neg.f64 (/.f64 z y))
(/.f64 (neg.f64 z) y)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) (*.f64 y z))) (*.f64 -1 (/.f64 z y)))
(fma.f64 -1/2 (/.f64 (*.f64 x x) (*.f64 y z)) (neg.f64 (/.f64 z y)))
(-.f64 (*.f64 (*.f64 (/.f64 x y) (/.f64 x z)) -1/2) (/.f64 z y))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) (*.f64 y z))) (*.f64 -1 (/.f64 z y))))
(fma.f64 1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3))) (fma.f64 -1/2 (/.f64 (*.f64 x x) (*.f64 y z)) (neg.f64 (/.f64 z y))))
(-.f64 (fma.f64 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3))) 1/8 (*.f64 (*.f64 (/.f64 x y) (/.f64 x z)) -1/2)) (/.f64 z y))
(-.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 x 4) y) (pow.f64 z 3)) 1/8 (*.f64 (*.f64 (/.f64 x y) (/.f64 x z)) -1/2)) (/.f64 z y))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) (*.f64 y z))) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 5)))) (*.f64 -1 (/.f64 z y)))))
(fma.f64 1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3))) (fma.f64 -1/2 (/.f64 (*.f64 x x) (*.f64 y z)) (fma.f64 -1/16 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 5))) (neg.f64 (/.f64 z y)))))
(fma.f64 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3))) 1/8 (fma.f64 (*.f64 (/.f64 x y) (/.f64 x z)) -1/2 (-.f64 (*.f64 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 5))) -1/16) (/.f64 z y))))
(fma.f64 (/.f64 (/.f64 (pow.f64 x 4) y) (pow.f64 z 3)) 1/8 (-.f64 (fma.f64 (*.f64 (/.f64 x y) (/.f64 x z)) -1/2 (*.f64 (/.f64 (/.f64 (pow.f64 x 6) y) (pow.f64 z 5)) -1/16)) (/.f64 z y)))
(/.f64 z y)
(+.f64 (/.f64 z y) (*.f64 1/2 (/.f64 (pow.f64 x 2) (*.f64 y z))))
(+.f64 (/.f64 z y) (*.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y z))))
(fma.f64 1/2 (*.f64 (/.f64 x y) (/.f64 x z)) (/.f64 z y))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3)))) (+.f64 (/.f64 z y) (*.f64 1/2 (/.f64 (pow.f64 x 2) (*.f64 y z)))))
(fma.f64 -1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3))) (+.f64 (/.f64 z y) (*.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y z)))))
(fma.f64 -1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3))) (fma.f64 1/2 (*.f64 (/.f64 x y) (/.f64 x z)) (/.f64 z y)))
(fma.f64 -1/8 (/.f64 (/.f64 (pow.f64 x 4) y) (pow.f64 z 3)) (fma.f64 1/2 (*.f64 (/.f64 x y) (/.f64 x z)) (/.f64 z y)))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3)))) (+.f64 (/.f64 z y) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) (*.f64 y z))) (*.f64 1/16 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 5)))))))
(fma.f64 -1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3))) (+.f64 (/.f64 z y) (fma.f64 1/2 (/.f64 (*.f64 x x) (*.f64 y z)) (*.f64 1/16 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 5)))))))
(+.f64 (fma.f64 1/2 (*.f64 (/.f64 x y) (/.f64 x z)) (*.f64 1/16 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 5))))) (fma.f64 -1/8 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 3))) (/.f64 z y)))
(+.f64 (fma.f64 1/16 (/.f64 (/.f64 (pow.f64 x 6) y) (pow.f64 z 5)) (*.f64 (/.f64 1/2 y) (/.f64 x (/.f64 z x)))) (fma.f64 -1/8 (/.f64 (/.f64 (pow.f64 x 4) y) (pow.f64 z 3)) (/.f64 z y)))
(/.f64 x y)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (/.f64 x y))
(fma.f64 1/2 (/.f64 (*.f64 z z) (*.f64 x y)) (/.f64 x y))
(fma.f64 1/2 (*.f64 (/.f64 z y) (/.f64 z x)) (/.f64 x y))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (+.f64 (/.f64 x y) (*.f64 -1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3))))))
(fma.f64 1/2 (/.f64 (*.f64 z z) (*.f64 x y)) (+.f64 (/.f64 x y) (*.f64 -1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3))))))
(fma.f64 1/2 (*.f64 (/.f64 z y) (/.f64 z x)) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3))) (/.f64 x y)))
(fma.f64 1/2 (*.f64 (/.f64 z y) (/.f64 z x)) (fma.f64 -1/8 (/.f64 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) y) (/.f64 x y)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (+.f64 (/.f64 x y) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 5)))) (*.f64 -1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3)))))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 z z) (*.f64 x y)) (/.f64 x y)) (fma.f64 1/16 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 5))) (*.f64 -1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3))))))
(+.f64 (fma.f64 1/2 (*.f64 (/.f64 z y) (/.f64 z x)) (/.f64 x y)) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3))) (*.f64 1/16 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 5))))))
(+.f64 (fma.f64 1/2 (*.f64 (/.f64 z y) (/.f64 z x)) (/.f64 x y)) (fma.f64 -1/8 (/.f64 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) y) (*.f64 1/16 (/.f64 (/.f64 (pow.f64 z 6) y) (pow.f64 x 5)))))
(*.f64 -1 (/.f64 x y))
(/.f64 (neg.f64 x) y)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (*.f64 -1 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) (*.f64 x y)) (/.f64 (neg.f64 x) y))
(-.f64 (*.f64 (*.f64 (/.f64 z y) (/.f64 z x)) -1/2) (/.f64 x y))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (*.f64 -1 (/.f64 x y))))
(fma.f64 1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3))) (fma.f64 -1/2 (/.f64 (*.f64 z z) (*.f64 x y)) (/.f64 (neg.f64 x) y)))
(-.f64 (fma.f64 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3))) 1/8 (*.f64 (*.f64 (/.f64 z y) (/.f64 z x)) -1/2)) (/.f64 x y))
(-.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) y) 1/8 (*.f64 (*.f64 (/.f64 z y) (/.f64 z x)) -1/2)) (/.f64 x y))
(+.f64 (*.f64 -1/16 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 5)))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) (*.f64 y x))) (*.f64 -1 (/.f64 x y)))))
(fma.f64 -1/16 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 5))) (fma.f64 1/8 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3))) (fma.f64 -1/2 (/.f64 (*.f64 z z) (*.f64 x y)) (/.f64 (neg.f64 x) y))))
(fma.f64 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 5))) -1/16 (-.f64 (fma.f64 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 3))) 1/8 (*.f64 (*.f64 (/.f64 z y) (/.f64 z x)) -1/2)) (/.f64 x y)))
(fma.f64 (/.f64 (/.f64 (pow.f64 z 6) y) (pow.f64 x 5)) -1/16 (-.f64 (fma.f64 (/.f64 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) y) 1/8 (*.f64 (*.f64 (/.f64 z y) (/.f64 z x)) -1/2)) (/.f64 x y)))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (*.f64 z z) (*.f64 x x))))
(/.f64 (hypot.f64 x z) y)
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (*.f64 z z) (*.f64 x x))))
(/.f64 (hypot.f64 x z) y)
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (*.f64 z z) (*.f64 x x))))
(/.f64 (hypot.f64 x z) y)
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (*.f64 z z) (*.f64 x x))))
(/.f64 (hypot.f64 x z) y)
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (*.f64 z z) (*.f64 x x))))
(/.f64 (hypot.f64 x z) y)
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (*.f64 z z) (*.f64 x x))))
(/.f64 (hypot.f64 x z) y)
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (*.f64 z z) (*.f64 x x))))
(/.f64 (hypot.f64 x z) y)
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (*.f64 z z) (*.f64 x x))))
(/.f64 (hypot.f64 x z) y)
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (*.f64 z z) (*.f64 x x))))
(/.f64 (hypot.f64 x z) y)
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (*.f64 z z) (*.f64 x x))))
(/.f64 (hypot.f64 x z) y)
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (*.f64 z z) (*.f64 x x))))
(/.f64 (hypot.f64 x z) y)
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(*.f64 (/.f64 1 y) (sqrt.f64 (+.f64 (*.f64 z z) (*.f64 x x))))
(/.f64 (hypot.f64 x z) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(*.f64 (/.f64 x y) x)
(+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y))
(+.f64 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(+.f64 (/.f64 (*.f64 x x) y) (/.f64 z (/.f64 y z)))
(+.f64 (*.f64 (/.f64 x y) x) (*.f64 (/.f64 z y) z))
(+.f64 (*.f64 (+.f64 (*.f64 5/64 (/.f64 1 (*.f64 y (pow.f64 x 6)))) (*.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 x 6)))) y))) (pow.f64 z 8)) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y)))
(fma.f64 (fma.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (/.f64 1/16 (pow.f64 x 6))) y) (/.f64 5/64 (*.f64 y (pow.f64 x 6)))) (pow.f64 z 8) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)))
(+.f64 (/.f64 (*.f64 x x) y) (fma.f64 (-.f64 (/.f64 5/64 (*.f64 y (pow.f64 x 6))) (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (/.f64 1/16 (pow.f64 x 6))) y)) (pow.f64 z 8) (/.f64 z (/.f64 y z))))
(+.f64 (*.f64 (/.f64 x y) x) (fma.f64 (-.f64 (/.f64 5/64 (*.f64 y (pow.f64 x 6))) (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (/.f64 1/16 (pow.f64 x 6))) y)) (pow.f64 z 8) (*.f64 (/.f64 z y) z)))
(+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 x 6)))) (*.f64 y (pow.f64 x 2)))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2)) (*.f64 y (pow.f64 x 2))))) (pow.f64 z 10)) (+.f64 (*.f64 (+.f64 (*.f64 5/64 (/.f64 1 (*.f64 y (pow.f64 x 6)))) (*.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 x 6)))) y))) (pow.f64 z 8)) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y))))
(fma.f64 (*.f64 -1/2 (-.f64 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (/.f64 1/16 (pow.f64 x 6))) (*.f64 y (*.f64 x x))) (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (/.f64 1/16 (pow.f64 x 6))) (*.f64 y (*.f64 x x))))) (pow.f64 z 10) (fma.f64 (fma.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (/.f64 1/16 (pow.f64 x 6))) y) (/.f64 5/64 (*.f64 y (pow.f64 x 6)))) (pow.f64 z 8) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))))
(+.f64 (/.f64 z (/.f64 y z)) (fma.f64 (pow.f64 z 10) 0 (fma.f64 (-.f64 (/.f64 5/64 (*.f64 y (pow.f64 x 6))) (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (/.f64 1/16 (pow.f64 x 6))) y)) (pow.f64 z 8) (/.f64 (*.f64 x x) y))))
(+.f64 (*.f64 (/.f64 z y) z) (+.f64 (fma.f64 (-.f64 (/.f64 5/64 (*.f64 y (pow.f64 x 6))) (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (/.f64 1/16 (pow.f64 x 6))) y)) (pow.f64 z 8) (*.f64 (/.f64 x y) x)) 0))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y))
(+.f64 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(+.f64 (/.f64 (*.f64 x x) y) (/.f64 z (/.f64 y z)))
(+.f64 (*.f64 (/.f64 x y) x) (*.f64 (/.f64 z y) z))
(+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (/.f64 (pow.f64 z 2) y))))
(+.f64 (/.f64 (*.f64 x x) y) (fma.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (fma.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (/.f64 (*.f64 z z) y))))
(+.f64 (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 z (/.f64 y z))))
(+.f64 (*.f64 (/.f64 x y) x) (+.f64 (*.f64 (/.f64 z y) z) 0))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 4)))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 4)))) (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (/.f64 (pow.f64 z 2) y))))))
(+.f64 (/.f64 (*.f64 x x) y) (fma.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (fma.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (/.f64 (*.f64 z z) y))))
(+.f64 (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 z (/.f64 y z))))
(+.f64 (*.f64 (/.f64 x y) x) (+.f64 (*.f64 (/.f64 z y) z) 0))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y))
(+.f64 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(+.f64 (/.f64 (*.f64 x x) y) (/.f64 z (/.f64 y z)))
(+.f64 (*.f64 (/.f64 x y) x) (*.f64 (/.f64 z y) z))
(+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (/.f64 (pow.f64 z 2) y))))
(+.f64 (/.f64 (*.f64 x x) y) (fma.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (fma.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (/.f64 (*.f64 z z) y))))
(+.f64 (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 z (/.f64 y z))))
(+.f64 (*.f64 (/.f64 x y) x) (+.f64 (*.f64 (/.f64 z y) z) 0))
(+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 4)))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 4)))) (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (/.f64 (pow.f64 z 2) y))))))
(+.f64 (/.f64 (*.f64 x x) y) (fma.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (fma.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (/.f64 (*.f64 z z) y))))
(+.f64 (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 z (/.f64 y z))))
(+.f64 (*.f64 (/.f64 x y) x) (+.f64 (*.f64 (/.f64 z y) z) 0))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y))
(+.f64 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(+.f64 (/.f64 (*.f64 x x) y) (/.f64 z (/.f64 y z)))
(+.f64 (*.f64 (/.f64 x y) x) (*.f64 (/.f64 z y) z))
(+.f64 (*.f64 (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 y (pow.f64 z 6)))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) y)) (*.f64 1/16 (/.f64 1 (*.f64 y (pow.f64 z 6)))))) (pow.f64 x 8)) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(fma.f64 (+.f64 (/.f64 1/64 (*.f64 y (pow.f64 z 6))) (fma.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) y) (/.f64 1/16 (*.f64 y (pow.f64 z 6))))) (pow.f64 x 8) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)))
(+.f64 (/.f64 z (/.f64 y z)) (fma.f64 (+.f64 (/.f64 1/64 (*.f64 y (pow.f64 z 6))) (-.f64 (/.f64 1/16 (*.f64 y (pow.f64 z 6))) (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) y))) (pow.f64 x 8) (/.f64 (*.f64 x x) y)))
(+.f64 (*.f64 (/.f64 z y) z) (fma.f64 (-.f64 (*.f64 (/.f64 (/.f64 1 y) (pow.f64 z 6)) 5/64) (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 6)) (/.f64 1/16 (pow.f64 z 6))) y)) (pow.f64 x 8) (*.f64 (/.f64 x y) x)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) (pow.f64 z 4))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 z 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) (pow.f64 z 2)))) (pow.f64 z 2))) (pow.f64 (/.f64 1/16 (pow.f64 z 5)) 2))) y)) (+.f64 (*.f64 1/256 (/.f64 1 (*.f64 y (pow.f64 z 10)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 z 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) (pow.f64 z 2)))) (*.f64 y (pow.f64 z 2)))) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) (*.f64 y (pow.f64 z 4))))))) (pow.f64 x 12)) (+.f64 (*.f64 (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 y (pow.f64 z 6)))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) y)) (*.f64 1/16 (/.f64 1 (*.f64 y (pow.f64 z 6)))))) (pow.f64 x 8)) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y))))
(fma.f64 (fma.f64 -1 (/.f64 (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) (pow.f64 z 4)) (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) (*.f64 z z)))) (*.f64 z z)) (pow.f64 (/.f64 1/16 (pow.f64 z 5)) 2))) y) (+.f64 (/.f64 1/256 (*.f64 y (pow.f64 z 10))) (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) (*.f64 z z)))) (*.f64 y (*.f64 z z))) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) (*.f64 y (pow.f64 z 4))))))) (pow.f64 x 12) (fma.f64 (+.f64 (/.f64 1/64 (*.f64 y (pow.f64 z 6))) (fma.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) y) (/.f64 1/16 (*.f64 y (pow.f64 z 6))))) (pow.f64 x 8) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))))
(fma.f64 (-.f64 (+.f64 (/.f64 1/256 (*.f64 y (pow.f64 z 10))) (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) (*.f64 z z)))) (*.f64 y (*.f64 z z))) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) (*.f64 y (pow.f64 z 4)))))) (/.f64 (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) (pow.f64 z 4)) (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 z z) (pow.f64 z 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6)))) (pow.f64 z 4))) (pow.f64 (/.f64 1/16 (pow.f64 z 5)) 2))) y)) (pow.f64 x 12) (+.f64 (/.f64 z (/.f64 y z)) (fma.f64 (+.f64 (/.f64 1/64 (*.f64 y (pow.f64 z 6))) (-.f64 (/.f64 1/16 (*.f64 y (pow.f64 z 6))) (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) y))) (pow.f64 x 8) (/.f64 (*.f64 x x) y))))
(fma.f64 (+.f64 (/.f64 (/.f64 1/256 (pow.f64 z 10)) y) (-.f64 (fma.f64 1/8 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 6)) (/.f64 1/16 (pow.f64 z 6))) (*.f64 y (pow.f64 z 4))) (/.f64 (+.f64 (*.f64 1/4 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 6)) (/.f64 1/16 (pow.f64 z 6))) (*.f64 z z))) (/.f64 1/128 (pow.f64 z 8))) (*.f64 y (*.f64 z z)))) (/.f64 (+.f64 (/.f64 1/256 (pow.f64 z 10)) (fma.f64 1/8 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 6)) (/.f64 1/16 (pow.f64 z 6))) (pow.f64 z 4)) (/.f64 (+.f64 (*.f64 1/4 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 6)) (/.f64 1/16 (pow.f64 z 6))) (*.f64 z z))) (/.f64 1/128 (pow.f64 z 8))) (*.f64 z z)))) y))) (pow.f64 x 12) (+.f64 (*.f64 (/.f64 z y) z) (fma.f64 (-.f64 (*.f64 (/.f64 (/.f64 1 y) (pow.f64 z 6)) 5/64) (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 6)) (/.f64 1/16 (pow.f64 z 6))) y)) (pow.f64 x 8) (*.f64 (/.f64 x y) x))))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(*.f64 (/.f64 x y) x)
(+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y))
(+.f64 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(+.f64 (/.f64 (*.f64 x x) y) (/.f64 z (/.f64 y z)))
(+.f64 (*.f64 (/.f64 x y) x) (*.f64 (/.f64 z y) z))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y))))
(+.f64 (/.f64 (*.f64 x x) y) (fma.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (fma.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (/.f64 (*.f64 z z) y))))
(+.f64 (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 z (/.f64 y z))))
(+.f64 (*.f64 (/.f64 x y) x) (+.f64 (*.f64 (/.f64 z y) z) 0))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 4)))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 4)))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y))))))
(+.f64 (/.f64 (*.f64 x x) y) (fma.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (fma.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (/.f64 (*.f64 z z) y))))
(+.f64 (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 z (/.f64 y z))))
(+.f64 (*.f64 (/.f64 x y) x) (+.f64 (*.f64 (/.f64 z y) z) 0))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(*.f64 (/.f64 x y) x)
(+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y))
(+.f64 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))
(+.f64 (/.f64 (*.f64 x x) y) (/.f64 z (/.f64 y z)))
(+.f64 (*.f64 (/.f64 x y) x) (*.f64 (/.f64 z y) z))
(+.f64 (*.f64 1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y))))
(+.f64 (/.f64 (*.f64 x x) y) (fma.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (fma.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (/.f64 (*.f64 z z) y))))
(+.f64 (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 z (/.f64 y z))))
(+.f64 (*.f64 (/.f64 x y) x) (+.f64 (*.f64 (/.f64 z y) z) 0))
(+.f64 (*.f64 1/8 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 4)))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 4)))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y))))))
(+.f64 (/.f64 (*.f64 x x) y) (fma.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (fma.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (/.f64 (*.f64 z z) y))))
(+.f64 (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 z (/.f64 y z))))
(+.f64 (*.f64 (/.f64 x y) x) (+.f64 (*.f64 (/.f64 z y) z) 0))
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (fma.f64 z z (*.f64 x x)) y)
(/.f64 (fma.f64 x x (*.f64 z z)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (fma.f64 z z (*.f64 x x)) y)
(/.f64 (fma.f64 x x (*.f64 z z)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (fma.f64 z z (*.f64 x x)) y)
(/.f64 (fma.f64 x x (*.f64 z z)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (fma.f64 z z (*.f64 x x)) y)
(/.f64 (fma.f64 x x (*.f64 z z)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (fma.f64 z z (*.f64 x x)) y)
(/.f64 (fma.f64 x x (*.f64 z z)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (fma.f64 z z (*.f64 x x)) y)
(/.f64 (fma.f64 x x (*.f64 z z)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (fma.f64 z z (*.f64 x x)) y)
(/.f64 (fma.f64 x x (*.f64 z z)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (fma.f64 z z (*.f64 x x)) y)
(/.f64 (fma.f64 x x (*.f64 z z)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (fma.f64 z z (*.f64 x x)) y)
(/.f64 (fma.f64 x x (*.f64 z z)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (fma.f64 z z (*.f64 x x)) y)
(/.f64 (fma.f64 x x (*.f64 z z)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (fma.f64 z z (*.f64 x x)) y)
(/.f64 (fma.f64 x x (*.f64 z z)) y)
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (fma.f64 z z (*.f64 x x)) y)
(/.f64 (fma.f64 x x (*.f64 z z)) y)
(-.f64 (/.f64 (pow.f64 x 2) y) y)
(-.f64 (/.f64 (*.f64 x x) y) y)
(-.f64 (*.f64 (/.f64 x y) x) y)
(-.f64 (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y)) y)
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 (*.f64 z z) y) y))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (*.f64 (/.f64 x y) x) (-.f64 (*.f64 (/.f64 z y) z) y))
(-.f64 (+.f64 (/.f64 (pow.f64 z 2) y) (+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2)) y)) (*.f64 5/64 (/.f64 1 (*.f64 y (pow.f64 x 6))))) (pow.f64 z 8)) (/.f64 (pow.f64 x 2) y))) y)
(+.f64 (/.f64 (*.f64 z z) y) (-.f64 (fma.f64 (fma.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (/.f64 1/16 (pow.f64 x 6))) y) (/.f64 5/64 (*.f64 y (pow.f64 x 6)))) (pow.f64 z 8) (/.f64 (*.f64 x x) y)) y))
(+.f64 (fma.f64 (-.f64 (/.f64 5/64 (*.f64 y (pow.f64 x 6))) (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (/.f64 1/16 (pow.f64 x 6))) y)) (pow.f64 z 8) (/.f64 (*.f64 x x) y)) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (fma.f64 (-.f64 (/.f64 5/64 (*.f64 y (pow.f64 x 6))) (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (/.f64 1/16 (pow.f64 x 6))) y)) (pow.f64 z 8) (*.f64 (/.f64 x y) x)) (-.f64 (*.f64 (/.f64 z y) z) y))
(-.f64 (+.f64 (/.f64 (pow.f64 z 2) y) (+.f64 (*.f64 (pow.f64 z 10) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2)) (*.f64 y (pow.f64 x 2)))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 x 6)))) (*.f64 y (pow.f64 x 2)))))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/16 (/.f64 1 (pow.f64 x 6))) (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2)) y)) (*.f64 5/64 (/.f64 1 (*.f64 y (pow.f64 x 6))))) (pow.f64 z 8)) (/.f64 (pow.f64 x 2) y)))) y)
(+.f64 (/.f64 (*.f64 z z) y) (-.f64 (fma.f64 (fma.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (/.f64 1/16 (pow.f64 x 6))) y) (/.f64 5/64 (*.f64 y (pow.f64 x 6)))) (pow.f64 z 8) (/.f64 (*.f64 x x) y)) y))
(+.f64 (fma.f64 (-.f64 (/.f64 5/64 (*.f64 y (pow.f64 x 6))) (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (/.f64 1/16 (pow.f64 x 6))) y)) (pow.f64 z 8) (/.f64 (*.f64 x x) y)) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (fma.f64 (-.f64 (/.f64 5/64 (*.f64 y (pow.f64 x 6))) (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 x 3)) 2) (/.f64 1/16 (pow.f64 x 6))) y)) (pow.f64 z 8) (*.f64 (/.f64 x y) x)) (-.f64 (*.f64 (/.f64 z y) z) y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)) y)
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 (*.f64 z z) y) y))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (*.f64 (/.f64 x y) x) (-.f64 (*.f64 (/.f64 z y) z) y))
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (/.f64 (pow.f64 z 2) y)))) y)
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (fma.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (/.f64 (*.f64 z z) y))) y))
(+.f64 (/.f64 (*.f64 x x) y) (+.f64 (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0) (-.f64 (/.f64 z (/.f64 y z)) y)))
(+.f64 (*.f64 (/.f64 x y) x) (+.f64 0 (-.f64 (*.f64 (/.f64 z y) z) y)))
(-.f64 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 4)))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 4)))) (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (/.f64 (pow.f64 z 2) y)))))) y)
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (fma.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (/.f64 (*.f64 z z) y))) y))
(+.f64 (/.f64 (*.f64 x x) y) (+.f64 (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0) (-.f64 (/.f64 z (/.f64 y z)) y)))
(+.f64 (*.f64 (/.f64 x y) x) (+.f64 0 (-.f64 (*.f64 (/.f64 z y) z) y)))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)) y)
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 (*.f64 z z) y) y))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (*.f64 (/.f64 x y) x) (-.f64 (*.f64 (/.f64 z y) z) y))
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (/.f64 (pow.f64 z 2) y)))) y)
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (fma.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (/.f64 (*.f64 z z) y))) y))
(+.f64 (/.f64 (*.f64 x x) y) (+.f64 (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0) (-.f64 (/.f64 z (/.f64 y z)) y)))
(+.f64 (*.f64 (/.f64 x y) x) (+.f64 0 (-.f64 (*.f64 (/.f64 z y) z) y)))
(-.f64 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 4)))) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 x 6) (*.f64 y (pow.f64 z 4)))) (+.f64 (/.f64 (pow.f64 x 2) y) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 z 2)))) (/.f64 (pow.f64 z 2) y)))))) y)
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (fma.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (/.f64 (*.f64 z z) y))) y))
(+.f64 (/.f64 (*.f64 x x) y) (+.f64 (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0) (-.f64 (/.f64 z (/.f64 y z)) y)))
(+.f64 (*.f64 (/.f64 x y) x) (+.f64 0 (-.f64 (*.f64 (/.f64 z y) z) y)))
(-.f64 (/.f64 (pow.f64 z 2) y) y)
(-.f64 (/.f64 (*.f64 z z) y) y)
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)) y)
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 (*.f64 z z) y) y))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (*.f64 (/.f64 x y) x) (-.f64 (*.f64 (/.f64 z y) z) y))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 y (pow.f64 z 6)))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) y)) (*.f64 1/16 (/.f64 1 (*.f64 y (pow.f64 z 6)))))) (pow.f64 x 8)) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (fma.f64 (+.f64 (/.f64 1/64 (*.f64 y (pow.f64 z 6))) (fma.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) y) (/.f64 1/16 (*.f64 y (pow.f64 z 6))))) (pow.f64 x 8) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y))) y)
(+.f64 (fma.f64 (+.f64 (/.f64 1/64 (*.f64 y (pow.f64 z 6))) (-.f64 (/.f64 1/16 (*.f64 y (pow.f64 z 6))) (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) y))) (pow.f64 x 8) (/.f64 (*.f64 x x) y)) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (fma.f64 (-.f64 (*.f64 (/.f64 (/.f64 1 y) (pow.f64 z 6)) 5/64) (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 6)) (/.f64 1/16 (pow.f64 z 6))) y)) (pow.f64 x 8) (*.f64 (/.f64 x y) x)) (-.f64 (*.f64 (/.f64 z y) z) y))
(-.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1 (/.f64 (+.f64 (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) (pow.f64 z 4))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 z 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) (pow.f64 z 2)))) (pow.f64 z 2))) (pow.f64 (/.f64 1/16 (pow.f64 z 5)) 2))) y)) (+.f64 (*.f64 1/256 (/.f64 1 (*.f64 y (pow.f64 z 10)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/64 (/.f64 1 (pow.f64 z 8))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) (pow.f64 z 2)))) (*.f64 y (pow.f64 z 2)))) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) (*.f64 y (pow.f64 z 4))))))) (pow.f64 x 12)) (+.f64 (*.f64 (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 y (pow.f64 z 6)))) (+.f64 (*.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) y)) (*.f64 1/16 (/.f64 1 (*.f64 y (pow.f64 z 6)))))) (pow.f64 x 8)) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))) y)
(-.f64 (fma.f64 (fma.f64 -1 (/.f64 (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) (pow.f64 z 4)) (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) (*.f64 z z)))) (*.f64 z z)) (pow.f64 (/.f64 1/16 (pow.f64 z 5)) 2))) y) (+.f64 (/.f64 1/256 (*.f64 y (pow.f64 z 10))) (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) (*.f64 z z)))) (*.f64 y (*.f64 z z))) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) (*.f64 y (pow.f64 z 4))))))) (pow.f64 x 12) (fma.f64 (+.f64 (/.f64 1/64 (*.f64 y (pow.f64 z 6))) (fma.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) y) (/.f64 1/16 (*.f64 y (pow.f64 z 6))))) (pow.f64 x 8) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 (*.f64 z z) y)))) y)
(-.f64 (fma.f64 (-.f64 (+.f64 (/.f64 1/256 (*.f64 y (pow.f64 z 10))) (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 8)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) (*.f64 z z)))) (*.f64 y (*.f64 z z))) (*.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) (*.f64 y (pow.f64 z 4)))))) (/.f64 (fma.f64 1/8 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) (pow.f64 z 4)) (fma.f64 1/2 (-.f64 (/.f64 1/64 (*.f64 (*.f64 z z) (pow.f64 z 8))) (/.f64 (*.f64 -1/2 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6)))) (pow.f64 z 4))) (pow.f64 (/.f64 1/16 (pow.f64 z 5)) 2))) y)) (pow.f64 x 12) (+.f64 (/.f64 z (/.f64 y z)) (fma.f64 (+.f64 (/.f64 1/64 (*.f64 y (pow.f64 z 6))) (-.f64 (/.f64 1/16 (*.f64 y (pow.f64 z 6))) (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (/.f64 1/16 (pow.f64 z 6))) y))) (pow.f64 x 8) (/.f64 (*.f64 x x) y)))) y)
(-.f64 (fma.f64 (+.f64 (/.f64 (/.f64 1/256 (pow.f64 z 10)) y) (-.f64 (fma.f64 1/8 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 6)) (/.f64 1/16 (pow.f64 z 6))) (*.f64 y (pow.f64 z 4))) (/.f64 (+.f64 (*.f64 1/4 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 6)) (/.f64 1/16 (pow.f64 z 6))) (*.f64 z z))) (/.f64 1/128 (pow.f64 z 8))) (*.f64 y (*.f64 z z)))) (/.f64 (+.f64 (/.f64 1/256 (pow.f64 z 10)) (fma.f64 1/8 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 6)) (/.f64 1/16 (pow.f64 z 6))) (pow.f64 z 4)) (/.f64 (+.f64 (*.f64 1/4 (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 6)) (/.f64 1/16 (pow.f64 z 6))) (*.f64 z z))) (/.f64 1/128 (pow.f64 z 8))) (*.f64 z z)))) y))) (pow.f64 x 12) (+.f64 (*.f64 (/.f64 z y) z) (fma.f64 (-.f64 (*.f64 (/.f64 (/.f64 1 y) (pow.f64 z 6)) 5/64) (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 6)) (/.f64 1/16 (pow.f64 z 6))) y)) (pow.f64 x 8) (*.f64 (/.f64 x y) x)))) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(*.f64 (/.f64 x y) x)
(-.f64 (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y)) y)
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 (*.f64 z z) y) y))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (*.f64 (/.f64 x y) x) (-.f64 (*.f64 (/.f64 z y) z) y))
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y)))) y)
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (fma.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (/.f64 (*.f64 z z) y))) y))
(+.f64 (/.f64 (*.f64 x x) y) (+.f64 (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0) (-.f64 (/.f64 z (/.f64 y z)) y)))
(+.f64 (*.f64 (/.f64 x y) x) (+.f64 0 (-.f64 (*.f64 (/.f64 z y) z) y)))
(-.f64 (+.f64 (*.f64 1/8 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 4)))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 4)))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y)))))) y)
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (fma.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (/.f64 (*.f64 z z) y))) y))
(+.f64 (/.f64 (*.f64 x x) y) (+.f64 (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0) (-.f64 (/.f64 z (/.f64 y z)) y)))
(+.f64 (*.f64 (/.f64 x y) x) (+.f64 0 (-.f64 (*.f64 (/.f64 z y) z) y)))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(*.f64 (/.f64 x y) x)
(-.f64 (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y)) y)
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 (*.f64 z z) y) y))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (*.f64 (/.f64 x y) x) (-.f64 (*.f64 (/.f64 z y) z) y))
(-.f64 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y)))) y)
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (fma.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (/.f64 (*.f64 z z) y))) y))
(+.f64 (/.f64 (*.f64 x x) y) (+.f64 (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0) (-.f64 (/.f64 z (/.f64 y z)) y)))
(+.f64 (*.f64 (/.f64 x y) x) (+.f64 0 (-.f64 (*.f64 (/.f64 z y) z) y)))
(-.f64 (+.f64 (*.f64 1/8 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 4)))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 z 6) (*.f64 y (pow.f64 x 4)))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 z 4) (*.f64 y (pow.f64 x 2)))) (+.f64 (/.f64 (pow.f64 z 2) y) (/.f64 (pow.f64 x 2) y)))))) y)
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (fma.f64 -1/4 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) (/.f64 (*.f64 z z) y))) y))
(+.f64 (/.f64 (*.f64 x x) y) (+.f64 (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0) (-.f64 (/.f64 z (/.f64 y z)) y)))
(+.f64 (*.f64 (/.f64 x y) x) (+.f64 0 (-.f64 (*.f64 (/.f64 z y) z) y)))
(/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) y)
(/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) y)
(/.f64 (fma.f64 z z (*.f64 x x)) y)
(/.f64 (fma.f64 x x (*.f64 z z)) y)
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 (*.f64 z z) y) y))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (*.f64 (/.f64 x y) x) (-.f64 (*.f64 (/.f64 z y) z) y))
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 (*.f64 z z) y) y))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (*.f64 (/.f64 x y) x) (-.f64 (*.f64 (/.f64 z y) z) y))
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 (*.f64 z z) y) y))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (*.f64 (/.f64 x y) x) (-.f64 (*.f64 (/.f64 z y) z) y))
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 (*.f64 z z) y) y))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (*.f64 (/.f64 x y) x) (-.f64 (*.f64 (/.f64 z y) z) y))
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 (*.f64 z z) y) y))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (*.f64 (/.f64 x y) x) (-.f64 (*.f64 (/.f64 z y) z) y))
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 (*.f64 z z) y) y))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (*.f64 (/.f64 x y) x) (-.f64 (*.f64 (/.f64 z y) z) y))
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 (*.f64 z z) y) y))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (*.f64 (/.f64 x y) x) (-.f64 (*.f64 (/.f64 z y) z) y))
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 (*.f64 z z) y) y))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (*.f64 (/.f64 x y) x) (-.f64 (*.f64 (/.f64 z y) z) y))
(+.f64 (*.f64 -1 y) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 (*.f64 z z) y) y))
(+.f64 (/.f64 (*.f64 x x) y) (-.f64 (/.f64 z (/.f64 y z)) y))
(+.f64 (*.f64 (/.f64 x y) x) (-.f64 (*.f64 (/.f64 z y) z) y))
x
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) x)) x)
(fma.f64 1/2 (/.f64 (*.f64 z z) x) x)
(fma.f64 1/2 (/.f64 z (/.f64 x z)) x)
(fma.f64 1/2 (*.f64 (/.f64 z x) z) x)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) x)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3))) x))
(fma.f64 1/2 (/.f64 (*.f64 z z) x) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) x))
(fma.f64 1/2 (/.f64 z (/.f64 x z)) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) x))
(fma.f64 1/2 (*.f64 (/.f64 z x) z) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) x))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) x)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 z 6) (pow.f64 x 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3))) x)))
(fma.f64 1/2 (/.f64 (*.f64 z z) x) (fma.f64 1/16 (/.f64 (pow.f64 z 6) (pow.f64 x 5)) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) x)))
(fma.f64 1/2 (/.f64 z (/.f64 x z)) (fma.f64 1/16 (/.f64 (pow.f64 z 6) (pow.f64 x 5)) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) x)))
(fma.f64 1/2 (*.f64 (/.f64 z x) z) (fma.f64 1/16 (/.f64 (pow.f64 z 6) (pow.f64 x 5)) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) x)))
z
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) z)) z)
(fma.f64 1/2 (/.f64 (*.f64 x x) z) z)
(fma.f64 1/2 (/.f64 x (/.f64 z x)) z)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) z)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3))) z))
(fma.f64 1/2 (/.f64 (*.f64 x x) z) (fma.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) z))
(fma.f64 1/2 (/.f64 x (/.f64 z x)) (fma.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) z))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) z)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3))) (+.f64 z (*.f64 1/16 (/.f64 (pow.f64 x 6) (pow.f64 z 5))))))
(fma.f64 1/2 (/.f64 (*.f64 x x) z) (+.f64 (fma.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) z) (*.f64 1/16 (/.f64 (pow.f64 x 6) (pow.f64 z 5)))))
(fma.f64 1/2 (/.f64 x (/.f64 z x)) (fma.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) (fma.f64 1/16 (/.f64 (pow.f64 x 6) (pow.f64 z 5)) z)))
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) (*.f64 -1/2 (/.f64 (pow.f64 x 2) z)))
(fma.f64 -1 z (*.f64 -1/2 (/.f64 (*.f64 x x) z)))
(-.f64 (*.f64 -1/2 (/.f64 x (/.f64 z x))) z)
(fma.f64 -1/2 (/.f64 x (/.f64 z x)) (neg.f64 z))
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) z)) (*.f64 1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)))))
(fma.f64 -1 z (fma.f64 -1/2 (/.f64 (*.f64 x x) z) (/.f64 (*.f64 1/8 (pow.f64 x 4)) (pow.f64 z 3))))
(-.f64 (fma.f64 -1/2 (/.f64 x (/.f64 z x)) (/.f64 1/8 (/.f64 (pow.f64 z 3) (pow.f64 x 4)))) z)
(-.f64 (fma.f64 -1/2 (/.f64 x (/.f64 z x)) (*.f64 (/.f64 1/8 (pow.f64 z 3)) (pow.f64 x 4))) z)
(+.f64 (*.f64 -1 z) (+.f64 (*.f64 -1/16 (/.f64 (pow.f64 x 6) (pow.f64 z 5))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 x 2) z)) (*.f64 1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3))))))
(fma.f64 -1 z (fma.f64 -1/16 (/.f64 (pow.f64 x 6) (pow.f64 z 5)) (fma.f64 -1/2 (/.f64 (*.f64 x x) z) (/.f64 (*.f64 1/8 (pow.f64 x 4)) (pow.f64 z 3)))))
(-.f64 (fma.f64 -1/16 (/.f64 (pow.f64 x 6) (pow.f64 z 5)) (fma.f64 -1/2 (/.f64 x (/.f64 z x)) (/.f64 1/8 (/.f64 (pow.f64 z 3) (pow.f64 x 4))))) z)
(-.f64 (fma.f64 -1/16 (/.f64 (pow.f64 x 6) (pow.f64 z 5)) (fma.f64 -1/2 (/.f64 x (/.f64 z x)) (*.f64 (/.f64 1/8 (pow.f64 z 3)) (pow.f64 x 4)))) z)
z
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) z)) z)
(fma.f64 1/2 (/.f64 (*.f64 x x) z) z)
(fma.f64 1/2 (/.f64 x (/.f64 z x)) z)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) z)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3))) z))
(fma.f64 1/2 (/.f64 (*.f64 x x) z) (fma.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) z))
(fma.f64 1/2 (/.f64 x (/.f64 z x)) (fma.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) z))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 x 2) z)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3))) (+.f64 z (*.f64 1/16 (/.f64 (pow.f64 x 6) (pow.f64 z 5))))))
(fma.f64 1/2 (/.f64 (*.f64 x x) z) (+.f64 (fma.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) z) (*.f64 1/16 (/.f64 (pow.f64 x 6) (pow.f64 z 5)))))
(fma.f64 1/2 (/.f64 x (/.f64 z x)) (fma.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) (fma.f64 1/16 (/.f64 (pow.f64 x 6) (pow.f64 z 5)) z)))
x
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) x)) x)
(fma.f64 1/2 (/.f64 (*.f64 z z) x) x)
(fma.f64 1/2 (/.f64 z (/.f64 x z)) x)
(fma.f64 1/2 (*.f64 (/.f64 z x) z) x)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) x)) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3))) x))
(fma.f64 1/2 (/.f64 (*.f64 z z) x) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) x))
(fma.f64 1/2 (/.f64 z (/.f64 x z)) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) x))
(fma.f64 1/2 (*.f64 (/.f64 z x) z) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) x))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 z 2) x)) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 z 6) (pow.f64 x 5))) (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3))) x)))
(fma.f64 1/2 (/.f64 (*.f64 z z) x) (fma.f64 1/16 (/.f64 (pow.f64 z 6) (pow.f64 x 5)) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) x)))
(fma.f64 1/2 (/.f64 z (/.f64 x z)) (fma.f64 1/16 (/.f64 (pow.f64 z 6) (pow.f64 x 5)) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) x)))
(fma.f64 1/2 (*.f64 (/.f64 z x) z) (fma.f64 1/16 (/.f64 (pow.f64 z 6) (pow.f64 x 5)) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) x)))
(*.f64 -1 x)
(neg.f64 x)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) x)) (*.f64 -1 x))
(fma.f64 -1/2 (/.f64 (*.f64 z z) x) (neg.f64 x))
(-.f64 (*.f64 -1/2 (/.f64 z (/.f64 x z))) x)
(fma.f64 -1/2 (*.f64 (/.f64 z x) z) (neg.f64 x))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) x)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (*.f64 -1 x)))
(fma.f64 -1/2 (/.f64 (*.f64 z z) x) (fma.f64 1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) (neg.f64 x)))
(-.f64 (fma.f64 -1/2 (/.f64 z (/.f64 x z)) (*.f64 1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)))) x)
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 z x) z) (*.f64 1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)))) x)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) x)) (+.f64 (*.f64 1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (+.f64 (*.f64 -1 x) (*.f64 -1/16 (/.f64 (pow.f64 z 6) (pow.f64 x 5))))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) x) (fma.f64 1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) (fma.f64 -1 x (*.f64 -1/16 (/.f64 (pow.f64 z 6) (pow.f64 x 5))))))
(fma.f64 -1/2 (/.f64 z (/.f64 x z)) (fma.f64 1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) (-.f64 (*.f64 -1/16 (/.f64 (pow.f64 z 6) (pow.f64 x 5))) x)))
(fma.f64 -1/2 (*.f64 (/.f64 z x) z) (fma.f64 1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) (fma.f64 -1/16 (/.f64 (pow.f64 z 6) (pow.f64 x 5)) (neg.f64 x))))

eval567.0ms (4.5%)

Compiler

Compiled 14344 to 7184 computations (49.9% saved)

prune353.0ms (2.8%)

Pruning

17 alts after pruning (14 fresh and 3 done)

PrunedKeptTotal
New6526658
Fresh4812
Picked101
Done134
Total65817675
Error
0b
Counts
675 → 17
Alt Table
Click to see full alt table
StatusErrorProgram
19.6b
(*.f64 -1/2 (-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y))
52.9b
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
43.7b
(/.f64 (/.f64 (-.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z)))) (-.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 y 2))
25.4b
(*.f64 1/2 y)
50.5b
(*.f64 1/2 (/.f64 x (/.f64 y x)))
37.8b
(pow.f64 (/.f64 (/.f64 (+.f64 y y) (+.f64 x z)) (-.f64 x z)) -1)
13.4b
(*.f64 -1/2 (-.f64 (*.f64 x (/.f64 (neg.f64 x) y)) y))
52.7b
(/.f64 (*.f64 x x) (*.f64 y 2))
52.8b
(/.f64 (fma.f64 (*.f64 (neg.f64 z) (sqrt.f64 z)) (sqrt.f64 z) (*.f64 x x)) (*.f64 y 2))
12.4b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 z y) z) y))
37.2b
(/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 y 2))
13.4b
(*.f64 1/2 (fma.f64 x (/.f64 x y) y))
52.9b
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
52.7b
(*.f64 (*.f64 x x) (/.f64 1/2 y))
12.4b
(*.f64 1/2 (fma.f64 (/.f64 z y) (neg.f64 z) y))
50.1b
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
37.8b
(*.f64 (+.f64 x z) (*.f64 (-.f64 x z) (/.f64 1/2 y)))
Compiler

Compiled 427 to 267 computations (37.5% saved)

localize24.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 (/.f64 z y) z) y)
0.2b
(*.f64 (/.f64 z y) z)
Compiler

Compiled 30 to 9 computations (70% saved)

series7.0ms (0.1%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
z
@inf
(*.f64 (/.f64 z y) z)
1.0ms
y
@-inf
(*.f64 (/.f64 z y) z)
1.0ms
z
@0
(*.f64 (/.f64 z y) z)
1.0ms
z
@inf
(-.f64 (*.f64 (/.f64 z y) z) y)
1.0ms
z
@0
(-.f64 (*.f64 (/.f64 z y) z) y)

rewrite201.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
818×pow1_binary64
762×add-log-exp_binary64
762×log1p-expm1-u_binary64
762×expm1-log1p-u_binary64
745×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0617
113717
2203117
Stop Event
node limit
Counts
2 → 57
Calls
Call 1
Inputs
(*.f64 (/.f64 z y) z)
(-.f64 (*.f64 (/.f64 z y) z) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 z (/.f64 z y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 z (/.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 y (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z z) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 z z)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 z) z) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (neg.f64 z)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z z) 1) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z z) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z z) (sqrt.f64 y)) (sqrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (/.f64 z y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 z (/.f64 z y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 z (sqrt.f64 y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 z (/.f64 z y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 z (/.f64 z y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 z) (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 z (/.f64 z y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 z (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 z (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 z (/.f64 z y))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (/.f64 z y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (/.f64 z y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 z (/.f64 z y) (neg.f64 y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 z (/.f64 z y) (neg.f64 y)) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 z (/.f64 z y) (neg.f64 y)) (fma.f64 (neg.f64 (sqrt.f64 y)) (sqrt.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 y) (*.f64 z (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 z (/.f64 z y) (neg.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 z (/.f64 z y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 z (/.f64 z y) (neg.f64 y))) (cbrt.f64 (pow.f64 (fma.f64 z (/.f64 z y) (neg.f64 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 z (/.f64 z y) (neg.f64 y)) 2)) (cbrt.f64 (fma.f64 z (/.f64 z y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 z (/.f64 z y) (neg.f64 y))) (sqrt.f64 (fma.f64 z (/.f64 z y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 z (/.f64 z y)) 3) (pow.f64 y 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 z (/.f64 z y)) 2) (*.f64 y (fma.f64 z (/.f64 z y) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 z (/.f64 z y)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 z (/.f64 z y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 z (sqrt.f64 y)) (sqrt.f64 y)) (-.f64 (/.f64 z (sqrt.f64 y)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 z (/.f64 z y)) 2) (*.f64 y (fma.f64 z (/.f64 z y) y))) (-.f64 (pow.f64 (*.f64 z (/.f64 z y)) 3) (pow.f64 y 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 z (/.f64 z y) y) (-.f64 (pow.f64 (*.f64 z (/.f64 z y)) 2) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 z (/.f64 z y)) 3) (pow.f64 y 3)) (+.f64 (pow.f64 (*.f64 z (/.f64 z y)) 2) (*.f64 y (fma.f64 z (/.f64 z y) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 z (/.f64 z y)) 2) (*.f64 y y)) (fma.f64 z (/.f64 z y) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 z (/.f64 z y)) 3) (pow.f64 y 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 z (/.f64 z y)) 2) (*.f64 y (fma.f64 z (/.f64 z y) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 z (/.f64 z y)) 2) (*.f64 y y))) (neg.f64 (fma.f64 z (/.f64 z y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 z (/.f64 z y)) 3) (pow.f64 (neg.f64 y) 3)) (+.f64 (pow.f64 (*.f64 z (/.f64 z y)) 2) (-.f64 (*.f64 (neg.f64 y) (neg.f64 y)) (*.f64 (*.f64 z (/.f64 z y)) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 z (/.f64 z y)) 2) (*.f64 (neg.f64 y) (neg.f64 y))) (-.f64 (*.f64 z (/.f64 z y)) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 z (/.f64 z y) (neg.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 z (/.f64 z y) (neg.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 z (/.f64 z y) (neg.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 z (/.f64 z y) (neg.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 z (/.f64 z y) (neg.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 z (/.f64 z y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 z (/.f64 z y) (neg.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 z (/.f64 z y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 z (/.f64 z y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 z (/.f64 z y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (/.f64 z y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z y) z (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z (/.f64 z y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (/.f64 z y))) 2) (cbrt.f64 (*.f64 z (/.f64 z y))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z (sqrt.f64 y)) (/.f64 z (sqrt.f64 y)) (neg.f64 y))))))

simplify119.0ms (1%)

Algorithm
egg-herbie
Rules
563×div-sub_binary64
547×associate-/r/_binary64
440×fma-neg_binary64
434×unswap-sqr_binary64
392×associate-/r*_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
09396
118378
230378
352378
4111378
5350378
61583378
75645378
Stop Event
node limit
Counts
105 → 62
Calls
Call 1
Inputs
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(*.f64 -1 y)
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(/.f64 (pow.f64 z 2) y)
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(/.f64 (pow.f64 z 2) y)
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(/.f64 (pow.f64 z 2) y)
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(*.f64 -1 y)
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(*.f64 -1 y)
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
Outputs
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))
(+.f64 (*.f64 -1 y) (/.f64 (pow.f64 z 2) y))
(fma.f64 -1 y (/.f64 (*.f64 z z) y))
(-.f64 (/.f64 z (/.f64 y z)) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(fma.f64 z (/.f64 z y) (neg.f64 y))

localize65.0ms (0.5%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
0.2b
(*.f64 z (/.f64 z y))
Compiler

Compiled 21 to 8 computations (61.9% saved)

series6.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
z
@0
(*.f64 z (/.f64 z y))
1.0ms
z
@inf
(*.f64 z (/.f64 z y))
0.0ms
z
@0
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
0.0ms
z
@-inf
(*.f64 z (/.f64 z y))
0.0ms
z
@inf
(*.f64 -1/2 (*.f64 z (/.f64 z y)))

rewrite95.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
760×pow1_binary64
704×add-log-exp_binary64
704×log1p-expm1-u_binary64
704×expm1-log1p-u_binary64
690×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0717
114817
2189317
Stop Event
node limit
Counts
2 → 39
Calls
Call 1
Inputs
(*.f64 z (/.f64 z y))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 z (/.f64 z y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 z (/.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 y (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z z) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 z z)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 z) z) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z (neg.f64 z)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z z) 1) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z z) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 z z) (sqrt.f64 y)) (sqrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (/.f64 z y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 z (/.f64 z y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 z (/.f64 z y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 z (sqrt.f64 y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 z (/.f64 z y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 z) (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 z (/.f64 z y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 z 3) (pow.f64 (/.f64 z y) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 z y) 3) (pow.f64 z 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 z (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 z (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 z (/.f64 z y))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 z (*.f64 (/.f64 z y) -1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z -1/2) (/.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 z z) -1/2) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (*.f64 z z)) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 z -1/2) z) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 z -1/2) 1) (/.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 z -1/2) (neg.f64 z)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (*.f64 (/.f64 z y) -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 z (*.f64 (/.f64 z y) -1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 z (*.f64 (/.f64 z y) -1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 -1/2) (/.f64 z (sqrt.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/4 (pow.f64 (*.f64 z (/.f64 z y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -1/2) (*.f64 z (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 z (*.f64 (/.f64 z y) -1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 z (*.f64 (/.f64 z y) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 z (*.f64 (/.f64 z y) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 z (*.f64 (/.f64 z y) -1/2))))))))

simplify233.0ms (1.9%)

Algorithm
egg-herbie
Rules
717×associate-/l/_binary64
524×associate-*l*_binary64
497×*-commutative_binary64
483×associate-*l/_binary64
470×sqr-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08408
116408
231408
362408
4165408
5606408
62650408
73720408
83930408
94149408
104377408
114713408
126323408
136988408
147783408
Stop Event
node limit
Counts
87 → 43
Calls
Call 1
Inputs
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (pow.f64 z 2) y)
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
Outputs
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 -1/2 (*.f64 z z)) y)
(*.f64 (/.f64 (*.f64 z z) y) -1/2)
(/.f64 (*.f64 (*.f64 z z) -1/2) y)
(*.f64 z (/.f64 z (/.f64 y -1/2)))
(/.f64 (*.f64 z z) (/.f64 y -1/2))
(*.f64 z (*.f64 z (/.f64 -1/2 y)))

localize16.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
7.8b
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
Compiler

Compiled 19 to 10 computations (47.4% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
z
@0
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
1.0ms
z
@inf
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
1.0ms
z
@-inf
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
0.0ms
y
@0
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
0.0ms
y
@-inf
(*.f64 (*.f64 z z) (/.f64 -1/2 y))

rewrite88.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
705×pow1_binary64
656×add-log-exp_binary64
655×log1p-expm1-u_binary64
655×expm1-log1p-u_binary64
641×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
115010
2184510
Stop Event
node limit
Counts
1 → 22
Calls
Call 1
Inputs
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (*.f64 z z) (*.f64 y -2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 z z) (*.f64 y -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 y (*.f64 (*.f64 z z) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 z z) -1/2) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (*.f64 z z) -1/2)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 z z) -1/2) 1) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 z z) -1/2) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 z z) -1/2) (sqrt.f64 y)) (sqrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (*.f64 z z)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 z z) 1/2) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 z z) (*.f64 y -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 z z) (*.f64 y -2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 z z) (*.f64 y -2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 z (sqrt.f64 (/.f64 -1/2 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (*.f64 z z) (*.f64 y -2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (*.f64 z z) (*.f64 y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 z z) (*.f64 y -2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 z z) 3) (pow.f64 (/.f64 -1/2 y) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 -1/2 y) 3) (pow.f64 (*.f64 z z) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 z z) (*.f64 y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 z z) (*.f64 y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 z z) (*.f64 y -2))))))))

simplify174.0ms (1.4%)

Algorithm
egg-herbie
Rules
682×associate-/l/_binary64
528×associate-*l*_binary64
493×*-commutative_binary64
470×sqr-pow_binary64
437×associate-*l/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08240
116240
231240
362240
4169240
5615240
62654240
73723240
83933240
94152240
104380240
114718240
126225240
136892240
147688240
Stop Event
node limit
Counts
46 → 24
Calls
Call 1
Inputs
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
Outputs
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))

localize20.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
9.7b
(/.f64 (*.f64 x (neg.f64 x)) y)
Compiler

Compiled 36 to 10 computations (72.2% saved)

series15.0ms (0.1%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
6.0ms
x
@inf
(/.f64 (*.f64 x (neg.f64 x)) y)
1.0ms
x
@0
(/.f64 (*.f64 x (neg.f64 x)) y)
1.0ms
y
@0
(/.f64 (*.f64 x (neg.f64 x)) y)
1.0ms
y
@inf
(/.f64 (*.f64 x (neg.f64 x)) y)
1.0ms
x
@inf
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)

rewrite94.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
821×pow1_binary64
766×add-log-exp_binary64
765×log1p-expm1-u_binary64
765×expm1-log1p-u_binary64
749×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0721
116117
2261917
Stop Event
node limit
Counts
2 → 68
Calls
Call 1
Inputs
(/.f64 (*.f64 x (neg.f64 x)) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (*.f64 x x) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 1 (/.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 x (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x x) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (*.f64 x x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x x) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x x) (/.f64 1 (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 x x) y)) (pow.f64 (cbrt.f64 (/.f64 (*.f64 x x) y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 x x) y)) 2) (cbrt.f64 (/.f64 (*.f64 x x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 x) 2) 2) (*.f64 (pow.f64 (cbrt.f64 x) 2) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (sqrt.f64 y)) (/.f64 x (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x 1) (/.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x y) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (pow.f64 (cbrt.f64 x) 2) 2) 1) (/.f64 (pow.f64 (cbrt.f64 x) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (pow.f64 (cbrt.f64 y) 2)) (/.f64 x (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 y) 2)) (/.f64 (*.f64 x x) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (pow.f64 (cbrt.f64 x) 2) 2) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 (/.f64 (*.f64 x x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 y)) (/.f64 (*.f64 x x) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (pow.f64 (cbrt.f64 x) 2) 2) (sqrt.f64 y)) (/.f64 (pow.f64 (cbrt.f64 x) 2) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 x x) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 x x) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (sqrt.f64 y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 x x) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (*.f64 x x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 x x) y))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (*.f64 x x) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (*.f64 x x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 x x) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 x x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 x x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 x x) y)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x x) y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x x) y) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 x x) y) y) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 x x) y) y) (fma.f64 (neg.f64 (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (/.f64 (*.f64 x x) y) y) (fma.f64 (neg.f64 (sqrt.f64 y)) (sqrt.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 y) (/.f64 (*.f64 x x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (/.f64 (*.f64 x x) y) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (/.f64 (*.f64 x x) y) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (/.f64 (*.f64 x x) y) y)) (pow.f64 (cbrt.f64 (-.f64 (/.f64 (*.f64 x x) y) y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (/.f64 (*.f64 x x) y) y)) 2) (cbrt.f64 (-.f64 (/.f64 (*.f64 x x) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (/.f64 (*.f64 x x) y) y)) (sqrt.f64 (-.f64 (/.f64 (*.f64 x x) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x x) y) 3) (pow.f64 y 3)) (/.f64 1 (+.f64 (pow.f64 (/.f64 (*.f64 x x) y) 2) (*.f64 y (+.f64 y (/.f64 (*.f64 x x) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x x) y) 2) (*.f64 y y)) (/.f64 1 (+.f64 y (/.f64 (*.f64 x x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (/.f64 x (sqrt.f64 y)) (sqrt.f64 y)) (-.f64 (/.f64 x (sqrt.f64 y)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x x) y) 2) (*.f64 y (+.f64 y (/.f64 (*.f64 x x) y)))) (-.f64 (pow.f64 (/.f64 (*.f64 x x) y) 3) (pow.f64 y 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 y (/.f64 (*.f64 x x) y)) (-.f64 (pow.f64 (/.f64 (*.f64 x x) y) 2) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x x) y) 3) (pow.f64 y 3)) (+.f64 (pow.f64 (/.f64 (*.f64 x x) y) 2) (*.f64 y (+.f64 y (/.f64 (*.f64 x x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x x) y) 2) (*.f64 y y)) (+.f64 y (/.f64 (*.f64 x x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x x) y) 3) (pow.f64 y 3))) (neg.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x x) y) 2) (*.f64 y (+.f64 y (/.f64 (*.f64 x x) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x x) y) 2) (*.f64 y y))) (neg.f64 (+.f64 y (/.f64 (*.f64 x x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x x) y) 3) (pow.f64 (neg.f64 y) 3)) (+.f64 (pow.f64 (/.f64 (*.f64 x x) y) 2) (-.f64 (*.f64 (neg.f64 y) (neg.f64 y)) (*.f64 (/.f64 (*.f64 x x) y) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x x) y) 2) (*.f64 (neg.f64 y) (neg.f64 y))) (-.f64 (/.f64 (*.f64 x x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (/.f64 (*.f64 x x) y) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (/.f64 (*.f64 x x) y) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (/.f64 (*.f64 x x) y) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (/.f64 (*.f64 x x) y) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 x x) y) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (/.f64 (*.f64 x x) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (/.f64 (*.f64 x x) y) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (/.f64 (*.f64 x x) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (/.f64 (*.f64 x x) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (/.f64 (*.f64 x x) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (*.f64 x x) y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) (/.f64 1 y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (*.f64 x x) y)) 2) (cbrt.f64 (/.f64 (*.f64 x x) y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (sqrt.f64 y)) (/.f64 x (sqrt.f64 y)) (neg.f64 y))))))

simplify83.0ms (0.7%)

Algorithm
egg-herbie
Rules
852×fma-neg_binary64
697×div-sub_binary64
674×times-frac_binary64
510×distribute-rgt-neg-in_binary64
312×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
011486
128468
254468
398432
4260432
5921432
64020432
Stop Event
node limit
Counts
116 → 75
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(*.f64 -1 y)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(*.f64 -1 y)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
(*.f64 -1 y)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
Outputs
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (*.f64 x (neg.f64 x)) y)
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (neg.f64 (/.f64 x y)))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y))
(*.f64 -1 (+.f64 (/.f64 (*.f64 x x) y) y))
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(neg.f64 (fma.f64 x (/.f64 x y) y))

localize18.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 x (/.f64 x y) y)
Compiler

Compiled 23 to 8 computations (65.2% saved)

series6.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@-inf
(fma.f64 x (/.f64 x y) y)
1.0ms
x
@inf
(fma.f64 x (/.f64 x y) y)
1.0ms
x
@0
(fma.f64 x (/.f64 x y) y)
1.0ms
y
@0
(fma.f64 x (/.f64 x y) y)
1.0ms
y
@inf
(fma.f64 x (/.f64 x y) y)

rewrite75.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
578×pow1_binary64
534×add-log-exp_binary64
534×log1p-expm1-u_binary64
534×expm1-log1p-u_binary64
521×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
058
11058
214078
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(fma.f64 x (/.f64 x y) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 y (*.f64 x (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (/.f64 x y)) y)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x (/.f64 x y)) 1) y)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 x (/.f64 x y) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x (/.f64 x y) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x (/.f64 x y) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x (/.f64 x y) y)) (pow.f64 (cbrt.f64 (fma.f64 x (/.f64 x y) y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 x (/.f64 x y) y)) 2) (cbrt.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x (/.f64 x y) y)) (sqrt.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x (/.f64 x y)) 3) (pow.f64 y 3)) (+.f64 (*.f64 (*.f64 x (/.f64 x y)) (*.f64 x (/.f64 x y))) (-.f64 (*.f64 y y) (*.f64 (*.f64 x (/.f64 x y)) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 x (/.f64 x y)) (*.f64 x (/.f64 x y))) (*.f64 y y)) (-.f64 (*.f64 x (/.f64 x y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x (/.f64 x y) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (/.f64 x y) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x (/.f64 x y) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x (/.f64 x y) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x (/.f64 x y) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x (/.f64 x y) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x (/.f64 x y) y)))))))

simplify149.0ms (1.2%)

Algorithm
egg-herbie
Rules
759×sqr-pow_binary64
434×unswap-sqr_binary64
423×associate-*r/_binary64
420×*-commutative_binary64
392×associate-/r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
07204
113204
222204
339168
486168
5267168
61091168
73514168
84346168
94556168
104772168
115121168
125551168
136034168
146683168
157370168
Stop Event
node limit
Counts
45 → 26
Calls
Call 1
Inputs
y
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(/.f64 (pow.f64 x 2) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(/.f64 (pow.f64 x 2) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(/.f64 (pow.f64 x 2) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
y
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
y
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
Outputs
y
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 (/.f64 x y) x)
(*.f64 x (/.f64 x y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 (/.f64 x y) x)
(*.f64 x (/.f64 x y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 (/.f64 x y) x)
(*.f64 x (/.f64 x y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
y
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
y
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(+.f64 y (*.f64 (/.f64 x y) x))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)

eval147.0ms (1.2%)

Compiler

Compiled 2960 to 1271 computations (57.1% saved)

prune113.0ms (0.9%)

Pruning

16 alts after pruning (9 fresh and 7 done)

PrunedKeptTotal
New2273230
Fresh369
Picked011
Done167
Total23116247
Error
0b
Counts
247 → 16
Alt Table
Click to see full alt table
StatusErrorProgram
13.4b
(*.f64 1/2 (fma.f64 x (/.f64 x y) y))
50.2b
(/.f64 (*.f64 z -1/2) (/.f64 y z))
19.6b
(*.f64 -1/2 (-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y))
52.9b
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
43.7b
(/.f64 (/.f64 (-.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z)))) (-.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 y 2))
25.4b
(*.f64 1/2 y)
50.5b
(*.f64 1/2 (/.f64 x (/.f64 y x)))
52.7b
(/.f64 (*.f64 x x) (*.f64 y 2))
52.8b
(/.f64 (fma.f64 (*.f64 (neg.f64 z) (sqrt.f64 z)) (sqrt.f64 z) (*.f64 x x)) (*.f64 y 2))
12.4b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 z y) z) y))
37.2b
(/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 y 2))
13.4b
(*.f64 1/2 (+.f64 (*.f64 x (/.f64 x y)) y))
50.5b
(*.f64 1/2 (*.f64 x (/.f64 x y)))
12.4b
(*.f64 1/2 (fma.f64 (/.f64 z y) (neg.f64 z) y))
50.1b
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
37.8b
(*.f64 (+.f64 x z) (*.f64 (-.f64 x z) (/.f64 1/2 y)))
Compiler

Compiled 346 to 213 computations (38.4% saved)

localize27.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 x (/.f64 x y)) y)
0.2b
(*.f64 x (/.f64 x y))
Compiler

Compiled 30 to 9 computations (70% saved)

series6.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
x
@0
(*.f64 x (/.f64 x y))
1.0ms
x
@inf
(*.f64 x (/.f64 x y))
1.0ms
x
@-inf
(+.f64 (*.f64 x (/.f64 x y)) y)
0.0ms
y
@-inf
(+.f64 (*.f64 x (/.f64 x y)) y)
0.0ms
x
@-inf
(*.f64 x (/.f64 x y))

rewrite95.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
815×pow1_binary64
759×add-log-exp_binary64
759×log1p-expm1-u_binary64
759×expm1-log1p-u_binary64
742×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0615
113715
2204415
Stop Event
node limit
Counts
2 → 55
Calls
Call 1
Inputs
(*.f64 x (/.f64 x y))
(+.f64 (*.f64 x (/.f64 x y)) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 x (/.f64 x y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 x (/.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 y (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x x) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 x x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (neg.f64 x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x x) 1) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x x) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x x) (sqrt.f64 y)) (sqrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (/.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (/.f64 x y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (sqrt.f64 y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (/.f64 x y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x (/.f64 x y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (/.f64 x y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (/.f64 x y))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 x (/.f64 x y) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 x (/.f64 x y)) 2) (fma.f64 x (/.f64 x y) (neg.f64 y))) (/.f64 (*.f64 y y) (fma.f64 x (/.f64 x y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x (/.f64 x y) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x (/.f64 x y) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x (/.f64 x y) y)) (cbrt.f64 (pow.f64 (fma.f64 x (/.f64 x y) y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 x (/.f64 x y) y) 2)) (cbrt.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 x (/.f64 x y) y)) (sqrt.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 x (/.f64 x y)) 3) (pow.f64 y 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 x (/.f64 x y)) 2) (*.f64 y (-.f64 y (*.f64 x (/.f64 x y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 x (/.f64 x y)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 x (/.f64 x y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 x (/.f64 x y)) 2) (*.f64 y (-.f64 y (*.f64 x (/.f64 x y))))) (+.f64 (pow.f64 (*.f64 x (/.f64 x y)) 3) (pow.f64 y 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x (/.f64 x y) (neg.f64 y)) (-.f64 (pow.f64 (*.f64 x (/.f64 x y)) 2) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x (/.f64 x y)) 3) (pow.f64 y 3)) (+.f64 (pow.f64 (*.f64 x (/.f64 x y)) 2) (*.f64 y (-.f64 y (*.f64 x (/.f64 x y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 x (/.f64 x y)) 3) (pow.f64 y 3)) (+.f64 (*.f64 y y) (-.f64 (pow.f64 (*.f64 x (/.f64 x y)) 2) (*.f64 (/.f64 x y) (*.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 x (/.f64 x y)) 2) (*.f64 y y)) (fma.f64 x (/.f64 x y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x (/.f64 x y)) 3) (pow.f64 y 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 x (/.f64 x y)) 2) (*.f64 y (-.f64 y (*.f64 x (/.f64 x y)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x (/.f64 x y)) 2) (*.f64 y y))) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 x (/.f64 x y)) 2)) (-.f64 y (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x (/.f64 x y) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x (/.f64 x y) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x (/.f64 x y) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 x (/.f64 x y) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x (/.f64 x y) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x (/.f64 x y) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (/.f64 x y) y)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x y) x y)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 y (*.f64 x (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (/.f64 x y)) y)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 x (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 x (/.f64 x y))) 2) (cbrt.f64 (*.f64 x (/.f64 x y))) y)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 x (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x (sqrt.f64 y)) (/.f64 x (sqrt.f64 y)) y)))))

simplify193.0ms (1.5%)

Algorithm
egg-herbie
Rules
759×sqr-pow_binary64
434×unswap-sqr_binary64
423×associate-*r/_binary64
412×*-commutative_binary64
392×associate-/r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
07372
113372
222372
339336
486336
5264336
61086336
73503336
84335336
94545336
104761336
115110336
125538336
136021336
146672336
157357336
Stop Event
node limit
Counts
103 → 59
Calls
Call 1
Inputs
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (pow.f64 x 2) y)
y
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(/.f64 (pow.f64 x 2) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(/.f64 (pow.f64 x 2) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(/.f64 (pow.f64 x 2) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
y
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
y
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
Outputs
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
y
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(/.f64 (pow.f64 x 2) y)
(/.f64 (*.f64 x x) y)
(/.f64 x (/.f64 y x))
(*.f64 x (/.f64 x y))
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
y
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
y
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)
(+.f64 y (/.f64 (pow.f64 x 2) y))
(+.f64 y (/.f64 (*.f64 x x) y))
(+.f64 y (/.f64 x (/.f64 y x)))
(fma.f64 (/.f64 x y) x y)
(fma.f64 x (/.f64 x y) y)

localize25.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(*.f64 x (/.f64 x y))
Compiler

Compiled 21 to 8 computations (61.9% saved)

localize17.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
9.7b
(/.f64 (*.f64 x x) (*.f64 y 2))
Compiler

Compiled 19 to 10 computations (47.4% saved)

series5.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(/.f64 (*.f64 x x) (*.f64 y 2))
1.0ms
x
@0
(/.f64 (*.f64 x x) (*.f64 y 2))
1.0ms
y
@-inf
(/.f64 (*.f64 x x) (*.f64 y 2))
1.0ms
y
@inf
(/.f64 (*.f64 x x) (*.f64 y 2))
1.0ms
y
@0
(/.f64 (*.f64 x x) (*.f64 y 2))

rewrite104.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
825×pow1_binary64
769×add-log-exp_binary64
769×log1p-expm1-u_binary64
769×expm1-log1p-u_binary64
751×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
115110
2207610
Stop Event
node limit
Counts
1 → 40
Calls
Call 1
Inputs
(/.f64 (*.f64 x x) (*.f64 y 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (*.f64 x x) (/.f64 1/2 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 1 (*.f64 2 (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (*.f64 x (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x x) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (*.f64 x x) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 x 4)) (*.f64 (pow.f64 (cbrt.f64 x) 2) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y))) (pow.f64 (cbrt.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y))) 2) (cbrt.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (sqrt.f64 (*.f64 y 2))) (/.f64 x (sqrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (*.f64 x x)) (/.f64 1 (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x y) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/2) (/.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 y) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 x x) y) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 (*.f64 x x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x 1) (/.f64 x (*.f64 y 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 x 4)) 1) (/.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 y 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (/.f64 (*.f64 x x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 x 4)) y) (/.f64 (pow.f64 (cbrt.f64 x) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 x 4)) 2) (/.f64 (pow.f64 (cbrt.f64 x) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (*.f64 y 2)) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (pow.f64 (cbrt.f64 (*.f64 y 2)) 2)) (/.f64 x (cbrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 y 2)) 2)) (/.f64 (*.f64 x x) (cbrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 x 4)) (pow.f64 (cbrt.f64 (*.f64 y 2)) 2)) (cbrt.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (*.f64 y 2))) (/.f64 (*.f64 x x) (sqrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 x 4)) (sqrt.f64 (*.f64 y 2))) (/.f64 (pow.f64 (cbrt.f64 x) 2) (sqrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (sqrt.f64 (*.f64 y 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (/.f64 y (*.f64 x x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 x x) (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (pow.f64 x 4) (*.f64 4 (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 x x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 x x) 3) (pow.f64 (*.f64 y 2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y))))))))

simplify214.0ms (1.7%)

Algorithm
egg-herbie
Rules
715×associate-/l/_binary64
524×associate-*l*_binary64
508×*-commutative_binary64
470×sqr-pow_binary64
446×associate-*l/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08240
116240
230240
361240
4166240
5608240
62641240
73711240
83921240
94141240
104369240
114706240
126267240
136934240
147732240
Stop Event
node limit
Counts
64 → 42
Calls
Call 1
Inputs
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
Outputs
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 (*.f64 x (/.f64 x y)))

localize25.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (+.f64 x z) (*.f64 (-.f64 x z) (/.f64 1/2 y)))
0.3b
(*.f64 (-.f64 x z) (/.f64 1/2 y))
Compiler

Compiled 34 to 15 computations (55.9% saved)

series39.0ms (0.3%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
12.0ms
x
@0
(*.f64 (-.f64 x z) (/.f64 1/2 y))
5.0ms
y
@-inf
(*.f64 (+.f64 x z) (*.f64 (-.f64 x z) (/.f64 1/2 y)))
3.0ms
x
@-inf
(*.f64 (-.f64 x z) (/.f64 1/2 y))
2.0ms
y
@0
(*.f64 (+.f64 x z) (*.f64 (-.f64 x z) (/.f64 1/2 y)))
1.0ms
y
@0
(*.f64 (-.f64 x z) (/.f64 1/2 y))

rewrite92.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
572×log-prod_binary64
543×prod-diff_binary64
299×pow2_binary64
259×fma-def_binary64
218×pow-unpow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01026
122526
2321226
Stop Event
node limit
Counts
2 → 93
Calls
Call 1
Inputs
(*.f64 (-.f64 x z) (/.f64 1/2 y))
(*.f64 (+.f64 x z) (*.f64 (-.f64 x z) (/.f64 1/2 y)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 x z) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (/.f64 1/2 y)) (*.f64 (neg.f64 z) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 1/2 y) x) (*.f64 (/.f64 1/2 y) (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 x z)) (/.f64 1/2 y))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 x z)) (/.f64 1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 x z)) (/.f64 1/2 y)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 x z)) (/.f64 1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 x z) (/.f64 y 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2)) (+.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 y (*.f64 (-.f64 x z) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 3) (pow.f64 z 3)) (*.f64 (/.f64 y 1/2) (fma.f64 z (+.f64 x z) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 (/.f64 y 1/2) (+.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x z) 1/2) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (-.f64 x z) 1/2)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 x 3) (pow.f64 z 3)) 1/2) (*.f64 (fma.f64 z (+.f64 x z) (*.f64 x x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 1/2) (*.f64 (+.f64 x z) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 x 3) (pow.f64 z 3)) 1) (*.f64 (fma.f64 z (+.f64 x z) (*.f64 x x)) (/.f64 y 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 1) (*.f64 (+.f64 x z) (/.f64 y 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 x 3) (pow.f64 z 3)) -1/2) (*.f64 (fma.f64 z (+.f64 x z) (*.f64 x x)) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 z z)) -1/2) (*.f64 (+.f64 x z) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (-.f64 (pow.f64 x 3) (pow.f64 z 3))) (*.f64 y (fma.f64 z (+.f64 x z) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (-.f64 (pow.f64 x 3) (pow.f64 z 3))) (*.f64 (neg.f64 y) (fma.f64 z (+.f64 x z) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (-.f64 (*.f64 x x) (*.f64 z z))) (*.f64 y (+.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (-.f64 (*.f64 x x) (*.f64 z z))) (*.f64 (neg.f64 y) (+.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 x z) 1/2) 1) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 x z) 1/2) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 x z) 1/2) (sqrt.f64 y)) (sqrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 x 3) (pow.f64 z 3)) (/.f64 1/2 y)) (fma.f64 z (+.f64 x z) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1/2 (-.f64 x z)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x z) -1/2) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1/2 y) (-.f64 (pow.f64 x 3) (pow.f64 z 3))) (fma.f64 z (+.f64 x z) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (-.f64 x z) 3) (pow.f64 (/.f64 1/2 y) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (/.f64 1/2 y) 3) (pow.f64 (-.f64 x z) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (*.f64 (-.f64 x z) 1/2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (-.f64 x z)) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (-.f64 x z) 3) (pow.f64 (/.f64 1/2 y) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 1/2 y) 3) (pow.f64 (-.f64 x z) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (/.f64 1/2 y) (*.f64 (neg.f64 z) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1/2 y) x (*.f64 (/.f64 1/2 y) (neg.f64 z)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 (-.f64 x z) (/.f64 1/2 y))) (*.f64 z (*.f64 (-.f64 x z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (*.f64 (-.f64 x z) (/.f64 1/2 y))) (*.f64 x (*.f64 (-.f64 x z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) x) (*.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) z) (*.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 1/2) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 1) (/.f64 y 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 z z)) -1/2) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x z) 1/2) (+.f64 (pow.f64 x 3) (pow.f64 z 3))) (*.f64 y (fma.f64 z (-.f64 z x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x z) 1/2) (-.f64 (*.f64 x x) (*.f64 z z))) (*.f64 y (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 x 3) (pow.f64 z 3)) (*.f64 (-.f64 x z) 1/2)) (*.f64 (fma.f64 z (-.f64 z x) (*.f64 x x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 (-.f64 x z) 1/2)) (*.f64 (-.f64 x z) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x z) 1/2) (+.f64 x z)) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 x 3) (pow.f64 z 3)) (*.f64 (-.f64 x z) (/.f64 1/2 y))) (fma.f64 z (-.f64 z x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 (-.f64 x z) (/.f64 1/2 y))) (-.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) (+.f64 (pow.f64 x 3) (pow.f64 z 3))) (fma.f64 z (-.f64 z x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) (-.f64 (*.f64 x x) (*.f64 z z))) (-.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x z) (*.f64 (-.f64 x z) 1/2)) y)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) 3) (pow.f64 (+.f64 x z) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (+.f64 x z) 3) (pow.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) 3) (pow.f64 (+.f64 x z) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (+.f64 x z) 3) (pow.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (/.f64 y 1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (*.f64 (-.f64 x z) (/.f64 1/2 y)) (*.f64 z (*.f64 (-.f64 x z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (*.f64 (-.f64 x z) (/.f64 1/2 y)) (*.f64 x (*.f64 (-.f64 x z) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) x (*.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) z (*.f64 (*.f64 (-.f64 x z) (/.f64 1/2 y)) x))))))

simplify77.0ms (0.6%)

Algorithm
egg-herbie
Rules
625×associate-/l*_binary64
565×fma-def_binary64
550×distribute-rgt-in_binary64
426×distribute-lft-in_binary64
410×associate-*l/_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0451350
11401158
2418966
31276942
43617846
Stop Event
node limit
Counts
165 → 113
Calls
Call 1
Inputs
(*.f64 -1/2 (/.f64 z y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 x y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 x y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 x y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(*.f64 -1/2 (/.f64 z y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(*.f64 -1/2 (/.f64 z y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 -1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
Outputs
(*.f64 -1/2 (/.f64 z y))
(*.f64 z (/.f64 -1/2 y))
(/.f64 -1/2 (/.f64 y z))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 1/2 (/.f64 x y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 1/2 (/.f64 x y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 1/2 (/.f64 x y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 -1/2 (/.f64 z y))
(*.f64 z (/.f64 -1/2 y))
(/.f64 -1/2 (/.f64 y z))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 -1/2 (/.f64 z y))
(*.f64 z (/.f64 -1/2 y))
(/.f64 -1/2 (/.f64 y z))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(+.f64 (*.f64 -1/2 (/.f64 z y)) (*.f64 1/2 (/.f64 x y)))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 1/2 (/.f64 (-.f64 x z) y))
(fma.f64 -1/2 (/.f64 z y) (*.f64 1/2 (/.f64 x y)))
(/.f64 (-.f64 x z) (/.f64 y 1/2))
(*.f64 -1/2 (/.f64 (-.f64 z x) y))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(/.f64 (*.f64 -1/2 z) (/.f64 y z))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(/.f64 (*.f64 -1/2 z) (/.f64 y z))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 (/.f64 x y) (*.f64 1/2 x))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 (/.f64 x y) (*.f64 1/2 x))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 (/.f64 x y) (*.f64 1/2 x))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 (/.f64 x y) (*.f64 1/2 x))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 (/.f64 x y) (*.f64 1/2 x))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 (/.f64 x y) (*.f64 1/2 x))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(/.f64 (*.f64 -1/2 z) (/.f64 y z))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(/.f64 (*.f64 -1/2 z) (/.f64 y z))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(/.f64 (*.f64 -1/2 z) (/.f64 y z))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (*.f64 -1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(*.f64 -1/2 (*.f64 (/.f64 z y) z))
(/.f64 (*.f64 -1/2 z) (/.f64 y z))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))
(*.f64 1/2 (/.f64 (*.f64 (-.f64 x z) (+.f64 z x)) y))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (+.f64 (*.f64 x (*.f64 0 (/.f64 z y))) (/.f64 (*.f64 x x) y))))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 1/2 (fma.f64 x 0 (/.f64 x (/.f64 y x)))))
(fma.f64 -1/2 (*.f64 (/.f64 z y) z) (fma.f64 1/2 (/.f64 x (/.f64 y x)) 0))
(fma.f64 -1/2 (/.f64 (*.f64 z z) y) (*.f64 (/.f64 x y) (*.f64 1/2 x)))
(*.f64 1/2 (/.f64 (-.f64 x z) (/.f64 y (+.f64 z x))))

localize58.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
5.1b
(-.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z)))
12.1b
(-.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z))))
25.0b
(/.f64 (/.f64 (-.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z)))) (-.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 y 2))
37.6b
(/.f64 (-.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z)))) (-.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z))))
Compiler

Compiled 141 to 29 computations (79.4% saved)

series71.0ms (0.6%)

Counts
4 → 144
Calls

36 calls:

TimeVariablePointExpression
37.0ms
z
@0
(/.f64 (-.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z)))) (-.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z))))
5.0ms
y
@0
(-.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z))))
2.0ms
z
@0
(/.f64 (/.f64 (-.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z)))) (-.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 y 2))
2.0ms
y
@0
(/.f64 (-.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z)))) (-.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z))))
2.0ms
x
@0
(/.f64 (-.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z)))) (-.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z))))

rewrite149.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
455×fma-neg_binary64
339×expm1-udef_binary64
339×log1p-udef_binary64
206×add-sqr-sqrt_binary64
204×pow1_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
017115
140669
2628169
Stop Event
node limit
Counts
4 → 222
Calls
Call 1
Inputs
(/.f64 (-.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z)))) (-.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z))))
(/.f64 (/.f64 (-.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z)))) (-.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 y 2))
(-.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z))))
(-.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (fma.f64 (neg.f64 z) z (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (pow.f64 x 4) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (neg.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 x 4) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (/.f64 1 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))) (cbrt.f64 (pow.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) 2)) (cbrt.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 2)) (*.f64 (cbrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (/.f64 1 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) (hypot.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (*.f64 (sqrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (/.f64 1 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (/.f64 1 (neg.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 2)) 1) (/.f64 (cbrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) 1) (/.f64 (sqrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) 2)) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 2)) (pow.f64 (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) 2)) (cbrt.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (pow.f64 (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) 2)) (/.f64 (sqrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 z (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (hypot.f64 z (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 2)) (hypot.f64 z (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))))) (/.f64 (cbrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (hypot.f64 z (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (-.f64 (pow.f64 x 6) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 3))) (+.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (neg.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 x) x) (pow.f64 (exp.f64 (+.f64 y z)) (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 3) (pow.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 4) (/.f64 1 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (neg.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (pow.f64 x 4) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (neg.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 4)) (pow.f64 (cbrt.f64 x) 2) (-.f64 (*.f64 y y) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (/.f64 (pow.f64 x 4) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))) (cbrt.f64 (/.f64 (pow.f64 x 4) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))))) (cbrt.f64 (/.f64 (pow.f64 x 4) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))) (neg.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (pow.f64 x 4) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))) (sqrt.f64 (/.f64 (pow.f64 x 4) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))) (neg.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) 2)) (/.f64 (pow.f64 x 4) (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))) (neg.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (hypot.f64 z (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))))) (/.f64 (pow.f64 x 4) (hypot.f64 z (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))))) (neg.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x x) 1) (/.f64 (*.f64 x x) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (neg.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 x 8)) 1) (/.f64 (cbrt.f64 (pow.f64 x 4)) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (neg.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x x) (pow.f64 (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) 2)) (/.f64 (*.f64 x x) (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))) (neg.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 x 8)) (pow.f64 (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) 2)) (/.f64 (cbrt.f64 (pow.f64 x 4)) (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))) (neg.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x x) (hypot.f64 z (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))))) (/.f64 (*.f64 x x) (hypot.f64 z (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))))) (neg.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 x 8)) (hypot.f64 z (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))))) (/.f64 (cbrt.f64 (pow.f64 x 4)) (hypot.f64 z (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))))) (neg.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 x 4) (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (neg.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 x 4) (-.f64 (pow.f64 x 6) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 3))) (+.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))))) (neg.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 x 4) (*.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 y 2))) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 (pow.f64 x 4) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (*.f64 y 2)) (/.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (*.f64 y 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (/.f64 1 (*.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (*.f64 (/.f64 1 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y))) (cbrt.f64 (pow.f64 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y)) 2)) (cbrt.f64 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) 2)) (*.f64 (cbrt.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (hypot.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) (sqrt.f64 (/.f64 1/2 y))) (*.f64 (hypot.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) (sqrt.f64 (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) (*.f64 (hypot.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))) (/.f64 1 (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 y) (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) y) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 2)) (*.f64 y 2)) (/.f64 (cbrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (*.f64 y 2)) (/.f64 (sqrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) y) (/.f64 (/.f64 1 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (/.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) 2)) y) (/.f64 (cbrt.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) y) (/.f64 (hypot.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) 2) (/.f64 (hypot.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 2) (/.f64 (/.f64 1 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) 2)) 2) (/.f64 (cbrt.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 1) (/.f64 (/.f64 1 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (*.f64 y 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) 2)) 1) (/.f64 (cbrt.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 y 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) 1) (/.f64 (hypot.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) (*.f64 y 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (pow.f64 (cbrt.f64 (*.f64 y 2)) 2)) (/.f64 (/.f64 1 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (cbrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 y 2)) 2)) (/.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (cbrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) 2)) (pow.f64 (cbrt.f64 (*.f64 y 2)) 2)) (cbrt.f64 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) (pow.f64 (cbrt.f64 (*.f64 y 2)) 2)) (/.f64 (hypot.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) (cbrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (sqrt.f64 (*.f64 y 2))) (/.f64 (/.f64 1 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (sqrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (*.f64 y 2))) (/.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (sqrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) 2)) (sqrt.f64 (*.f64 y 2))) (/.f64 (cbrt.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))) (sqrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (hypot.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) (sqrt.f64 (/.f64 1/2 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2 (/.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (sqrt.f64 (exp.f64 (/.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) 3) (pow.f64 (*.f64 y 2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (/.f64 1/2 y))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 x 4) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 x 4) (*.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (+.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (fma.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 1 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2)) (cbrt.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 4)) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (pow.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (cbrt.f64 (pow.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 2)) (cbrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (sqrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 12) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 6)) (/.f64 1 (+.f64 (pow.f64 x 8) (+.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 4) (*.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 8) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 4)) (/.f64 1 (+.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 x 8) (+.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 4) (*.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))) (-.f64 (pow.f64 x 12) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (-.f64 (pow.f64 x 8) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 12) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 6)) (+.f64 (pow.f64 x 8) (+.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 4) (*.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 8) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 4)) (+.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 x 12) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 6))) (neg.f64 (+.f64 (pow.f64 x 8) (+.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 4) (*.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 x 8) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 4))) (neg.f64 (+.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 12) (pow.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 3)) (+.f64 (pow.f64 x 8) (-.f64 (*.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (*.f64 (pow.f64 x 4) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 8) (*.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))) (-.f64 (pow.f64 x 4) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (pow.f64 x 3) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 4) 1 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) (*.f64 x x) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 x 4) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 x 3) x (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 4)) (cbrt.f64 (pow.f64 x 8)) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 4)) (*.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 x x)) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 8)) (cbrt.f64 (pow.f64 x 4)) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (pow.f64 (cbrt.f64 x) 2) 4) (pow.f64 (cbrt.f64 x) 4) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (sqrt.f64 x) 4) (pow.f64 (sqrt.f64 x) 4) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 x x) (cbrt.f64 (pow.f64 x 4))) (pow.f64 (cbrt.f64 x) 2) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x x) (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x x) (*.f64 (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) (fma.f64 (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))) 1 (-.f64 (*.f64 y y) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) (fma.f64 (neg.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z)))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 y y) (*.f64 z z))) 2) (-.f64 (*.f64 y y) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) (+.f64 (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))) (-.f64 (*.f64 y y) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) (fma.f64 (neg.f64 (-.f64 y z)) (+.f64 y z) (-.f64 (*.f64 y y) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 1) (*.f64 z z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (/.f64 1 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (pow.f64 (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) 2) (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 z (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (hypot.f64 z (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 6) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 3)) (/.f64 1 (+.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) (-.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))))) (-.f64 (pow.f64 x 6) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) 2)) (/.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (cbrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (/.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (sqrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (neg.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 6) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 3)) (+.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 12) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 6)) (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (+.f64 (pow.f64 x 8) (+.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 4) (*.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 8) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 4)) (*.f64 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z))) (+.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 x 6) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 3))) (neg.f64 (+.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 6) (pow.f64 (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))) 3)) (+.f64 (pow.f64 x 4) (-.f64 (*.f64 (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))) (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z)))) (*.f64 (*.f64 x x) (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3) (pow.f64 z 6)) (+.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 (*.f64 x x) (*.f64 y y))) (-.f64 (pow.f64 z 4) (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 4) (*.f64 (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))) (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))))) (-.f64 (*.f64 x x) (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 (*.f64 x x) (*.f64 y y))) (pow.f64 z 4)) (-.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 z (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x x (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (/.f64 1 (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))) (neg.f64 (fma.f64 (neg.f64 z) z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x x) 1 (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) 1 (neg.f64 (fma.f64 (neg.f64 z) z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x x) (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) (neg.f64 (fma.f64 (neg.f64 z) z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 x x) (*.f64 y y)) (neg.f64 (*.f64 z (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (cbrt.f64 (pow.f64 x 4)) (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) x) (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 x 4)) (pow.f64 (cbrt.f64 x) 2) (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (pow.f64 (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) 2) (neg.f64 (fma.f64 (neg.f64 z) z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) 2) (cbrt.f64 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (neg.f64 (fma.f64 (neg.f64 z) z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) x) (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 z (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (hypot.f64 z (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (neg.f64 (fma.f64 (neg.f64 z) z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 x 6) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 3)) (/.f64 1 (+.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (fma.f64 x x (-.f64 (*.f64 y y) (*.f64 z z)))))) (neg.f64 (fma.f64 (neg.f64 z) z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))) (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))) (neg.f64 (*.f64 z (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))) (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))) (neg.f64 (*.f64 z (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cbrt.f64 (pow.f64 x 8))) (sqrt.f64 (cbrt.f64 (pow.f64 x 4))) (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x y) (-.f64 x y) (neg.f64 (*.f64 z (neg.f64 z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) (-.f64 x (hypot.f64 y (sqrt.f64 (*.f64 z (neg.f64 z))))) (neg.f64 (fma.f64 (neg.f64 z) z (*.f64 z z))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (+.f64 y z) (neg.f64 (-.f64 y z))))))))

simplify218.0ms (1.7%)

Algorithm
egg-herbie
Rules
481×cancel-sign-sub-inv_binary64
382×fma-def_binary64
302×fma-neg_binary64
285×sub-neg_binary64
225×+-commutative_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03357395
111176771
244356457
Stop Event
node limit
Counts
366 → 356
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (-.f64 (pow.f64 z 2) (pow.f64 y 2))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (-.f64 (pow.f64 z 2) (pow.f64 y 2)))) (/.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2)) (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 2)))
(+.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 (pow.f64 z 2) (pow.f64 y 2))) (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 3))) (pow.f64 x 4)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (-.f64 (pow.f64 z 2) (pow.f64 y 2)))) (/.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2)) (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 2))))
(+.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 (pow.f64 z 2) (pow.f64 y 2))) (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 3))) (pow.f64 x 4)) (+.f64 (*.f64 (-.f64 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 4)) (/.f64 1 (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 2))) (pow.f64 x 6)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (-.f64 (pow.f64 z 2) (pow.f64 y 2)))) (/.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2)) (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 2)))))
(pow.f64 x 2)
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2))) (+.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (pow.f64 z 2) (/.f64 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2))) (+.f64 (pow.f64 y 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (pow.f64 y 2) (pow.f64 z 2))))) (pow.f64 x 4))) (pow.f64 x 2)))) (+.f64 (pow.f64 z 2) (/.f64 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (pow.f64 x 2))))
(pow.f64 x 2)
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2))) (+.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (pow.f64 z 2) (/.f64 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2))) (+.f64 (pow.f64 y 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (pow.f64 y 2) (pow.f64 z 2))))) (pow.f64 x 4))) (pow.f64 x 2)))) (+.f64 (pow.f64 z 2) (/.f64 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (pow.f64 x 2))))
(/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))
(-.f64 (+.f64 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2))))) (/.f64 (pow.f64 x 4) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (/.f64 (pow.f64 z 4) (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2))))) (+.f64 (/.f64 (pow.f64 x 4) (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (*.f64 -1 (*.f64 (pow.f64 y 4) (+.f64 (/.f64 1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))) (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))))) (/.f64 (pow.f64 z 4) (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2))))) (+.f64 (/.f64 (pow.f64 x 4) (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y 6) (+.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)) (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))))) (*.f64 -1 (*.f64 (pow.f64 y 4) (+.f64 (/.f64 1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))))))))) (/.f64 (pow.f64 z 4) (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(pow.f64 y 2)
(-.f64 (+.f64 (*.f64 -2 (pow.f64 z 2)) (pow.f64 y 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -2 (pow.f64 z 2)) (+.f64 (pow.f64 y 2) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 y 2))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))) (pow.f64 y 2))) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 -2 (pow.f64 z 2)) (+.f64 (/.f64 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 -1 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))))))) (pow.f64 y 4)) (+.f64 (pow.f64 y 2) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 y 2)))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))) (pow.f64 y 2))) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))))
(pow.f64 y 2)
(-.f64 (+.f64 (*.f64 -2 (pow.f64 z 2)) (pow.f64 y 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(-.f64 (+.f64 (*.f64 -2 (pow.f64 z 2)) (+.f64 (pow.f64 y 2) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 y 2))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))) (pow.f64 y 2))) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))))
(-.f64 (+.f64 (*.f64 -2 (pow.f64 z 2)) (+.f64 (/.f64 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 -1 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))))))) (pow.f64 y 4)) (+.f64 (pow.f64 y 2) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 y 2)))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))) (pow.f64 y 2))) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))))
(/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (-.f64 (pow.f64 x 2) (pow.f64 y 2)))
(-.f64 (+.f64 (*.f64 (pow.f64 z 2) (-.f64 (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)) (*.f64 2 (/.f64 (pow.f64 y 2) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)))) (/.f64 (pow.f64 x 4) (-.f64 (pow.f64 x 2) (pow.f64 y 2)))) (/.f64 (pow.f64 y 4) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))
(-.f64 (+.f64 (*.f64 (pow.f64 z 2) (-.f64 (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)) (*.f64 2 (/.f64 (pow.f64 y 2) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)))) (+.f64 (*.f64 (-.f64 (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3)) (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3)) (+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2))) (/.f64 1 (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))) (pow.f64 z 4)) (/.f64 (pow.f64 x 4) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (/.f64 (pow.f64 y 4) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))
(-.f64 (+.f64 (*.f64 (pow.f64 z 2) (-.f64 (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)) (*.f64 2 (/.f64 (pow.f64 y 2) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)))) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3))) (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 4)) (/.f64 1 (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)))) (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 4))) (pow.f64 z 6)) (+.f64 (*.f64 (-.f64 (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3)) (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3)) (+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2))) (/.f64 1 (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))) (pow.f64 z 4)) (/.f64 (pow.f64 x 4) (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))) (/.f64 (pow.f64 y 4) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))
(*.f64 -1 (pow.f64 z 2))
(-.f64 (+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 z 2))) (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2))))
(-.f64 (+.f64 (*.f64 2 (pow.f64 y 2)) (+.f64 (/.f64 (pow.f64 x 4) (pow.f64 z 2)) (*.f64 -1 (pow.f64 z 2)))) (+.f64 (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2))) (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2)))) (-.f64 (pow.f64 x 2) (pow.f64 y 2))) (pow.f64 z 2)) (/.f64 (pow.f64 y 4) (pow.f64 z 2)))))
(-.f64 (+.f64 (*.f64 2 (pow.f64 y 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) (-.f64 (pow.f64 x 4) (+.f64 (pow.f64 y 4) (*.f64 (-.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2)))) (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))) (pow.f64 z 4))) (+.f64 (/.f64 (pow.f64 x 4) (pow.f64 z 2)) (*.f64 -1 (pow.f64 z 2))))) (+.f64 (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2))) (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2)))) (-.f64 (pow.f64 x 2) (pow.f64 y 2))) (pow.f64 z 2)) (/.f64 (pow.f64 y 4) (pow.f64 z 2)))))
(*.f64 -1 (pow.f64 z 2))
(-.f64 (+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 z 2))) (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2))))
(-.f64 (+.f64 (*.f64 2 (pow.f64 y 2)) (+.f64 (/.f64 (pow.f64 x 4) (pow.f64 z 2)) (*.f64 -1 (pow.f64 z 2)))) (+.f64 (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2))) (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2)))) (-.f64 (pow.f64 x 2) (pow.f64 y 2))) (pow.f64 z 2)) (/.f64 (pow.f64 y 4) (pow.f64 z 2)))))
(-.f64 (+.f64 (*.f64 2 (pow.f64 y 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) (-.f64 (pow.f64 x 4) (+.f64 (pow.f64 y 4) (*.f64 (-.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2)))) (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))) (pow.f64 z 4))) (+.f64 (/.f64 (pow.f64 x 4) (pow.f64 z 2)) (*.f64 -1 (pow.f64 z 2))))) (+.f64 (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2))) (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2)))) (-.f64 (pow.f64 x 2) (pow.f64 y 2))) (pow.f64 z 2)) (/.f64 (pow.f64 y 4) (pow.f64 z 2)))))
(*.f64 -1/2 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) y)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2)) (*.f64 (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) y))))
(+.f64 (*.f64 1/2 (*.f64 (-.f64 (/.f64 1 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) y)) (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (*.f64 (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 3) y))) (pow.f64 x 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2)) (*.f64 (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) y)))))
(+.f64 (*.f64 1/2 (*.f64 (-.f64 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (*.f64 (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 4) y)) (/.f64 1 (*.f64 (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 2) y))) (pow.f64 x 6))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (/.f64 1 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) y)) (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (*.f64 (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 3) y))) (pow.f64 x 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2)) (*.f64 (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) y))))))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) y)) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 y (/.f64 (pow.f64 z 2) y)))) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) y)) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 y (/.f64 (pow.f64 z 2) y))))) (pow.f64 x 4))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) y)) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 y (/.f64 (pow.f64 z 2) y)))) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) y)) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 y (/.f64 (pow.f64 z 2) y)))) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) y)) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 y (/.f64 (pow.f64 z 2) y))))) (pow.f64 x 4))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) y)) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 y (/.f64 (pow.f64 z 2) y)))) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 y (+.f64 (pow.f64 z 2) (pow.f64 x 2)))))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 y (+.f64 (pow.f64 z 2) (pow.f64 x 2))))) (*.f64 1/2 (*.f64 y (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))))))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 y (+.f64 (pow.f64 z 2) (pow.f64 x 2))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 3) (+.f64 (/.f64 1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))) (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))) (*.f64 1/2 (*.f64 y (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2))))))))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 y (+.f64 (pow.f64 z 2) (pow.f64 x 2))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 3) (+.f64 (/.f64 1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))) (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))) (+.f64 (*.f64 1/2 (*.f64 y (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))))) (*.f64 -1/2 (*.f64 (pow.f64 y 5) (+.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)) (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))))))))
(*.f64 1/2 y)
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) y)))
(+.f64 (*.f64 1/2 y) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) y)) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 -1 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))) (pow.f64 y 3)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 -1 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))) (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (pow.f64 y 5))) (+.f64 (*.f64 1/2 y) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) y)) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 -1 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))) (pow.f64 y 3))))))
(*.f64 1/2 y)
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) y)))
(+.f64 (*.f64 1/2 y) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) y)) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 -1 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))) (pow.f64 y 3)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 -1 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))) (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (pow.f64 y 5))) (+.f64 (*.f64 1/2 y) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) y)) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 -1 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))) (pow.f64 y 3))))))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (*.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))
(+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)) (*.f64 2 (/.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)))) (pow.f64 z 2))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (*.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2))))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 z 4) (-.f64 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3))) (+.f64 (*.f64 2 (/.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2))) (+.f64 (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3)) (/.f64 1 (*.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2))))))))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)) (*.f64 2 (/.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)))) (pow.f64 z 2))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (*.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 z 4) (-.f64 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3))) (+.f64 (*.f64 2 (/.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2))) (+.f64 (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3)) (/.f64 1 (*.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2))))))))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)) (*.f64 2 (/.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)))) (pow.f64 z 2))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 2 (/.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3))) (+.f64 (/.f64 1 (*.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2))) (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 4)))) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 4)))) (pow.f64 z 6))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (*.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2))))))))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 1/2 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y)))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 1/2 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (+.f64 (pow.f64 y 3) (*.f64 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y))) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (pow.f64 z 2))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y))))
(+.f64 (*.f64 1/2 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (+.f64 (pow.f64 y 3) (*.f64 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y))) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (pow.f64 z 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) (-.f64 (/.f64 (pow.f64 x 4) y) (+.f64 (pow.f64 y 3) (*.f64 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y))) (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))) (pow.f64 z 4))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 1/2 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y)))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 1/2 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (+.f64 (pow.f64 y 3) (*.f64 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y))) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (pow.f64 z 2))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y))))
(+.f64 (*.f64 1/2 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (+.f64 (pow.f64 y 3) (*.f64 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y))) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (pow.f64 z 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) (-.f64 (/.f64 (pow.f64 x 4) y) (+.f64 (pow.f64 y 3) (*.f64 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y))) (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))) (pow.f64 z 4))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))))
(*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(pow.f64 x 4)
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(pow.f64 x 4)
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(-.f64 (pow.f64 x 4) (pow.f64 z 4))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (pow.f64 x 4)) (pow.f64 z 4))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))) (pow.f64 z 4))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))) (pow.f64 z 4))
(*.f64 -1 (pow.f64 y 4))
(+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (*.f64 -1 (pow.f64 y 4)))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))) (pow.f64 z 4))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))) (pow.f64 z 4))
(*.f64 -1 (pow.f64 y 4))
(+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (*.f64 -1 (pow.f64 y 4)))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))) (pow.f64 z 4))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))) (pow.f64 z 4))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (pow.f64 x 4)) (pow.f64 y 4))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 z 4)))) (pow.f64 y 4))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 z 4)))) (pow.f64 y 4))
(*.f64 -1 (pow.f64 z 4))
(+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (*.f64 -1 (pow.f64 z 4)))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 z 4)))) (pow.f64 y 4))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 z 4)))) (pow.f64 y 4))
(*.f64 -1 (pow.f64 z 4))
(+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (*.f64 -1 (pow.f64 z 4)))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 z 4)))) (pow.f64 y 4))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 z 4)))) (pow.f64 y 4))
(-.f64 (pow.f64 z 2) (pow.f64 y 2))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(pow.f64 x 2)
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(pow.f64 x 2)
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (pow.f64 z 2) (pow.f64 x 2))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))
(*.f64 -1 (pow.f64 y 2))
(+.f64 (pow.f64 z 2) (+.f64 (*.f64 -1 (pow.f64 y 2)) (pow.f64 x 2)))
(+.f64 (pow.f64 z 2) (+.f64 (*.f64 -1 (pow.f64 y 2)) (pow.f64 x 2)))
(+.f64 (pow.f64 z 2) (+.f64 (*.f64 -1 (pow.f64 y 2)) (pow.f64 x 2)))
(*.f64 -1 (pow.f64 y 2))
(+.f64 (pow.f64 z 2) (+.f64 (*.f64 -1 (pow.f64 y 2)) (pow.f64 x 2)))
(+.f64 (pow.f64 z 2) (+.f64 (*.f64 -1 (pow.f64 y 2)) (pow.f64 x 2)))
(+.f64 (pow.f64 z 2) (+.f64 (*.f64 -1 (pow.f64 y 2)) (pow.f64 x 2)))
(-.f64 (pow.f64 x 2) (pow.f64 y 2))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(pow.f64 z 2)
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(pow.f64 z 2)
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
Outputs
(*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (-.f64 (pow.f64 z 2) (pow.f64 y 2))))
(/.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (-.f64 (*.f64 z z) (*.f64 y y)))
(/.f64 (neg.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2)) (fma.f64 z z (*.f64 y (neg.f64 y))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (-.f64 (pow.f64 z 2) (pow.f64 y 2)))) (/.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2)) (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 2)))
(fma.f64 -1 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (-.f64 (*.f64 z z) (*.f64 y y))) (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 x x)) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 2)))
(-.f64 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 2)) (*.f64 x x)) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (-.f64 (*.f64 z z) (*.f64 y y))))
(*.f64 (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (fma.f64 z z (*.f64 y (neg.f64 y)))) (+.f64 -1 (/.f64 (*.f64 x x) (fma.f64 z z (*.f64 y (neg.f64 y))))))
(+.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 (pow.f64 z 2) (pow.f64 y 2))) (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 3))) (pow.f64 x 4)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (-.f64 (pow.f64 z 2) (pow.f64 y 2)))) (/.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2)) (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 2))))
(fma.f64 (-.f64 (/.f64 1 (-.f64 (*.f64 z z) (*.f64 y y))) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 3))) (pow.f64 x 4) (fma.f64 -1 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (-.f64 (*.f64 z z) (*.f64 y y))) (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 x x)) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 2))))
(fma.f64 (-.f64 (/.f64 1 (-.f64 (*.f64 z z) (*.f64 y y))) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 3))) (pow.f64 x 4) (-.f64 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 2)) (*.f64 x x)) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (-.f64 (*.f64 z z) (*.f64 y y)))))
(fma.f64 (-.f64 (/.f64 1 (fma.f64 z z (*.f64 y (neg.f64 y)))) (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 3))) (pow.f64 x 4) (*.f64 (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (fma.f64 z z (*.f64 y (neg.f64 y)))) (+.f64 -1 (/.f64 (*.f64 x x) (fma.f64 z z (*.f64 y (neg.f64 y)))))))
(+.f64 (*.f64 (-.f64 (/.f64 1 (-.f64 (pow.f64 z 2) (pow.f64 y 2))) (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 3))) (pow.f64 x 4)) (+.f64 (*.f64 (-.f64 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 4)) (/.f64 1 (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 2))) (pow.f64 x 6)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (-.f64 (pow.f64 z 2) (pow.f64 y 2)))) (/.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2)) (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 2)))))
(fma.f64 (-.f64 (/.f64 1 (-.f64 (*.f64 z z) (*.f64 y y))) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 3))) (pow.f64 x 4) (fma.f64 (-.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 4)) (/.f64 1 (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 2))) (pow.f64 x 6) (fma.f64 -1 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (-.f64 (*.f64 z z) (*.f64 y y))) (/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 x x)) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 2)))))
(fma.f64 (-.f64 (/.f64 1 (-.f64 (*.f64 z z) (*.f64 y y))) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 3))) (pow.f64 x 4) (fma.f64 (+.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 4)) (/.f64 -1 (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 2))) (pow.f64 x 6) (-.f64 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 2)) (*.f64 x x)) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (-.f64 (*.f64 z z) (*.f64 y y))))))
(fma.f64 (-.f64 (/.f64 1 (fma.f64 z z (*.f64 y (neg.f64 y)))) (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 3))) (pow.f64 x 4) (fma.f64 (+.f64 (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 4)) (/.f64 -1 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2))) (pow.f64 x 6) (*.f64 (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (fma.f64 z z (*.f64 y (neg.f64 y)))) (+.f64 -1 (/.f64 (*.f64 x x) (fma.f64 z z (*.f64 y (neg.f64 y))))))))
(pow.f64 x 2)
(*.f64 x x)
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2))) (+.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (pow.f64 z 2) (/.f64 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (pow.f64 x 2))))
(-.f64 (fma.f64 -1 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 x x)) (+.f64 (*.f64 y y) (*.f64 x x))) (+.f64 (*.f64 z z) (/.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (/.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z))))))
(-.f64 (-.f64 (fma.f64 y y (*.f64 x x)) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 x x))) (fma.f64 z z (*.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (*.f64 x x)) (-.f64 (*.f64 y y) (*.f64 z z)))))
(+.f64 (-.f64 (fma.f64 x x (*.f64 y y)) (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (*.f64 x x))) (-.f64 (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (*.f64 x x)) (*.f64 z z)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2))) (+.f64 (pow.f64 y 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (pow.f64 y 2) (pow.f64 z 2))))) (pow.f64 x 4))) (pow.f64 x 2)))) (+.f64 (pow.f64 z 2) (/.f64 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (pow.f64 x 2))))
(-.f64 (fma.f64 -1 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 x x)) (+.f64 (*.f64 y y) (fma.f64 -1 (/.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (/.f64 (pow.f64 x 4) (-.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 z z) (*.f64 y y)))))) (*.f64 x x)))) (+.f64 (*.f64 z z) (/.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (/.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z))))))
(-.f64 (-.f64 (fma.f64 y y (-.f64 (*.f64 x x) (*.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (pow.f64 x 4)) (-.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 z z) (*.f64 y y))))))) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 x x))) (fma.f64 z z (*.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (*.f64 x x)) (-.f64 (*.f64 y y) (*.f64 z z)))))
(-.f64 (+.f64 (fma.f64 x x (/.f64 (+.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 3) (neg.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 3))) (pow.f64 x 4))) (fma.f64 y y (-.f64 (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (*.f64 x x)) (*.f64 z z)))) (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (*.f64 x x)))
(pow.f64 x 2)
(*.f64 x x)
(-.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))
(+.f64 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 z z)))
(-.f64 (fma.f64 y y (*.f64 x x)) (*.f64 z z))
(-.f64 (fma.f64 x x (*.f64 y y)) (*.f64 z z))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2))) (+.f64 (pow.f64 y 2) (pow.f64 x 2))) (+.f64 (pow.f64 z 2) (/.f64 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (pow.f64 x 2))))
(-.f64 (fma.f64 -1 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 x x)) (+.f64 (*.f64 y y) (*.f64 x x))) (+.f64 (*.f64 z z) (/.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (/.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z))))))
(-.f64 (-.f64 (fma.f64 y y (*.f64 x x)) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 x x))) (fma.f64 z z (*.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (*.f64 x x)) (-.f64 (*.f64 y y) (*.f64 z z)))))
(+.f64 (-.f64 (fma.f64 x x (*.f64 y y)) (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (*.f64 x x))) (-.f64 (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (*.f64 x x)) (*.f64 z z)))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2))) (+.f64 (pow.f64 y 2) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (pow.f64 y 2) (pow.f64 z 2))))) (pow.f64 x 4))) (pow.f64 x 2)))) (+.f64 (pow.f64 z 2) (/.f64 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (pow.f64 x 2))))
(-.f64 (fma.f64 -1 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 x x)) (+.f64 (*.f64 y y) (fma.f64 -1 (/.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (/.f64 (pow.f64 x 4) (-.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 z z) (*.f64 y y)))))) (*.f64 x x)))) (+.f64 (*.f64 z z) (/.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (/.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z))))))
(-.f64 (-.f64 (fma.f64 y y (-.f64 (*.f64 x x) (*.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (pow.f64 x 4)) (-.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 z z) (*.f64 y y))))))) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 x x))) (fma.f64 z z (*.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (*.f64 x x)) (-.f64 (*.f64 y y) (*.f64 z z)))))
(-.f64 (+.f64 (fma.f64 x x (/.f64 (+.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 3) (neg.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 3))) (pow.f64 x 4))) (fma.f64 y y (-.f64 (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (*.f64 x x)) (*.f64 z z)))) (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (*.f64 x x)))
(/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))
(/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (+.f64 (*.f64 z z) (*.f64 x x)))
(/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (fma.f64 z z (*.f64 x x)))
(-.f64 (+.f64 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2))))) (/.f64 (pow.f64 x 4) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (/.f64 (pow.f64 z 4) (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(+.f64 (*.f64 (*.f64 y y) (-.f64 (*.f64 2 (/.f64 (*.f64 z z) (+.f64 (*.f64 z z) (*.f64 x x)))) (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (pow.f64 (+.f64 (*.f64 z z) (*.f64 x x)) 2)))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (+.f64 (*.f64 z z) (*.f64 x x))))
(fma.f64 (*.f64 y y) (fma.f64 2 (/.f64 (*.f64 z z) (fma.f64 z z (*.f64 x x))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (fma.f64 z z (*.f64 x x))))
(-.f64 (+.f64 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2))))) (+.f64 (/.f64 (pow.f64 x 4) (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (*.f64 -1 (*.f64 (pow.f64 y 4) (+.f64 (/.f64 1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))) (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))))) (/.f64 (pow.f64 z 4) (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(-.f64 (+.f64 (fma.f64 (*.f64 y y) (-.f64 (*.f64 2 (/.f64 (*.f64 z z) (+.f64 (*.f64 z z) (*.f64 x x)))) (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (pow.f64 (+.f64 (*.f64 z z) (*.f64 x x)) 2))) (/.f64 (pow.f64 x 4) (+.f64 (*.f64 z z) (*.f64 x x)))) (*.f64 (neg.f64 (pow.f64 y 4)) (+.f64 (/.f64 1 (+.f64 (*.f64 z z) (*.f64 x x))) (neg.f64 (/.f64 (-.f64 (*.f64 2 (/.f64 (*.f64 z z) (+.f64 (*.f64 z z) (*.f64 x x)))) (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (pow.f64 (+.f64 (*.f64 z z) (*.f64 x x)) 2))) (+.f64 (*.f64 z z) (*.f64 x x))))))) (/.f64 (pow.f64 z 4) (+.f64 (*.f64 z z) (*.f64 x x))))
(fma.f64 (*.f64 y y) (fma.f64 2 (/.f64 (*.f64 z z) (fma.f64 z z (*.f64 x x))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2))) (+.f64 (*.f64 (pow.f64 y 4) (neg.f64 (-.f64 (/.f64 1 (fma.f64 z z (*.f64 x x))) (/.f64 (fma.f64 2 (/.f64 (*.f64 z z) (fma.f64 z z (*.f64 x x))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2))) (fma.f64 z z (*.f64 x x)))))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (fma.f64 z z (*.f64 x x)))))
(fma.f64 (*.f64 y y) (fma.f64 2 (/.f64 (*.f64 z z) (fma.f64 z z (*.f64 x x))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2))) (+.f64 (*.f64 (-.f64 (/.f64 1 (fma.f64 z z (*.f64 x x))) (+.f64 (/.f64 (*.f64 2 (*.f64 z z)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2)) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 3)))) (neg.f64 (pow.f64 y 4))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (fma.f64 z z (*.f64 x x)))))
(-.f64 (+.f64 (*.f64 (pow.f64 y 2) (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2))))) (+.f64 (/.f64 (pow.f64 x 4) (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 y 6) (+.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)) (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))))) (*.f64 -1 (*.f64 (pow.f64 y 4) (+.f64 (/.f64 1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))))))))) (/.f64 (pow.f64 z 4) (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(-.f64 (+.f64 (fma.f64 (*.f64 y y) (-.f64 (*.f64 2 (/.f64 (*.f64 z z) (+.f64 (*.f64 z z) (*.f64 x x)))) (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (pow.f64 (+.f64 (*.f64 z z) (*.f64 x x)) 2))) (/.f64 (pow.f64 x 4) (+.f64 (*.f64 z z) (*.f64 x x)))) (fma.f64 -1 (*.f64 (pow.f64 y 6) (+.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 z z) (*.f64 x x)) 2)) (neg.f64 (/.f64 (-.f64 (*.f64 2 (/.f64 (*.f64 z z) (+.f64 (*.f64 z z) (*.f64 x x)))) (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (pow.f64 (+.f64 (*.f64 z z) (*.f64 x x)) 2))) (pow.f64 (+.f64 (*.f64 z z) (*.f64 x x)) 2))))) (*.f64 (neg.f64 (pow.f64 y 4)) (+.f64 (/.f64 1 (+.f64 (*.f64 z z) (*.f64 x x))) (neg.f64 (/.f64 (-.f64 (*.f64 2 (/.f64 (*.f64 z z) (+.f64 (*.f64 z z) (*.f64 x x)))) (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (pow.f64 (+.f64 (*.f64 z z) (*.f64 x x)) 2))) (+.f64 (*.f64 z z) (*.f64 x x)))))))) (/.f64 (pow.f64 z 4) (+.f64 (*.f64 z z) (*.f64 x x))))
(fma.f64 (*.f64 y y) (fma.f64 2 (/.f64 (*.f64 z z) (fma.f64 z z (*.f64 x x))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2))) (+.f64 (neg.f64 (fma.f64 (pow.f64 y 6) (-.f64 (/.f64 1 (pow.f64 (fma.f64 z z (*.f64 x x)) 2)) (/.f64 (fma.f64 2 (/.f64 (*.f64 z z) (fma.f64 z z (*.f64 x x))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2))) (pow.f64 (fma.f64 z z (*.f64 x x)) 2))) (*.f64 (pow.f64 y 4) (-.f64 (/.f64 1 (fma.f64 z z (*.f64 x x))) (/.f64 (fma.f64 2 (/.f64 (*.f64 z z) (fma.f64 z z (*.f64 x x))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2))) (fma.f64 z z (*.f64 x x))))))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (fma.f64 z z (*.f64 x x)))))
(fma.f64 (*.f64 y y) (fma.f64 2 (/.f64 (*.f64 z z) (fma.f64 z z (*.f64 x x))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2))) (+.f64 (neg.f64 (fma.f64 (pow.f64 y 6) (-.f64 (/.f64 1 (pow.f64 (fma.f64 z z (*.f64 x x)) 2)) (+.f64 (/.f64 (*.f64 2 (*.f64 z z)) (pow.f64 (fma.f64 z z (*.f64 x x)) 3)) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 4)))) (*.f64 (pow.f64 y 4) (-.f64 (/.f64 1 (fma.f64 z z (*.f64 x x))) (+.f64 (/.f64 (*.f64 2 (*.f64 z z)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2)) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 3))))))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (fma.f64 z z (*.f64 x x)))))
(pow.f64 y 2)
(*.f64 y y)
(-.f64 (+.f64 (*.f64 -2 (pow.f64 z 2)) (pow.f64 y 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(-.f64 (fma.f64 -2 (*.f64 z z) (*.f64 y y)) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x))))
(fma.f64 (*.f64 z z) -2 (fma.f64 y y (fma.f64 z z (*.f64 x x))))
(+.f64 (*.f64 y y) (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x)))
(-.f64 (+.f64 (*.f64 -2 (pow.f64 z 2)) (+.f64 (pow.f64 y 2) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 y 2))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))) (pow.f64 y 2))) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))))
(-.f64 (+.f64 (fma.f64 -2 (*.f64 z z) (*.f64 y y)) (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 y y))) (*.f64 -1 (+.f64 (/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) (/.f64 (*.f64 y y) (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x)))))) (+.f64 (*.f64 z z) (*.f64 x x)))))
(+.f64 (-.f64 (fma.f64 (*.f64 z z) -2 (fma.f64 y y (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 y y)))) (*.f64 (neg.f64 (/.f64 (fma.f64 z z (*.f64 x x)) y)) (/.f64 (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))) y))) (fma.f64 z z (*.f64 x x)))
(+.f64 (+.f64 (fma.f64 (*.f64 z z) -2 (*.f64 y y)) (/.f64 (+.f64 (*.f64 (fma.f64 z z (*.f64 x x)) (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x))) (-.f64 (pow.f64 z 4) (pow.f64 x 4))) (*.f64 y y))) (fma.f64 z z (*.f64 x x)))
(-.f64 (+.f64 (*.f64 -2 (pow.f64 z 2)) (+.f64 (/.f64 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 -1 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))))))) (pow.f64 y 4)) (+.f64 (pow.f64 y 2) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 y 2)))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))) (pow.f64 y 2))) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))))
(-.f64 (fma.f64 -2 (*.f64 z z) (+.f64 (+.f64 (*.f64 y y) (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 y y))) (/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) (/.f64 (pow.f64 y 4) (*.f64 -1 (-.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 (+.f64 (*.f64 z z) (*.f64 x x)) (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x))))))))))) (*.f64 -1 (+.f64 (/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) (/.f64 (*.f64 y y) (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x)))))) (+.f64 (*.f64 z z) (*.f64 x x)))))
(+.f64 (fma.f64 (*.f64 z z) -2 (*.f64 (/.f64 (fma.f64 z z (*.f64 x x)) (pow.f64 y 4)) (fma.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 (fma.f64 z z (*.f64 x x)) (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))))))) (-.f64 (fma.f64 y y (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 y y))) (-.f64 (neg.f64 (fma.f64 z z (*.f64 x x))) (*.f64 (/.f64 (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))) y) (/.f64 (fma.f64 z z (*.f64 x x)) y)))))
(fma.f64 (*.f64 z z) -2 (+.f64 (fma.f64 y y (/.f64 (-.f64 (pow.f64 z 4) (pow.f64 x 4)) (*.f64 y y))) (fma.f64 (/.f64 (fma.f64 z z (*.f64 x x)) (pow.f64 y 4)) (+.f64 (*.f64 (fma.f64 z z (*.f64 x x)) (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x))) (-.f64 (pow.f64 z 4) (pow.f64 x 4))) (+.f64 (fma.f64 z z (*.f64 x x)) (*.f64 (/.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y)) (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x)))))))
(pow.f64 y 2)
(*.f64 y y)
(-.f64 (+.f64 (*.f64 -2 (pow.f64 z 2)) (pow.f64 y 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))
(-.f64 (fma.f64 -2 (*.f64 z z) (*.f64 y y)) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x))))
(fma.f64 (*.f64 z z) -2 (fma.f64 y y (fma.f64 z z (*.f64 x x))))
(+.f64 (*.f64 y y) (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x)))
(-.f64 (+.f64 (*.f64 -2 (pow.f64 z 2)) (+.f64 (pow.f64 y 2) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 y 2))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))) (pow.f64 y 2))) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))))
(-.f64 (+.f64 (fma.f64 -2 (*.f64 z z) (*.f64 y y)) (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 y y))) (*.f64 -1 (+.f64 (/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) (/.f64 (*.f64 y y) (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x)))))) (+.f64 (*.f64 z z) (*.f64 x x)))))
(+.f64 (-.f64 (fma.f64 (*.f64 z z) -2 (fma.f64 y y (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 y y)))) (*.f64 (neg.f64 (/.f64 (fma.f64 z z (*.f64 x x)) y)) (/.f64 (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))) y))) (fma.f64 z z (*.f64 x x)))
(+.f64 (+.f64 (fma.f64 (*.f64 z z) -2 (*.f64 y y)) (/.f64 (+.f64 (*.f64 (fma.f64 z z (*.f64 x x)) (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x))) (-.f64 (pow.f64 z 4) (pow.f64 x 4))) (*.f64 y y))) (fma.f64 z z (*.f64 x x)))
(-.f64 (+.f64 (*.f64 -2 (pow.f64 z 2)) (+.f64 (/.f64 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 -1 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))))))) (pow.f64 y 4)) (+.f64 (pow.f64 y 2) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 y 2)))))) (+.f64 (*.f64 -1 (/.f64 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))) (pow.f64 y 2))) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))))
(-.f64 (fma.f64 -2 (*.f64 z z) (+.f64 (+.f64 (*.f64 y y) (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 y y))) (/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) (/.f64 (pow.f64 y 4) (*.f64 -1 (-.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 (+.f64 (*.f64 z z) (*.f64 x x)) (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x))))))))))) (*.f64 -1 (+.f64 (/.f64 (+.f64 (*.f64 z z) (*.f64 x x)) (/.f64 (*.f64 y y) (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x)))))) (+.f64 (*.f64 z z) (*.f64 x x)))))
(+.f64 (fma.f64 (*.f64 z z) -2 (*.f64 (/.f64 (fma.f64 z z (*.f64 x x)) (pow.f64 y 4)) (fma.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 (fma.f64 z z (*.f64 x x)) (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))))))) (-.f64 (fma.f64 y y (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 y y))) (-.f64 (neg.f64 (fma.f64 z z (*.f64 x x))) (*.f64 (/.f64 (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))) y) (/.f64 (fma.f64 z z (*.f64 x x)) y)))))
(fma.f64 (*.f64 z z) -2 (+.f64 (fma.f64 y y (/.f64 (-.f64 (pow.f64 z 4) (pow.f64 x 4)) (*.f64 y y))) (fma.f64 (/.f64 (fma.f64 z z (*.f64 x x)) (pow.f64 y 4)) (+.f64 (*.f64 (fma.f64 z z (*.f64 x x)) (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x))) (-.f64 (pow.f64 z 4) (pow.f64 x 4))) (+.f64 (fma.f64 z z (*.f64 x x)) (*.f64 (/.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y)) (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x)))))))
(/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (-.f64 (pow.f64 x 2) (pow.f64 y 2)))
(/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (-.f64 (*.f64 x x) (*.f64 y y)))
(/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (fma.f64 x x (*.f64 y (neg.f64 y))))
(-.f64 (+.f64 (*.f64 (pow.f64 z 2) (-.f64 (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)) (*.f64 2 (/.f64 (pow.f64 y 2) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)))) (/.f64 (pow.f64 x 4) (-.f64 (pow.f64 x 2) (pow.f64 y 2)))) (/.f64 (pow.f64 y 4) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))
(+.f64 (*.f64 (*.f64 z z) (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)) (-.f64 (/.f64 (*.f64 2 (*.f64 y y)) (-.f64 (*.f64 x x) (*.f64 y y))) (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2))))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (-.f64 (*.f64 x x) (*.f64 y y))))
(fma.f64 (*.f64 z z) (-.f64 (fma.f64 2 (/.f64 y (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) y)) (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2))) (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (-.f64 (*.f64 x x) (*.f64 y y))))
(fma.f64 (*.f64 z z) (-.f64 (*.f64 (/.f64 y (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) (+.f64 (/.f64 y (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) 2)) (/.f64 (pow.f64 x 4) (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 2))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (fma.f64 x x (*.f64 y (neg.f64 y)))))
(-.f64 (+.f64 (*.f64 (pow.f64 z 2) (-.f64 (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)) (*.f64 2 (/.f64 (pow.f64 y 2) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)))) (+.f64 (*.f64 (-.f64 (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3)) (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3)) (+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2))) (/.f64 1 (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))) (pow.f64 z 4)) (/.f64 (pow.f64 x 4) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (/.f64 (pow.f64 y 4) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))
(-.f64 (fma.f64 (*.f64 z z) (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)) (-.f64 (/.f64 (*.f64 2 (*.f64 y y)) (-.f64 (*.f64 x x) (*.f64 y y))) (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)))) (fma.f64 (-.f64 (-.f64 (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3)) (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3))) (fma.f64 2 (/.f64 (*.f64 y y) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)) (/.f64 1 (-.f64 (*.f64 x x) (*.f64 y y))))) (pow.f64 z 4) (/.f64 (pow.f64 x 4) (-.f64 (*.f64 x x) (*.f64 y y))))) (/.f64 (pow.f64 y 4) (-.f64 (*.f64 x x) (*.f64 y y))))
(+.f64 (fma.f64 (*.f64 z z) (-.f64 (fma.f64 2 (/.f64 y (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) y)) (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2))) (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2))) (*.f64 (pow.f64 z 4) (-.f64 (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3)) (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3)) (fma.f64 2 (/.f64 (*.f64 y y) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)) (/.f64 1 (-.f64 (*.f64 x x) (*.f64 y y)))))))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (-.f64 (*.f64 x x) (*.f64 y y))))
(+.f64 (fma.f64 (*.f64 z z) (-.f64 (*.f64 (/.f64 y (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) (+.f64 (/.f64 y (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) 2)) (/.f64 (pow.f64 x 4) (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 2))) (*.f64 (pow.f64 z 4) (+.f64 (-.f64 (/.f64 (pow.f64 x 4) (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 3)) (*.f64 (/.f64 (*.f64 y y) (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 2)) (+.f64 (/.f64 y (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) 2))) (/.f64 -1 (fma.f64 x x (*.f64 y (neg.f64 y))))))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (fma.f64 x x (*.f64 y (neg.f64 y)))))
(-.f64 (+.f64 (*.f64 (pow.f64 z 2) (-.f64 (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)) (*.f64 2 (/.f64 (pow.f64 y 2) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)))) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3))) (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 4)) (/.f64 1 (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)))) (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 4))) (pow.f64 z 6)) (+.f64 (*.f64 (-.f64 (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3)) (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3)) (+.f64 (*.f64 2 (/.f64 (pow.f64 y 2) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2))) (/.f64 1 (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))) (pow.f64 z 4)) (/.f64 (pow.f64 x 4) (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))) (/.f64 (pow.f64 y 4) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))
(-.f64 (fma.f64 (*.f64 z z) (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)) (-.f64 (/.f64 (*.f64 2 (*.f64 y y)) (-.f64 (*.f64 x x) (*.f64 y y))) (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)))) (fma.f64 (-.f64 (fma.f64 2 (/.f64 (*.f64 y y) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3)) (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 4)) (/.f64 1 (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)))) (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 4))) (pow.f64 z 6) (fma.f64 (-.f64 (-.f64 (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3)) (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3))) (fma.f64 2 (/.f64 (*.f64 y y) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)) (/.f64 1 (-.f64 (*.f64 x x) (*.f64 y y))))) (pow.f64 z 4) (/.f64 (pow.f64 x 4) (-.f64 (*.f64 x x) (*.f64 y y)))))) (/.f64 (pow.f64 y 4) (-.f64 (*.f64 x x) (*.f64 y y))))
(fma.f64 (*.f64 z z) (-.f64 (fma.f64 2 (/.f64 y (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) y)) (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2))) (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2))) (+.f64 (fma.f64 (+.f64 (fma.f64 2 (/.f64 (*.f64 y y) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3)) (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 4))) (-.f64 (/.f64 1 (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)) (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 4)))) (pow.f64 z 6) (*.f64 (pow.f64 z 4) (-.f64 (/.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3)) (+.f64 (/.f64 (pow.f64 y 4) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3)) (fma.f64 2 (/.f64 (*.f64 y y) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)) (/.f64 1 (-.f64 (*.f64 x x) (*.f64 y y)))))))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (-.f64 (*.f64 x x) (*.f64 y y)))))
(fma.f64 (*.f64 z z) (-.f64 (*.f64 (/.f64 y (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) (+.f64 (/.f64 y (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) 2)) (/.f64 (pow.f64 x 4) (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 2))) (+.f64 (fma.f64 (+.f64 (fma.f64 2 (/.f64 y (/.f64 (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 3) y)) (/.f64 (pow.f64 y 4) (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 4))) (-.f64 (/.f64 1 (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 2)) (/.f64 (pow.f64 x 4) (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 4)))) (pow.f64 z 6) (*.f64 (pow.f64 z 4) (+.f64 (-.f64 (/.f64 (pow.f64 x 4) (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 3)) (*.f64 (/.f64 (*.f64 y y) (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 2)) (+.f64 (/.f64 y (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) 2))) (/.f64 -1 (fma.f64 x x (*.f64 y (neg.f64 y))))))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (fma.f64 x x (*.f64 y (neg.f64 y))))))
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(-.f64 (+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 z 2))) (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2))))
(-.f64 (fma.f64 2 (*.f64 y y) (neg.f64 (*.f64 z z))) (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y))))
(fma.f64 2 (*.f64 y y) (fma.f64 -1 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))
(fma.f64 2 (*.f64 y y) (fma.f64 z (neg.f64 z) (fma.f64 x x (*.f64 y (neg.f64 y)))))
(-.f64 (+.f64 (*.f64 2 (pow.f64 y 2)) (+.f64 (/.f64 (pow.f64 x 4) (pow.f64 z 2)) (*.f64 -1 (pow.f64 z 2)))) (+.f64 (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2))) (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2)))) (-.f64 (pow.f64 x 2) (pow.f64 y 2))) (pow.f64 z 2)) (/.f64 (pow.f64 y 4) (pow.f64 z 2)))))
(-.f64 (fma.f64 2 (*.f64 y y) (+.f64 (neg.f64 (*.f64 z z)) (/.f64 (pow.f64 x 4) (*.f64 z z)))) (fma.f64 -1 (-.f64 (*.f64 x x) (*.f64 y y)) (+.f64 (/.f64 (-.f64 (*.f64 2 (*.f64 y y)) (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (/.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (/.f64 (pow.f64 y 4) (*.f64 z z)))))
(-.f64 (-.f64 (+.f64 (-.f64 (fma.f64 2 (*.f64 y y) (/.f64 (pow.f64 x 4) (*.f64 z z))) (*.f64 z z)) (-.f64 (*.f64 x x) (*.f64 y y))) (/.f64 (pow.f64 y 4) (*.f64 z z))) (*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) z) (/.f64 (fma.f64 2 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 y y))) z)))
(-.f64 (-.f64 (fma.f64 2 (*.f64 y y) (/.f64 (pow.f64 x 4) (*.f64 z z))) (*.f64 z z)) (+.f64 (/.f64 (pow.f64 y 4) (*.f64 z z)) (*.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) (+.f64 -1 (/.f64 (fma.f64 y (*.f64 y 2) (fma.f64 x x (*.f64 y (neg.f64 y)))) (*.f64 z z))))))
(-.f64 (+.f64 (*.f64 2 (pow.f64 y 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) (-.f64 (pow.f64 x 4) (+.f64 (pow.f64 y 4) (*.f64 (-.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2)))) (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))) (pow.f64 z 4))) (+.f64 (/.f64 (pow.f64 x 4) (pow.f64 z 2)) (*.f64 -1 (pow.f64 z 2))))) (+.f64 (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2))) (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2)))) (-.f64 (pow.f64 x 2) (pow.f64 y 2))) (pow.f64 z 2)) (/.f64 (pow.f64 y 4) (pow.f64 z 2)))))
(-.f64 (fma.f64 2 (*.f64 y y) (fma.f64 -1 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (pow.f64 z 4) (-.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 (*.f64 2 (*.f64 y y)) (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y)))))))) (+.f64 (neg.f64 (*.f64 z z)) (/.f64 (pow.f64 x 4) (*.f64 z z))))) (fma.f64 -1 (-.f64 (*.f64 x x) (*.f64 y y)) (+.f64 (/.f64 (-.f64 (*.f64 2 (*.f64 y y)) (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (/.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (/.f64 (pow.f64 y 4) (*.f64 z z)))))
(-.f64 (fma.f64 2 (*.f64 y y) (-.f64 (-.f64 (/.f64 (pow.f64 x 4) (*.f64 z z)) (*.f64 z z)) (*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (pow.f64 z 4)) (-.f64 (pow.f64 x 4) (fma.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (fma.f64 2 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 y y))) (pow.f64 y 4)))))) (-.f64 (+.f64 (*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) z) (/.f64 (fma.f64 2 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 y y))) z)) (/.f64 (pow.f64 y 4) (*.f64 z z))) (-.f64 (*.f64 x x) (*.f64 y y))))
(fma.f64 2 (*.f64 y y) (-.f64 (-.f64 (-.f64 (-.f64 (/.f64 (pow.f64 x 4) (*.f64 z z)) (*.f64 z z)) (*.f64 (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) (pow.f64 z 4)) (-.f64 (pow.f64 x 4) (fma.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) (fma.f64 y (*.f64 y 2) (fma.f64 x x (*.f64 y (neg.f64 y)))) (pow.f64 y 4))))) (*.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) (+.f64 -1 (/.f64 (fma.f64 y (*.f64 y 2) (fma.f64 x x (*.f64 y (neg.f64 y)))) (*.f64 z z))))) (/.f64 (pow.f64 y 4) (*.f64 z z))))
(*.f64 -1 (pow.f64 z 2))
(neg.f64 (*.f64 z z))
(*.f64 z (neg.f64 z))
(-.f64 (+.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (pow.f64 z 2))) (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2))))
(-.f64 (fma.f64 2 (*.f64 y y) (neg.f64 (*.f64 z z))) (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y))))
(fma.f64 2 (*.f64 y y) (fma.f64 -1 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))))
(fma.f64 2 (*.f64 y y) (fma.f64 z (neg.f64 z) (fma.f64 x x (*.f64 y (neg.f64 y)))))
(-.f64 (+.f64 (*.f64 2 (pow.f64 y 2)) (+.f64 (/.f64 (pow.f64 x 4) (pow.f64 z 2)) (*.f64 -1 (pow.f64 z 2)))) (+.f64 (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2))) (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2)))) (-.f64 (pow.f64 x 2) (pow.f64 y 2))) (pow.f64 z 2)) (/.f64 (pow.f64 y 4) (pow.f64 z 2)))))
(-.f64 (fma.f64 2 (*.f64 y y) (+.f64 (neg.f64 (*.f64 z z)) (/.f64 (pow.f64 x 4) (*.f64 z z)))) (fma.f64 -1 (-.f64 (*.f64 x x) (*.f64 y y)) (+.f64 (/.f64 (-.f64 (*.f64 2 (*.f64 y y)) (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (/.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (/.f64 (pow.f64 y 4) (*.f64 z z)))))
(-.f64 (-.f64 (+.f64 (-.f64 (fma.f64 2 (*.f64 y y) (/.f64 (pow.f64 x 4) (*.f64 z z))) (*.f64 z z)) (-.f64 (*.f64 x x) (*.f64 y y))) (/.f64 (pow.f64 y 4) (*.f64 z z))) (*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) z) (/.f64 (fma.f64 2 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 y y))) z)))
(-.f64 (-.f64 (fma.f64 2 (*.f64 y y) (/.f64 (pow.f64 x 4) (*.f64 z z))) (*.f64 z z)) (+.f64 (/.f64 (pow.f64 y 4) (*.f64 z z)) (*.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) (+.f64 -1 (/.f64 (fma.f64 y (*.f64 y 2) (fma.f64 x x (*.f64 y (neg.f64 y)))) (*.f64 z z))))))
(-.f64 (+.f64 (*.f64 2 (pow.f64 y 2)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) (-.f64 (pow.f64 x 4) (+.f64 (pow.f64 y 4) (*.f64 (-.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2)))) (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))) (pow.f64 z 4))) (+.f64 (/.f64 (pow.f64 x 4) (pow.f64 z 2)) (*.f64 -1 (pow.f64 z 2))))) (+.f64 (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2))) (+.f64 (/.f64 (*.f64 (-.f64 (*.f64 2 (pow.f64 y 2)) (*.f64 -1 (-.f64 (pow.f64 x 2) (pow.f64 y 2)))) (-.f64 (pow.f64 x 2) (pow.f64 y 2))) (pow.f64 z 2)) (/.f64 (pow.f64 y 4) (pow.f64 z 2)))))
(-.f64 (fma.f64 2 (*.f64 y y) (fma.f64 -1 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (pow.f64 z 4) (-.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 (*.f64 2 (*.f64 y y)) (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y)))))))) (+.f64 (neg.f64 (*.f64 z z)) (/.f64 (pow.f64 x 4) (*.f64 z z))))) (fma.f64 -1 (-.f64 (*.f64 x x) (*.f64 y y)) (+.f64 (/.f64 (-.f64 (*.f64 2 (*.f64 y y)) (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (/.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (/.f64 (pow.f64 y 4) (*.f64 z z)))))
(-.f64 (fma.f64 2 (*.f64 y y) (-.f64 (-.f64 (/.f64 (pow.f64 x 4) (*.f64 z z)) (*.f64 z z)) (*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (pow.f64 z 4)) (-.f64 (pow.f64 x 4) (fma.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (fma.f64 2 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 y y))) (pow.f64 y 4)))))) (-.f64 (+.f64 (*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) z) (/.f64 (fma.f64 2 (*.f64 y y) (-.f64 (*.f64 x x) (*.f64 y y))) z)) (/.f64 (pow.f64 y 4) (*.f64 z z))) (-.f64 (*.f64 x x) (*.f64 y y))))
(fma.f64 2 (*.f64 y y) (-.f64 (-.f64 (-.f64 (-.f64 (/.f64 (pow.f64 x 4) (*.f64 z z)) (*.f64 z z)) (*.f64 (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) (pow.f64 z 4)) (-.f64 (pow.f64 x 4) (fma.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) (fma.f64 y (*.f64 y 2) (fma.f64 x x (*.f64 y (neg.f64 y)))) (pow.f64 y 4))))) (*.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) (+.f64 -1 (/.f64 (fma.f64 y (*.f64 y 2) (fma.f64 x x (*.f64 y (neg.f64 y)))) (*.f64 z z))))) (/.f64 (pow.f64 y 4) (*.f64 z z))))
(*.f64 -1/2 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) y)))
(/.f64 (*.f64 -1/2 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (*.f64 y (-.f64 (*.f64 z z) (*.f64 y y))))
(/.f64 (*.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) -1/2) (*.f64 y (-.f64 (*.f64 z z) (*.f64 y y))))
(/.f64 (*.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) -1/2) (*.f64 y (fma.f64 z z (*.f64 y (neg.f64 y)))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2)) (*.f64 (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) y))))
(fma.f64 1/2 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 2)) (/.f64 (*.f64 x x) y)) (/.f64 (*.f64 -1/2 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (*.f64 y (-.f64 (*.f64 z z) (*.f64 y y)))))
(fma.f64 -1/2 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 y (-.f64 (*.f64 z z) (*.f64 y y)))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 x x) y) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 2)))))
(fma.f64 -1/2 (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (*.f64 y (fma.f64 z z (*.f64 y (neg.f64 y))))) (/.f64 (*.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) 1/2) (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (/.f64 (*.f64 x x) y))))
(+.f64 (*.f64 1/2 (*.f64 (-.f64 (/.f64 1 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) y)) (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (*.f64 (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 3) y))) (pow.f64 x 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2)) (*.f64 (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) y)))))
(fma.f64 1/2 (*.f64 (pow.f64 x 4) (-.f64 (/.f64 1 (*.f64 y (-.f64 (*.f64 z z) (*.f64 y y)))) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 y (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 3))))) (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 2)) (/.f64 (*.f64 x x) y)) (/.f64 (*.f64 -1/2 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (*.f64 y (-.f64 (*.f64 z z) (*.f64 y y))))))
(fma.f64 1/2 (*.f64 (pow.f64 x 4) (-.f64 (/.f64 1 (*.f64 y (-.f64 (*.f64 z z) (*.f64 y y)))) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 y (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 3))))) (fma.f64 -1/2 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 y (-.f64 (*.f64 z z) (*.f64 y y)))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 x x) y) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 2))))))
(fma.f64 1/2 (*.f64 (pow.f64 x 4) (-.f64 (/.f64 1 (*.f64 y (fma.f64 z z (*.f64 y (neg.f64 y))))) (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (*.f64 y (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 3))))) (fma.f64 -1/2 (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (*.f64 y (fma.f64 z z (*.f64 y (neg.f64 y))))) (/.f64 (*.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) 1/2) (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (/.f64 (*.f64 x x) y)))))
(+.f64 (*.f64 1/2 (*.f64 (-.f64 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (*.f64 (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 4) y)) (/.f64 1 (*.f64 (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 2) y))) (pow.f64 x 6))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (/.f64 1 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) y)) (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (*.f64 (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 3) y))) (pow.f64 x 4))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 2)) (*.f64 (pow.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) 2) y))) (*.f64 -1/2 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) y))))))
(fma.f64 1/2 (*.f64 (pow.f64 x 6) (-.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 y (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 4))) (/.f64 1 (*.f64 y (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 2))))) (fma.f64 1/2 (*.f64 (pow.f64 x 4) (-.f64 (/.f64 1 (*.f64 y (-.f64 (*.f64 z z) (*.f64 y y)))) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 y (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 3))))) (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 2)) (/.f64 (*.f64 x x) y)) (/.f64 (*.f64 -1/2 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) (*.f64 y (-.f64 (*.f64 z z) (*.f64 y y)))))))
(fma.f64 1/2 (*.f64 (pow.f64 x 6) (+.f64 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 y (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 4))) (/.f64 (/.f64 -1 (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 2)) y))) (fma.f64 1/2 (*.f64 (pow.f64 x 4) (-.f64 (/.f64 1 (*.f64 y (-.f64 (*.f64 z z) (*.f64 y y)))) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 y (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 3))))) (fma.f64 -1/2 (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (*.f64 y (-.f64 (*.f64 z z) (*.f64 y y)))) (*.f64 1/2 (*.f64 (/.f64 (*.f64 x x) y) (/.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2) (pow.f64 (-.f64 (*.f64 z z) (*.f64 y y)) 2)))))))
(fma.f64 1/2 (*.f64 (pow.f64 x 6) (+.f64 (/.f64 (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) y) (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 4)) (/.f64 -1 (*.f64 y (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2))))) (fma.f64 1/2 (*.f64 (pow.f64 x 4) (-.f64 (/.f64 1 (*.f64 y (fma.f64 z z (*.f64 y (neg.f64 y))))) (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (*.f64 y (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 3))))) (fma.f64 -1/2 (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (*.f64 y (fma.f64 z z (*.f64 y (neg.f64 y))))) (/.f64 (*.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) 1/2) (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) (/.f64 (*.f64 x x) y))))))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (+.f64 (-.f64 y (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (*.f64 x x) y) (-.f64 y (/.f64 z (/.f64 y z)))))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) y)) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 y (/.f64 (pow.f64 z 2) y)))) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 1/2 (-.f64 y (/.f64 (*.f64 z z) y)) (*.f64 1/2 (+.f64 (/.f64 (-.f64 (/.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) y) (*.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (-.f64 y (/.f64 (*.f64 z z) y)))) (*.f64 x x)) (/.f64 (*.f64 x x) y))))
(*.f64 1/2 (+.f64 (-.f64 y (/.f64 z (/.f64 y z))) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 (-.f64 (/.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) y) (*.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (-.f64 y (/.f64 z (/.f64 y z))))) (*.f64 x x)))))
(*.f64 1/2 (+.f64 (-.f64 y (/.f64 z (/.f64 y z))) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 (-.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 y (/.f64 z (/.f64 y z)))) (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) y)) (*.f64 x x)))))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) y)) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 y (/.f64 (pow.f64 z 2) y))))) (pow.f64 x 4))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) y)) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 y (/.f64 (pow.f64 z 2) y)))) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))))
(fma.f64 1/2 (-.f64 y (/.f64 (*.f64 z z) y)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (/.f64 (pow.f64 x 4) (-.f64 (/.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) y) (*.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (-.f64 y (/.f64 (*.f64 z z) y)))))) (*.f64 1/2 (+.f64 (/.f64 (-.f64 (/.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) y) (*.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (-.f64 y (/.f64 (*.f64 z z) y)))) (*.f64 x x)) (/.f64 (*.f64 x x) y)))))
(fma.f64 1/2 (-.f64 y (/.f64 z (/.f64 y z))) (fma.f64 -1/2 (*.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (pow.f64 x 4)) (-.f64 (/.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) y) (*.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (-.f64 y (/.f64 z (/.f64 y z)))))) (*.f64 1/2 (+.f64 (/.f64 (*.f64 x x) y) (/.f64 (-.f64 (/.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) y) (*.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (-.f64 y (/.f64 z (/.f64 y z))))) (*.f64 x x))))))
(fma.f64 1/2 (-.f64 y (/.f64 z (/.f64 y z))) (fma.f64 -1/2 (*.f64 (/.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) (pow.f64 x 4)) (-.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 y (/.f64 z (/.f64 y z)))) (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) y))) (*.f64 1/2 (+.f64 (/.f64 (*.f64 x x) y) (/.f64 (-.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 y (/.f64 z (/.f64 y z)))) (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) y)) (*.f64 x x))))))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(*.f64 1/2 (/.f64 (*.f64 x x) y))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))
(*.f64 1/2 (+.f64 (-.f64 y (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)))
(*.f64 1/2 (+.f64 (/.f64 (*.f64 x x) y) (-.f64 y (/.f64 z (/.f64 y z)))))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) y)) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 y (/.f64 (pow.f64 z 2) y)))) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y))))
(fma.f64 1/2 (-.f64 y (/.f64 (*.f64 z z) y)) (*.f64 1/2 (+.f64 (/.f64 (-.f64 (/.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) y) (*.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (-.f64 y (/.f64 (*.f64 z z) y)))) (*.f64 x x)) (/.f64 (*.f64 x x) y))))
(*.f64 1/2 (+.f64 (-.f64 y (/.f64 z (/.f64 y z))) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 (-.f64 (/.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) y) (*.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (-.f64 y (/.f64 z (/.f64 y z))))) (*.f64 x x)))))
(*.f64 1/2 (+.f64 (-.f64 y (/.f64 z (/.f64 y z))) (+.f64 (/.f64 (*.f64 x x) y) (/.f64 (-.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 y (/.f64 z (/.f64 y z)))) (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) y)) (*.f64 x x)))))
(+.f64 (*.f64 1/2 (-.f64 y (/.f64 (pow.f64 z 2) y))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) y)) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 y (/.f64 (pow.f64 z 2) y))))) (pow.f64 x 4))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (/.f64 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) y)) (*.f64 (-.f64 (pow.f64 z 2) (pow.f64 y 2)) (-.f64 y (/.f64 (pow.f64 z 2) y)))) (pow.f64 x 2))) (*.f64 1/2 (/.f64 (pow.f64 x 2) y)))))
(fma.f64 1/2 (-.f64 y (/.f64 (*.f64 z z) y)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (/.f64 (pow.f64 x 4) (-.f64 (/.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) y) (*.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (-.f64 y (/.f64 (*.f64 z z) y)))))) (*.f64 1/2 (+.f64 (/.f64 (-.f64 (/.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) y) (*.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (-.f64 y (/.f64 (*.f64 z z) y)))) (*.f64 x x)) (/.f64 (*.f64 x x) y)))))
(fma.f64 1/2 (-.f64 y (/.f64 z (/.f64 y z))) (fma.f64 -1/2 (*.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (pow.f64 x 4)) (-.f64 (/.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) y) (*.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (-.f64 y (/.f64 z (/.f64 y z)))))) (*.f64 1/2 (+.f64 (/.f64 (*.f64 x x) y) (/.f64 (-.f64 (/.f64 (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)) y) (*.f64 (-.f64 (*.f64 z z) (*.f64 y y)) (-.f64 y (/.f64 z (/.f64 y z))))) (*.f64 x x))))))
(fma.f64 1/2 (-.f64 y (/.f64 z (/.f64 y z))) (fma.f64 -1/2 (*.f64 (/.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) (pow.f64 x 4)) (-.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 y (/.f64 z (/.f64 y z)))) (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) y))) (*.f64 1/2 (+.f64 (/.f64 (*.f64 x x) y) (/.f64 (-.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 y (/.f64 z (/.f64 y z)))) (/.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2) y)) (*.f64 x x))))))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 y (+.f64 (pow.f64 z 2) (pow.f64 x 2)))))
(*.f64 1/2 (/.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) y) (+.f64 (*.f64 z z) (*.f64 x x))))
(*.f64 (/.f64 1/2 y) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (fma.f64 z z (*.f64 x x))))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 y (+.f64 (pow.f64 z 2) (pow.f64 x 2))))) (*.f64 1/2 (*.f64 y (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))))))
(*.f64 1/2 (+.f64 (/.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) y) (+.f64 (*.f64 z z) (*.f64 x x))) (*.f64 y (-.f64 (*.f64 2 (/.f64 (*.f64 z z) (+.f64 (*.f64 z z) (*.f64 x x)))) (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (pow.f64 (+.f64 (*.f64 z z) (*.f64 x x)) 2))))))
(*.f64 1/2 (+.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 y (fma.f64 z z (*.f64 x x)))) (*.f64 y (fma.f64 2 (/.f64 (*.f64 z z) (fma.f64 z z (*.f64 x x))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2))))))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 y (+.f64 (pow.f64 z 2) (pow.f64 x 2))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 3) (+.f64 (/.f64 1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))) (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))) (*.f64 1/2 (*.f64 y (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2))))))))
(fma.f64 1/2 (/.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) y) (+.f64 (*.f64 z z) (*.f64 x x))) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1 (+.f64 (*.f64 z z) (*.f64 x x))) (neg.f64 (/.f64 (-.f64 (*.f64 2 (/.f64 (*.f64 z z) (+.f64 (*.f64 z z) (*.f64 x x)))) (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (pow.f64 (+.f64 (*.f64 z z) (*.f64 x x)) 2))) (+.f64 (*.f64 z z) (*.f64 x x))))) (pow.f64 y 3)) (*.f64 1/2 (*.f64 y (-.f64 (*.f64 2 (/.f64 (*.f64 z z) (+.f64 (*.f64 z z) (*.f64 x x)))) (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (pow.f64 (+.f64 (*.f64 z z) (*.f64 x x)) 2)))))))
(fma.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 y (fma.f64 z z (*.f64 x x)))) (fma.f64 1/2 (*.f64 y (fma.f64 2 (/.f64 (*.f64 z z) (fma.f64 z z (*.f64 x x))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2)))) (*.f64 (-.f64 (/.f64 1 (fma.f64 z z (*.f64 x x))) (/.f64 (fma.f64 2 (/.f64 (*.f64 z z) (fma.f64 z z (*.f64 x x))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2))) (fma.f64 z z (*.f64 x x)))) (*.f64 -1/2 (pow.f64 y 3)))))
(fma.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 y (fma.f64 z z (*.f64 x x)))) (fma.f64 -1/2 (*.f64 (-.f64 (/.f64 1 (fma.f64 z z (*.f64 x x))) (+.f64 (/.f64 (*.f64 2 (*.f64 z z)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2)) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 3)))) (pow.f64 y 3)) (*.f64 (fma.f64 2 (/.f64 (*.f64 z z) (fma.f64 z z (*.f64 x x))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2))) (*.f64 y 1/2))))
(+.f64 (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 y (+.f64 (pow.f64 z 2) (pow.f64 x 2))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 y 3) (+.f64 (/.f64 1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))) (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))) (+.f64 (*.f64 1/2 (*.f64 y (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))))) (*.f64 -1/2 (*.f64 (pow.f64 y 5) (+.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)) (*.f64 -1 (/.f64 (-.f64 (*.f64 2 (/.f64 (pow.f64 z 2) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))) (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2)))))))))
(fma.f64 1/2 (/.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) y) (+.f64 (*.f64 z z) (*.f64 x x))) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1 (+.f64 (*.f64 z z) (*.f64 x x))) (neg.f64 (/.f64 (-.f64 (*.f64 2 (/.f64 (*.f64 z z) (+.f64 (*.f64 z z) (*.f64 x x)))) (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (pow.f64 (+.f64 (*.f64 z z) (*.f64 x x)) 2))) (+.f64 (*.f64 z z) (*.f64 x x))))) (pow.f64 y 3)) (fma.f64 1/2 (*.f64 y (-.f64 (*.f64 2 (/.f64 (*.f64 z z) (+.f64 (*.f64 z z) (*.f64 x x)))) (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (pow.f64 (+.f64 (*.f64 z z) (*.f64 x x)) 2)))) (*.f64 (*.f64 -1/2 (pow.f64 y 5)) (+.f64 (/.f64 1 (pow.f64 (+.f64 (*.f64 z z) (*.f64 x x)) 2)) (neg.f64 (/.f64 (-.f64 (*.f64 2 (/.f64 (*.f64 z z) (+.f64 (*.f64 z z) (*.f64 x x)))) (/.f64 (neg.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (pow.f64 (+.f64 (*.f64 z z) (*.f64 x x)) 2))) (pow.f64 (+.f64 (*.f64 z z) (*.f64 x x)) 2))))))))
(fma.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 y (fma.f64 z z (*.f64 x x)))) (fma.f64 (*.f64 -1/2 (pow.f64 y 3)) (-.f64 (/.f64 1 (fma.f64 z z (*.f64 x x))) (/.f64 (fma.f64 2 (/.f64 (*.f64 z z) (fma.f64 z z (*.f64 x x))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2))) (fma.f64 z z (*.f64 x x)))) (fma.f64 (*.f64 -1/2 (pow.f64 y 5)) (-.f64 (/.f64 1 (pow.f64 (fma.f64 z z (*.f64 x x)) 2)) (/.f64 (fma.f64 2 (/.f64 (*.f64 z z) (fma.f64 z z (*.f64 x x))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2))) (pow.f64 (fma.f64 z z (*.f64 x x)) 2))) (*.f64 y (*.f64 (fma.f64 2 (/.f64 (*.f64 z z) (fma.f64 z z (*.f64 x x))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2))) 1/2)))))
(fma.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 y (fma.f64 z z (*.f64 x x)))) (fma.f64 -1/2 (*.f64 (-.f64 (/.f64 1 (fma.f64 z z (*.f64 x x))) (+.f64 (/.f64 (*.f64 2 (*.f64 z z)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2)) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 3)))) (pow.f64 y 3)) (fma.f64 -1/2 (*.f64 (-.f64 (/.f64 1 (pow.f64 (fma.f64 z z (*.f64 x x)) 2)) (+.f64 (/.f64 (*.f64 2 (*.f64 z z)) (pow.f64 (fma.f64 z z (*.f64 x x)) 3)) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 4)))) (pow.f64 y 5)) (*.f64 (fma.f64 2 (/.f64 (*.f64 z z) (fma.f64 z z (*.f64 x x))) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (pow.f64 (fma.f64 z z (*.f64 x x)) 2))) (*.f64 y 1/2)))))
(*.f64 1/2 y)
(*.f64 y 1/2)
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) y)))
(*.f64 1/2 (+.f64 y (/.f64 (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x)))) y)))
(*.f64 1/2 (+.f64 y (/.f64 (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))) y)))
(*.f64 1/2 (+.f64 y (/.f64 (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x)) y)))
(+.f64 (*.f64 1/2 y) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) y)) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 -1 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))) (pow.f64 y 3)))))
(fma.f64 1/2 y (*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x)))) y) (/.f64 (*.f64 -1 (-.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 (+.f64 (*.f64 z z) (*.f64 x x)) (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x))))))) (pow.f64 y 3)))))
(*.f64 1/2 (+.f64 (+.f64 y (/.f64 (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))) y)) (/.f64 (fma.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 (fma.f64 z z (*.f64 x x)) (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))))) (pow.f64 y 3))))
(*.f64 1/2 (+.f64 (+.f64 y (/.f64 (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x)) y)) (/.f64 (+.f64 (*.f64 (fma.f64 z z (*.f64 x x)) (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x))) (-.f64 (pow.f64 z 4) (pow.f64 x 4))) (pow.f64 y 3))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 -1 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))) (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (pow.f64 y 5))) (+.f64 (*.f64 1/2 y) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) y)) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 -1 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))) (pow.f64 y 3))))))
(fma.f64 1/2 (/.f64 (*.f64 -1 (-.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 (+.f64 (*.f64 z z) (*.f64 x x)) (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x))))))) (/.f64 (pow.f64 y 5) (+.f64 (*.f64 z z) (*.f64 x x)))) (fma.f64 1/2 y (*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x)))) y) (/.f64 (*.f64 -1 (-.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 (+.f64 (*.f64 z z) (*.f64 x x)) (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x))))))) (pow.f64 y 3))))))
(fma.f64 1/2 (/.f64 (fma.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 (fma.f64 z z (*.f64 x x)) (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))))) (/.f64 (pow.f64 y 5) (fma.f64 z z (*.f64 x x)))) (*.f64 1/2 (+.f64 (+.f64 y (/.f64 (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))) y)) (/.f64 (fma.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 (fma.f64 z z (*.f64 x x)) (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))))) (pow.f64 y 3)))))
(*.f64 1/2 (+.f64 (+.f64 (/.f64 (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x)) y) (/.f64 (+.f64 (*.f64 (fma.f64 z z (*.f64 x x)) (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x))) (-.f64 (pow.f64 z 4) (pow.f64 x 4))) (pow.f64 y 3))) (+.f64 (/.f64 (+.f64 (*.f64 (fma.f64 z z (*.f64 x x)) (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x))) (-.f64 (pow.f64 z 4) (pow.f64 x 4))) (/.f64 (pow.f64 y 5) (fma.f64 z z (*.f64 x x)))) y)))
(*.f64 1/2 y)
(*.f64 y 1/2)
(+.f64 (*.f64 1/2 y) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) y)))
(*.f64 1/2 (+.f64 y (/.f64 (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x)))) y)))
(*.f64 1/2 (+.f64 y (/.f64 (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))) y)))
(*.f64 1/2 (+.f64 y (/.f64 (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x)) y)))
(+.f64 (*.f64 1/2 y) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) y)) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 -1 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))) (pow.f64 y 3)))))
(fma.f64 1/2 y (*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x)))) y) (/.f64 (*.f64 -1 (-.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 (+.f64 (*.f64 z z) (*.f64 x x)) (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x))))))) (pow.f64 y 3)))))
(*.f64 1/2 (+.f64 (+.f64 y (/.f64 (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))) y)) (/.f64 (fma.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 (fma.f64 z z (*.f64 x x)) (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))))) (pow.f64 y 3))))
(*.f64 1/2 (+.f64 (+.f64 y (/.f64 (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x)) y)) (/.f64 (+.f64 (*.f64 (fma.f64 z z (*.f64 x x)) (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x))) (-.f64 (pow.f64 z 4) (pow.f64 x 4))) (pow.f64 y 3))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 -1 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))) (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (pow.f64 y 5))) (+.f64 (*.f64 1/2 y) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) y)) (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4))) (*.f64 -1 (*.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (-.f64 (*.f64 -2 (pow.f64 z 2)) (*.f64 -1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))) (pow.f64 y 3))))))
(fma.f64 1/2 (/.f64 (*.f64 -1 (-.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 (+.f64 (*.f64 z z) (*.f64 x x)) (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x))))))) (/.f64 (pow.f64 y 5) (+.f64 (*.f64 z z) (*.f64 x x)))) (fma.f64 1/2 y (*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x)))) y) (/.f64 (*.f64 -1 (-.f64 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 (+.f64 (*.f64 z z) (*.f64 x x)) (-.f64 (*.f64 (*.f64 z z) -2) (neg.f64 (+.f64 (*.f64 z z) (*.f64 x x))))))) (pow.f64 y 3))))))
(fma.f64 1/2 (/.f64 (fma.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 (fma.f64 z z (*.f64 x x)) (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))))) (/.f64 (pow.f64 y 5) (fma.f64 z z (*.f64 x x)))) (*.f64 1/2 (+.f64 (+.f64 y (/.f64 (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))) y)) (/.f64 (fma.f64 -1 (-.f64 (pow.f64 x 4) (pow.f64 z 4)) (*.f64 (fma.f64 z z (*.f64 x x)) (fma.f64 (*.f64 z z) -2 (fma.f64 z z (*.f64 x x))))) (pow.f64 y 3)))))
(*.f64 1/2 (+.f64 (+.f64 (/.f64 (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x)) y) (/.f64 (+.f64 (*.f64 (fma.f64 z z (*.f64 x x)) (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x))) (-.f64 (pow.f64 z 4) (pow.f64 x 4))) (pow.f64 y 3))) (+.f64 (/.f64 (+.f64 (*.f64 (fma.f64 z z (*.f64 x x)) (+.f64 (*.f64 z (neg.f64 z)) (*.f64 x x))) (-.f64 (pow.f64 z 4) (pow.f64 x 4))) (/.f64 (pow.f64 y 5) (fma.f64 z z (*.f64 x x)))) y)))
(*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (*.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))
(*.f64 1/2 (/.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) y) (-.f64 (*.f64 x x) (*.f64 y y))))
(*.f64 (/.f64 1/2 y) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (-.f64 (*.f64 x x) (*.f64 y y))))
(*.f64 (/.f64 1/2 y) (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (fma.f64 x x (*.f64 y (neg.f64 y)))))
(+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)) (*.f64 2 (/.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)))) (pow.f64 z 2))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (*.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2))))))
(*.f64 1/2 (+.f64 (*.f64 (*.f64 z z) (+.f64 (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)) (-.f64 (/.f64 (*.f64 y 2) (-.f64 (*.f64 x x) (*.f64 y y))) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)))))) (/.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) y) (-.f64 (*.f64 x x) (*.f64 y y)))))
(*.f64 1/2 (fma.f64 (*.f64 z z) (-.f64 (fma.f64 2 (/.f64 y (-.f64 (*.f64 x x) (*.f64 y y))) (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2))) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)))) (/.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (-.f64 (*.f64 x x) (*.f64 y y))) y)))
(*.f64 1/2 (fma.f64 (*.f64 z z) (-.f64 (*.f64 (/.f64 y (fma.f64 x x (*.f64 y (neg.f64 y)))) (+.f64 (/.f64 y (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) 2)) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 2)))) (/.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (fma.f64 x x (*.f64 y (neg.f64 y)))) y)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 z 4) (-.f64 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3))) (+.f64 (*.f64 2 (/.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2))) (+.f64 (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3)) (/.f64 1 (*.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2))))))))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)) (*.f64 2 (/.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)))) (pow.f64 z 2))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (*.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))))
(fma.f64 1/2 (*.f64 (pow.f64 z 4) (-.f64 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3))) (fma.f64 2 (/.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)) (+.f64 (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3)) (/.f64 (/.f64 1 y) (-.f64 (*.f64 x x) (*.f64 y y))))))) (*.f64 1/2 (+.f64 (*.f64 (*.f64 z z) (+.f64 (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)) (-.f64 (/.f64 (*.f64 y 2) (-.f64 (*.f64 x x) (*.f64 y y))) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)))))) (/.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) y) (-.f64 (*.f64 x x) (*.f64 y y))))))
(*.f64 1/2 (+.f64 (fma.f64 (*.f64 z z) (-.f64 (fma.f64 2 (/.f64 y (-.f64 (*.f64 x x) (*.f64 y y))) (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2))) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)))) (/.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (-.f64 (*.f64 x x) (*.f64 y y))) y)) (*.f64 (pow.f64 z 4) (-.f64 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3))) (+.f64 (/.f64 (/.f64 1 (-.f64 (*.f64 x x) (*.f64 y y))) y) (fma.f64 2 (/.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)) (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3))))))))
(*.f64 1/2 (+.f64 (fma.f64 (*.f64 z z) (-.f64 (*.f64 (/.f64 y (fma.f64 x x (*.f64 y (neg.f64 y)))) (+.f64 (/.f64 y (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) 2)) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 2)))) (/.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (fma.f64 x x (*.f64 y (neg.f64 y)))) y)) (*.f64 (pow.f64 z 4) (+.f64 (-.f64 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 3))) (fma.f64 2 (/.f64 y (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 2)) (pow.f64 (/.f64 y (fma.f64 x x (*.f64 y (neg.f64 y)))) 3))) (/.f64 -1 (*.f64 y (fma.f64 x x (*.f64 y (neg.f64 y)))))))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 z 4) (-.f64 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3))) (+.f64 (*.f64 2 (/.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2))) (+.f64 (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3)) (/.f64 1 (*.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2))))))))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)) (*.f64 2 (/.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2)))) (pow.f64 z 2))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 2 (/.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 3))) (+.f64 (/.f64 1 (*.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 2))) (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 4)))) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) 4)))) (pow.f64 z 6))) (*.f64 1/2 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (*.f64 y (-.f64 (pow.f64 x 2) (pow.f64 y 2))))))))
(fma.f64 1/2 (*.f64 (pow.f64 z 4) (-.f64 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3))) (fma.f64 2 (/.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)) (+.f64 (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3)) (/.f64 (/.f64 1 y) (-.f64 (*.f64 x x) (*.f64 y y))))))) (fma.f64 1/2 (*.f64 (*.f64 z z) (+.f64 (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)) (-.f64 (/.f64 (*.f64 y 2) (-.f64 (*.f64 x x) (*.f64 y y))) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)))))) (*.f64 1/2 (+.f64 (*.f64 (pow.f64 z 6) (-.f64 (fma.f64 2 (/.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3)) (+.f64 (/.f64 1 (*.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2))) (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 4)))) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 4))))) (/.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) y) (-.f64 (*.f64 x x) (*.f64 y y)))))))
(fma.f64 1/2 (*.f64 (pow.f64 z 4) (-.f64 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3))) (+.f64 (/.f64 (/.f64 1 (-.f64 (*.f64 x x) (*.f64 y y))) y) (fma.f64 2 (/.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)) (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3)))))) (*.f64 1/2 (+.f64 (*.f64 (*.f64 z z) (-.f64 (fma.f64 2 (/.f64 y (-.f64 (*.f64 x x) (*.f64 y y))) (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2))) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2))))) (fma.f64 (pow.f64 z 6) (+.f64 (fma.f64 2 (/.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 3)) (/.f64 1 (*.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 2)))) (-.f64 (/.f64 (pow.f64 y 3) (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 4)) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (-.f64 (*.f64 x x) (*.f64 y y)) 4))))) (/.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (-.f64 (*.f64 x x) (*.f64 y y))) y)))))
(*.f64 1/2 (+.f64 (+.f64 (fma.f64 (*.f64 z z) (-.f64 (*.f64 (/.f64 y (fma.f64 x x (*.f64 y (neg.f64 y)))) (+.f64 (/.f64 y (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) 2)) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 2)))) (/.f64 (/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) (fma.f64 x x (*.f64 y (neg.f64 y)))) y)) (*.f64 (pow.f64 z 4) (+.f64 (-.f64 (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 3))) (fma.f64 2 (/.f64 y (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 2)) (pow.f64 (/.f64 y (fma.f64 x x (*.f64 y (neg.f64 y)))) 3))) (/.f64 -1 (*.f64 y (fma.f64 x x (*.f64 y (neg.f64 y)))))))) (*.f64 (pow.f64 z 6) (+.f64 (fma.f64 2 (/.f64 y (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 3)) (/.f64 1 (*.f64 y (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 2)))) (-.f64 (/.f64 (pow.f64 y 3) (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 4)) (/.f64 (pow.f64 x 4) (*.f64 y (pow.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) 4))))))))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(/.f64 -1/2 (/.f64 y (*.f64 z z)))
(/.f64 (*.f64 (*.f64 -1/2 z) z) y)
(+.f64 (*.f64 1/2 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y)))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(fma.f64 1/2 (-.f64 (*.f64 y 2) (/.f64 (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y))) y)) (*.f64 -1/2 (/.f64 (*.f64 z z) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (fma.f64 y 2 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) y))))
(fma.f64 1/2 (fma.f64 y 2 (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) (/.f64 (*.f64 (*.f64 -1/2 z) z) y))
(+.f64 (*.f64 1/2 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (+.f64 (pow.f64 y 3) (*.f64 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y))) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (pow.f64 z 2))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y))))
(fma.f64 1/2 (-.f64 (*.f64 y 2) (/.f64 (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y))) y)) (fma.f64 1/2 (/.f64 (-.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (pow.f64 y 3)) (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 (*.f64 y 2) (/.f64 (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y))) y)))) (*.f64 z z)) (*.f64 -1/2 (/.f64 (*.f64 z z) y))))
(fma.f64 1/2 (fma.f64 y 2 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) y)) (fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (fma.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (fma.f64 y 2 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) y)) (pow.f64 y 3))) (*.f64 z z)))))
(fma.f64 1/2 (fma.f64 y 2 (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) (fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 (/.f64 1/2 z) (/.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (fma.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) (fma.f64 y 2 (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) (pow.f64 y 3))) z))))
(+.f64 (*.f64 1/2 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (+.f64 (pow.f64 y 3) (*.f64 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y))) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (pow.f64 z 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) (-.f64 (/.f64 (pow.f64 x 4) y) (+.f64 (pow.f64 y 3) (*.f64 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y))) (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))) (pow.f64 z 4))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))))
(fma.f64 1/2 (-.f64 (*.f64 y 2) (/.f64 (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y))) y)) (fma.f64 1/2 (/.f64 (-.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (pow.f64 y 3)) (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 (*.f64 y 2) (/.f64 (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y))) y)))) (*.f64 z z)) (*.f64 -1/2 (+.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (pow.f64 z 4) (-.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (pow.f64 y 3)) (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 (*.f64 y 2) (/.f64 (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y))) y)))))) (/.f64 (*.f64 z z) y)))))
(fma.f64 1/2 (fma.f64 y 2 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) y)) (fma.f64 -1/2 (+.f64 (/.f64 z (/.f64 y z)) (*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (pow.f64 z 4)) (-.f64 (/.f64 (pow.f64 x 4) y) (fma.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (fma.f64 y 2 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) y)) (pow.f64 y 3))))) (*.f64 1/2 (/.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (fma.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (fma.f64 y 2 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) y)) (pow.f64 y 3))) (*.f64 z z)))))
(fma.f64 1/2 (fma.f64 y 2 (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) (fma.f64 -1/2 (+.f64 (/.f64 z (/.f64 y z)) (*.f64 (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) (pow.f64 z 4)) (-.f64 (/.f64 (pow.f64 x 4) y) (fma.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) (fma.f64 y 2 (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) (pow.f64 y 3))))) (*.f64 (/.f64 1/2 z) (/.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (fma.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) (fma.f64 y 2 (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) (pow.f64 y 3))) z))))
(*.f64 -1/2 (/.f64 (pow.f64 z 2) y))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(/.f64 -1/2 (/.f64 y (*.f64 z z)))
(/.f64 (*.f64 (*.f64 -1/2 z) z) y)
(+.f64 (*.f64 1/2 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y)))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))
(fma.f64 1/2 (-.f64 (*.f64 y 2) (/.f64 (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y))) y)) (*.f64 -1/2 (/.f64 (*.f64 z z) y)))
(fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (fma.f64 y 2 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) y))))
(fma.f64 1/2 (fma.f64 y 2 (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) (/.f64 (*.f64 (*.f64 -1/2 z) z) y))
(+.f64 (*.f64 1/2 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (+.f64 (pow.f64 y 3) (*.f64 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y))) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (pow.f64 z 2))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y))))
(fma.f64 1/2 (-.f64 (*.f64 y 2) (/.f64 (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y))) y)) (fma.f64 1/2 (/.f64 (-.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (pow.f64 y 3)) (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 (*.f64 y 2) (/.f64 (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y))) y)))) (*.f64 z z)) (*.f64 -1/2 (/.f64 (*.f64 z z) y))))
(fma.f64 1/2 (fma.f64 y 2 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) y)) (fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 1/2 (/.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (fma.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (fma.f64 y 2 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) y)) (pow.f64 y 3))) (*.f64 z z)))))
(fma.f64 1/2 (fma.f64 y 2 (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) (fma.f64 -1/2 (/.f64 z (/.f64 y z)) (*.f64 (/.f64 1/2 z) (/.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (fma.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) (fma.f64 y 2 (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) (pow.f64 y 3))) z))))
(+.f64 (*.f64 1/2 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y)))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (+.f64 (pow.f64 y 3) (*.f64 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y))) (-.f64 (pow.f64 x 2) (pow.f64 y 2))))) (pow.f64 z 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) (-.f64 (/.f64 (pow.f64 x 4) y) (+.f64 (pow.f64 y 3) (*.f64 (-.f64 (*.f64 2 y) (*.f64 -1 (/.f64 (-.f64 (pow.f64 x 2) (pow.f64 y 2)) y))) (-.f64 (pow.f64 x 2) (pow.f64 y 2)))))) (pow.f64 z 4))) (*.f64 -1/2 (/.f64 (pow.f64 z 2) y)))))
(fma.f64 1/2 (-.f64 (*.f64 y 2) (/.f64 (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y))) y)) (fma.f64 1/2 (/.f64 (-.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (pow.f64 y 3)) (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 (*.f64 y 2) (/.f64 (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y))) y)))) (*.f64 z z)) (*.f64 -1/2 (+.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (pow.f64 z 4) (-.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (pow.f64 y 3)) (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 (*.f64 y 2) (/.f64 (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y))) y)))))) (/.f64 (*.f64 z z) y)))))
(fma.f64 1/2 (fma.f64 y 2 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) y)) (fma.f64 -1/2 (+.f64 (/.f64 z (/.f64 y z)) (*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (pow.f64 z 4)) (-.f64 (/.f64 (pow.f64 x 4) y) (fma.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (fma.f64 y 2 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) y)) (pow.f64 y 3))))) (*.f64 1/2 (/.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (fma.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (fma.f64 y 2 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) y)) (pow.f64 y 3))) (*.f64 z z)))))
(fma.f64 1/2 (fma.f64 y 2 (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) (fma.f64 -1/2 (+.f64 (/.f64 z (/.f64 y z)) (*.f64 (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) (pow.f64 z 4)) (-.f64 (/.f64 (pow.f64 x 4) y) (fma.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) (fma.f64 y 2 (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) (pow.f64 y 3))))) (*.f64 (/.f64 1/2 z) (/.f64 (-.f64 (/.f64 (pow.f64 x 4) y) (fma.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) (fma.f64 y 2 (/.f64 (fma.f64 x x (*.f64 y (neg.f64 y))) y)) (pow.f64 y 3))) z))))
(*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2))
(neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))
(neg.f64 (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))
(-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))
(-.f64 (pow.f64 x 4) (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))
(-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))
(-.f64 (pow.f64 x 4) (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))
(-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))
(-.f64 (pow.f64 x 4) (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2))
(pow.f64 x 4)
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))
(-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))
(-.f64 (pow.f64 x 4) (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))
(-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))
(-.f64 (pow.f64 x 4) (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))
(-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))
(-.f64 (pow.f64 x 4) (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2))
(pow.f64 x 4)
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))
(-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))
(-.f64 (pow.f64 x 4) (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))
(-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))
(-.f64 (pow.f64 x 4) (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) 2)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2)))
(-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))
(-.f64 (pow.f64 x 4) (pow.f64 (fma.f64 z z (*.f64 y (neg.f64 y))) 2))
(-.f64 (pow.f64 x 4) (pow.f64 z 4))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (pow.f64 x 4)) (pow.f64 z 4))
(-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (pow.f64 z 4))
(-.f64 (fma.f64 2 (*.f64 y (*.f64 z (*.f64 z y))) (pow.f64 x 4)) (pow.f64 z 4))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))) (pow.f64 z 4))
(-.f64 (-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (pow.f64 y 4)) (pow.f64 z 4))
(-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (+.f64 (pow.f64 y 4) (pow.f64 z 4)))
(-.f64 (fma.f64 2 (*.f64 y (*.f64 z (*.f64 z y))) (pow.f64 x 4)) (+.f64 (pow.f64 y 4) (pow.f64 z 4)))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))) (pow.f64 z 4))
(-.f64 (-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (pow.f64 y 4)) (pow.f64 z 4))
(-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (+.f64 (pow.f64 y 4) (pow.f64 z 4)))
(-.f64 (fma.f64 2 (*.f64 y (*.f64 z (*.f64 z y))) (pow.f64 x 4)) (+.f64 (pow.f64 y 4) (pow.f64 z 4)))
(*.f64 -1 (pow.f64 y 4))
(neg.f64 (pow.f64 y 4))
(+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (*.f64 -1 (pow.f64 y 4)))
(fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (neg.f64 (pow.f64 y 4)))
(-.f64 (*.f64 2 (*.f64 (*.f64 y y) (*.f64 z z))) (pow.f64 y 4))
(-.f64 (*.f64 2 (*.f64 y (*.f64 z (*.f64 z y)))) (pow.f64 y 4))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))) (pow.f64 z 4))
(-.f64 (-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (pow.f64 y 4)) (pow.f64 z 4))
(-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (+.f64 (pow.f64 y 4) (pow.f64 z 4)))
(-.f64 (fma.f64 2 (*.f64 y (*.f64 z (*.f64 z y))) (pow.f64 x 4)) (+.f64 (pow.f64 y 4) (pow.f64 z 4)))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))) (pow.f64 z 4))
(-.f64 (-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (pow.f64 y 4)) (pow.f64 z 4))
(-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (+.f64 (pow.f64 y 4) (pow.f64 z 4)))
(-.f64 (fma.f64 2 (*.f64 y (*.f64 z (*.f64 z y))) (pow.f64 x 4)) (+.f64 (pow.f64 y 4) (pow.f64 z 4)))
(*.f64 -1 (pow.f64 y 4))
(neg.f64 (pow.f64 y 4))
(+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (*.f64 -1 (pow.f64 y 4)))
(fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (neg.f64 (pow.f64 y 4)))
(-.f64 (*.f64 2 (*.f64 (*.f64 y y) (*.f64 z z))) (pow.f64 y 4))
(-.f64 (*.f64 2 (*.f64 y (*.f64 z (*.f64 z y)))) (pow.f64 y 4))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))) (pow.f64 z 4))
(-.f64 (-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (pow.f64 y 4)) (pow.f64 z 4))
(-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (+.f64 (pow.f64 y 4) (pow.f64 z 4)))
(-.f64 (fma.f64 2 (*.f64 y (*.f64 z (*.f64 z y))) (pow.f64 x 4)) (+.f64 (pow.f64 y 4) (pow.f64 z 4)))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))) (pow.f64 z 4))
(-.f64 (-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (pow.f64 y 4)) (pow.f64 z 4))
(-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (+.f64 (pow.f64 y 4) (pow.f64 z 4)))
(-.f64 (fma.f64 2 (*.f64 y (*.f64 z (*.f64 z y))) (pow.f64 x 4)) (+.f64 (pow.f64 y 4) (pow.f64 z 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (pow.f64 x 4)) (pow.f64 y 4))
(-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (pow.f64 y 4))
(-.f64 (fma.f64 2 (*.f64 y (*.f64 z (*.f64 z y))) (pow.f64 x 4)) (pow.f64 y 4))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 z 4)))) (pow.f64 y 4))
(-.f64 (-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (pow.f64 z 4)) (pow.f64 y 4))
(-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (+.f64 (pow.f64 z 4) (pow.f64 y 4)))
(-.f64 (fma.f64 2 (*.f64 y (*.f64 z (*.f64 z y))) (pow.f64 x 4)) (+.f64 (pow.f64 z 4) (pow.f64 y 4)))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 z 4)))) (pow.f64 y 4))
(-.f64 (-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (pow.f64 z 4)) (pow.f64 y 4))
(-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (+.f64 (pow.f64 z 4) (pow.f64 y 4)))
(-.f64 (fma.f64 2 (*.f64 y (*.f64 z (*.f64 z y))) (pow.f64 x 4)) (+.f64 (pow.f64 z 4) (pow.f64 y 4)))
(*.f64 -1 (pow.f64 z 4))
(neg.f64 (pow.f64 z 4))
(+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (*.f64 -1 (pow.f64 z 4)))
(fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (neg.f64 (pow.f64 z 4)))
(*.f64 (*.f64 z z) (fma.f64 y (*.f64 y 2) (*.f64 z (neg.f64 z))))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 z 4)))) (pow.f64 y 4))
(-.f64 (-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (pow.f64 z 4)) (pow.f64 y 4))
(-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (+.f64 (pow.f64 z 4) (pow.f64 y 4)))
(-.f64 (fma.f64 2 (*.f64 y (*.f64 z (*.f64 z y))) (pow.f64 x 4)) (+.f64 (pow.f64 z 4) (pow.f64 y 4)))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 z 4)))) (pow.f64 y 4))
(-.f64 (-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (pow.f64 z 4)) (pow.f64 y 4))
(-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (+.f64 (pow.f64 z 4) (pow.f64 y 4)))
(-.f64 (fma.f64 2 (*.f64 y (*.f64 z (*.f64 z y))) (pow.f64 x 4)) (+.f64 (pow.f64 z 4) (pow.f64 y 4)))
(*.f64 -1 (pow.f64 z 4))
(neg.f64 (pow.f64 z 4))
(+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (*.f64 -1 (pow.f64 z 4)))
(fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (neg.f64 (pow.f64 z 4)))
(*.f64 (*.f64 z z) (fma.f64 y (*.f64 y 2) (*.f64 z (neg.f64 z))))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 z 4)))) (pow.f64 y 4))
(-.f64 (-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (pow.f64 z 4)) (pow.f64 y 4))
(-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (+.f64 (pow.f64 z 4) (pow.f64 y 4)))
(-.f64 (fma.f64 2 (*.f64 y (*.f64 z (*.f64 z y))) (pow.f64 x 4)) (+.f64 (pow.f64 z 4) (pow.f64 y 4)))
(-.f64 (+.f64 (*.f64 2 (*.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 z 4)))) (pow.f64 y 4))
(-.f64 (-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (pow.f64 z 4)) (pow.f64 y 4))
(-.f64 (fma.f64 2 (*.f64 (*.f64 y y) (*.f64 z z)) (pow.f64 x 4)) (+.f64 (pow.f64 z 4) (pow.f64 y 4)))
(-.f64 (fma.f64 2 (*.f64 y (*.f64 z (*.f64 z y))) (pow.f64 x 4)) (+.f64 (pow.f64 z 4) (pow.f64 y 4)))
(-.f64 (pow.f64 z 2) (pow.f64 y 2))
(-.f64 (*.f64 z z) (*.f64 y y))
(fma.f64 z z (*.f64 y (neg.f64 y)))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(pow.f64 x 2)
(*.f64 x x)
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(pow.f64 x 2)
(*.f64 x x)
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(+.f64 (pow.f64 z 2) (pow.f64 x 2))
(+.f64 (*.f64 z z) (*.f64 x x))
(fma.f64 z z (*.f64 x x))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(+.f64 (*.f64 -1 (pow.f64 y 2)) (+.f64 (pow.f64 z 2) (pow.f64 x 2)))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(*.f64 -1 (pow.f64 y 2))
(neg.f64 (*.f64 y y))
(*.f64 y (neg.f64 y))
(+.f64 (pow.f64 z 2) (+.f64 (*.f64 -1 (pow.f64 y 2)) (pow.f64 x 2)))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(+.f64 (pow.f64 z 2) (+.f64 (*.f64 -1 (pow.f64 y 2)) (pow.f64 x 2)))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(+.f64 (pow.f64 z 2) (+.f64 (*.f64 -1 (pow.f64 y 2)) (pow.f64 x 2)))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(*.f64 -1 (pow.f64 y 2))
(neg.f64 (*.f64 y y))
(*.f64 y (neg.f64 y))
(+.f64 (pow.f64 z 2) (+.f64 (*.f64 -1 (pow.f64 y 2)) (pow.f64 x 2)))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(+.f64 (pow.f64 z 2) (+.f64 (*.f64 -1 (pow.f64 y 2)) (pow.f64 x 2)))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(+.f64 (pow.f64 z 2) (+.f64 (*.f64 -1 (pow.f64 y 2)) (pow.f64 x 2)))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(-.f64 (pow.f64 x 2) (pow.f64 y 2))
(-.f64 (*.f64 x x) (*.f64 y y))
(fma.f64 x x (*.f64 y (neg.f64 y)))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(pow.f64 z 2)
(*.f64 z z)
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(pow.f64 z 2)
(*.f64 z z)
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))
(-.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))
(+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))
(-.f64 (fma.f64 z z (*.f64 x x)) (*.f64 y y))
(fma.f64 z z (fma.f64 x x (*.f64 y (neg.f64 y))))

eval286.0ms (2.3%)

Compiler

Compiled 18924 to 8087 computations (57.3% saved)

prune136.0ms (1.1%)

Pruning

16 alts after pruning (7 fresh and 9 done)

PrunedKeptTotal
New5875592
Fresh224
Picked101
Done2911
Total59216608
Error
0b
Counts
608 → 16
Alt Table
Click to see full alt table
StatusErrorProgram
13.4b
(*.f64 1/2 (fma.f64 x (/.f64 x y) y))
50.2b
(/.f64 (*.f64 z -1/2) (/.f64 y z))
12.4b
(*.f64 1/2 (fma.f64 (/.f64 z y) (neg.f64 z) y))
48.7b
(/.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 (-.f64 x z) 1/2)) (*.f64 (-.f64 x z) y))
50.5b
(*.f64 1/2 (/.f64 x (/.f64 y x)))
50.1b
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
12.4b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 z y) z) y))
37.2b
(/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 y 2))
43.8b
(/.f64 (*.f64 (/.f64 1 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (*.f64 y 2))
37.8b
(*.f64 (+.f64 x z) (*.f64 (-.f64 x z) (/.f64 1/2 y)))
50.5b
(*.f64 1/2 (*.f64 x (/.f64 x y)))
52.9b
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
50.5b
(*.f64 x (*.f64 x (/.f64 1/2 y)))
25.4b
(*.f64 1/2 y)
13.4b
(*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))
52.7b
(/.f64 (*.f64 x x) (*.f64 y 2))
Compiler

Compiled 207 to 135 computations (34.8% saved)

regimes320.0ms (2.6%)

Counts
33 → 3
Calls
Call 1
Inputs
(*.f64 1/2 y)
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 x (*.f64 x (/.f64 1/2 y)))
(/.f64 (*.f64 z -1/2) (/.f64 y z))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(/.f64 (*.f64 x x) (*.f64 y 2))
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
(*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))
(*.f64 1/2 (+.f64 (*.f64 x (/.f64 x y)) y))
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 z y) z) y))
(*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y))
(*.f64 -1/2 (-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y))
(*.f64 -1/2 (-.f64 (*.f64 x (/.f64 (neg.f64 x) y)) y))
(*.f64 (+.f64 x z) (*.f64 (-.f64 x z) (/.f64 1/2 y)))
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
(/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 y 2))
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
(/.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 (-.f64 x z) 1/2)) (*.f64 (-.f64 x z) y))
(*.f64 1/2 (fma.f64 x (/.f64 x y) y))
(*.f64 1/2 (fma.f64 (/.f64 z y) (neg.f64 z) y))
(pow.f64 (/.f64 (/.f64 (+.f64 y y) (+.f64 x z)) (-.f64 x z)) -1)
(*.f64 -1/2 (-.f64 (/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y) y))
(/.f64 (/.f64 (-.f64 (pow.f64 x 4) (*.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (-.f64 (*.f64 y y) (*.f64 z z)))) (-.f64 (*.f64 x x) (-.f64 (*.f64 y y) (*.f64 z z)))) (*.f64 y 2))
(*.f64 -1/2 (-.f64 (*.f64 (hypot.f64 z x) (*.f64 (hypot.f64 z x) (/.f64 1 y))) y))
(/.f64 (*.f64 (/.f64 1 (+.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y)))) (-.f64 (pow.f64 x 4) (pow.f64 (-.f64 (*.f64 y y) (*.f64 z z)) 2))) (*.f64 y 2))
(*.f64 -1/2 (-.f64 (pow.f64 (/.f64 y (pow.f64 (hypot.f64 z x) 2)) -1) y))
(/.f64 (fma.f64 (*.f64 (neg.f64 z) (sqrt.f64 z)) (sqrt.f64 z) (*.f64 x x)) (*.f64 y 2))
(/.f64 (fma.f64 (*.f64 (neg.f64 z) (sqrt.f64 z)) (sqrt.f64 z) (pow.f64 (hypot.f64 x y) 2)) (*.f64 y 2))
(*.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) (*.f64 (hypot.f64 (hypot.f64 x y) (sqrt.f64 (neg.f64 (*.f64 z z)))) (/.f64 1/2 y)))
Outputs
(*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))
(*.f64 -1/2 (-.f64 (/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y) y))
(*.f64 1/2 (fma.f64 (/.f64 z y) (neg.f64 z) y))
Calls

8 calls:

50.0ms
y
45.0ms
z
45.0ms
x
39.0ms
(*.f64 z z)
37.0ms
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
Results
ErrorSegmentsBranch
3.4b3x
2.6b3y
5.0b3z
1.8b3(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
2.5b3(*.f64 x x)
2.5b3(*.f64 x x)
3.8b3(*.f64 z z)
3.8b3(*.f64 z z)
Compiler

Compiled 446 to 202 computations (54.7% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.5273571956753312e+293
+inf
0.0ms
-inf
-4.3423692577893425e+305
Compiler

Compiled 24 to 16 computations (33.3% saved)

regimes207.0ms (1.7%)

Counts
25 → 3
Calls
Call 1
Inputs
(*.f64 1/2 y)
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 x (*.f64 x (/.f64 1/2 y)))
(/.f64 (*.f64 z -1/2) (/.f64 y z))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(/.f64 (*.f64 x x) (*.f64 y 2))
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
(*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))
(*.f64 1/2 (+.f64 (*.f64 x (/.f64 x y)) y))
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 z y) z) y))
(*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y))
(*.f64 -1/2 (-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y))
(*.f64 -1/2 (-.f64 (*.f64 x (/.f64 (neg.f64 x) y)) y))
(*.f64 (+.f64 x z) (*.f64 (-.f64 x z) (/.f64 1/2 y)))
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
(/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 y 2))
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
(/.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 (-.f64 x z) 1/2)) (*.f64 (-.f64 x z) y))
(*.f64 1/2 (fma.f64 x (/.f64 x y) y))
(*.f64 1/2 (fma.f64 (/.f64 z y) (neg.f64 z) y))
(pow.f64 (/.f64 (/.f64 (+.f64 y y) (+.f64 x z)) (-.f64 x z)) -1)
Outputs
(*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
(*.f64 1/2 (fma.f64 (/.f64 z y) (neg.f64 z) y))
Calls

8 calls:

37.0ms
x
35.0ms
z
34.0ms
y
25.0ms
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
23.0ms
(*.f64 z z)
Results
ErrorSegmentsBranch
3.4b3x
2.7b3y
5.0b3z
1.8b3(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
3.7b2(*.f64 x x)
3.7b2(*.f64 x x)
5.2b2(*.f64 z z)
5.2b2(*.f64 z z)
Compiler

Compiled 284 to 139 computations (51.1% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.5273571956753312e+293
+inf
0.0ms
-inf
-4.3423692577893425e+305
Compiler

Compiled 24 to 16 computations (33.3% saved)

regimes206.0ms (1.6%)

Counts
23 → 3
Calls
Call 1
Inputs
(*.f64 1/2 y)
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 x (*.f64 x (/.f64 1/2 y)))
(/.f64 (*.f64 z -1/2) (/.f64 y z))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(/.f64 (*.f64 x x) (*.f64 y 2))
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
(*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))
(*.f64 1/2 (+.f64 (*.f64 x (/.f64 x y)) y))
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 z y) z) y))
(*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y))
(*.f64 -1/2 (-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y))
(*.f64 -1/2 (-.f64 (*.f64 x (/.f64 (neg.f64 x) y)) y))
(*.f64 (+.f64 x z) (*.f64 (-.f64 x z) (/.f64 1/2 y)))
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
(/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 y 2))
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
(/.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 (-.f64 x z) 1/2)) (*.f64 (-.f64 x z) y))
(*.f64 1/2 (fma.f64 x (/.f64 x y) y))
Outputs
(*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 z y) z) y))
Calls

8 calls:

42.0ms
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
35.0ms
z
34.0ms
y
32.0ms
x
15.0ms
(*.f64 z z)
Results
ErrorSegmentsBranch
3.4b3x
2.7b3y
5.0b3z
1.8b3(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
3.7b2(*.f64 x x)
3.7b2(*.f64 x x)
5.2b2(*.f64 z z)
5.2b2(*.f64 z z)
Compiler

Compiled 262 to 131 computations (50% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.5273571956753312e+293
+inf
0.0ms
-inf
-4.3423692577893425e+305
Compiler

Compiled 24 to 16 computations (33.3% saved)

regimes160.0ms (1.3%)

Counts
20 → 3
Calls
Call 1
Inputs
(*.f64 1/2 y)
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 x (*.f64 x (/.f64 1/2 y)))
(/.f64 (*.f64 z -1/2) (/.f64 y z))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(/.f64 (*.f64 x x) (*.f64 y 2))
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
(*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))
(*.f64 1/2 (+.f64 (*.f64 x (/.f64 x y)) y))
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 z y) z) y))
(*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y))
(*.f64 -1/2 (-.f64 (/.f64 (*.f64 x (neg.f64 x)) y) y))
(*.f64 -1/2 (-.f64 (*.f64 x (/.f64 (neg.f64 x) y)) y))
(*.f64 (+.f64 x z) (*.f64 (-.f64 x z) (/.f64 1/2 y)))
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
(/.f64 (-.f64 (*.f64 y y) (*.f64 z z)) (*.f64 y 2))
Outputs
(*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 z y) z) y))
(*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))
Calls

7 calls:

46.0ms
y
29.0ms
x
27.0ms
z
14.0ms
(*.f64 x x)
13.0ms
(*.f64 z z)
Results
ErrorSegmentsBranch
3.4b3x
5.3b5y
5.0b3z
3.7b2(*.f64 x x)
3.7b2(*.f64 x x)
5.2b2(*.f64 z z)
5.2b2(*.f64 z z)
Compiler

Compiled 202 to 107 computations (47% saved)

bsearch47.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
23.0ms
2.416259448912119e-40
6.635483981392902e-40
24.0ms
-13958959128885786.0
-98882316647.84526
Compiler

Compiled 24 to 16 computations (33.3% saved)

regimes107.0ms (0.9%)

Counts
13 → 5
Calls
Call 1
Inputs
(*.f64 1/2 y)
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 x (*.f64 x (/.f64 1/2 y)))
(/.f64 (*.f64 z -1/2) (/.f64 y z))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(/.f64 (*.f64 x x) (*.f64 y 2))
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
(*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))
(*.f64 1/2 (+.f64 (*.f64 x (/.f64 x y)) y))
Outputs
(*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(*.f64 1/2 (+.f64 (*.f64 x (/.f64 x y)) y))
(/.f64 (*.f64 z -1/2) (/.f64 y z))
(*.f64 1/2 (+.f64 (*.f64 x (/.f64 x y)) y))
Calls

6 calls:

35.0ms
z
29.0ms
y
21.0ms
x
5.0ms
(*.f64 x x)
5.0ms
(*.f64 z z)
Results
ErrorSegmentsBranch
12.3b3x
11.3b3y
10.5b5z
13.4b1(*.f64 x x)
13.4b1(*.f64 x x)
13.4b1(*.f64 z z)
Compiler

Compiled 125 to 70 computations (44% saved)

bsearch94.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
24.0ms
9.612382313073149e+27
1.9807258391850334e+32
24.0ms
1.1833983197116277e-5
2.8269126452339414e-5
23.0ms
-6.769695218842494e-51
-1.2661018745126539e-53
23.0ms
-8.763625891249517e-27
-7.583031357664627e-32
Compiler

Compiled 24 to 16 computations (33.3% saved)

regimes104.0ms (0.8%)

Counts
12 → 5
Calls
Call 1
Inputs
(*.f64 1/2 y)
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 x (*.f64 x (/.f64 1/2 y)))
(/.f64 (*.f64 z -1/2) (/.f64 y z))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(/.f64 (*.f64 x x) (*.f64 y 2))
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
(*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))
Outputs
(*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))
(/.f64 (*.f64 z -1/2) (/.f64 y z))
(*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))
Calls

6 calls:

35.0ms
z
29.0ms
y
20.0ms
x
6.0ms
(*.f64 z z)
5.0ms
(*.f64 x x)
Results
ErrorSegmentsBranch
12.3b3x
11.3b3y
10.5b5z
13.4b1(*.f64 x x)
13.4b1(*.f64 x x)
13.4b1(*.f64 z z)
Compiler

Compiled 116 to 67 computations (42.2% saved)

bsearch99.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
26.0ms
9.612382313073149e+27
1.9807258391850334e+32
23.0ms
1.1833983197116277e-5
2.8269126452339414e-5
25.0ms
-6.769695218842494e-51
-1.2661018745126539e-53
24.0ms
-8.763625891249517e-27
-7.583031357664627e-32
Compiler

Compiled 24 to 16 computations (33.3% saved)

regimes147.0ms (1.2%)

Counts
11 → 4
Calls
Call 1
Inputs
(*.f64 1/2 y)
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 x (*.f64 x (/.f64 1/2 y)))
(/.f64 (*.f64 z -1/2) (/.f64 y z))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(/.f64 (*.f64 x x) (*.f64 y 2))
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
Outputs
(*.f64 1/2 y)
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(/.f64 (*.f64 x x) (*.f64 y 2))
(*.f64 1/2 y)
Calls

6 calls:

40.0ms
x
32.0ms
z
31.0ms
y
16.0ms
(*.f64 z z)
12.0ms
(*.f64 z z)
Results
ErrorSegmentsBranch
21.6b7x
18.4b4y
22.2b5z
24.0b3(*.f64 x x)
24.2b3(*.f64 z z)
24.2b3(*.f64 z z)
Compiler

Compiled 107 to 64 computations (40.2% saved)

bsearch190.0ms (1.5%)

Algorithm
binary-search
Steps
TimeLeftRight
91.0ms
1.7978567751156093e-9
213975832.54149216
37.0ms
1.813040999830507e-144
1.4241187881778352e-142
62.0ms
-1.2425804335517608e-90
-1.6394245526278992e-107
Compiler

Compiled 538 to 408 computations (24.2% saved)

regimes407.0ms (3.2%)

Counts
9 → 4
Calls
Call 1
Inputs
(*.f64 1/2 y)
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 x (*.f64 x (/.f64 1/2 y)))
(/.f64 (*.f64 z -1/2) (/.f64 y z))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
Outputs
(*.f64 1/2 y)
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 y)
Calls

7 calls:

154.0ms
(*.f64 x x)
76.0ms
x
57.0ms
z
56.0ms
(*.f64 z z)
38.0ms
y
Results
ErrorSegmentsBranch
21.6b7x
18.4b4y
22.2b5z
24.0b3(*.f64 x x)
24.0b3(*.f64 x x)
24.2b3(*.f64 z z)
24.2b3(*.f64 z z)
Compiler

Compiled 98 to 60 computations (38.8% saved)

bsearch197.0ms (1.6%)

Algorithm
binary-search
Steps
TimeLeftRight
93.0ms
1.7978567751156093e-9
213975832.54149216
39.0ms
1.813040999830507e-144
1.4241187881778352e-142
65.0ms
-1.2425804335517608e-90
-1.6394245526278992e-107
Compiler

Compiled 538 to 408 computations (24.2% saved)

regimes251.0ms (2%)

Counts
6 → 4
Calls
Call 1
Inputs
(*.f64 1/2 y)
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 x (*.f64 x (/.f64 1/2 y)))
(/.f64 (*.f64 z -1/2) (/.f64 y z))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 (*.f64 x x) (/.f64 1/2 y))
Outputs
(*.f64 1/2 y)
(/.f64 (*.f64 z -1/2) (/.f64 y z))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 y)
Calls

5 calls:

96.0ms
x
47.0ms
y
46.0ms
z
41.0ms
(*.f64 x x)
18.0ms
(*.f64 x x)
Results
ErrorSegmentsBranch
21.6b7x
18.4b4y
22.2b5z
24.0b3(*.f64 x x)
24.0b3(*.f64 x x)
Compiler

Compiled 65 to 42 computations (35.4% saved)

bsearch635.0ms (5.1%)

Algorithm
binary-search
Steps
TimeLeftRight
243.0ms
1.7978567751156093e-9
213975832.54149216
94.0ms
1.813040999830507e-144
1.4241187881778352e-142
298.0ms
-1.2425804335517608e-90
-1.6394245526278992e-107
Compiler

Compiled 538 to 408 computations (24.2% saved)

regimes81.0ms (0.6%)

Accuracy

Total -41.4b remaining (-202.6%)

Threshold costs -41.4b (-202.6%)

Counts
3 → 3
Calls
Call 1
Inputs
(*.f64 1/2 y)
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 x (*.f64 x (/.f64 1/2 y)))
Outputs
(*.f64 1/2 y)
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 1/2 y)
Calls

3 calls:

39.0ms
x
29.0ms
y
10.0ms
z
Results
ErrorSegmentsBranch
22.8b5x
20.4b3y
25.4b1z
Compiler

Compiled 32 to 22 computations (31.3% saved)

bsearch194.0ms (1.6%)

Algorithm
binary-search
Steps
TimeLeftRight
97.0ms
1.7978567751156093e-9
213975832.54149216
97.0ms
-8.110625520824217e-141
-3.2469801792414273e-150
Compiler

Compiled 366 to 282 computations (23% saved)

simplify34.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
095692
1126692
2140692
3148692
4151692
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) -inf.0) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y)) (if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) 199999999999999984924696874707920970120897867915847050405221309697980696558932154585003938846536810050657940462325091296687310550613357744883467580356118956661470790120934939455989945801060127957611687906204227736000759240738169004268617951010459111545827258847272611683204755172652495528787968) (*.f64 -1/2 (-.f64 (/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y) y)) (*.f64 1/2 (fma.f64 (/.f64 z y) (neg.f64 z) y))))
(if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) -inf.0) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y)) (if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) 199999999999999984924696874707920970120897867915847050405221309697980696558932154585003938846536810050657940462325091296687310550613357744883467580356118956661470790120934939455989945801060127957611687906204227736000759240738169004268617951010459111545827258847272611683204755172652495528787968) (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) (*.f64 1/2 (fma.f64 (/.f64 z y) (neg.f64 z) y))))
(if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) -inf.0) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y)) (if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) 199999999999999984924696874707920970120897867915847050405221309697980696558932154585003938846536810050657940462325091296687310550613357744883467580356118956661470790120934939455989945801060127957611687906204227736000759240738169004268617951010459111545827258847272611683204755172652495528787968) (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) (*.f64 -1/2 (-.f64 (*.f64 (/.f64 z y) z) y))))
(if (<=.f64 x -13958959128885786) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y)) (if (<=.f64 x 1481162732413157/6129982163463555433433388108601236734474956488734408704) (*.f64 -1/2 (-.f64 (*.f64 (/.f64 z y) z) y)) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))))
(if (<=.f64 z -6107355875500041/696898287454081973172991196020261297061888) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y)) (if (<=.f64 z -2851728469575911/421249166674228746791672110734681729275580381602196445017243910144) (*.f64 (*.f64 z z) (/.f64 -1/2 y)) (if (<=.f64 z 6985550701113059/590295810358705651712) (*.f64 1/2 (+.f64 (*.f64 x (/.f64 x y)) y)) (if (<=.f64 z 9612382313073149259162845184) (/.f64 (*.f64 z -1/2) (/.f64 y z)) (*.f64 1/2 (+.f64 (*.f64 x (/.f64 x y)) y))))))
(if (<=.f64 z -6107355875500041/696898287454081973172991196020261297061888) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y)) (if (<=.f64 z -2851728469575911/421249166674228746791672110734681729275580381602196445017243910144) (*.f64 (*.f64 z z) (/.f64 -1/2 y)) (if (<=.f64 z 6985550701113059/590295810358705651712) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y)) (if (<=.f64 z 9612382313073149259162845184) (/.f64 (*.f64 z -1/2) (/.f64 y z)) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))))))
(if (<=.f64 y -1376099169594043/1146749307995035755805410447651043470398282494584140561868794419693461438044242404035009276555062843277312) (*.f64 1/2 y) (if (<=.f64 y 3251168171837857/1757388200993436087035366604564836663620975436836686184804982645551499054949799949343375268009332366074187855716219099657503228927927460816018951242525454630912) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (if (<=.f64 y 4352132950612665/2417851639229258349412352) (/.f64 (*.f64 x x) (*.f64 y 2)) (*.f64 1/2 y))))
(if (<=.f64 y -1376099169594043/1146749307995035755805410447651043470398282494584140561868794419693461438044242404035009276555062843277312) (*.f64 1/2 y) (if (<=.f64 y 3251168171837857/1757388200993436087035366604564836663620975436836686184804982645551499054949799949343375268009332366074187855716219099657503228927927460816018951242525454630912) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (if (<=.f64 y 4352132950612665/2417851639229258349412352) (*.f64 1/2 (/.f64 x (/.f64 y x))) (*.f64 1/2 y))))
(if (<=.f64 y -1376099169594043/1146749307995035755805410447651043470398282494584140561868794419693461438044242404035009276555062843277312) (*.f64 1/2 y) (if (<=.f64 y 3251168171837857/1757388200993436087035366604564836663620975436836686184804982645551499054949799949343375268009332366074187855716219099657503228927927460816018951242525454630912) (/.f64 (*.f64 z -1/2) (/.f64 y z)) (if (<=.f64 y 4352132950612665/2417851639229258349412352) (*.f64 1/2 (/.f64 x (/.f64 y x))) (*.f64 1/2 y))))
(if (<=.f64 y -1520272949452037/460688772561223309599799143187044542348256984914116263229517370635452168260760357920669766257038423772151901248872539660616526444082616288154471954520592778765795328) (*.f64 1/2 y) (if (<=.f64 y 4352132950612665/2417851639229258349412352) (*.f64 1/2 (/.f64 x (/.f64 y x))) (*.f64 1/2 y)))
(*.f64 1/2 y)
Outputs
(if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) -inf.0) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y)) (if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) 199999999999999984924696874707920970120897867915847050405221309697980696558932154585003938846536810050657940462325091296687310550613357744883467580356118956661470790120934939455989945801060127957611687906204227736000759240738169004268617951010459111545827258847272611683204755172652495528787968) (*.f64 -1/2 (-.f64 (/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y) y)) (*.f64 1/2 (fma.f64 (/.f64 z y) (neg.f64 z) y))))
(if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) -inf.0) (*.f64 1/2 (+.f64 y (/.f64 x (/.f64 y x)))) (if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) 199999999999999984924696874707920970120897867915847050405221309697980696558932154585003938846536810050657940462325091296687310550613357744883467580356118956661470790120934939455989945801060127957611687906204227736000759240738169004268617951010459111545827258847272611683204755172652495528787968) (*.f64 -1/2 (-.f64 (/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y) y)) (*.f64 1/2 (fma.f64 (/.f64 z y) (neg.f64 z) y))))
(if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) -inf.0) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y)) (if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) 199999999999999984924696874707920970120897867915847050405221309697980696558932154585003938846536810050657940462325091296687310550613357744883467580356118956661470790120934939455989945801060127957611687906204227736000759240738169004268617951010459111545827258847272611683204755172652495528787968) (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) (*.f64 1/2 (fma.f64 (/.f64 z y) (neg.f64 z) y))))
(if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) -inf.0) (*.f64 1/2 (+.f64 y (/.f64 x (/.f64 y x)))) (if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) 199999999999999984924696874707920970120897867915847050405221309697980696558932154585003938846536810050657940462325091296687310550613357744883467580356118956661470790120934939455989945801060127957611687906204227736000759240738169004268617951010459111545827258847272611683204755172652495528787968) (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) (*.f64 1/2 (fma.f64 (/.f64 z y) (neg.f64 z) y))))
(if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) -inf.0) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y)) (if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) 199999999999999984924696874707920970120897867915847050405221309697980696558932154585003938846536810050657940462325091296687310550613357744883467580356118956661470790120934939455989945801060127957611687906204227736000759240738169004268617951010459111545827258847272611683204755172652495528787968) (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) (*.f64 -1/2 (-.f64 (*.f64 (/.f64 z y) z) y))))
(if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) -inf.0) (*.f64 1/2 (+.f64 y (/.f64 x (/.f64 y x)))) (if (<=.f64 (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) 199999999999999984924696874707920970120897867915847050405221309697980696558932154585003938846536810050657940462325091296687310550613357744883467580356118956661470790120934939455989945801060127957611687906204227736000759240738169004268617951010459111545827258847272611683204755172652495528787968) (/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2)) (*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y))))
(if (<=.f64 x -13958959128885786) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y)) (if (<=.f64 x 1481162732413157/6129982163463555433433388108601236734474956488734408704) (*.f64 -1/2 (-.f64 (*.f64 (/.f64 z y) z) y)) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))))
(if (<=.f64 x -13958959128885786) (*.f64 1/2 (+.f64 y (/.f64 x (/.f64 y x)))) (if (<=.f64 x 1481162732413157/6129982163463555433433388108601236734474956488734408704) (*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y)) (*.f64 1/2 (+.f64 y (/.f64 x (/.f64 y x))))))
(if (<=.f64 z -6107355875500041/696898287454081973172991196020261297061888) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y)) (if (<=.f64 z -2851728469575911/421249166674228746791672110734681729275580381602196445017243910144) (*.f64 (*.f64 z z) (/.f64 -1/2 y)) (if (<=.f64 z 6985550701113059/590295810358705651712) (*.f64 1/2 (+.f64 (*.f64 x (/.f64 x y)) y)) (if (<=.f64 z 9612382313073149259162845184) (/.f64 (*.f64 z -1/2) (/.f64 y z)) (*.f64 1/2 (+.f64 (*.f64 x (/.f64 x y)) y))))))
(if (<=.f64 z -6107355875500041/696898287454081973172991196020261297061888) (*.f64 1/2 (+.f64 y (/.f64 x (/.f64 y x)))) (if (<=.f64 z -2851728469575911/421249166674228746791672110734681729275580381602196445017243910144) (*.f64 (*.f64 z z) (/.f64 -1/2 y)) (if (<=.f64 z 6985550701113059/590295810358705651712) (*.f64 1/2 (+.f64 y (*.f64 x (/.f64 x y)))) (if (<=.f64 z 9612382313073149259162845184) (/.f64 (*.f64 z -1/2) (/.f64 y z)) (*.f64 1/2 (+.f64 y (*.f64 x (/.f64 x y))))))))
(if (<=.f64 z -6107355875500041/696898287454081973172991196020261297061888) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y)) (if (<=.f64 z -2851728469575911/421249166674228746791672110734681729275580381602196445017243910144) (*.f64 (*.f64 z z) (/.f64 -1/2 y)) (if (<=.f64 z 6985550701113059/590295810358705651712) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y)) (if (<=.f64 z 9612382313073149259162845184) (/.f64 (*.f64 z -1/2) (/.f64 y z)) (*.f64 1/2 (+.f64 (/.f64 x (/.f64 y x)) y))))))
(if (<=.f64 z -6107355875500041/696898287454081973172991196020261297061888) (*.f64 1/2 (+.f64 y (/.f64 x (/.f64 y x)))) (if (<=.f64 z -2851728469575911/421249166674228746791672110734681729275580381602196445017243910144) (*.f64 (*.f64 z z) (/.f64 -1/2 y)) (if (<=.f64 z 6985550701113059/590295810358705651712) (*.f64 1/2 (+.f64 y (/.f64 x (/.f64 y x)))) (if (<=.f64 z 9612382313073149259162845184) (/.f64 (*.f64 z -1/2) (/.f64 y z)) (*.f64 1/2 (+.f64 y (/.f64 x (/.f64 y x))))))))
(if (<=.f64 y -1376099169594043/1146749307995035755805410447651043470398282494584140561868794419693461438044242404035009276555062843277312) (*.f64 1/2 y) (if (<=.f64 y 3251168171837857/1757388200993436087035366604564836663620975436836686184804982645551499054949799949343375268009332366074187855716219099657503228927927460816018951242525454630912) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (if (<=.f64 y 4352132950612665/2417851639229258349412352) (/.f64 (*.f64 x x) (*.f64 y 2)) (*.f64 1/2 y))))
(if (<=.f64 y -1376099169594043/1146749307995035755805410447651043470398282494584140561868794419693461438044242404035009276555062843277312) (*.f64 y 1/2) (if (<=.f64 y 3251168171837857/1757388200993436087035366604564836663620975436836686184804982645551499054949799949343375268009332366074187855716219099657503228927927460816018951242525454630912) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (if (<=.f64 y 4352132950612665/2417851639229258349412352) (/.f64 (*.f64 x x) (*.f64 y 2)) (*.f64 y 1/2))))
(if (<=.f64 y -1376099169594043/1146749307995035755805410447651043470398282494584140561868794419693461438044242404035009276555062843277312) (*.f64 1/2 y) (if (<=.f64 y 3251168171837857/1757388200993436087035366604564836663620975436836686184804982645551499054949799949343375268009332366074187855716219099657503228927927460816018951242525454630912) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (if (<=.f64 y 4352132950612665/2417851639229258349412352) (*.f64 1/2 (/.f64 x (/.f64 y x))) (*.f64 1/2 y))))
(if (<=.f64 y -1376099169594043/1146749307995035755805410447651043470398282494584140561868794419693461438044242404035009276555062843277312) (*.f64 y 1/2) (if (<=.f64 y 3251168171837857/1757388200993436087035366604564836663620975436836686184804982645551499054949799949343375268009332366074187855716219099657503228927927460816018951242525454630912) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (if (<=.f64 y 4352132950612665/2417851639229258349412352) (*.f64 1/2 (/.f64 x (/.f64 y x))) (*.f64 y 1/2))))
(if (<=.f64 y -1376099169594043/1146749307995035755805410447651043470398282494584140561868794419693461438044242404035009276555062843277312) (*.f64 1/2 y) (if (<=.f64 y 3251168171837857/1757388200993436087035366604564836663620975436836686184804982645551499054949799949343375268009332366074187855716219099657503228927927460816018951242525454630912) (/.f64 (*.f64 z -1/2) (/.f64 y z)) (if (<=.f64 y 4352132950612665/2417851639229258349412352) (*.f64 1/2 (/.f64 x (/.f64 y x))) (*.f64 1/2 y))))
(if (<=.f64 y -1376099169594043/1146749307995035755805410447651043470398282494584140561868794419693461438044242404035009276555062843277312) (*.f64 y 1/2) (if (<=.f64 y 3251168171837857/1757388200993436087035366604564836663620975436836686184804982645551499054949799949343375268009332366074187855716219099657503228927927460816018951242525454630912) (/.f64 (*.f64 z -1/2) (/.f64 y z)) (if (<=.f64 y 4352132950612665/2417851639229258349412352) (*.f64 1/2 (/.f64 x (/.f64 y x))) (*.f64 y 1/2))))
(if (<=.f64 y -1520272949452037/460688772561223309599799143187044542348256984914116263229517370635452168260760357920669766257038423772151901248872539660616526444082616288154471954520592778765795328) (*.f64 1/2 y) (if (<=.f64 y 4352132950612665/2417851639229258349412352) (*.f64 1/2 (/.f64 x (/.f64 y x))) (*.f64 1/2 y)))
(if (<=.f64 y -1520272949452037/460688772561223309599799143187044542348256984914116263229517370635452168260760357920669766257038423772151901248872539660616526444082616288154471954520592778765795328) (*.f64 y 1/2) (if (<=.f64 y 4352132950612665/2417851639229258349412352) (*.f64 1/2 (/.f64 x (/.f64 y x))) (*.f64 y 1/2)))
(*.f64 1/2 y)
(*.f64 y 1/2)
Compiler

Compiled 507 to 285 computations (43.8% saved)

soundness299.0ms (2.4%)

Algorithm
egg-herbie
Rules
815×fma-def_binary64
815×fma-def_binary64
803×div-sub_binary64
796×fma-def_binary64
673×associate-/r/_binary64
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
0391465
11091371
22511290
36481206
423621149
01220
12720
26720
313620
432020
575520
6189419
7445119
0391465
11091371
22511290
36481206
423621149
Stop Event
node limit
node limit
node limit
Compiler

Compiled 767 to 539 computations (29.7% saved)

end255.0ms (2%)

Compiler

Compiled 477 to 208 computations (56.4% saved)

Profiling

Loading profile data...