bug366 (missed optimization)

Time bar (total: 3.0s)

analyze2.0ms (0.1%)

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
100%99.9%0%0.1%0%0%0%4
Compiler

Compiled 16 to 10 computations (37.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 1.0ms
Operation ival-add, time spent: 0.0ms, 0.0% of total-time
Operation ival-mult, time spent: 0.0ms, 0.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time
Operation ival-sqrt, time spent: 0.0ms, 0.0% of total-time

sample2.0s (65.8%)

Results
1.9s8255×256valid
0.0ms256valid
Precisions
Click to see histograms. Total time spent on operations: 876.0ms
Operation ival-sqrt, time spent: 373.0ms, 43.0% of total-time
Operation ival-mult, time spent: 249.0ms, 28.0% of total-time
Operation ival-add, time spent: 244.0ms, 28.0% of total-time
Operation const, time spent: 10.0ms, 1.0% of total-time
Bogosity

preprocess174.0ms (5.7%)

Algorithm
egg-herbie
Rules
424×fma-neg
240×fma-define
90×unsub-neg
62×neg-sub0
60×sub-neg
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1520-0-(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z))))
00-0-x
00-0-(*.f64 y y)
00-0-(*.f64 z z)
00-0-y
00-0-(+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z)))
00-0-(*.f64 x x)
00-0-z
00-0-(+.f64 (*.f64 y y) (*.f64 z z))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
042507
191507
2179507
3394507
4678507
5828507
6844507
Stop Event
saturated
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z))))
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z))))
(sqrt.f64 (+.f64 (*.f64 (neg.f64 x) (neg.f64 x)) (+.f64 (*.f64 y y) (*.f64 z z))))
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 (neg.f64 y) (neg.f64 y)) (*.f64 z z))))
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 (neg.f64 z) (neg.f64 z)))))
(neg.f64 (sqrt.f64 (+.f64 (*.f64 (neg.f64 x) (neg.f64 x)) (+.f64 (*.f64 y y) (*.f64 z z)))))
(neg.f64 (sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 (neg.f64 y) (neg.f64 y)) (*.f64 z z)))))
(neg.f64 (sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 (neg.f64 z) (neg.f64 z))))))
(sqrt.f64 (+.f64 (*.f64 y y) (+.f64 (*.f64 x x) (*.f64 z z))))
(sqrt.f64 (+.f64 (*.f64 z z) (+.f64 (*.f64 y y) (*.f64 x x))))
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 z z) (*.f64 y y))))
Outputs
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z))))
(sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z))))
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z))))
(sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z))))
(sqrt.f64 (+.f64 (*.f64 (neg.f64 x) (neg.f64 x)) (+.f64 (*.f64 y y) (*.f64 z z))))
(sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z))))
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 (neg.f64 y) (neg.f64 y)) (*.f64 z z))))
(sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z))))
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 (neg.f64 z) (neg.f64 z)))))
(sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z))))
(neg.f64 (sqrt.f64 (+.f64 (*.f64 (neg.f64 x) (neg.f64 x)) (+.f64 (*.f64 y y) (*.f64 z z)))))
(neg.f64 (sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z)))))
(neg.f64 (sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 (neg.f64 y) (neg.f64 y)) (*.f64 z z)))))
(neg.f64 (sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z)))))
(neg.f64 (sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 (neg.f64 z) (neg.f64 z))))))
(neg.f64 (sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z)))))
(sqrt.f64 (+.f64 (*.f64 y y) (+.f64 (*.f64 x x) (*.f64 z z))))
(sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z))))
(sqrt.f64 (+.f64 (*.f64 z z) (+.f64 (*.f64 y y) (*.f64 x x))))
(sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z))))
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 z z) (*.f64 y y))))
(sqrt.f64 (fma.f64 y y (fma.f64 x x (*.f64 z z))))
Symmetry

(abs x)

(abs y)

(abs z)

(sort x y z)

Compiler

Compiled 107 to 29 computations (72.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 28.0ms
Operation ival-mult, time spent: 11.0ms, 40.0% of total-time
Operation ival-sqrt, time spent: 10.0ms, 36.0% of total-time
Operation ival-add, time spent: 6.0ms, 22.0% of total-time
Operation const, time spent: 1.0ms, 4.0% of total-time

eval0.0ms (0%)

Compiler

Compiled 13 to 7 computations (46.2% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
44.8%
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z))))
Compiler

Compiled 15 to 9 computations (40% saved)

localize47.0ms (1.5%)

Localize:

Found 2 expressions with local error:

NewAccuracyProgram
100.0%
(+.f64 (*.f64 y y) (*.f64 z z))
44.8%
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z))))
Compiler

Compiled 46 to 10 computations (78.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
Operation ival-mult, time spent: 7.0ms, 53.0% of total-time
Operation ival-sqrt, time spent: 4.0ms, 30.0% of total-time
Operation ival-add, time spent: 3.0ms, 23.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time

series12.0ms (0.4%)

Counts
2 → 60
Calls
Call 1
Inputs
#<alt (sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z))))>
#<alt (+.f64 (*.f64 y y) (*.f64 z z))>
Outputs
#<alt (sqrt.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)))>
#<alt (+.f64 (sqrt.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2))) (*.f64 1/2 (*.f64 (pow.f64 x 2) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (pow.f64 z 2)))))))>
#<alt (+.f64 (sqrt.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2))) (*.f64 (pow.f64 x 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 x 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 3))))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (pow.f64 z 2))))))))>
#<alt (+.f64 (sqrt.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2))) (*.f64 (pow.f64 x 2) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (pow.f64 z 2))))) (*.f64 (pow.f64 x 2) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 3)))) (*.f64 1/16 (*.f64 (pow.f64 x 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 5))))))))))>
#<alt x>
#<alt (*.f64 x (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2)))))>
#<alt (*.f64 x (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2))))))>
#<alt (*.f64 x (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 3) (pow.f64 x 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2)))))))>
#<alt (*.f64 -1 x)>
#<alt (*.f64 -1 (*.f64 x (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2))))))>
#<alt (*.f64 -1 (*.f64 x (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2)))))))>
#<alt (*.f64 -1 (*.f64 x (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 3) (pow.f64 x 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2))))))))>
#<alt (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)))>
#<alt (+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2))) (*.f64 1/2 (*.f64 (pow.f64 y 2) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 z 2)))))))>
#<alt (+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 3))))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 z 2))))))))>
#<alt (+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 z 2))))) (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 3)))) (*.f64 1/16 (*.f64 (pow.f64 y 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 5))))))))))>
#<alt y>
#<alt (*.f64 y (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2)))))>
#<alt (*.f64 y (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 2) (pow.f64 y 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2))))))>
#<alt (*.f64 y (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 2) (pow.f64 y 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 3) (pow.f64 y 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2)))))))>
#<alt (*.f64 -1 y)>
#<alt (*.f64 -1 (*.f64 y (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2))))))>
#<alt (*.f64 -1 (*.f64 y (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 2) (pow.f64 y 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2)))))))>
#<alt (*.f64 -1 (*.f64 y (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 2) (pow.f64 y 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 3) (pow.f64 y 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2))))))))>
#<alt (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)))>
#<alt (+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2))) (*.f64 1/2 (*.f64 (pow.f64 z 2) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 y 2)))))))>
#<alt (+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2))) (*.f64 (pow.f64 z 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 z 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 3))))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 y 2))))))))>
#<alt (+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2))) (*.f64 (pow.f64 z 2) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 y 2))))) (*.f64 (pow.f64 z 2) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 3)))) (*.f64 1/16 (*.f64 (pow.f64 z 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 5))))))))))>
#<alt z>
#<alt (*.f64 z (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2)))))>
#<alt (*.f64 z (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 2) (pow.f64 z 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2))))))>
#<alt (*.f64 z (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 2) (pow.f64 z 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 3) (pow.f64 z 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2)))))))>
#<alt (*.f64 -1 z)>
#<alt (*.f64 -1 (*.f64 z (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2))))))>
#<alt (*.f64 -1 (*.f64 z (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 2) (pow.f64 z 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2)))))))>
#<alt (*.f64 -1 (*.f64 z (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 2) (pow.f64 z 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 3) (pow.f64 z 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2))))))))>
#<alt (pow.f64 z 2)>
#<alt (+.f64 (pow.f64 y 2) (pow.f64 z 2))>
#<alt (+.f64 (pow.f64 y 2) (pow.f64 z 2))>
#<alt (+.f64 (pow.f64 y 2) (pow.f64 z 2))>
#<alt (pow.f64 y 2)>
#<alt (*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))>
#<alt (*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))>
#<alt (*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))>
#<alt (pow.f64 y 2)>
#<alt (*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))>
#<alt (*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))>
#<alt (*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))>
#<alt (pow.f64 y 2)>
#<alt (+.f64 (pow.f64 y 2) (pow.f64 z 2))>
#<alt (+.f64 (pow.f64 y 2) (pow.f64 z 2))>
#<alt (+.f64 (pow.f64 y 2) (pow.f64 z 2))>
#<alt (pow.f64 z 2)>
#<alt (*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))>
#<alt (*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))>
#<alt (*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))>
#<alt (pow.f64 z 2)>
#<alt (*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))>
#<alt (*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))>
#<alt (*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))>
Calls

15 calls:

TimeVariablePointExpression
2.0ms
z
@inf
(sqrt (+ (* x x) (+ (* y y) (* z z))))
1.0ms
y
@0
(sqrt (+ (* x x) (+ (* y y) (* z z))))
1.0ms
z
@0
(sqrt (+ (* x x) (+ (* y y) (* z z))))
1.0ms
x
@0
(sqrt (+ (* x x) (+ (* y y) (* z z))))
1.0ms
x
@inf
(sqrt (+ (* x x) (+ (* y y) (* z z))))

rewrite225.0ms (7.4%)

Algorithm
batch-egg-rewrite
Rules
974×log1p-expm1-u
974×expm1-log1p-u
914×fma-define
874×log-prod
450×fma-neg
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01666
120941
2275941
Stop Event
node limit
Counts
2 → 85
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z))))
(+.f64 (*.f64 y y) (*.f64 z z))
Outputs
(+.f64 0 (hypot.f64 x (hypot.f64 y z)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z)))) (cbrt.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z)))))) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z))))))
(-.f64 (exp.f64 (log1p.f64 (hypot.f64 x (hypot.f64 y z)))) 1)
(*.f64 (hypot.f64 x (hypot.f64 y z)) 1)
(*.f64 1 (hypot.f64 x (hypot.f64 y z)))
(*.f64 (cbrt.f64 (hypot.f64 x (hypot.f64 y z))) (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)))
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)) (cbrt.f64 (hypot.f64 x (hypot.f64 y z))))
(*.f64 (sqrt.f64 (hypot.f64 x (hypot.f64 y z))) (sqrt.f64 (hypot.f64 x (hypot.f64 y z))))
(*.f64 (pow.f64 1 1/2) (hypot.f64 x (hypot.f64 y z)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)) 2) 1/2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)) 2)) (sqrt.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (pow.f64 (hypot.f64 y z) 2) 2))) (sqrt.f64 (-.f64 (pow.f64 x 2) (pow.f64 (hypot.f64 y z) 2))))
(/.f64 (hypot.f64 (pow.f64 x 3) (pow.f64 (hypot.f64 y z) 3)) (sqrt.f64 (fma.f64 (pow.f64 (hypot.f64 y z) 2) (-.f64 (pow.f64 (hypot.f64 y z) 2) (pow.f64 x 2)) (pow.f64 x 4))))
(pow.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2) 1/2)
(pow.f64 (hypot.f64 x (hypot.f64 y z)) 1)
(pow.f64 (cbrt.f64 (hypot.f64 x (hypot.f64 y z))) 3)
(pow.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 3) 1/3)
(pow.f64 (sqrt.f64 (hypot.f64 x (hypot.f64 y z))) 2)
(fabs.f64 (hypot.f64 x (hypot.f64 y z)))
(log.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z))))
(log.f64 (+.f64 1 (expm1.f64 (hypot.f64 x (hypot.f64 y z)))))
(cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 3))
(expm1.f64 (log1p.f64 (hypot.f64 x (hypot.f64 y z))))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 x y))
(hypot.f64 (hypot.f64 y z) x)
(hypot.f64 (hypot.f64 x y) z)
(log1p.f64 (expm1.f64 (hypot.f64 x (hypot.f64 y z))))
(exp.f64 (log.f64 (hypot.f64 x (hypot.f64 y z))))
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)) 1/2))
(exp.f64 (*.f64 (log.f64 (hypot.f64 x (hypot.f64 y z))) 1))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (hypot.f64 y z) 2))) 1)
(-.f64 (/.f64 (pow.f64 y 4) (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (/.f64 (pow.f64 z 4) (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(*.f64 (pow.f64 (hypot.f64 y z) 2) 1)
(*.f64 1 (pow.f64 (hypot.f64 y z) 2))
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y z) 2)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y z) 2)) 2))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y z) 2)) 2) (cbrt.f64 (pow.f64 (hypot.f64 y z) 2)))
(*.f64 (hypot.f64 y z) (hypot.f64 y z))
(*.f64 (+.f64 (pow.f64 z 6) (pow.f64 y 6)) (/.f64 1 (-.f64 (+.f64 (pow.f64 y 4) (pow.f64 z 4)) (pow.f64 (*.f64 y z) 2))))
(*.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (/.f64 1 (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(/.f64 1 (/.f64 (-.f64 (+.f64 (pow.f64 y 4) (pow.f64 z 4)) (pow.f64 (*.f64 y z) 2)) (+.f64 (pow.f64 z 6) (pow.f64 y 6))))
(/.f64 1 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (-.f64 (pow.f64 y 4) (pow.f64 z 4))))
(/.f64 (+.f64 (pow.f64 z 6) (pow.f64 y 6)) (-.f64 (+.f64 (pow.f64 y 4) (pow.f64 z 4)) (pow.f64 (*.f64 y z) 2)))
(/.f64 (+.f64 (pow.f64 z 6) (pow.f64 y 6)) (+.f64 (pow.f64 z 4) (-.f64 (pow.f64 y 4) (pow.f64 (*.f64 y z) 2))))
(/.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (-.f64 (pow.f64 y 2) (pow.f64 z 2)))
(/.f64 (neg.f64 (+.f64 (pow.f64 z 6) (pow.f64 y 6))) (neg.f64 (-.f64 (+.f64 (pow.f64 y 4) (pow.f64 z 4)) (pow.f64 (*.f64 y z) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4))) (neg.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(/.f64 (-.f64 (pow.f64 z 4) (pow.f64 y 4)) (-.f64 (pow.f64 z 2) (pow.f64 y 2)))
(pow.f64 (pow.f64 (hypot.f64 y z) 2) 1)
(pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y z) 2)) 3)
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 y z) 2) 3) 1/3)
(pow.f64 (hypot.f64 y z) 2)
(sqrt.f64 (pow.f64 (pow.f64 (hypot.f64 y z) 2) 2))
(log.f64 (exp.f64 (pow.f64 (hypot.f64 y z) 2)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (hypot.f64 y z) 2))))
(log.f64 (*.f64 (exp.f64 (pow.f64 y 2)) (+.f64 1 (expm1.f64 (pow.f64 z 2)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 y 2))) (exp.f64 (pow.f64 z 2))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 y 2))) (+.f64 1 (expm1.f64 (pow.f64 z 2)))))
(log.f64 (*.f64 (exp.f64 (pow.f64 z 2)) (+.f64 1 (expm1.f64 (pow.f64 y 2)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 z 2))) (exp.f64 (pow.f64 y 2))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 z 2))) (+.f64 1 (expm1.f64 (pow.f64 y 2)))))
(cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 y z) 2) 3))
(expm1.f64 (log1p.f64 (pow.f64 (hypot.f64 y z) 2)))
(log1p.f64 (expm1.f64 (pow.f64 (hypot.f64 y z) 2)))
(exp.f64 (log.f64 (pow.f64 (hypot.f64 y z) 2)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 y z) 2)) 1))
(fma.f64 y y (pow.f64 z 2))
(fma.f64 (pow.f64 y 2) 1 (pow.f64 z 2))
(fma.f64 z z (pow.f64 y 2))
(fma.f64 (pow.f64 z 2) 1 (pow.f64 y 2))
(fma.f64 1 (pow.f64 y 2) (pow.f64 z 2))
(fma.f64 1 (pow.f64 z 2) (pow.f64 y 2))
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 (pow.f64 z 4)) (pow.f64 y 2))
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) z) (pow.f64 y 2))
(fma.f64 (cbrt.f64 (pow.f64 z 4)) (pow.f64 (cbrt.f64 z) 2) (pow.f64 y 2))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 (pow.f64 y 4)) (pow.f64 z 2))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) y) (pow.f64 z 2))
(fma.f64 (cbrt.f64 (pow.f64 y 4)) (pow.f64 (cbrt.f64 y) 2) (pow.f64 z 2))
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) y) (pow.f64 z 2))
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) z) (pow.f64 y 2))
(fma.f64 (*.f64 y (sqrt.f64 y)) (sqrt.f64 y) (pow.f64 z 2))
(fma.f64 (*.f64 z (sqrt.f64 z)) (sqrt.f64 z) (pow.f64 y 2))
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (pow.f64 y 2))
(fma.f64 (*.f64 y (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (pow.f64 z 2))

simplify144.0ms (4.7%)

Algorithm
egg-herbie
Rules
1336×distribute-lft-in
1326×distribute-rgt-in
1004×times-frac
848×fma-neg
370×associate-/r*
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03627132
18776576
228106572
373736564
Stop Event
node limit
Counts
145 → 221
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2))) (*.f64 1/2 (*.f64 (pow.f64 x 2) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (pow.f64 z 2)))))))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2))) (*.f64 (pow.f64 x 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 x 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 3))))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (pow.f64 z 2))))))))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2))) (*.f64 (pow.f64 x 2) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (pow.f64 z 2))))) (*.f64 (pow.f64 x 2) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 3)))) (*.f64 1/16 (*.f64 (pow.f64 x 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 5))))))))))
x
(*.f64 x (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2)))))
(*.f64 x (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2))))))
(*.f64 x (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 3) (pow.f64 x 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2)))))))
(*.f64 -1 x)
(*.f64 -1 (*.f64 x (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2))))))
(*.f64 -1 (*.f64 x (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2)))))))
(*.f64 -1 (*.f64 x (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 3) (pow.f64 x 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2))))))))
(sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2))) (*.f64 1/2 (*.f64 (pow.f64 y 2) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 z 2)))))))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 3))))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 z 2))))))))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 z 2))))) (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 3)))) (*.f64 1/16 (*.f64 (pow.f64 y 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 5))))))))))
y
(*.f64 y (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2)))))
(*.f64 y (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 2) (pow.f64 y 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2))))))
(*.f64 y (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 2) (pow.f64 y 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 3) (pow.f64 y 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2)))))))
(*.f64 -1 y)
(*.f64 -1 (*.f64 y (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2))))))
(*.f64 -1 (*.f64 y (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 2) (pow.f64 y 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2)))))))
(*.f64 -1 (*.f64 y (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 2) (pow.f64 y 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 3) (pow.f64 y 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2))))))))
(sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2))) (*.f64 1/2 (*.f64 (pow.f64 z 2) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 y 2)))))))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2))) (*.f64 (pow.f64 z 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 z 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 3))))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 y 2))))))))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2))) (*.f64 (pow.f64 z 2) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 y 2))))) (*.f64 (pow.f64 z 2) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 3)))) (*.f64 1/16 (*.f64 (pow.f64 z 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 5))))))))))
z
(*.f64 z (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2)))))
(*.f64 z (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 2) (pow.f64 z 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2))))))
(*.f64 z (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 2) (pow.f64 z 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 3) (pow.f64 z 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2)))))))
(*.f64 -1 z)
(*.f64 -1 (*.f64 z (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2))))))
(*.f64 -1 (*.f64 z (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 2) (pow.f64 z 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2)))))))
(*.f64 -1 (*.f64 z (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 2) (pow.f64 z 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 3) (pow.f64 z 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2))))))))
(pow.f64 z 2)
(+.f64 (pow.f64 y 2) (pow.f64 z 2))
(+.f64 (pow.f64 y 2) (pow.f64 z 2))
(+.f64 (pow.f64 y 2) (pow.f64 z 2))
(pow.f64 y 2)
(*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))
(*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))
(*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))
(pow.f64 y 2)
(*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))
(*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))
(*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))
(pow.f64 y 2)
(+.f64 (pow.f64 y 2) (pow.f64 z 2))
(+.f64 (pow.f64 y 2) (pow.f64 z 2))
(+.f64 (pow.f64 y 2) (pow.f64 z 2))
(pow.f64 z 2)
(*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))
(*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))
(*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))
(pow.f64 z 2)
(*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))
(*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))
(*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))
(+.f64 0 (hypot.f64 x (hypot.f64 y z)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z)))) (cbrt.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z)))))) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z))))))
(-.f64 (exp.f64 (log1p.f64 (hypot.f64 x (hypot.f64 y z)))) 1)
(*.f64 (hypot.f64 x (hypot.f64 y z)) 1)
(*.f64 1 (hypot.f64 x (hypot.f64 y z)))
(*.f64 (cbrt.f64 (hypot.f64 x (hypot.f64 y z))) (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)))
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)) (cbrt.f64 (hypot.f64 x (hypot.f64 y z))))
(*.f64 (sqrt.f64 (hypot.f64 x (hypot.f64 y z))) (sqrt.f64 (hypot.f64 x (hypot.f64 y z))))
(*.f64 (pow.f64 1 1/2) (hypot.f64 x (hypot.f64 y z)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)) 2) 1/2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)) 2)) (sqrt.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (pow.f64 (hypot.f64 y z) 2) 2))) (sqrt.f64 (-.f64 (pow.f64 x 2) (pow.f64 (hypot.f64 y z) 2))))
(/.f64 (hypot.f64 (pow.f64 x 3) (pow.f64 (hypot.f64 y z) 3)) (sqrt.f64 (fma.f64 (pow.f64 (hypot.f64 y z) 2) (-.f64 (pow.f64 (hypot.f64 y z) 2) (pow.f64 x 2)) (pow.f64 x 4))))
(pow.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2) 1/2)
(pow.f64 (hypot.f64 x (hypot.f64 y z)) 1)
(pow.f64 (cbrt.f64 (hypot.f64 x (hypot.f64 y z))) 3)
(pow.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 3) 1/3)
(pow.f64 (sqrt.f64 (hypot.f64 x (hypot.f64 y z))) 2)
(fabs.f64 (hypot.f64 x (hypot.f64 y z)))
(log.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z))))
(log.f64 (+.f64 1 (expm1.f64 (hypot.f64 x (hypot.f64 y z)))))
(cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 3))
(expm1.f64 (log1p.f64 (hypot.f64 x (hypot.f64 y z))))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 x y))
(hypot.f64 (hypot.f64 y z) x)
(hypot.f64 (hypot.f64 x y) z)
(log1p.f64 (expm1.f64 (hypot.f64 x (hypot.f64 y z))))
(exp.f64 (log.f64 (hypot.f64 x (hypot.f64 y z))))
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)) 1/2))
(exp.f64 (*.f64 (log.f64 (hypot.f64 x (hypot.f64 y z))) 1))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (hypot.f64 y z) 2))) 1)
(-.f64 (/.f64 (pow.f64 y 4) (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (/.f64 (pow.f64 z 4) (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(*.f64 (pow.f64 (hypot.f64 y z) 2) 1)
(*.f64 1 (pow.f64 (hypot.f64 y z) 2))
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y z) 2)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y z) 2)) 2))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y z) 2)) 2) (cbrt.f64 (pow.f64 (hypot.f64 y z) 2)))
(*.f64 (hypot.f64 y z) (hypot.f64 y z))
(*.f64 (+.f64 (pow.f64 z 6) (pow.f64 y 6)) (/.f64 1 (-.f64 (+.f64 (pow.f64 y 4) (pow.f64 z 4)) (pow.f64 (*.f64 y z) 2))))
(*.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (/.f64 1 (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(/.f64 1 (/.f64 (-.f64 (+.f64 (pow.f64 y 4) (pow.f64 z 4)) (pow.f64 (*.f64 y z) 2)) (+.f64 (pow.f64 z 6) (pow.f64 y 6))))
(/.f64 1 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (-.f64 (pow.f64 y 4) (pow.f64 z 4))))
(/.f64 (+.f64 (pow.f64 z 6) (pow.f64 y 6)) (-.f64 (+.f64 (pow.f64 y 4) (pow.f64 z 4)) (pow.f64 (*.f64 y z) 2)))
(/.f64 (+.f64 (pow.f64 z 6) (pow.f64 y 6)) (+.f64 (pow.f64 z 4) (-.f64 (pow.f64 y 4) (pow.f64 (*.f64 y z) 2))))
(/.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (-.f64 (pow.f64 y 2) (pow.f64 z 2)))
(/.f64 (neg.f64 (+.f64 (pow.f64 z 6) (pow.f64 y 6))) (neg.f64 (-.f64 (+.f64 (pow.f64 y 4) (pow.f64 z 4)) (pow.f64 (*.f64 y z) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4))) (neg.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(/.f64 (-.f64 (pow.f64 z 4) (pow.f64 y 4)) (-.f64 (pow.f64 z 2) (pow.f64 y 2)))
(pow.f64 (pow.f64 (hypot.f64 y z) 2) 1)
(pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y z) 2)) 3)
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 y z) 2) 3) 1/3)
(pow.f64 (hypot.f64 y z) 2)
(sqrt.f64 (pow.f64 (pow.f64 (hypot.f64 y z) 2) 2))
(log.f64 (exp.f64 (pow.f64 (hypot.f64 y z) 2)))
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (hypot.f64 y z) 2))))
(log.f64 (*.f64 (exp.f64 (pow.f64 y 2)) (+.f64 1 (expm1.f64 (pow.f64 z 2)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 y 2))) (exp.f64 (pow.f64 z 2))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 y 2))) (+.f64 1 (expm1.f64 (pow.f64 z 2)))))
(log.f64 (*.f64 (exp.f64 (pow.f64 z 2)) (+.f64 1 (expm1.f64 (pow.f64 y 2)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 z 2))) (exp.f64 (pow.f64 y 2))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 z 2))) (+.f64 1 (expm1.f64 (pow.f64 y 2)))))
(cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 y z) 2) 3))
(expm1.f64 (log1p.f64 (pow.f64 (hypot.f64 y z) 2)))
(log1p.f64 (expm1.f64 (pow.f64 (hypot.f64 y z) 2)))
(exp.f64 (log.f64 (pow.f64 (hypot.f64 y z) 2)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 y z) 2)) 1))
(fma.f64 y y (pow.f64 z 2))
(fma.f64 (pow.f64 y 2) 1 (pow.f64 z 2))
(fma.f64 z z (pow.f64 y 2))
(fma.f64 (pow.f64 z 2) 1 (pow.f64 y 2))
(fma.f64 1 (pow.f64 y 2) (pow.f64 z 2))
(fma.f64 1 (pow.f64 z 2) (pow.f64 y 2))
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 (pow.f64 z 4)) (pow.f64 y 2))
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) z) (pow.f64 y 2))
(fma.f64 (cbrt.f64 (pow.f64 z 4)) (pow.f64 (cbrt.f64 z) 2) (pow.f64 y 2))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 (pow.f64 y 4)) (pow.f64 z 2))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) y) (pow.f64 z 2))
(fma.f64 (cbrt.f64 (pow.f64 y 4)) (pow.f64 (cbrt.f64 y) 2) (pow.f64 z 2))
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) y) (pow.f64 z 2))
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) z) (pow.f64 y 2))
(fma.f64 (*.f64 y (sqrt.f64 y)) (sqrt.f64 y) (pow.f64 z 2))
(fma.f64 (*.f64 z (sqrt.f64 z)) (sqrt.f64 z) (pow.f64 y 2))
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (pow.f64 y 2))
(fma.f64 (*.f64 y (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (pow.f64 z 2))
Outputs
(sqrt.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)))
(hypot.f64 y z)
(+.f64 (sqrt.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2))) (*.f64 1/2 (*.f64 (pow.f64 x 2) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (pow.f64 z 2)))))))
(+.f64 (*.f64 (*.f64 1/2 (pow.f64 x 2)) (sqrt.f64 (/.f64 1 (fma.f64 z z (pow.f64 y 2))))) (hypot.f64 y z))
(fma.f64 1/2 (*.f64 (pow.f64 x 2) (sqrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y z) 2)))) (hypot.f64 y z))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2))) (*.f64 (pow.f64 x 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 x 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 3))))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (pow.f64 z 2))))))))
(+.f64 (*.f64 (pow.f64 x 2) (fma.f64 -1/8 (*.f64 (pow.f64 x 2) (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 z z (pow.f64 y 2)) 3)))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (fma.f64 z z (pow.f64 y 2))))))) (hypot.f64 y z))
(fma.f64 (pow.f64 x 2) (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y z) 2))) (*.f64 (pow.f64 x 2) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y z) 6)))))) (hypot.f64 y z))
(fma.f64 (pow.f64 x 2) (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y z) 2))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y z) 6))) (*.f64 (pow.f64 x 2) -1/8))) (hypot.f64 y z))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2))) (*.f64 (pow.f64 x 2) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (pow.f64 z 2))))) (*.f64 (pow.f64 x 2) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 3)))) (*.f64 1/16 (*.f64 (pow.f64 x 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 5))))))))))
(+.f64 (*.f64 (pow.f64 x 2) (fma.f64 1/2 (sqrt.f64 (/.f64 1 (fma.f64 z z (pow.f64 y 2)))) (*.f64 (pow.f64 x 2) (fma.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 z z (pow.f64 y 2)) 3))) (*.f64 (*.f64 1/16 (pow.f64 x 2)) (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 z z (pow.f64 y 2)) 5)))))))) (hypot.f64 y z))
(fma.f64 (pow.f64 x 2) (fma.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y z) 2))) (*.f64 (pow.f64 x 2) (fma.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y z) 6))) (*.f64 1/16 (*.f64 (pow.f64 x 2) (sqrt.f64 (/.f64 1 (pow.f64 (pow.f64 (hypot.f64 y z) 2) 5)))))))) (hypot.f64 y z))
(fma.f64 (pow.f64 x 2) (fma.f64 (pow.f64 x 2) (fma.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y z) 6))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (pow.f64 (hypot.f64 y z) 2) 5))) (*.f64 (pow.f64 x 2) 1/16))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (pow.f64 (hypot.f64 y z) 2))))) (hypot.f64 y z))
x
(*.f64 x (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2)))))
(*.f64 x (+.f64 1 (*.f64 1/2 (/.f64 (fma.f64 z z (pow.f64 y 2)) (pow.f64 x 2)))))
(*.f64 x (fma.f64 1/2 (/.f64 (pow.f64 (hypot.f64 y z) 2) (pow.f64 x 2)) 1))
(*.f64 x (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2))))))
(*.f64 x (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 y 2)) 2) (pow.f64 x 4)) (*.f64 1/2 (/.f64 (fma.f64 z z (pow.f64 y 2)) (pow.f64 x 2))))))
(*.f64 x (+.f64 1 (fma.f64 1/2 (/.f64 (pow.f64 (hypot.f64 y z) 2) (pow.f64 x 2)) (*.f64 -1/8 (/.f64 (pow.f64 (hypot.f64 y z) 4) (pow.f64 x 4))))))
(*.f64 x (+.f64 (fma.f64 1/2 (/.f64 (pow.f64 (hypot.f64 y z) 2) (pow.f64 x 2)) 1) (*.f64 -1/8 (/.f64 (pow.f64 (hypot.f64 y z) 4) (pow.f64 x 4)))))
(*.f64 x (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 3) (pow.f64 x 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2)))))))
(*.f64 x (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 y 2)) 2) (pow.f64 x 4)) (fma.f64 1/16 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 y 2)) 3) (pow.f64 x 6)) (*.f64 1/2 (/.f64 (fma.f64 z z (pow.f64 y 2)) (pow.f64 x 2)))))))
(*.f64 x (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (hypot.f64 y z) 4) (pow.f64 x 4)) (fma.f64 1/2 (/.f64 (pow.f64 (hypot.f64 y z) 2) (pow.f64 x 2)) (*.f64 1/16 (/.f64 (pow.f64 (hypot.f64 y z) 6) (pow.f64 x 6)))))))
(*.f64 x (+.f64 (fma.f64 1/2 (/.f64 (pow.f64 (hypot.f64 y z) 2) (pow.f64 x 2)) 1) (fma.f64 -1/8 (/.f64 (pow.f64 (hypot.f64 y z) 4) (pow.f64 x 4)) (/.f64 (*.f64 1/16 (pow.f64 (hypot.f64 y z) 6)) (pow.f64 x 6)))))
(*.f64 -1 x)
(neg.f64 x)
(*.f64 -1 (*.f64 x (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2))))))
(*.f64 (neg.f64 x) (+.f64 1 (*.f64 1/2 (/.f64 (fma.f64 z z (pow.f64 y 2)) (pow.f64 x 2)))))
(*.f64 x (neg.f64 (fma.f64 1/2 (/.f64 (pow.f64 (hypot.f64 y z) 2) (pow.f64 x 2)) 1)))
(*.f64 (fma.f64 1/2 (/.f64 (pow.f64 (hypot.f64 y z) 2) (pow.f64 x 2)) 1) (neg.f64 x))
(*.f64 -1 (*.f64 x (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2)))))))
(*.f64 (neg.f64 x) (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 y 2)) 2) (pow.f64 x 4)) (*.f64 1/2 (/.f64 (fma.f64 z z (pow.f64 y 2)) (pow.f64 x 2))))))
(*.f64 (+.f64 1 (fma.f64 1/2 (/.f64 (pow.f64 (hypot.f64 y z) 2) (pow.f64 x 2)) (*.f64 -1/8 (/.f64 (pow.f64 (hypot.f64 y z) 4) (pow.f64 x 4))))) (neg.f64 x))
(*.f64 x (neg.f64 (+.f64 (fma.f64 1/2 (/.f64 (pow.f64 (hypot.f64 y z) 2) (pow.f64 x 2)) 1) (*.f64 -1/8 (/.f64 (pow.f64 (hypot.f64 y z) 4) (pow.f64 x 4))))))
(*.f64 -1 (*.f64 x (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 2) (pow.f64 x 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) 3) (pow.f64 x 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 z 2)) (pow.f64 x 2))))))))
(*.f64 (neg.f64 x) (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 y 2)) 2) (pow.f64 x 4)) (fma.f64 1/16 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 y 2)) 3) (pow.f64 x 6)) (*.f64 1/2 (/.f64 (fma.f64 z z (pow.f64 y 2)) (pow.f64 x 2)))))))
(*.f64 x (neg.f64 (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (hypot.f64 y z) 4) (pow.f64 x 4)) (fma.f64 1/2 (/.f64 (pow.f64 (hypot.f64 y z) 2) (pow.f64 x 2)) (*.f64 1/16 (/.f64 (pow.f64 (hypot.f64 y z) 6) (pow.f64 x 6))))))))
(*.f64 x (neg.f64 (+.f64 (fma.f64 1/2 (/.f64 (pow.f64 (hypot.f64 y z) 2) (pow.f64 x 2)) 1) (fma.f64 -1/8 (/.f64 (pow.f64 (hypot.f64 y z) 4) (pow.f64 x 4)) (/.f64 (*.f64 1/16 (pow.f64 (hypot.f64 y z) 6)) (pow.f64 x 6))))))
(sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)))
(sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))
(hypot.f64 z x)
(+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2))) (*.f64 1/2 (*.f64 (pow.f64 y 2) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 z 2)))))))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (*.f64 (*.f64 1/2 (pow.f64 y 2)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))
(fma.f64 1/2 (*.f64 (pow.f64 y 2) (sqrt.f64 (/.f64 1 (fma.f64 z z (pow.f64 x 2))))) (hypot.f64 z x))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 y 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 3))))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 z 2))))))))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (*.f64 (pow.f64 y 2) (fma.f64 -1/8 (*.f64 (pow.f64 y 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 3)))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 z 2) (pow.f64 x 2))))))))
(fma.f64 (pow.f64 y 2) (fma.f64 1/2 (sqrt.f64 (/.f64 1 (fma.f64 z z (pow.f64 x 2)))) (*.f64 (pow.f64 y 2) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 3)))))) (hypot.f64 z x))
(fma.f64 (pow.f64 y 2) (fma.f64 1/2 (sqrt.f64 (/.f64 1 (fma.f64 z z (pow.f64 x 2)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 3))) (*.f64 (pow.f64 y 2) -1/8))) (hypot.f64 z x))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2))) (*.f64 (pow.f64 y 2) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 z 2))))) (*.f64 (pow.f64 y 2) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 3)))) (*.f64 1/16 (*.f64 (pow.f64 y 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 5))))))))))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2))) (*.f64 (pow.f64 y 2) (fma.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 z 2) (pow.f64 x 2)))) (*.f64 (pow.f64 y 2) (fma.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 3))) (*.f64 (*.f64 1/16 (pow.f64 y 2)) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 5)))))))))
(fma.f64 (pow.f64 y 2) (fma.f64 (pow.f64 y 2) (fma.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 3))) (*.f64 (pow.f64 y 2) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 5))) 1/16))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (fma.f64 z z (pow.f64 x 2)))))) (hypot.f64 z x))
(fma.f64 (pow.f64 y 2) (fma.f64 (pow.f64 y 2) (fma.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 3))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 5))) (*.f64 (pow.f64 y 2) 1/16))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (fma.f64 z z (pow.f64 x 2)))))) (hypot.f64 z x))
y
(*.f64 y (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2)))))
(*.f64 y (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2)))))
(*.f64 y (fma.f64 1/2 (/.f64 (fma.f64 z z (pow.f64 x 2)) (pow.f64 y 2)) 1))
(*.f64 y (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 2) (pow.f64 y 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2))))))
(*.f64 y (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2) (pow.f64 y 4)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))))))
(*.f64 y (+.f64 1 (fma.f64 1/2 (/.f64 (fma.f64 z z (pow.f64 x 2)) (pow.f64 y 2)) (*.f64 -1/8 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 2) (pow.f64 y 4))))))
(*.f64 y (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 2) (pow.f64 y 4)) (*.f64 (fma.f64 z z (pow.f64 x 2)) (/.f64 1/2 (pow.f64 y 2))))))
(*.f64 y (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 2) (pow.f64 y 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 3) (pow.f64 y 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2)))))))
(*.f64 y (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2) (pow.f64 y 4)) (fma.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 3) (pow.f64 y 6)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2)))))))
(*.f64 y (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 2) (pow.f64 y 4)) (fma.f64 1/2 (/.f64 (fma.f64 z z (pow.f64 x 2)) (pow.f64 y 2)) (*.f64 1/16 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 3) (pow.f64 y 6)))))))
(*.f64 y (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 2) (pow.f64 y 4)) (fma.f64 1/16 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 3) (pow.f64 y 6)) (*.f64 (fma.f64 z z (pow.f64 x 2)) (/.f64 1/2 (pow.f64 y 2)))))))
(*.f64 -1 y)
(neg.f64 y)
(*.f64 -1 (*.f64 y (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2))))))
(*.f64 (neg.f64 y) (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2)))))
(*.f64 y (neg.f64 (fma.f64 1/2 (/.f64 (fma.f64 z z (pow.f64 x 2)) (pow.f64 y 2)) 1)))
(*.f64 -1 (*.f64 y (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 2) (pow.f64 y 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2)))))))
(*.f64 (neg.f64 y) (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2) (pow.f64 y 4)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2))))))
(*.f64 y (neg.f64 (+.f64 1 (fma.f64 1/2 (/.f64 (fma.f64 z z (pow.f64 x 2)) (pow.f64 y 2)) (*.f64 -1/8 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 2) (pow.f64 y 4)))))))
(*.f64 (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 2) (pow.f64 y 4)) (*.f64 (fma.f64 z z (pow.f64 x 2)) (/.f64 1/2 (pow.f64 y 2))))) (neg.f64 y))
(*.f64 -1 (*.f64 y (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 2) (pow.f64 y 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) 3) (pow.f64 y 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 z 2)) (pow.f64 y 2))))))))
(*.f64 (neg.f64 y) (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 2) (pow.f64 y 4)) (fma.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) 3) (pow.f64 y 6)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 z 2) (pow.f64 x 2)) (pow.f64 y 2)))))))
(*.f64 y (neg.f64 (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 2) (pow.f64 y 4)) (fma.f64 1/2 (/.f64 (fma.f64 z z (pow.f64 x 2)) (pow.f64 y 2)) (*.f64 1/16 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 3) (pow.f64 y 6))))))))
(*.f64 (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 2) (pow.f64 y 4)) (fma.f64 1/16 (/.f64 (pow.f64 (fma.f64 z z (pow.f64 x 2)) 3) (pow.f64 y 6)) (*.f64 (fma.f64 z z (pow.f64 x 2)) (/.f64 1/2 (pow.f64 y 2)))))) (neg.f64 y))
(sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)))
(hypot.f64 x y)
(hypot.f64 y x)
(+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2))) (*.f64 1/2 (*.f64 (pow.f64 z 2) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 y 2)))))))
(+.f64 (hypot.f64 x y) (*.f64 (*.f64 1/2 (pow.f64 z 2)) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (pow.f64 x 2))))))
(fma.f64 (*.f64 (pow.f64 z 2) 1/2) (sqrt.f64 (/.f64 1 (fma.f64 y y (pow.f64 x 2)))) (hypot.f64 y x))
(fma.f64 1/2 (*.f64 (pow.f64 z 2) (sqrt.f64 (/.f64 1 (fma.f64 x x (pow.f64 y 2))))) (hypot.f64 y x))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2))) (*.f64 (pow.f64 z 2) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 z 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 3))))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 y 2))))))))
(+.f64 (hypot.f64 x y) (*.f64 (pow.f64 z 2) (fma.f64 -1/8 (*.f64 (pow.f64 z 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) 3)))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (pow.f64 x 2))))))))
(fma.f64 (pow.f64 z 2) (fma.f64 1/2 (sqrt.f64 (/.f64 1 (fma.f64 y y (pow.f64 x 2)))) (*.f64 (pow.f64 z 2) (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 y y (pow.f64 x 2)) 3)))))) (hypot.f64 y x))
(fma.f64 (pow.f64 z 2) (fma.f64 1/2 (sqrt.f64 (/.f64 1 (fma.f64 x x (pow.f64 y 2)))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 x x (pow.f64 y 2)) 3))) (*.f64 (pow.f64 z 2) -1/8))) (hypot.f64 y x))
(+.f64 (sqrt.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2))) (*.f64 (pow.f64 z 2) (+.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 x 2) (pow.f64 y 2))))) (*.f64 (pow.f64 z 2) (+.f64 (*.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 3)))) (*.f64 1/16 (*.f64 (pow.f64 z 2) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 5))))))))))
(+.f64 (hypot.f64 x y) (*.f64 (pow.f64 z 2) (fma.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 y 2) (pow.f64 x 2)))) (*.f64 (pow.f64 z 2) (fma.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) 3))) (*.f64 (*.f64 1/16 (pow.f64 z 2)) (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) 5)))))))))
(fma.f64 (pow.f64 z 2) (fma.f64 (pow.f64 z 2) (fma.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 y y (pow.f64 x 2)) 3))) (*.f64 (pow.f64 z 2) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 y y (pow.f64 x 2)) 5))) 1/16))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (fma.f64 y y (pow.f64 x 2)))))) (hypot.f64 y x))
(fma.f64 (pow.f64 z 2) (fma.f64 (pow.f64 z 2) (fma.f64 -1/8 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 x x (pow.f64 y 2)) 3))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 x x (pow.f64 y 2)) 5))) (*.f64 (pow.f64 z 2) 1/16))) (*.f64 1/2 (sqrt.f64 (/.f64 1 (fma.f64 x x (pow.f64 y 2)))))) (hypot.f64 y x))
z
(*.f64 z (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2)))))
(*.f64 z (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2)))))
(*.f64 z (fma.f64 1/2 (/.f64 (fma.f64 y y (pow.f64 x 2)) (pow.f64 z 2)) 1))
(*.f64 z (fma.f64 1/2 (/.f64 (fma.f64 x x (pow.f64 y 2)) (pow.f64 z 2)) 1))
(*.f64 z (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 2) (pow.f64 z 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2))))))
(*.f64 z (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) 2) (pow.f64 z 4)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))))))
(*.f64 z (+.f64 1 (fma.f64 1/2 (/.f64 (fma.f64 y y (pow.f64 x 2)) (pow.f64 z 2)) (*.f64 -1/8 (/.f64 (pow.f64 (fma.f64 y y (pow.f64 x 2)) 2) (pow.f64 z 4))))))
(*.f64 z (+.f64 (fma.f64 1/2 (/.f64 (fma.f64 x x (pow.f64 y 2)) (pow.f64 z 2)) 1) (*.f64 -1/8 (/.f64 (pow.f64 (fma.f64 x x (pow.f64 y 2)) 2) (pow.f64 z 4)))))
(*.f64 z (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 2) (pow.f64 z 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 3) (pow.f64 z 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2)))))))
(*.f64 z (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) 2) (pow.f64 z 4)) (fma.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) 3) (pow.f64 z 6)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2)))))))
(*.f64 z (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (fma.f64 y y (pow.f64 x 2)) 2) (pow.f64 z 4)) (fma.f64 1/2 (/.f64 (fma.f64 y y (pow.f64 x 2)) (pow.f64 z 2)) (*.f64 1/16 (/.f64 (pow.f64 (fma.f64 y y (pow.f64 x 2)) 3) (pow.f64 z 6)))))))
(*.f64 z (+.f64 (fma.f64 1/2 (/.f64 (fma.f64 x x (pow.f64 y 2)) (pow.f64 z 2)) 1) (fma.f64 -1/8 (/.f64 (pow.f64 (fma.f64 x x (pow.f64 y 2)) 2) (pow.f64 z 4)) (*.f64 1/16 (/.f64 (pow.f64 (fma.f64 x x (pow.f64 y 2)) 3) (pow.f64 z 6))))))
(*.f64 -1 z)
(neg.f64 z)
(*.f64 -1 (*.f64 z (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2))))))
(*.f64 (neg.f64 z) (+.f64 1 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2)))))
(*.f64 (fma.f64 1/2 (/.f64 (fma.f64 y y (pow.f64 x 2)) (pow.f64 z 2)) 1) (neg.f64 z))
(*.f64 (fma.f64 1/2 (/.f64 (fma.f64 x x (pow.f64 y 2)) (pow.f64 z 2)) 1) (neg.f64 z))
(*.f64 -1 (*.f64 z (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 2) (pow.f64 z 4))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2)))))))
(*.f64 (neg.f64 z) (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) 2) (pow.f64 z 4)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2))))))
(*.f64 (+.f64 1 (fma.f64 1/2 (/.f64 (fma.f64 y y (pow.f64 x 2)) (pow.f64 z 2)) (*.f64 -1/8 (/.f64 (pow.f64 (fma.f64 y y (pow.f64 x 2)) 2) (pow.f64 z 4))))) (neg.f64 z))
(*.f64 (+.f64 (fma.f64 1/2 (/.f64 (fma.f64 x x (pow.f64 y 2)) (pow.f64 z 2)) 1) (*.f64 -1/8 (/.f64 (pow.f64 (fma.f64 x x (pow.f64 y 2)) 2) (pow.f64 z 4)))) (neg.f64 z))
(*.f64 -1 (*.f64 z (+.f64 1 (+.f64 (*.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 2) (pow.f64 z 4))) (+.f64 (*.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) 3) (pow.f64 z 6))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 x 2) (pow.f64 y 2)) (pow.f64 z 2))))))))
(*.f64 (neg.f64 z) (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) 2) (pow.f64 z 4)) (fma.f64 1/16 (/.f64 (pow.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) 3) (pow.f64 z 6)) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 y 2) (pow.f64 x 2)) (pow.f64 z 2)))))))
(*.f64 (+.f64 1 (fma.f64 -1/8 (/.f64 (pow.f64 (fma.f64 y y (pow.f64 x 2)) 2) (pow.f64 z 4)) (fma.f64 1/2 (/.f64 (fma.f64 y y (pow.f64 x 2)) (pow.f64 z 2)) (*.f64 1/16 (/.f64 (pow.f64 (fma.f64 y y (pow.f64 x 2)) 3) (pow.f64 z 6)))))) (neg.f64 z))
(*.f64 (+.f64 (fma.f64 1/2 (/.f64 (fma.f64 x x (pow.f64 y 2)) (pow.f64 z 2)) 1) (fma.f64 -1/8 (/.f64 (pow.f64 (fma.f64 x x (pow.f64 y 2)) 2) (pow.f64 z 4)) (*.f64 1/16 (/.f64 (pow.f64 (fma.f64 x x (pow.f64 y 2)) 3) (pow.f64 z 6))))) (neg.f64 z))
(pow.f64 z 2)
(+.f64 (pow.f64 y 2) (pow.f64 z 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(+.f64 (pow.f64 y 2) (pow.f64 z 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(+.f64 (pow.f64 y 2) (pow.f64 z 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(pow.f64 y 2)
(*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))
(*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))
(*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))
(pow.f64 y 2)
(*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))
(*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))
(*.f64 (pow.f64 y 2) (+.f64 1 (/.f64 (pow.f64 z 2) (pow.f64 y 2))))
(pow.f64 y 2)
(+.f64 (pow.f64 y 2) (pow.f64 z 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(+.f64 (pow.f64 y 2) (pow.f64 z 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(+.f64 (pow.f64 y 2) (pow.f64 z 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(pow.f64 z 2)
(*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))
(*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))
(*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))
(pow.f64 z 2)
(*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))
(*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))
(*.f64 (pow.f64 z 2) (+.f64 1 (/.f64 (pow.f64 y 2) (pow.f64 z 2))))
(+.f64 0 (hypot.f64 x (hypot.f64 y z)))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z)))) (cbrt.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z)))))) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z))))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (hypot.f64 z (hypot.f64 y x)))) (cbrt.f64 (exp.f64 (hypot.f64 z (hypot.f64 y x)))))) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 z (hypot.f64 y x))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z))))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 z (hypot.f64 y x))))))
(-.f64 (exp.f64 (log1p.f64 (hypot.f64 x (hypot.f64 y z)))) 1)
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(*.f64 (hypot.f64 x (hypot.f64 y z)) 1)
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(*.f64 1 (hypot.f64 x (hypot.f64 y z)))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(*.f64 (cbrt.f64 (hypot.f64 x (hypot.f64 y z))) (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)) (cbrt.f64 (hypot.f64 x (hypot.f64 y z))))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(*.f64 (sqrt.f64 (hypot.f64 x (hypot.f64 y z))) (sqrt.f64 (hypot.f64 x (hypot.f64 y z))))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(*.f64 (pow.f64 1 1/2) (hypot.f64 x (hypot.f64 y z)))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)) 2) 1/2) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)) 1/2))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)) 2)) (sqrt.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2))))
(*.f64 (fabs.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2))) (sqrt.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2))))
(*.f64 (fabs.f64 (cbrt.f64 (pow.f64 (hypot.f64 z (hypot.f64 y x)) 2))) (sqrt.f64 (cbrt.f64 (pow.f64 (hypot.f64 z (hypot.f64 y x)) 2))))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (hypot.f64 z (hypot.f64 y x)) 2))) (cbrt.f64 (pow.f64 (hypot.f64 z (hypot.f64 y x)) 2)))
(*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)) 2)) (sqrt.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2))))
(*.f64 (fabs.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2))) (sqrt.f64 (cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2))))
(*.f64 (fabs.f64 (cbrt.f64 (pow.f64 (hypot.f64 z (hypot.f64 y x)) 2))) (sqrt.f64 (cbrt.f64 (pow.f64 (hypot.f64 z (hypot.f64 y x)) 2))))
(*.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (hypot.f64 z (hypot.f64 y x)) 2))) (cbrt.f64 (pow.f64 (hypot.f64 z (hypot.f64 y x)) 2)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (pow.f64 (hypot.f64 y z) 2) 2))) (sqrt.f64 (-.f64 (pow.f64 x 2) (pow.f64 (hypot.f64 y z) 2))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 x 4) (pow.f64 (hypot.f64 y z) 4))) (sqrt.f64 (-.f64 (pow.f64 x 2) (pow.f64 (hypot.f64 y z) 2))))
(/.f64 (hypot.f64 (pow.f64 x 3) (pow.f64 (hypot.f64 y z) 3)) (sqrt.f64 (fma.f64 (pow.f64 (hypot.f64 y z) 2) (-.f64 (pow.f64 (hypot.f64 y z) 2) (pow.f64 x 2)) (pow.f64 x 4))))
(pow.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2) 1/2)
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(pow.f64 (hypot.f64 x (hypot.f64 y z)) 1)
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(pow.f64 (cbrt.f64 (hypot.f64 x (hypot.f64 y z))) 3)
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(pow.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 3) 1/3)
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(pow.f64 (sqrt.f64 (hypot.f64 x (hypot.f64 y z))) 2)
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(fabs.f64 (hypot.f64 x (hypot.f64 y z)))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(log.f64 (exp.f64 (hypot.f64 x (hypot.f64 y z))))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(log.f64 (+.f64 1 (expm1.f64 (hypot.f64 x (hypot.f64 y z)))))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(cbrt.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 3))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(expm1.f64 (log1p.f64 (hypot.f64 x (hypot.f64 y z))))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(hypot.f64 z (hypot.f64 x y))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(hypot.f64 (hypot.f64 y z) x)
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(hypot.f64 (hypot.f64 x y) z)
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(log1p.f64 (expm1.f64 (hypot.f64 x (hypot.f64 y z))))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(exp.f64 (log.f64 (hypot.f64 x (hypot.f64 y z))))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 x (hypot.f64 y z)) 2)) 1/2))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(exp.f64 (*.f64 (log.f64 (hypot.f64 x (hypot.f64 y z))) 1))
(hypot.f64 x (hypot.f64 y z))
(hypot.f64 z (hypot.f64 y x))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (hypot.f64 y z) 2))) 1)
(expm1.f64 (log1p.f64 (pow.f64 (hypot.f64 y z) 2)))
(+.f64 0 (pow.f64 (hypot.f64 y z) 2))
(-.f64 (/.f64 (pow.f64 y 4) (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (/.f64 (pow.f64 z 4) (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(/.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (-.f64 (pow.f64 y 2) (pow.f64 z 2)))
(*.f64 (pow.f64 (hypot.f64 y z) 2) 1)
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(*.f64 1 (pow.f64 (hypot.f64 y z) 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(*.f64 (cbrt.f64 (pow.f64 (hypot.f64 y z) 2)) (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y z) 2)) 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y z) 2)) 2) (cbrt.f64 (pow.f64 (hypot.f64 y z) 2)))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(*.f64 (hypot.f64 y z) (hypot.f64 y z))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(*.f64 (+.f64 (pow.f64 z 6) (pow.f64 y 6)) (/.f64 1 (-.f64 (+.f64 (pow.f64 y 4) (pow.f64 z 4)) (pow.f64 (*.f64 y z) 2))))
(/.f64 (*.f64 (+.f64 (pow.f64 y 6) (pow.f64 z 6)) 1) (+.f64 (pow.f64 y 4) (-.f64 (pow.f64 z 4) (pow.f64 (*.f64 y z) 2))))
(/.f64 (+.f64 (pow.f64 y 6) (pow.f64 z 6)) (+.f64 (pow.f64 y 4) (-.f64 (pow.f64 z 4) (pow.f64 (*.f64 y z) 2))))
(*.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (/.f64 1 (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(/.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (-.f64 (pow.f64 y 2) (pow.f64 z 2)))
(/.f64 1 (/.f64 (-.f64 (+.f64 (pow.f64 y 4) (pow.f64 z 4)) (pow.f64 (*.f64 y z) 2)) (+.f64 (pow.f64 z 6) (pow.f64 y 6))))
(/.f64 (*.f64 (+.f64 (pow.f64 y 6) (pow.f64 z 6)) 1) (+.f64 (pow.f64 y 4) (-.f64 (pow.f64 z 4) (pow.f64 (*.f64 y z) 2))))
(/.f64 (+.f64 (pow.f64 y 6) (pow.f64 z 6)) (+.f64 (pow.f64 y 4) (-.f64 (pow.f64 z 4) (pow.f64 (*.f64 y z) 2))))
(/.f64 1 (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (-.f64 (pow.f64 y 4) (pow.f64 z 4))))
(/.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (-.f64 (pow.f64 y 2) (pow.f64 z 2)))
(/.f64 (+.f64 (pow.f64 z 6) (pow.f64 y 6)) (-.f64 (+.f64 (pow.f64 y 4) (pow.f64 z 4)) (pow.f64 (*.f64 y z) 2)))
(/.f64 (*.f64 (+.f64 (pow.f64 y 6) (pow.f64 z 6)) 1) (+.f64 (pow.f64 y 4) (-.f64 (pow.f64 z 4) (pow.f64 (*.f64 y z) 2))))
(/.f64 (+.f64 (pow.f64 y 6) (pow.f64 z 6)) (+.f64 (pow.f64 y 4) (-.f64 (pow.f64 z 4) (pow.f64 (*.f64 y z) 2))))
(/.f64 (+.f64 (pow.f64 z 6) (pow.f64 y 6)) (+.f64 (pow.f64 z 4) (-.f64 (pow.f64 y 4) (pow.f64 (*.f64 y z) 2))))
(/.f64 (*.f64 (+.f64 (pow.f64 y 6) (pow.f64 z 6)) 1) (+.f64 (pow.f64 y 4) (-.f64 (pow.f64 z 4) (pow.f64 (*.f64 y z) 2))))
(/.f64 (+.f64 (pow.f64 y 6) (pow.f64 z 6)) (+.f64 (pow.f64 y 4) (-.f64 (pow.f64 z 4) (pow.f64 (*.f64 y z) 2))))
(/.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (-.f64 (pow.f64 y 2) (pow.f64 z 2)))
(/.f64 (neg.f64 (+.f64 (pow.f64 z 6) (pow.f64 y 6))) (neg.f64 (-.f64 (+.f64 (pow.f64 y 4) (pow.f64 z 4)) (pow.f64 (*.f64 y z) 2))))
(/.f64 (*.f64 (+.f64 (pow.f64 y 6) (pow.f64 z 6)) 1) (+.f64 (pow.f64 y 4) (-.f64 (pow.f64 z 4) (pow.f64 (*.f64 y z) 2))))
(/.f64 (+.f64 (pow.f64 y 6) (pow.f64 z 6)) (+.f64 (pow.f64 y 4) (-.f64 (pow.f64 z 4) (pow.f64 (*.f64 y z) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4))) (neg.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2))))
(/.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (-.f64 (pow.f64 y 2) (pow.f64 z 2)))
(/.f64 (-.f64 (pow.f64 z 4) (pow.f64 y 4)) (-.f64 (pow.f64 z 2) (pow.f64 y 2)))
(/.f64 (-.f64 (pow.f64 y 4) (pow.f64 z 4)) (-.f64 (pow.f64 y 2) (pow.f64 z 2)))
(pow.f64 (pow.f64 (hypot.f64 y z) 2) 1)
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 y z) 2)) 3)
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 y z) 2) 3) 1/3)
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(pow.f64 (hypot.f64 y z) 2)
(fma.f64 z z (pow.f64 y 2))
(sqrt.f64 (pow.f64 (pow.f64 (hypot.f64 y z) 2) 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(log.f64 (exp.f64 (pow.f64 (hypot.f64 y z) 2)))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(log.f64 (+.f64 1 (expm1.f64 (pow.f64 (hypot.f64 y z) 2))))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(log.f64 (*.f64 (exp.f64 (pow.f64 y 2)) (+.f64 1 (expm1.f64 (pow.f64 z 2)))))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 y 2))) (exp.f64 (pow.f64 z 2))))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 y 2))) (+.f64 1 (expm1.f64 (pow.f64 z 2)))))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(log.f64 (*.f64 (exp.f64 (pow.f64 z 2)) (+.f64 1 (expm1.f64 (pow.f64 y 2)))))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 z 2))) (exp.f64 (pow.f64 y 2))))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (pow.f64 z 2))) (+.f64 1 (expm1.f64 (pow.f64 y 2)))))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 y z) 2) 3))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(expm1.f64 (log1p.f64 (pow.f64 (hypot.f64 y z) 2)))
(+.f64 0 (pow.f64 (hypot.f64 y z) 2))
(log1p.f64 (expm1.f64 (pow.f64 (hypot.f64 y z) 2)))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(exp.f64 (log.f64 (pow.f64 (hypot.f64 y z) 2)))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 y z) 2)) 1))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(fma.f64 y y (pow.f64 z 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(fma.f64 (pow.f64 y 2) 1 (pow.f64 z 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(fma.f64 (pow.f64 z 2) 1 (pow.f64 y 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(fma.f64 1 (pow.f64 y 2) (pow.f64 z 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(fma.f64 1 (pow.f64 z 2) (pow.f64 y 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 (pow.f64 z 4)) (pow.f64 y 2))
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) z) (pow.f64 y 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(fma.f64 (cbrt.f64 (pow.f64 z 4)) (pow.f64 (cbrt.f64 z) 2) (pow.f64 y 2))
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 (pow.f64 z 4)) (pow.f64 y 2))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 (pow.f64 y 4)) (pow.f64 z 2))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) y) (pow.f64 z 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(fma.f64 (cbrt.f64 (pow.f64 y 4)) (pow.f64 (cbrt.f64 y) 2) (pow.f64 z 2))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 (pow.f64 y 4)) (pow.f64 z 2))
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) y) (pow.f64 z 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) z) (pow.f64 y 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(fma.f64 (*.f64 y (sqrt.f64 y)) (sqrt.f64 y) (pow.f64 z 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(fma.f64 (*.f64 z (sqrt.f64 z)) (sqrt.f64 z) (pow.f64 y 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (pow.f64 y 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)
(fma.f64 (*.f64 y (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (pow.f64 z 2))
(fma.f64 z z (pow.f64 y 2))
(pow.f64 (hypot.f64 y z) 2)

eval109.0ms (3.6%)

Compiler

Compiled 5061 to 3389 computations (33% saved)

prune33.0ms (1.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New2192221
Fresh000
Picked101
Done000
Total2202222
Accuracy
100.0%
Counts
222 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(hypot.f64 y z)
98.6%
z
Compiler

Compiled 10 to 7 computations (30% saved)

localize31.0ms (1%)

Compiler

Compiled 10 to 5 computations (50% saved)

Precisions
Click to see histograms. Total time spent on operations: 20.0ms
Operation composed, time spent: 10.0ms, 50.0% of total-time
Operation ival-sqrt, time spent: 4.0ms, 20.0% of total-time
Operation ival-mult, time spent: 4.0ms, 20.0% of total-time
Operation ival-add, time spent: 2.0ms, 10.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune2.0ms (0.1%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New000
Fresh000
Picked022
Done000
Total022
Accuracy
100.0%
Counts
2 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(hypot.f64 y z)
98.6%
z
Compiler

Compiled 29 to 17 computations (41.4% saved)

regimes26.0ms (0.8%)

Counts
3 → 1
Calls
Call 1
Inputs
z
(hypot.f64 y z)
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z))))
Outputs
(hypot.f64 y z)
Calls

9 calls:

4.0ms
y
3.0ms
(*.f64 y y)
3.0ms
x
3.0ms
z
3.0ms
(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z))))
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1z
100.0%1(sqrt.f64 (+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z))))
100.0%1(+.f64 (*.f64 x x) (+.f64 (*.f64 y y) (*.f64 z z)))
100.0%1(*.f64 x x)
100.0%1(+.f64 (*.f64 y y) (*.f64 z z))
100.0%1(*.f64 y y)
100.0%1(*.f64 z z)
Compiler

Compiled 69 to 44 computations (36.2% saved)

regimes8.0ms (0.3%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
z
Outputs
z
Calls

3 calls:

3.0ms
x
2.0ms
z
2.0ms
y
Results
AccuracySegmentsBranch
98.6%1x
98.6%1y
98.6%1z
Compiler

Compiled 12 to 9 computations (25% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0817
Stop Event
done
saturated
Calls
Call 1
Inputs
(hypot.f64 y z)
z
Outputs
(hypot.f64 y z)
z
Compiler

Compiled 10 to 7 computations (30% saved)

soundness156.0ms (5.1%)

Rules
1336×distribute-lft-in
1326×distribute-rgt-in
1004×times-frac
848×fma-neg
370×associate-/r*
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03627132
18776576
228106572
373736564
Stop Event
node limit
Compiler

Compiled 30 to 18 computations (40% saved)

end0.0ms (0%)

preprocess70.0ms (2.3%)

Compiler

Compiled 204 to 132 computations (35.3% saved)

Profiling

Loading profile data...