Details

Time bar (total: 15.3s)

analyze446.0ms (2.9%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
0%99.9%0.1%6
0%99.9%0.1%7
0%99.9%0.1%8
12.5%85.8%1.7%9
16.4%79.2%4.4%10
20.7%72.4%7%11
32.6%53.3%14.1%12
Compiler

Compiled 19 to 12 computations (36.8% saved)

sample2.0s (13.1%)

Results
1.3s8256×body256valid
687.0ms3846×body256invalid

preprocess60.0ms (0.4%)

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)

simplify51.0ms (0.3%)

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
13.0b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
13.0b
(*.f64 -1/2 (-.f64 (/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y) y))
31.3b
(/.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.8b
(fma.f64 z z (*.f64 x (neg.f64 x)))
14.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
y
@inf
(/.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)

rewrite107.0ms (0.7%)

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

simplify149.0ms (1%)

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)

localize37.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
4.5b
(-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z))
29.2b
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
Compiler

Compiled 52 to 14 computations (73.1% saved)

series11.0ms (0.1%)

Counts
2 → 72
Calls

18 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
x
@inf
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
1.0ms
z
@inf
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))

rewrite105.0ms (0.7%)

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
01234
127432
2415932
Stop Event
node limit
Counts
2 → 206
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))
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))))))

simplify70.0ms (0.5%)

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
0391261
11091203
22511122
36481038
42362981
Stop Event
node limit
Counts
278 → 239
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)))
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))

eval108.0ms (0.7%)

Compiler

Compiled 6895 to 3443 computations (50.1% saved)

prune72.0ms (0.5%)

Pruning

15 alts after pruning (14 fresh and 1 done)

PrunedKeptTotal
New33814352
Fresh000
Picked011
Done101
Total33915354
Error
0.0b
Counts
354 → 15
Alt Table
Click to see full alt table
StatusErrorProgram
0.1b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y))
51.8b
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
51.9b
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
35.8b
(*.f64 -1/2 (-.f64 (pow.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) 2) y))
51.2b
(/.f64 (*.f64 y y) (*.f64 y 2))
28.1b
(*.f64 1/2 y)
8.5b
(fma.f64 (/.f64 (hypot.f64 x y) y) (/.f64 (hypot.f64 x y) 2) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))
43.0b
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
50.6b
(*.f64 1/2 (/.f64 x (/.f64 y x)))
31.3b
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
31.4b
(pow.f64 (*.f64 2 (/.f64 y (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)))) -1)
12.1b
(*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y))
16.6b
(*.f64 -1/2 (-.f64 (*.f64 x (/.f64 (neg.f64 x) y)) y))
21.9b
(*.f64 -1/2 (-.f64 (pow.f64 (/.f64 y (pow.f64 (hypot.f64 z x) 2)) -1) y))
54.0b
(/.f64 (*.f64 x x) (*.f64 y 2))
Compiler

Compiled 384 to 263 computations (31.5% saved)

localize13.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 51 to 11 computations (78.4% saved)

series73.0ms (0.5%)

Counts
3 → 96
Calls

27 calls:

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

rewrite137.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
664×fma-def_binary64
641×log-prod_binary64
315×fma-neg_binary64
225×pow1/3_binary64
223×log-div_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0936
122536
2390436
Stop Event
node limit
Counts
3 → 275
Calls
Call 1
Inputs
(*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y)
(/.f64 (-.f64 z x) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x (-.f64 z x)) y) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (/.f64 (-.f64 z x) y)) (/.f64 (*.f64 x (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z x)) y) 1) (*.f64 (*.f64 z (/.f64 (-.f64 z x) y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 z x)) (/.f64 (-.f64 z x) y))) (cbrt.f64 (pow.f64 (exp.f64 (+.f64 z x)) (/.f64 (-.f64 z x) y))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 z x)) (/.f64 (-.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 z x)) (/.f64 (-.f64 z x) y)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 z x)) (/.f64 (-.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 z x) (/.f64 y (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 z x) (/.f64 y (-.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 y (-.f64 (*.f64 z z) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 z 3) (pow.f64 x 3)) (*.f64 (/.f64 y (-.f64 z x)) (fma.f64 z (-.f64 z x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 z z) (*.f64 x x)) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 (/.f64 y (-.f64 z x)) (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 z z) (*.f64 x x))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z x) (+.f64 (pow.f64 z 3) (pow.f64 x 3))) (*.f64 y (fma.f64 z (-.f64 z x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 z x)) (+.f64 (pow.f64 z 3) (pow.f64 x 3))) (*.f64 (neg.f64 y) (fma.f64 z (-.f64 z x) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z x) (-.f64 (*.f64 x x) (*.f64 z z))) (*.f64 y (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 z x)) (-.f64 (*.f64 x x) (*.f64 z z))) (*.f64 (neg.f64 y) (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 z 3) (pow.f64 x 3)) (-.f64 z x)) (*.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 z x)) (*.f64 (-.f64 x z) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 z 3) (pow.f64 x 3)) 1) (*.f64 (fma.f64 z (-.f64 z x) (*.f64 x x)) (/.f64 y (-.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 z z)) 1) (*.f64 (-.f64 x z) (/.f64 y (-.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 z 3) (pow.f64 x 3)) (neg.f64 (-.f64 z x))) (*.f64 (fma.f64 z (-.f64 z x) (*.f64 x x)) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (neg.f64 (-.f64 z x))) (*.f64 (-.f64 x z) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x (-.f64 z x)) y) 3) (pow.f64 (*.f64 z (/.f64 (-.f64 z x) y)) 3)) (fma.f64 (/.f64 (*.f64 x (-.f64 z x)) y) (/.f64 (*.f64 x (-.f64 z x)) y) (-.f64 (*.f64 (*.f64 z (/.f64 (-.f64 z x) y)) (*.f64 z (/.f64 (-.f64 z x) y))) (*.f64 (/.f64 (*.f64 x (-.f64 z x)) y) (*.f64 z (/.f64 (-.f64 z x) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (/.f64 (*.f64 x (-.f64 z x)) y) (/.f64 (*.f64 x (-.f64 z x)) y)) (*.f64 (*.f64 z (/.f64 (-.f64 z x) y)) (*.f64 z (/.f64 (-.f64 z x) y)))) (-.f64 (/.f64 (*.f64 x (-.f64 z x)) y) (*.f64 z (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) (sqrt.f64 y)) (sqrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 (*.f64 z z) (*.f64 x x)) 1) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (-.f64 z x)) (+.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 z 3) (pow.f64 x 3)) (/.f64 (-.f64 z x) 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 z x) y)) (-.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 (pow.f64 z 3) (pow.f64 x 3))) (fma.f64 z (-.f64 z x) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (-.f64 z x) y) (-.f64 (*.f64 x x) (*.f64 z z))) (-.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 z x) (neg.f64 (-.f64 z x))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (-.f64 (*.f64 z z) (*.f64 x x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (+.f64 z x)) (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 z (/.f64 (-.f64 z x) y))) (exp.f64 (/.f64 (*.f64 x (-.f64 z x)) y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (/.f64 (-.f64 z x) y) (/.f64 (*.f64 x (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (/.f64 (-.f64 z x) y) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 z x) (*.f64 (/.f64 1 y) x) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 z x) (*.f64 (/.f64 1 y) z) (/.f64 (*.f64 x (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) y) z (/.f64 (*.f64 x (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) y) x (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (*.f64 x (-.f64 z x)) y) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z (/.f64 (-.f64 z x) y)) (/.f64 (*.f64 x (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (/.f64 (-.f64 z x) y)) (/.f64 (*.f64 x (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) 2) (*.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) x) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) 2) (*.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) z) (/.f64 (*.f64 x (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (/.f64 (-.f64 z x) y)) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (/.f64 (-.f64 z x) y)) (/.f64 (*.f64 x (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) (*.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) x) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) (*.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) z) (/.f64 (*.f64 x (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (/.f64 (-.f64 z x) y)) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (-.f64 z x)) (/.f64 1 y) (/.f64 (*.f64 x (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (*.f64 x (-.f64 z x)) y) 1 (*.f64 (*.f64 z (/.f64 (-.f64 z x) y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 z (/.f64 (-.f64 z x) y))) (cbrt.f64 (*.f64 z (/.f64 (-.f64 z x) y)))) (cbrt.f64 (*.f64 z (/.f64 (-.f64 z x) y))) (/.f64 (*.f64 x (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 x (-.f64 z x)) y)) (cbrt.f64 (/.f64 (*.f64 x (-.f64 z x)) y))) (cbrt.f64 (/.f64 (*.f64 x (-.f64 z x)) y)) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z (/.f64 (-.f64 z x) y))) (sqrt.f64 (*.f64 z (/.f64 (-.f64 z x) y))) (/.f64 (*.f64 x (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (*.f64 x (-.f64 z x)) y)) (sqrt.f64 (/.f64 (*.f64 x (-.f64 z x)) y)) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) (sqrt.f64 x)) (*.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) (sqrt.f64 x)) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 x) (sqrt.f64 (/.f64 (-.f64 z x) y))) (*.f64 (sqrt.f64 x) (sqrt.f64 (/.f64 (-.f64 z x) y))) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) (sqrt.f64 z)) (*.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) (sqrt.f64 z)) (/.f64 (*.f64 x (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 z) (sqrt.f64 (/.f64 (-.f64 z x) y))) (*.f64 (sqrt.f64 z) (sqrt.f64 (/.f64 (-.f64 z x) y))) (/.f64 (*.f64 x (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (-.f64 z x)) (/.f64 1 y) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (sqrt.f64 x)) (sqrt.f64 x) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) 2)) (cbrt.f64 (/.f64 (-.f64 z x) y)) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 (/.f64 (-.f64 z x) y))) (sqrt.f64 (/.f64 (-.f64 z x) y)) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) (/.f64 (*.f64 x (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (sqrt.f64 z)) (sqrt.f64 z) (/.f64 (*.f64 x (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (pow.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) 2)) (cbrt.f64 (/.f64 (-.f64 z x) y)) (/.f64 (*.f64 x (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 z (sqrt.f64 (/.f64 (-.f64 z x) y))) (sqrt.f64 (/.f64 (-.f64 z x) y)) (/.f64 (*.f64 x (-.f64 z x)) y))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 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 (-.f64 z x) y) (+.f64 z x)) y) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 y) (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x (-.f64 z x)) y) (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y))) (cbrt.f64 (exp.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y))))) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) 2) (cbrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) (sqrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) y) (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 y (fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) y) (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2)) (-.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 3) (pow.f64 y 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) y) (-.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 3) (pow.f64 y 3)) (fma.f64 y (fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) y) (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2) (*.f64 y y)) (fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 3) (pow.f64 y 3))) (neg.f64 (fma.f64 y (fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) y) (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2) (*.f64 y y))) (neg.f64 (fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 3) (pow.f64 (neg.f64 y) 3)) (+.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2) (-.f64 (*.f64 (neg.f64 y) (neg.f64 y)) (*.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2) (*.f64 (neg.f64 y) (neg.f64 y))) (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 y (fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) y) (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2)) (-.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 3) (pow.f64 y 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) y) (-.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2) (*.f64 y y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)))) (exp.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 (+.f64 z x)) (/.f64 (-.f64 z x) y)) (+.f64 1 (expm1.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)))) (+.f64 1 (expm1.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)))) (exp.f64 (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (+.f64 z x)) (/.f64 (-.f64 z x) y)) (/.f64 1 (exp.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)))) (/.f64 1 (exp.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 y)) (pow.f64 (exp.f64 (+.f64 z x)) (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 y)) (pow.f64 (exp.f64 (+.f64 z x)) (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 y)) (+.f64 1 (expm1.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 y)) (+.f64 1 (expm1.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (/.f64 (-.f64 z x) y) (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 z x) (*.f64 (/.f64 1 y) (+.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 z x) (*.f64 (/.f64 1 y) (+.f64 z x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 z x) (*.f64 (/.f64 1 y) x) (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) y) x (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 1 (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 1 (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y) 1 (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 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 (/.f64 (-.f64 z x) y) (+.f64 z x)) y) 1 (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 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 (/.f64 (-.f64 z x) y) (+.f64 z x)) y) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 y) (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (*.f64 x (-.f64 z x)) y) (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) 2) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) 2) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) 2) (cbrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) 2) (cbrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) (*.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 (/.f64 (-.f64 z x) y) (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) 2) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 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 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) 2) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) 2) (cbrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) 2) (cbrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 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 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) 2) (cbrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) 2) (*.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) (+.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) 2) (*.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) (+.f64 z x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) 2) (*.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) x) (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (/.f64 (-.f64 z x) y)) (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (+.f64 z x) 2)) (*.f64 (cbrt.f64 (+.f64 z x)) (/.f64 (-.f64 z x) y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (+.f64 z x) 2)) (*.f64 (cbrt.f64 (+.f64 z x)) (/.f64 (-.f64 z x) y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) (sqrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) (sqrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (neg.f64 (sqrt.f64 y)) (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) (sqrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) (sqrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 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 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) (sqrt.f64 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) y)) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) (*.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) (+.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) (*.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) (+.f64 z x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) (*.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) x) (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (/.f64 (-.f64 z x) y)) (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 z x)) (*.f64 (sqrt.f64 (+.f64 z x)) (/.f64 (-.f64 z x) y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 z x)) (*.f64 (sqrt.f64 (+.f64 z x)) (/.f64 (-.f64 z x) y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) y) (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2))) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) y) (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 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 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) y) (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2))) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) 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 (/.f64 (-.f64 z x) y) (+.f64 z x)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) y)) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 z z) (*.f64 x x)) (/.f64 1 y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 z z) (*.f64 x x)) (/.f64 1 y) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (neg.f64 y)) (cbrt.f64 (neg.f64 y))) (cbrt.f64 (neg.f64 y)) (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (/.f64 (*.f64 x (-.f64 z x)) y)) (cbrt.f64 (/.f64 (*.f64 x (-.f64 z x)) y))) (cbrt.f64 (/.f64 (*.f64 x (-.f64 z x)) y)) (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 y)) (sqrt.f64 (neg.f64 y)) (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (*.f64 x (-.f64 z x)) y)) (sqrt.f64 (/.f64 (*.f64 x (-.f64 z x)) y)) (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 y)) (sqrt.f64 y) (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 y (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) 1) (/.f64 (+.f64 z x) y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) 1) (/.f64 (+.f64 z x) y) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (+.f64 z x) (cbrt.f64 y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (+.f64 z x) (cbrt.f64 y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) (sqrt.f64 y)) (/.f64 (+.f64 z x) (sqrt.f64 y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) (sqrt.f64 y)) (/.f64 (+.f64 z x) (sqrt.f64 y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) (sqrt.f64 y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) (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 (+.f64 (sqrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))) (sqrt.f64 y)) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) (sqrt.f64 x)) (*.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) (sqrt.f64 x)) (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 x) (sqrt.f64 (/.f64 (-.f64 z x) y))) (*.f64 (sqrt.f64 x) (sqrt.f64 (/.f64 (-.f64 z x) y))) (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) (*.f64 (/.f64 (-.f64 z x) y) (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (-.f64 z x)) (/.f64 1 y) (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (cbrt.f64 (pow.f64 (+.f64 z x) 2))) (cbrt.f64 (+.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (cbrt.f64 (pow.f64 (+.f64 z x) 2))) (cbrt.f64 (+.f64 z x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (sqrt.f64 (+.f64 z x))) (sqrt.f64 (+.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (sqrt.f64 (+.f64 z x))) (sqrt.f64 (+.f64 z x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 z x) (pow.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) 2)) (cbrt.f64 (/.f64 (-.f64 z x) y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 z x) (pow.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) 2)) (cbrt.f64 (/.f64 (-.f64 z x) y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 z x) (sqrt.f64 (/.f64 (-.f64 z x) y))) (sqrt.f64 (/.f64 (-.f64 z x) y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 z x) (sqrt.f64 (/.f64 (-.f64 z x) y))) (sqrt.f64 (/.f64 (-.f64 z x) y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (sqrt.f64 x)) (sqrt.f64 x) (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (pow.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) 2)) (cbrt.f64 (/.f64 (-.f64 z x) y)) (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (sqrt.f64 (/.f64 (-.f64 z x) y))) (sqrt.f64 (/.f64 (-.f64 z x) y)) (fma.f64 z (/.f64 (-.f64 z x) y) (neg.f64 y)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 z y) (neg.f64 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (-.f64 z x) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 (-.f64 z x) y))) (cbrt.f64 (exp.f64 (/.f64 (-.f64 z x) y))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (-.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 z x) y)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 z y) (/.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 z x) y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z x) (/.f64 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z x) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (-.f64 z x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) (pow.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) 2) (cbrt.f64 (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) (*.f64 (cbrt.f64 (-.f64 z x)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) (sqrt.f64 (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 z x)) (*.f64 (sqrt.f64 (-.f64 z x)) (/.f64 1 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (-.f64 z x)) (/.f64 1 (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (-.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 y) 2)) (/.f64 (-.f64 z x) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 y)) (/.f64 (-.f64 z x) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) 1) (/.f64 (cbrt.f64 (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 z x)) 1) (/.f64 (sqrt.f64 (-.f64 z x)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 z x)) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (sqrt.f64 (-.f64 z x)) (cbrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) (sqrt.f64 y)) (/.f64 (cbrt.f64 (-.f64 z x)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 z x) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (-.f64 z x) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (-.f64 z x) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (-.f64 z x) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (-.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (-.f64 z x) 3) (pow.f64 y 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 y (-.f64 z x)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (-.f64 z x) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (-.f64 z x) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (-.f64 z x) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (-.f64 z x) 3) (pow.f64 y 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 z x) y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (/.f64 1 y) (neg.f64 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 z y) (neg.f64 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (/.f64 z y)) (cbrt.f64 (/.f64 z y))) (cbrt.f64 (/.f64 z y)) (neg.f64 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 z y)) (sqrt.f64 (/.f64 z y)) (neg.f64 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) 1) (/.f64 (cbrt.f64 z) y) (neg.f64 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) 1) (/.f64 (sqrt.f64 z) y) (neg.f64 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (pow.f64 (cbrt.f64 y) 2)) (/.f64 z (cbrt.f64 y)) (neg.f64 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (cbrt.f64 z) (cbrt.f64 y)) (neg.f64 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (sqrt.f64 z) (cbrt.f64 y)) (neg.f64 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 y)) (/.f64 z (sqrt.f64 y)) (neg.f64 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (sqrt.f64 y)) (/.f64 (cbrt.f64 z) (sqrt.f64 y)) (neg.f64 (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) (sqrt.f64 y)) (/.f64 (sqrt.f64 z) (sqrt.f64 y)) (neg.f64 (/.f64 x y)))))))

simplify80.0ms (0.5%)

Algorithm
egg-herbie
Rules
619×fma-def_binary64
373×associate-/l*_binary64
247×associate-*l/_binary64
229×distribute-rgt-in_binary64
219×sub-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0431761
11321403
23471165
312421023
440251023
Stop Event
node limit
Counts
371 → 307
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(/.f64 (pow.f64 z 2) y)
(+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(/.f64 (pow.f64 z 2) y)
(+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(/.f64 (pow.f64 z 2) y)
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.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 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.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 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(-.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(/.f64 (pow.f64 z 2) y)
(+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(/.f64 (pow.f64 z 2) y)
(+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (/.f64 (pow.f64 z 2) y) y)
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.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 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.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 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(*.f64 -1 y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(*.f64 -1 y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(*.f64 -1 (/.f64 x y))
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(/.f64 z y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(/.f64 z y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(/.f64 z y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(*.f64 -1 (/.f64 x y))
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(*.f64 -1 (/.f64 x y))
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
Outputs
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (*.f64 (neg.f64 x) x) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(*.f64 x (/.f64 (neg.f64 x) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (*.f64 (neg.f64 x) x) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(*.f64 x (/.f64 (neg.f64 x) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (*.f64 (neg.f64 x) x) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(*.f64 x (/.f64 (neg.f64 x) y))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (*.f64 (neg.f64 x) x) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(*.f64 x (/.f64 (neg.f64 x) y))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (*.f64 (neg.f64 x) x) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(*.f64 x (/.f64 (neg.f64 x) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (*.f64 (neg.f64 x) x) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(*.f64 x (/.f64 (neg.f64 x) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(-.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) y)
(-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y)
(-.f64 (/.f64 (*.f64 (neg.f64 x) x) y) y)
(-.f64 (/.f64 (neg.f64 x) (/.f64 y x)) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) y)
(-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y)
(-.f64 (/.f64 (*.f64 (neg.f64 x) x) y) y)
(-.f64 (/.f64 (neg.f64 x) (/.f64 y x)) y)
(neg.f64 (fma.f64 (/.f64 x y) x y))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 z z) y)
(*.f64 (/.f64 z y) z)
(*.f64 z (/.f64 z y))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(-.f64 (/.f64 (pow.f64 z 2) y) y)
(-.f64 (/.f64 (*.f64 z z) y) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (/.f64 (*.f64 z z) y) y)
(-.f64 (*.f64 (/.f64 z y) z) y)
(-.f64 (*.f64 z (/.f64 z y)) y)
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.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) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.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) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (*.f64 (neg.f64 x) x) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(*.f64 x (/.f64 (neg.f64 x) y))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (*.f64 (neg.f64 x) x) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(*.f64 x (/.f64 (neg.f64 x) y))
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.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) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.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) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (*.f64 (neg.f64 x) x) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(*.f64 x (/.f64 (neg.f64 x) y))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (*.f64 (neg.f64 x) x) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(*.f64 x (/.f64 (neg.f64 x) y))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (+.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) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (+.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) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(/.f64 (-.f64 z x) (/.f64 y (+.f64 x z)))
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 (*.f64 z z) y)) (/.f64 (*.f64 x x) y)) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 x z))) y)
(*.f64 -1 (/.f64 x y))
(neg.f64 (/.f64 x y))
(/.f64 (neg.f64 x) y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)
(/.f64 z y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)
(/.f64 z y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)
(/.f64 z y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)
(*.f64 -1 (/.f64 x y))
(neg.f64 (/.f64 x y))
(/.f64 (neg.f64 x) y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)
(*.f64 -1 (/.f64 x y))
(neg.f64 (/.f64 x y))
(/.f64 (neg.f64 x) y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)
(+.f64 (/.f64 z y) (*.f64 -1 (/.f64 x y)))
(+.f64 (neg.f64 (/.f64 x y)) (/.f64 z y))
(-.f64 (/.f64 z y) (/.f64 x y))
(/.f64 (-.f64 z x) y)

localize4.0ms (0%)

Compiler

Compiled 8 to 6 computations (25% saved)

localize8.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 19 to 10 computations (47.4% saved)

series7.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
4.0ms
x
@0
(/.f64 (*.f64 x x) (*.f64 y 2))
1.0ms
x
@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))
0.0ms
y
@-inf
(/.f64 (*.f64 x x) (*.f64 y 2))

rewrite58.0ms (0.4%)

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

simplify130.0ms (0.9%)

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

localize9.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 30 to 9 computations (70% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite99.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
568×pow1_binary64
525×add-log-exp_binary64
525×log1p-expm1-u_binary64
525×expm1-log1p-u_binary64
513×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
057
11057
214107
Stop Event
node limit
Counts
1 → 20
Calls
Call 1
Inputs
(*.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 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))))))))

simplify123.0ms (0.8%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
06168
111168
220168
337168
483168
5266168
61091168
73478168
84280168
94465168
104681168
115028168
125456168
135935168
146584168
157273168
Stop Event
node limit
Counts
44 → 22
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)
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))

localize37.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 z x)
0.1b
(/.f64 (hypot.f64 z x) (sqrt.f64 y))
0.3b
(pow.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) 2)
Compiler

Compiled 49 to 18 computations (63.3% saved)

series35.0ms (0.2%)

Counts
3 → 72
Calls

24 calls:

TimeVariablePointExpression
5.0ms
z
@0
(pow.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) 2)
3.0ms
x
@0
(pow.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) 2)
3.0ms
z
@inf
(pow.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) 2)
3.0ms
x
@inf
(/.f64 (hypot.f64 z x) (sqrt.f64 y))
3.0ms
y
@-inf
(pow.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) 2)

rewrite99.0ms (0.6%)

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

Useful iterations: 1 (0.0ms)

IterNodesCost
0925
118823
2221223
Stop Event
node limit
Counts
3 → 85
Calls
Call 1
Inputs
(pow.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) 2)
(/.f64 (hypot.f64 z x) (sqrt.f64 y))
(hypot.f64 z x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 z x) (*.f64 (pow.f64 y -1/2) (/.f64 (hypot.f64 z x) (sqrt.f64 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 (/.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 (pow.f64 (hypot.f64 z x) 2) (*.f64 (pow.f64 y -1/2) (pow.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 z x) 2) (pow.f64 (pow.f64 y -1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) 4)) (cbrt.f64 (/.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)) (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y)) (*.f64 (cbrt.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 (sqrt.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y))) (*.f64 (sqrt.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 (*.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) (sqrt.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)))) (sqrt.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) (hypot.f64 z x)) (pow.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y))) (cbrt.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (hypot.f64 z x) (*.f64 (/.f64 (sqrt.f64 y) (hypot.f64 z x)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (hypot.f64 z x) (*.f64 (sqrt.f64 y) (/.f64 (sqrt.f64 y) (hypot.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) (/.f64 (sqrt.f64 y) (hypot.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (/.f64 (sqrt.f64 y) (hypot.f64 z x)) (/.f64 (sqrt.f64 y) (hypot.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (hypot.f64 z x) 2) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (hypot.f64 z x)) (*.f64 (/.f64 (sqrt.f64 y) (hypot.f64 z x)) (neg.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (hypot.f64 z x)) (neg.f64 (hypot.f64 z x))) (*.f64 (neg.f64 (sqrt.f64 y)) (neg.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (hypot.f64 z x)) (hypot.f64 z x)) (*.f64 (neg.f64 (sqrt.f64 y)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (hypot.f64 z x)) 1) (*.f64 (neg.f64 (sqrt.f64 y)) (/.f64 (sqrt.f64 y) (hypot.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (hypot.f64 z x) (neg.f64 (hypot.f64 z x))) (*.f64 (sqrt.f64 y) (neg.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (hypot.f64 z x) (/.f64 (hypot.f64 z x) (sqrt.f64 y))) (sqrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (hypot.f64 z x)) (/.f64 (hypot.f64 z x) (sqrt.f64 y))) (neg.f64 (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) (hypot.f64 z x)) (sqrt.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) (neg.f64 (hypot.f64 z x))) (neg.f64 (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) 4))))) (#(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 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 1 (/.f64 (hypot.f64 z x) (sqrt.f64 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 z x) (pow.f64 y -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (hypot.f64 z x) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y))) (cbrt.f64 (/.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)) (cbrt.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)) (*.f64 (cbrt.f64 (hypot.f64 z x)) (pow.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y))) (sqrt.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 z x)) (*.f64 (sqrt.f64 (hypot.f64 z x)) (pow.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (hypot.f64 z x)) (/.f64 1 (neg.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 y -1/2) (hypot.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) 4))) (sqrt.f64 (cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)) 1) (/.f64 (cbrt.f64 (hypot.f64 z x)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (hypot.f64 z x)) 1) (/.f64 (sqrt.f64 (hypot.f64 z x)) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 y)) (/.f64 (hypot.f64 z x) (cbrt.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)) (cbrt.f64 y)) (cbrt.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (hypot.f64 z x)) (cbrt.f64 y)) (/.f64 (sqrt.f64 (hypot.f64 z x)) (cbrt.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 y 1/4)) (/.f64 (hypot.f64 z x) (pow.f64 y 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)) (pow.f64 y 1/4)) (/.f64 (cbrt.f64 (hypot.f64 z x)) (pow.f64 y 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 y) (hypot.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (hypot.f64 z x) (neg.f64 (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 2) y))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (hypot.f64 z x) 3) (pow.f64 y 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (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)) (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (hypot.f64 z x) 2)) (cbrt.f64 (hypot.f64 z x)))))) (#(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 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 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)))))))

simplify85.0ms (0.6%)

Algorithm
egg-herbie
Rules
906×fma-def_binary64
810×times-frac_binary64
607×associate-/r*_binary64
513×associate-*r*_binary64
469×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01782083
15601945
218241639
Stop Event
node limit
Counts
157 → 163
Calls
Call 1
Inputs
(/.f64 (pow.f64 x 2) y)
(+.f64 (/.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 (+.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 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 (+.f64 (*.f64 1/16 (/.f64 1 (*.f64 y (pow.f64 z 6)))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 y (pow.f64 z 6)))) (*.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) y)))) (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 (sqrt.f64 (/.f64 1 y)) x)
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x)))))
(+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 6) (pow.f64 x 5)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x))))))
(*.f64 (sqrt.f64 (/.f64 1 y)) z)
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) z) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 4) (pow.f64 z 3)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) z) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z)))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 4) (pow.f64 z 3)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) z) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 6) (pow.f64 z 5)))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z))))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 y)) z))
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 y)) z)))
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 y)) z)) (*.f64 1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 4) (pow.f64 z 3))))))
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 6) (pow.f64 z 5)))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 y)) z)) (*.f64 1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 4) (pow.f64 z 3)))))))
(*.f64 (sqrt.f64 (/.f64 1 y)) z)
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) z) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 4) (pow.f64 z 3)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) z) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z)))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 4) (pow.f64 z 3)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) z) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 6) (pow.f64 z 5)))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z))))))
(*.f64 (sqrt.f64 (/.f64 1 y)) x)
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x)))))
(+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 6) (pow.f64 x 5)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x))))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 y)) x))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 y)) x)) (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x))))
(+.f64 (*.f64 1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3)))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 y)) x)) (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x)))))
(+.f64 (*.f64 1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3)))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 y)) x)) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 6) (pow.f64 x 5)))) (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x))))))
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 (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 (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 (+.f64 (/.f64 5/64 (*.f64 y (pow.f64 x 6))) (neg.f64 (/.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 (*.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 (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 x x) y) (+.f64 (/.f64 z (/.f64 y z)) (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0)))
(+.f64 (*.f64 (/.f64 z y) z) (+.f64 0 (*.f64 (/.f64 x y) x)))
(+.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 x x) y) (+.f64 (/.f64 z (/.f64 y z)) (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0)))
(+.f64 (*.f64 (/.f64 z y) z) (+.f64 0 (*.f64 (/.f64 x y) x)))
(/.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 x x) y) (+.f64 (/.f64 z (/.f64 y z)) (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0)))
(+.f64 (*.f64 (/.f64 z y) z) (+.f64 0 (*.f64 (/.f64 x y) x)))
(+.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 x x) y) (+.f64 (/.f64 z (/.f64 y z)) (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0)))
(+.f64 (*.f64 (/.f64 z y) z) (+.f64 0 (*.f64 (/.f64 x y) x)))
(/.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 (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/16 (/.f64 1 (*.f64 y (pow.f64 z 6)))) (+.f64 (*.f64 1/64 (/.f64 1 (*.f64 y (pow.f64 z 6)))) (*.f64 -1 (/.f64 (+.f64 (pow.f64 (/.f64 -1/8 (pow.f64 z 3)) 2) (*.f64 1/16 (/.f64 1 (pow.f64 z 6)))) y)))) (pow.f64 x 8)) (+.f64 (/.f64 (pow.f64 x 2) y) (/.f64 (pow.f64 z 2) y)))
(fma.f64 (+.f64 (/.f64 1/16 (*.f64 y (pow.f64 z 6))) (+.f64 (/.f64 1/64 (*.f64 y (pow.f64 z 6))) (neg.f64 (/.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 (*.f64 x x) y) (/.f64 (*.f64 z z) y)))
(+.f64 (/.f64 z (/.f64 y z)) (fma.f64 (-.f64 (*.f64 (/.f64 (/.f64 1 y) (pow.f64 z 6)) 5/64) (/.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 x y) x) (fma.f64 (-.f64 (/.f64 (/.f64 5/64 y) (pow.f64 z 6)) (/.f64 (+.f64 (/.f64 1/64 (pow.f64 z 6)) (/.f64 1/16 (pow.f64 z 6))) y)) (pow.f64 x 8) (*.f64 (/.f64 z y) z)))
(/.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 x x) y) (+.f64 (/.f64 z (/.f64 y z)) (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0)))
(+.f64 (*.f64 (/.f64 z y) z) (+.f64 0 (*.f64 (/.f64 x y) x)))
(+.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 x x) y) (+.f64 (/.f64 z (/.f64 y z)) (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0)))
(+.f64 (*.f64 (/.f64 z y) z) (+.f64 0 (*.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 x x) y) (+.f64 (/.f64 z (/.f64 y z)) (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0)))
(+.f64 (*.f64 (/.f64 z y) z) (+.f64 0 (*.f64 (/.f64 x y) x)))
(+.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 x x) y) (+.f64 (/.f64 z (/.f64 y z)) (*.f64 (/.f64 (pow.f64 x 4) (*.f64 y (*.f64 z z))) 0)))
(+.f64 (*.f64 (/.f64 z y) z) (+.f64 0 (*.f64 (/.f64 x y) x)))
(*.f64 (sqrt.f64 (/.f64 1 y)) x)
(*.f64 x (sqrt.f64 (/.f64 1 y)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x))))
(fma.f64 (sqrt.f64 (/.f64 1 y)) x (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (*.f64 z z) x))))
(fma.f64 1/2 (/.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (*.f64 z z))) (*.f64 x (sqrt.f64 (/.f64 1 y))))
(*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 1/2 (*.f64 (/.f64 z x) z) x))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x)))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (fma.f64 (sqrt.f64 (/.f64 1 y)) x (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (*.f64 z z) x)))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (fma.f64 1/2 (/.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (*.f64 z z))) (*.f64 x (sqrt.f64 (/.f64 1 y)))))
(fma.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 1/2 (*.f64 (/.f64 z x) z)) (*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) x)))
(+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 6) (pow.f64 x 5)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x))))))
(fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 6) (pow.f64 x 5))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (fma.f64 (sqrt.f64 (/.f64 1 y)) x (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (*.f64 z z) x))))))
(fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 6) (pow.f64 x 5))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (fma.f64 1/2 (/.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (*.f64 z z))) (*.f64 x (sqrt.f64 (/.f64 1 y))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 1/2 (*.f64 (/.f64 z x) z) x)) (*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) (*.f64 (/.f64 1/16 (pow.f64 x 5)) (pow.f64 z 6)))))
(*.f64 (sqrt.f64 (/.f64 1 y)) z)
(*.f64 z (sqrt.f64 (/.f64 1 y)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) z) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z))))
(fma.f64 (sqrt.f64 (/.f64 1 y)) z (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (*.f64 x x) z))))
(fma.f64 z (sqrt.f64 (/.f64 1 y)) (*.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 1/2 (/.f64 (*.f64 x x) z))))
(*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 1/2 (*.f64 (/.f64 x z) x) z))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 4) (pow.f64 z 3)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) z) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z)))))
(fma.f64 -1/8 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (pow.f64 x 4)) (pow.f64 z 3)) (fma.f64 (sqrt.f64 (/.f64 1 y)) z (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (*.f64 x x) z)))))
(fma.f64 -1/8 (/.f64 (*.f64 (pow.f64 x 4) (sqrt.f64 (/.f64 1 y))) (pow.f64 z 3)) (fma.f64 z (sqrt.f64 (/.f64 1 y)) (*.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 1/2 (/.f64 (*.f64 x x) z)))))
(fma.f64 z (sqrt.f64 (/.f64 1 y)) (*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) (*.f64 (/.f64 1/2 z) (*.f64 x x)))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 4) (pow.f64 z 3)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) z) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 6) (pow.f64 z 5)))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z))))))
(fma.f64 -1/8 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (pow.f64 x 4)) (pow.f64 z 3)) (fma.f64 (sqrt.f64 (/.f64 1 y)) z (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 6) (pow.f64 z 5))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (*.f64 x x) z))))))
(fma.f64 -1/8 (/.f64 (*.f64 (pow.f64 x 4) (sqrt.f64 (/.f64 1 y))) (pow.f64 z 3)) (fma.f64 z (sqrt.f64 (/.f64 1 y)) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 6) (pow.f64 z 5))) (*.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 1/2 (/.f64 (*.f64 x x) z))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 1/16 (/.f64 (pow.f64 x 6) (pow.f64 z 5)) z)) (*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) (*.f64 (/.f64 1/2 z) (*.f64 x x)))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 y)) z))
(neg.f64 (*.f64 z (sqrt.f64 (/.f64 1 y))))
(*.f64 (sqrt.f64 (/.f64 1 y)) (neg.f64 z))
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z))) (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 y)) z)))
(fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (*.f64 x x) z)) (neg.f64 (*.f64 z (sqrt.f64 (/.f64 1 y)))))
(-.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 (/.f64 (*.f64 x x) z) -1/2)) (*.f64 z (sqrt.f64 (/.f64 1 y))))
(*.f64 (sqrt.f64 (/.f64 1 y)) (-.f64 (*.f64 (*.f64 (/.f64 x z) x) -1/2) z))
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 y)) z)) (*.f64 1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 4) (pow.f64 z 3))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (*.f64 x x) z)) (fma.f64 -1 (*.f64 z (sqrt.f64 (/.f64 1 y))) (*.f64 1/8 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (pow.f64 x 4)) (pow.f64 z 3)))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (*.f64 x x) z)) -1/2 (-.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 x 4) (sqrt.f64 (/.f64 1 y))) (pow.f64 z 3))) (*.f64 z (sqrt.f64 (/.f64 1 y)))))
(-.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) (*.f64 (*.f64 (/.f64 x z) x) -1/2))) (*.f64 z (sqrt.f64 (/.f64 1 y))))
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z))) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 6) (pow.f64 z 5)))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 y)) z)) (*.f64 1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 4) (pow.f64 z 3)))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (*.f64 x x) z)) (fma.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 6) (pow.f64 z 5))) (fma.f64 -1 (*.f64 z (sqrt.f64 (/.f64 1 y))) (*.f64 1/8 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (pow.f64 x 4)) (pow.f64 z 3))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (*.f64 x x) z)) -1/2 (fma.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 6) (pow.f64 z 5))) -1/16 (-.f64 (*.f64 1/8 (/.f64 (*.f64 (pow.f64 x 4) (sqrt.f64 (/.f64 1 y))) (pow.f64 z 3))) (*.f64 z (sqrt.f64 (/.f64 1 y))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (-.f64 (*.f64 (*.f64 (/.f64 x z) x) -1/2) z)) (*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) (*.f64 (/.f64 (pow.f64 x 6) (pow.f64 z 5)) -1/16))))
(*.f64 (sqrt.f64 (/.f64 1 y)) z)
(*.f64 z (sqrt.f64 (/.f64 1 y)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) z) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z))))
(fma.f64 (sqrt.f64 (/.f64 1 y)) z (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (*.f64 x x) z))))
(fma.f64 z (sqrt.f64 (/.f64 1 y)) (*.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 1/2 (/.f64 (*.f64 x x) z))))
(*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 1/2 (*.f64 (/.f64 x z) x) z))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 4) (pow.f64 z 3)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) z) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z)))))
(fma.f64 -1/8 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (pow.f64 x 4)) (pow.f64 z 3)) (fma.f64 (sqrt.f64 (/.f64 1 y)) z (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (*.f64 x x) z)))))
(fma.f64 -1/8 (/.f64 (*.f64 (pow.f64 x 4) (sqrt.f64 (/.f64 1 y))) (pow.f64 z 3)) (fma.f64 z (sqrt.f64 (/.f64 1 y)) (*.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 1/2 (/.f64 (*.f64 x x) z)))))
(fma.f64 z (sqrt.f64 (/.f64 1 y)) (*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) (*.f64 (/.f64 1/2 z) (*.f64 x x)))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 4) (pow.f64 z 3)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) z) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 6) (pow.f64 z 5)))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 2) z))))))
(fma.f64 -1/8 (/.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (pow.f64 x 4)) (pow.f64 z 3)) (fma.f64 (sqrt.f64 (/.f64 1 y)) z (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 6) (pow.f64 z 5))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (*.f64 x x) z))))))
(fma.f64 -1/8 (/.f64 (*.f64 (pow.f64 x 4) (sqrt.f64 (/.f64 1 y))) (pow.f64 z 3)) (fma.f64 z (sqrt.f64 (/.f64 1 y)) (fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 x 6) (pow.f64 z 5))) (*.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 1/2 (/.f64 (*.f64 x x) z))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 1/16 (/.f64 (pow.f64 x 6) (pow.f64 z 5)) z)) (*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 -1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) (*.f64 (/.f64 1/2 z) (*.f64 x x)))))
(*.f64 (sqrt.f64 (/.f64 1 y)) x)
(*.f64 x (sqrt.f64 (/.f64 1 y)))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x))))
(fma.f64 (sqrt.f64 (/.f64 1 y)) x (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (*.f64 z z) x))))
(fma.f64 1/2 (/.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (*.f64 z z))) (*.f64 x (sqrt.f64 (/.f64 1 y))))
(*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 1/2 (*.f64 (/.f64 z x) z) x))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x)))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (fma.f64 (sqrt.f64 (/.f64 1 y)) x (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (*.f64 z z) x)))))
(fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (fma.f64 1/2 (/.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (*.f64 z z))) (*.f64 x (sqrt.f64 (/.f64 1 y)))))
(fma.f64 (sqrt.f64 (/.f64 1 y)) (*.f64 1/2 (*.f64 (/.f64 z x) z)) (*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) x)))
(+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 6) (pow.f64 x 5)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3)))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) x) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x))))))
(fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 6) (pow.f64 x 5))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (fma.f64 (sqrt.f64 (/.f64 1 y)) x (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (*.f64 z z) x))))))
(fma.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 6) (pow.f64 x 5))) (fma.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (fma.f64 1/2 (/.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (*.f64 z z))) (*.f64 x (sqrt.f64 (/.f64 1 y))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 1/2 (*.f64 (/.f64 z x) z) x)) (*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 -1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) (*.f64 (/.f64 1/16 (pow.f64 x 5)) (pow.f64 z 6)))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 y)) x))
(neg.f64 (*.f64 x (sqrt.f64 (/.f64 1 y))))
(*.f64 (sqrt.f64 (/.f64 1 y)) (neg.f64 x))
(+.f64 (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 y)) x)) (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x))))
(fma.f64 -1 (*.f64 x (sqrt.f64 (/.f64 1 y))) (*.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 y))) (/.f64 (*.f64 z z) x)))
(fma.f64 (/.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (*.f64 z z))) -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (neg.f64 x)))
(*.f64 (sqrt.f64 (/.f64 1 y)) (-.f64 (*.f64 (/.f64 -1/2 x) (*.f64 z z)) x))
(+.f64 (*.f64 1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3)))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 y)) x)) (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x)))))
(fma.f64 1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (fma.f64 -1 (*.f64 x (sqrt.f64 (/.f64 1 y))) (*.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 y))) (/.f64 (*.f64 z z) x))))
(fma.f64 (*.f64 1/8 (sqrt.f64 (/.f64 1 y))) (/.f64 (pow.f64 z 4) (pow.f64 x 3)) (fma.f64 (/.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 x (*.f64 z z))) -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (neg.f64 x))))
(-.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) (*.f64 (/.f64 -1/2 x) (*.f64 z z)))) (*.f64 x (sqrt.f64 (/.f64 1 y))))
(+.f64 (*.f64 1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3)))) (+.f64 (*.f64 -1 (*.f64 (sqrt.f64 (/.f64 1 y)) x)) (+.f64 (*.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 6) (pow.f64 x 5)))) (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 2) x))))))
(fma.f64 1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (fma.f64 -1 (*.f64 x (sqrt.f64 (/.f64 1 y))) (fma.f64 -1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 6) (pow.f64 x 5))) (*.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 y))) (/.f64 (*.f64 z z) x)))))
(fma.f64 1/8 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (-.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 (pow.f64 z 6) (pow.f64 x 5))) -1/16 (*.f64 (sqrt.f64 (/.f64 1 y)) (/.f64 -1/2 (/.f64 x (*.f64 z z))))) (*.f64 x (sqrt.f64 (/.f64 1 y)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 (/.f64 (pow.f64 z 6) (pow.f64 x 5)) -1/16 (*.f64 (/.f64 -1/2 x) (*.f64 z z)))) (*.f64 (sqrt.f64 (/.f64 1 y)) (fma.f64 1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) (neg.f64 x))))
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/16 (/.f64 (pow.f64 z 6) (pow.f64 x 5)) (fma.f64 1/2 (*.f64 (/.f64 z x) z) (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 (/.f64 x 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/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) (fma.f64 1/2 (*.f64 (/.f64 x 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))) (+.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 (*.f64 x x) z) (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)))
(fma.f64 1/2 (*.f64 (/.f64 x 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 (/.f64 (*.f64 x x) z) -1/2))
(-.f64 (*.f64 (/.f64 (*.f64 x x) z) -1/2) z)
(-.f64 (*.f64 (*.f64 (/.f64 x z) x) -1/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)))))
(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/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) (*.f64 (/.f64 (*.f64 x x) z) -1/2)) z)
(fma.f64 (*.f64 (/.f64 x z) x) -1/2 (-.f64 (/.f64 (pow.f64 x 4) (/.f64 (pow.f64 z 3) 1/8)) 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 (/.f64 (pow.f64 x 6) (pow.f64 z 5)) -1/16 (fma.f64 1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) (*.f64 (/.f64 (*.f64 x x) z) -1/2))) z)
(-.f64 (fma.f64 1/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) (fma.f64 (/.f64 (pow.f64 x 6) (pow.f64 z 5)) -1/16 (*.f64 (*.f64 (/.f64 x z) x) -1/2))) 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 (/.f64 x 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/8 (/.f64 (pow.f64 x 4) (pow.f64 z 3)) (fma.f64 1/2 (*.f64 (/.f64 x 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))) (+.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 (*.f64 x x) z) (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)))
(fma.f64 1/2 (*.f64 (/.f64 x 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/16 (/.f64 (pow.f64 z 6) (pow.f64 x 5)) (fma.f64 1/2 (*.f64 (/.f64 z x) z) (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 x (*.f64 z z))) x)
(-.f64 (*.f64 (/.f64 -1/2 x) (*.f64 z 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))) (*.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 (/.f64 z (/.f64 x z)) -1/2 (*.f64 1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)))) x)
(fma.f64 (*.f64 (/.f64 z x) z) -1/2 (fma.f64 1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) (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 (*.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 (/.f64 (pow.f64 z 6) (pow.f64 x 5)) -1/16))))
(fma.f64 (/.f64 z (/.f64 x z)) -1/2 (fma.f64 1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) (fma.f64 (/.f64 (pow.f64 z 6) (pow.f64 x 5)) -1/16 (neg.f64 x))))
(fma.f64 (*.f64 (/.f64 z x) z) -1/2 (-.f64 (fma.f64 1/8 (/.f64 (pow.f64 z 4) (pow.f64 x 3)) (*.f64 (/.f64 -1/16 (pow.f64 x 5)) (pow.f64 z 6))) x))

eval244.0ms (1.6%)

Compiler

Compiled 11164 to 4681 computations (58.1% saved)

prune151.0ms (1%)

Pruning

18 alts after pruning (14 fresh and 4 done)

PrunedKeptTotal
New5268534
Fresh369
Picked101
Done145
Total53118549
Error
0b
Counts
549 → 18
Alt Table
Click to see full alt table
StatusErrorProgram
12.1b
(*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y))
12.1b
(*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y))
16.6b
(*.f64 -1/2 (-.f64 (*.f64 x (/.f64 (neg.f64 x) y)) y))
50.6b
(*.f64 x (*.f64 x (/.f64 1/2 y)))
51.8b
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
51.9b
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
0.1b
(*.f64 -1/2 (-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 z x))) y))
51.2b
(/.f64 (*.f64 y y) (*.f64 y 2))
28.1b
(*.f64 1/2 y)
50.6b
(*.f64 (/.f64 x (*.f64 y 2)) x)
0.3b
(*.f64 -1/2 (-.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (/.f64 (-.f64 z x) y)) (*.f64 z (/.f64 (-.f64 z x) y))) y))
50.6b
(*.f64 1/2 (/.f64 x (/.f64 y x)))
31.3b
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
20.0b
(*.f64 -1/2 (-.f64 (/.f64 1 (/.f64 y (*.f64 z z))) y))
13.0b
(*.f64 -1/2 (-.f64 (/.f64 1 (/.f64 y (-.f64 (*.f64 z z) (*.f64 x x)))) y))
35.6b
(*.f64 -1/2 (-.f64 (pow.f64 (/.f64 z (sqrt.f64 y)) 2) y))
43.0b
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
54.0b
(/.f64 (*.f64 x x) (*.f64 y 2))
Compiler

Compiled 422 to 281 computations (33.4% saved)

localize13.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 51 to 11 computations (78.4% saved)

series12.0ms (0.1%)

Counts
3 → 96
Calls

27 calls:

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

rewrite105.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
666×log-prod_binary64
515×fma-def_binary64
379×fma-neg_binary64
321×pow2_binary64
249×log-div_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0936
122036
2376236
Stop Event
node limit
Counts
3 → 285
Calls
Call 1
Inputs
(/.f64 (-.f64 z x) (/.f64 y (+.f64 z x)))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 z x))) y)
(/.f64 y (+.f64 z x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 z y) (+.f64 z x)) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (/.f64 (-.f64 z x) y)) (*.f64 x (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (/.f64 (-.f64 z x) y)) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (-.f64 z x) y) z) (*.f64 (/.f64 (-.f64 z x) y) x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (-.f64 z x) y) x) (*.f64 (/.f64 (-.f64 z x) y) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (/.f64 z y) (+.f64 z x)) (*.f64 (/.f64 x y) (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z x) (/.f64 (+.f64 z x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (pow.f64 (cbrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) 2) (cbrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) (*.f64 (cbrt.f64 (-.f64 z x)) (/.f64 (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (sqrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 z x)) (*.f64 (sqrt.f64 (-.f64 z x)) (/.f64 (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (-.f64 z x)) (/.f64 1 (/.f64 (neg.f64 y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 z x) y) (-.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z x) y) (+.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (/.f64 (-.f64 z x) (/.f64 1 (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) y) (/.f64 (cbrt.f64 (-.f64 z x)) (/.f64 1 (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 z x)) y) (/.f64 (sqrt.f64 (-.f64 z x)) (/.f64 1 (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) 1) (/.f64 (cbrt.f64 (-.f64 z x)) (/.f64 y (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 z x)) 1) (/.f64 (sqrt.f64 (-.f64 z x)) (/.f64 y (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (/.f64 (-.f64 z x) (cbrt.f64 (/.f64 y (+.f64 z x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (cbrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 z x)) (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (/.f64 (sqrt.f64 (-.f64 z x)) (cbrt.f64 (/.f64 y (+.f64 z x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (/.f64 y (+.f64 z x)))) (/.f64 (-.f64 z x) (sqrt.f64 (/.f64 y (+.f64 z x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) (sqrt.f64 (/.f64 y (+.f64 z x)))) (/.f64 (cbrt.f64 (-.f64 z x)) (sqrt.f64 (/.f64 y (+.f64 z x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z x) 1) (/.f64 (+.f64 z x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z x) (neg.f64 y)) (neg.f64 (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 z x) y) 1) (+.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 z x) y) (pow.f64 (cbrt.f64 (+.f64 z x)) 2)) (cbrt.f64 (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 z x) y) (sqrt.f64 (+.f64 z x))) (sqrt.f64 (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (*.f64 (-.f64 z x) (+.f64 z x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 y (*.f64 (-.f64 z x) (+.f64 z x))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (-.f64 z x) (/.f64 (neg.f64 y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (/.f64 (+.f64 z x) y) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (/.f64 (-.f64 z x) y) (*.f64 x (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (/.f64 (-.f64 z x) y) (*.f64 z (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (/.f64 z y) (+.f64 z x)) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) y) z (*.f64 (/.f64 (-.f64 z x) y) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) y) x (*.f64 (/.f64 (-.f64 z x) y) z))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 z y) (+.f64 z x))) 2) (cbrt.f64 (*.f64 (/.f64 z y) (+.f64 z x))) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (/.f64 z y) (+.f64 z x))) (sqrt.f64 (*.f64 (/.f64 z y) (+.f64 z x))) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y) (/.f64 z (/.f64 1 (+.f64 z x))) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (/.f64 z (cbrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (/.f64 y (+.f64 z x)))) (/.f64 z (sqrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) y) (/.f64 (cbrt.f64 z) (/.f64 1 (+.f64 z x))) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) y) (/.f64 (sqrt.f64 z) (/.f64 1 (+.f64 z x))) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) 1) (/.f64 (cbrt.f64 z) (/.f64 y (+.f64 z x))) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) 1) (/.f64 (sqrt.f64 z) (/.f64 y (+.f64 z x))) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (/.f64 (cbrt.f64 z) (cbrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (/.f64 (sqrt.f64 z) (cbrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (sqrt.f64 (/.f64 y (+.f64 z x)))) (/.f64 (cbrt.f64 z) (sqrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) (sqrt.f64 (/.f64 y (+.f64 z x)))) (/.f64 (sqrt.f64 z) (sqrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z y) (+.f64 z x) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z 1) (/.f64 (+.f64 z x) y) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z (neg.f64 y)) (neg.f64 (+.f64 z x)) (neg.f64 (*.f64 (/.f64 x y) (+.f64 z x))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z 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 z x) (/.f64 (-.f64 z x) y)) y) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 y) (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) 2) (cbrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) (sqrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) y) (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 y (fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) y) (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2)) (-.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 3) (pow.f64 y 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) y) (-.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 3) (pow.f64 y 3)) (fma.f64 y (fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) y) (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2) (*.f64 y y)) (fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 3) (pow.f64 y 3))) (neg.f64 (fma.f64 y (fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) y) (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2) (*.f64 y y))) (neg.f64 (fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 3) (pow.f64 (neg.f64 y) 3)) (+.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2) (-.f64 (pow.f64 (neg.f64 y) 2) (*.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2) (pow.f64 (neg.f64 y) 2)) (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 y (fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) y) (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2)) (-.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 3) (pow.f64 y 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) y) (-.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2) (*.f64 y y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))) (exp.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (+.f64 1 (expm1.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))) (+.f64 1 (expm1.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))) (exp.f64 (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (/.f64 1 (exp.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))) (/.f64 1 (exp.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 y)) (exp.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 y)) (exp.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 y)) (+.f64 1 (expm1.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 y)) (+.f64 1 (expm1.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (/.f64 (+.f64 z x) y) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (/.f64 (+.f64 z x) y) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 z x) (/.f64 (+.f64 z x) y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 z x) (/.f64 (+.f64 z x) y) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 1 (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 1 (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y) 1 (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) 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 (+.f64 z x) (/.f64 (-.f64 z x) y)) y) 1 (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) 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 (+.f64 z x) (/.f64 (-.f64 z x) y)) y) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 y) (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (/.f64 z y) (+.f64 z x)) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (/.f64 z y) (+.f64 z x)) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (pow.f64 (cbrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) 2) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (pow.f64 (cbrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) 2) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) 2) (cbrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) 2) (cbrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) 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 (+.f64 z x) (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) 2) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) 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 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) 2) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) 2) (cbrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) 2) (cbrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) 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 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) 2) (cbrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) (*.f64 (cbrt.f64 (-.f64 z x)) (/.f64 (+.f64 z x) y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) (*.f64 (cbrt.f64 (-.f64 z x)) (/.f64 (+.f64 z x) y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (sqrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (sqrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (neg.f64 (sqrt.f64 y)) (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) (sqrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) (sqrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) 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 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) (sqrt.f64 (-.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) y)) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 z x)) (*.f64 (sqrt.f64 (-.f64 z x)) (/.f64 (+.f64 z x) y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 z x)) (*.f64 (sqrt.f64 (-.f64 z x)) (/.f64 (+.f64 z x) y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (-.f64 z x)) (/.f64 1 (/.f64 (neg.f64 y) (+.f64 z x))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (-.f64 z x)) (/.f64 1 (/.f64 (neg.f64 y) (+.f64 z x))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) y) (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2))) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) y) (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) 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 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) y) (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2))) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (+.f64 z x) y) (-.f64 z x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (+.f64 z x) y) (-.f64 z x) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) 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 (-.f64 (pow.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)) 2) (*.f64 y y)) (/.f64 1 (fma.f64 (+.f64 z x) (/.f64 (-.f64 z x) y) y)) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) y) (+.f64 z x) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 y)) 2) (cbrt.f64 (neg.f64 y)) (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 z y) (+.f64 z x))) 2) (cbrt.f64 (*.f64 (/.f64 z y) (+.f64 z x))) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 z y) (+.f64 z x))) 2) (cbrt.f64 (*.f64 (/.f64 z y) (+.f64 z x))) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 y)) (sqrt.f64 (neg.f64 y)) (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (/.f64 z y) (+.f64 z x))) (sqrt.f64 (*.f64 (/.f64 z y) (+.f64 z x))) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (/.f64 z y) (+.f64 z x))) (sqrt.f64 (*.f64 (/.f64 z y) (+.f64 z x))) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 y)) (sqrt.f64 y) (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 y (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y) (/.f64 (-.f64 z x) (/.f64 1 (+.f64 z x))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y) (/.f64 (-.f64 z x) (/.f64 1 (+.f64 z x))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y) (/.f64 z (/.f64 1 (+.f64 z x))) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y) (/.f64 z (/.f64 1 (+.f64 z x))) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) y) (/.f64 (cbrt.f64 (-.f64 z x)) (/.f64 1 (+.f64 z x))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) y) (/.f64 (cbrt.f64 (-.f64 z x)) (/.f64 1 (+.f64 z x))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (-.f64 z x)) y) (/.f64 (sqrt.f64 (-.f64 z x)) (/.f64 1 (+.f64 z x))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (-.f64 z x)) y) (/.f64 (sqrt.f64 (-.f64 z x)) (/.f64 1 (+.f64 z x))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) 1) (/.f64 (cbrt.f64 (-.f64 z x)) (/.f64 y (+.f64 z x))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) 1) (/.f64 (cbrt.f64 (-.f64 z x)) (/.f64 y (+.f64 z x))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (-.f64 z x)) 1) (/.f64 (sqrt.f64 (-.f64 z x)) (/.f64 y (+.f64 z x))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (-.f64 z x)) 1) (/.f64 (sqrt.f64 (-.f64 z x)) (/.f64 y (+.f64 z x))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (/.f64 (-.f64 z x) (cbrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (/.f64 (-.f64 z x) (cbrt.f64 (/.f64 y (+.f64 z x)))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (/.f64 z (cbrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (/.f64 z (cbrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (cbrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (cbrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (-.f64 z x)) (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (/.f64 (sqrt.f64 (-.f64 z x)) (cbrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (-.f64 z x)) (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (/.f64 (sqrt.f64 (-.f64 z x)) (cbrt.f64 (/.f64 y (+.f64 z x)))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (/.f64 y (+.f64 z x)))) (/.f64 (-.f64 z x) (sqrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (/.f64 y (+.f64 z x)))) (/.f64 (-.f64 z x) (sqrt.f64 (/.f64 y (+.f64 z x)))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (/.f64 y (+.f64 z x)))) (/.f64 z (sqrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 (sqrt.f64 (/.f64 y (+.f64 z x)))) (/.f64 z (sqrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) (sqrt.f64 (/.f64 y (+.f64 z x)))) (/.f64 (cbrt.f64 (-.f64 z x)) (sqrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 z x) 2)) (sqrt.f64 (/.f64 y (+.f64 z x)))) (/.f64 (cbrt.f64 (-.f64 z x)) (sqrt.f64 (/.f64 y (+.f64 z x)))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) y) (/.f64 (cbrt.f64 z) (/.f64 1 (+.f64 z x))) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) y) (/.f64 (cbrt.f64 z) (/.f64 1 (+.f64 z x))) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) y) (/.f64 (sqrt.f64 z) (/.f64 1 (+.f64 z x))) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) y) (/.f64 (sqrt.f64 z) (/.f64 1 (+.f64 z x))) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) 1) (/.f64 (cbrt.f64 z) (/.f64 y (+.f64 z x))) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) 1) (/.f64 (cbrt.f64 z) (/.f64 y (+.f64 z x))) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) 1) (/.f64 (sqrt.f64 z) (/.f64 y (+.f64 z x))) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) 1) (/.f64 (sqrt.f64 z) (/.f64 y (+.f64 z x))) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (/.f64 (cbrt.f64 z) (cbrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (/.f64 (cbrt.f64 z) (cbrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (/.f64 (sqrt.f64 z) (cbrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))) (/.f64 (sqrt.f64 z) (cbrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (sqrt.f64 (/.f64 y (+.f64 z x)))) (/.f64 (cbrt.f64 z) (sqrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (sqrt.f64 (/.f64 y (+.f64 z x)))) (/.f64 (cbrt.f64 z) (sqrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) (sqrt.f64 (/.f64 y (+.f64 z x)))) (/.f64 (sqrt.f64 z) (sqrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) (sqrt.f64 (/.f64 y (+.f64 z x)))) (/.f64 (sqrt.f64 z) (sqrt.f64 (/.f64 y (+.f64 z x)))) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z y) (+.f64 z x) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z y) (+.f64 z x) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (sqrt.f64 y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (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 (+.f64 (sqrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 (+.f64 z x) (/.f64 (-.f64 z x) y))) (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 (+.f64 z x) (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) 1) (/.f64 (+.f64 z x) y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) 1) (/.f64 (+.f64 z x) y) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) (neg.f64 y)) (neg.f64 (+.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) (neg.f64 y)) (neg.f64 (+.f64 z x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z 1) (/.f64 (+.f64 z x) y) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z 1) (/.f64 (+.f64 z x) y) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z (neg.f64 y)) (neg.f64 (+.f64 z x)) (neg.f64 (fma.f64 (/.f64 x y) (+.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z (neg.f64 y)) (neg.f64 (+.f64 z x)) (neg.f64 (-.f64 (*.f64 (/.f64 x y) (+.f64 z x)) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) 1) (+.f64 z x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) 1) (+.f64 z x) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (pow.f64 (cbrt.f64 (+.f64 z x)) 2)) (cbrt.f64 (+.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (pow.f64 (cbrt.f64 (+.f64 z x)) 2)) (cbrt.f64 (+.f64 z x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (sqrt.f64 (+.f64 z x))) (sqrt.f64 (+.f64 z x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (sqrt.f64 (+.f64 z x))) (sqrt.f64 (+.f64 z x)) (*.f64 (neg.f64 y) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 y (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 y (+.f64 z x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 y (+.f64 z x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 y (+.f64 z x))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 y (+.f64 z x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 y (+.f64 z x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (/.f64 1 (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (+.f64 z x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 y (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 y) 2) (*.f64 (cbrt.f64 y) (/.f64 1 (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 y (+.f64 z x))) (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2)) (cbrt.f64 (/.f64 y (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (/.f64 1 (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 y (+.f64 z x))) (sqrt.f64 (/.f64 y (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (/.f64 1 (neg.f64 (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 z x)) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) 1) (/.f64 (cbrt.f64 y) (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y) 1) (/.f64 (sqrt.f64 y) (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (+.f64 z x)) 2)) (/.f64 y (cbrt.f64 (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (pow.f64 (cbrt.f64 (+.f64 z x)) 2)) (cbrt.f64 (/.f64 y (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 y) (pow.f64 (cbrt.f64 (+.f64 z x)) 2)) (/.f64 (sqrt.f64 y) (cbrt.f64 (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (+.f64 z x))) (/.f64 y (sqrt.f64 (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 y) 2) (sqrt.f64 (+.f64 z x))) (/.f64 (cbrt.f64 y) (sqrt.f64 (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (+.f64 (pow.f64 z 3) (pow.f64 x 3))) (fma.f64 z z (*.f64 x (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y (-.f64 (*.f64 z z) (*.f64 x x))) (-.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (+.f64 z x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 y (+.f64 z x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 y (+.f64 z x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 y (+.f64 z x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 z x) y) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 y 3) (pow.f64 (+.f64 z x) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (+.f64 z x) y) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 y (neg.f64 (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 y (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 y (+.f64 z x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 y (+.f64 z x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 y 3) (pow.f64 (+.f64 z x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 y (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 y (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 y (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 y (+.f64 z x))) 1))))))

simplify81.0ms (0.5%)

Algorithm
egg-herbie
Rules
670×associate-/r/_binary64
547×associate-/l/_binary64
296×times-frac_binary64
279×associate-+l+_binary64
270×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0762130
12391775
27521534
334001357
Stop Event
node limit
Counts
381 → 326
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(/.f64 (pow.f64 z 2) y)
(+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(/.f64 (pow.f64 z 2) y)
(+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(/.f64 (pow.f64 z 2) y)
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (/.f64 (pow.f64 z 2) y))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.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 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.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 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(-.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(/.f64 (pow.f64 z 2) y)
(+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(/.f64 (pow.f64 z 2) y)
(+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (/.f64 (pow.f64 z 2) y) y)
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (/.f64 (pow.f64 z 2) y)) y)
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.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 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.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 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y))) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(*.f64 -1 y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(*.f64 -1 y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(/.f64 y x)
(+.f64 (/.f64 y x) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2))))
(+.f64 (/.f64 (*.f64 y (pow.f64 z 2)) (pow.f64 x 3)) (+.f64 (/.f64 y x) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2)))))
(+.f64 (/.f64 (*.f64 y (pow.f64 z 2)) (pow.f64 x 3)) (+.f64 (/.f64 y x) (+.f64 (*.f64 -1 (/.f64 (*.f64 y (pow.f64 z 3)) (pow.f64 x 4))) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2))))))
(/.f64 y z)
(+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (/.f64 y z))
(+.f64 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 z 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (/.f64 y z)))
(+.f64 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 z 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y (pow.f64 x 3)) (pow.f64 z 4))) (/.f64 y z))))
(/.f64 y z)
(+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (/.f64 y z))
(+.f64 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 z 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (/.f64 y z)))
(+.f64 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 z 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y (pow.f64 x 3)) (pow.f64 z 4))) (/.f64 y z))))
(/.f64 y z)
(+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (/.f64 y z))
(+.f64 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 z 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (/.f64 y z)))
(+.f64 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 z 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y (pow.f64 x 3)) (pow.f64 z 4))) (/.f64 y z))))
(/.f64 y x)
(+.f64 (/.f64 y x) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2))))
(+.f64 (/.f64 (*.f64 y (pow.f64 z 2)) (pow.f64 x 3)) (+.f64 (/.f64 y x) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2)))))
(+.f64 (/.f64 (*.f64 y (pow.f64 z 2)) (pow.f64 x 3)) (+.f64 (/.f64 y x) (+.f64 (*.f64 -1 (/.f64 (*.f64 y (pow.f64 z 3)) (pow.f64 x 4))) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2))))))
(/.f64 y x)
(+.f64 (/.f64 y x) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2))))
(+.f64 (/.f64 (*.f64 y (pow.f64 z 2)) (pow.f64 x 3)) (+.f64 (/.f64 y x) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2)))))
(+.f64 (/.f64 (*.f64 y (pow.f64 z 2)) (pow.f64 x 3)) (+.f64 (/.f64 y x) (+.f64 (*.f64 -1 (/.f64 (*.f64 y (pow.f64 z 3)) (pow.f64 x 4))) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2))))))
Outputs
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (/.f64 (pow.f64 z 2) y)))
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(-.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) y)
(-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y)
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (neg.f64 x) (/.f64 y x)) y)
(-.f64 (*.f64 (/.f64 x y) (neg.f64 x)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z)) y)
(-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y)
(-.f64 (/.f64 (neg.f64 (*.f64 x x)) y) y)
(-.f64 (/.f64 (neg.f64 x) (/.f64 y x)) y)
(-.f64 (*.f64 (/.f64 x y) (neg.f64 x)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) 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 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) 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 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 (/.f64 z y) z)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) y)
(-.f64 (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (+.f64 (*.f64 (+.f64 (/.f64 x y) (*.f64 -1 (/.f64 x y))) z) (/.f64 (pow.f64 z 2) y))) y)
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) 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 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (/.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 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.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) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) y)
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.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) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z 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 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.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) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) y)
(-.f64 (+.f64 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x) (+.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) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z 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 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(neg.f64 (/.f64 (*.f64 x x) y))
(/.f64 (neg.f64 (*.f64 x x)) y)
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 x y) (neg.f64 x))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (+.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) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) y)
(-.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (/.f64 z y) (*.f64 -1 (/.f64 z y))) x)) (+.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) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) y)
(/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y)
(fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y)))
(-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x)))
(-.f64 (*.f64 (/.f64 z y) z) (*.f64 (/.f64 x y) x))
(*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x))
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) y)
(+.f64 (*.f64 -1 y) (/.f64 (*.f64 (-.f64 z x) (+.f64 z x)) y))
(-.f64 (fma.f64 -1 (/.f64 (*.f64 x x) y) (fma.f64 (*.f64 0 (/.f64 x y)) z (/.f64 (*.f64 z z) y))) y)
(-.f64 (-.f64 (fma.f64 z 0 (/.f64 z (/.f64 y z))) (/.f64 x (/.f64 y x))) y)
(-.f64 (*.f64 (/.f64 z y) z) (+.f64 y (*.f64 (/.f64 x y) x)))
(-.f64 (*.f64 (/.f64 (+.f64 x z) y) (-.f64 z x)) y)
(/.f64 y x)
(+.f64 (/.f64 y x) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2))))
(+.f64 (/.f64 y x) (neg.f64 (/.f64 y (/.f64 (*.f64 x x) z))))
(-.f64 (/.f64 y x) (*.f64 (/.f64 y x) (/.f64 z x)))
(-.f64 (/.f64 y x) (/.f64 (/.f64 y (/.f64 x z)) x))
(*.f64 (+.f64 (/.f64 (neg.f64 z) x) 1) (/.f64 y x))
(+.f64 (/.f64 (*.f64 y (pow.f64 z 2)) (pow.f64 x 3)) (+.f64 (/.f64 y x) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2)))))
(+.f64 (+.f64 (/.f64 y (/.f64 (pow.f64 x 3) (*.f64 z z))) (/.f64 y x)) (neg.f64 (/.f64 y (/.f64 (*.f64 x x) z))))
(-.f64 (+.f64 (/.f64 y x) (/.f64 (*.f64 z (*.f64 y z)) (pow.f64 x 3))) (*.f64 (/.f64 y x) (/.f64 z x)))
(-.f64 (fma.f64 (/.f64 y (pow.f64 x 3)) (*.f64 z z) (/.f64 y x)) (/.f64 (/.f64 y (/.f64 x z)) x))
(-.f64 (/.f64 y x) (*.f64 (/.f64 y (*.f64 x x)) (-.f64 z (*.f64 (/.f64 z x) z))))
(+.f64 (/.f64 (*.f64 y (pow.f64 z 2)) (pow.f64 x 3)) (+.f64 (/.f64 y x) (+.f64 (*.f64 -1 (/.f64 (*.f64 y (pow.f64 z 3)) (pow.f64 x 4))) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2))))))
(+.f64 (+.f64 (/.f64 y (/.f64 (pow.f64 x 3) (*.f64 z z))) (/.f64 y x)) (*.f64 -1 (+.f64 (/.f64 y (/.f64 (pow.f64 x 4) (pow.f64 z 3))) (/.f64 y (/.f64 (*.f64 x x) z)))))
(+.f64 (/.f64 (*.f64 z (*.f64 y z)) (pow.f64 x 3)) (-.f64 (-.f64 (/.f64 y x) (*.f64 (/.f64 y (pow.f64 x 4)) (pow.f64 z 3))) (*.f64 (/.f64 y x) (/.f64 z x))))
(-.f64 (fma.f64 (/.f64 y (pow.f64 x 3)) (*.f64 z z) (/.f64 y x)) (*.f64 (/.f64 y (*.f64 x x)) (+.f64 z (/.f64 (pow.f64 z 3) (*.f64 x x)))))
(+.f64 (/.f64 y x) (*.f64 (/.f64 y (*.f64 x x)) (-.f64 (*.f64 (/.f64 z x) z) (+.f64 z (/.f64 (pow.f64 z 3) (*.f64 x x))))))
(/.f64 y z)
(+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (/.f64 y z))
(fma.f64 -1 (/.f64 (*.f64 x y) (*.f64 z z)) (/.f64 y z))
(-.f64 (/.f64 y z) (*.f64 (/.f64 y z) (/.f64 x z)))
(-.f64 (/.f64 y z) (*.f64 x (/.f64 (/.f64 y z) z)))
(*.f64 (+.f64 (/.f64 (neg.f64 x) z) 1) (/.f64 y z))
(+.f64 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 z 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (/.f64 y z)))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 x y) (*.f64 z z)) (/.f64 y z)) (/.f64 y (/.f64 (pow.f64 z 3) (*.f64 x x))))
(+.f64 (/.f64 y z) (-.f64 (/.f64 (*.f64 x (*.f64 x y)) (pow.f64 z 3)) (*.f64 (/.f64 y z) (/.f64 x z))))
(+.f64 (/.f64 y z) (*.f64 (/.f64 (/.f64 y z) z) (-.f64 (*.f64 (/.f64 x z) x) x)))
(+.f64 (/.f64 y z) (*.f64 (*.f64 x (/.f64 (/.f64 y z) z)) (+.f64 -1 (/.f64 x z))))
(+.f64 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 z 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y (pow.f64 x 3)) (pow.f64 z 4))) (/.f64 y z))))
(+.f64 (/.f64 y (/.f64 (pow.f64 z 3) (*.f64 x x))) (fma.f64 -1 (/.f64 (*.f64 x y) (*.f64 z z)) (fma.f64 -1 (/.f64 y (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (/.f64 y z))))
(+.f64 (/.f64 (*.f64 x (*.f64 x y)) (pow.f64 z 3)) (-.f64 (-.f64 (/.f64 y z) (*.f64 (/.f64 y (pow.f64 z 4)) (pow.f64 x 3))) (*.f64 (/.f64 y z) (/.f64 x z))))
(+.f64 (/.f64 y z) (-.f64 (*.f64 (/.f64 (/.f64 y z) z) (-.f64 (*.f64 (/.f64 x z) x) x)) (*.f64 (pow.f64 x 3) (/.f64 y (pow.f64 z 4)))))
(+.f64 (/.f64 y z) (*.f64 (/.f64 (/.f64 y z) z) (-.f64 (-.f64 (*.f64 (/.f64 x z) x) x) (/.f64 (pow.f64 x 3) (*.f64 z z)))))
(/.f64 y z)
(+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (/.f64 y z))
(fma.f64 -1 (/.f64 (*.f64 x y) (*.f64 z z)) (/.f64 y z))
(-.f64 (/.f64 y z) (*.f64 (/.f64 y z) (/.f64 x z)))
(-.f64 (/.f64 y z) (*.f64 x (/.f64 (/.f64 y z) z)))
(*.f64 (+.f64 (/.f64 (neg.f64 x) z) 1) (/.f64 y z))
(+.f64 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 z 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (/.f64 y z)))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 x y) (*.f64 z z)) (/.f64 y z)) (/.f64 y (/.f64 (pow.f64 z 3) (*.f64 x x))))
(+.f64 (/.f64 y z) (-.f64 (/.f64 (*.f64 x (*.f64 x y)) (pow.f64 z 3)) (*.f64 (/.f64 y z) (/.f64 x z))))
(+.f64 (/.f64 y z) (*.f64 (/.f64 (/.f64 y z) z) (-.f64 (*.f64 (/.f64 x z) x) x)))
(+.f64 (/.f64 y z) (*.f64 (*.f64 x (/.f64 (/.f64 y z) z)) (+.f64 -1 (/.f64 x z))))
(+.f64 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 z 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y (pow.f64 x 3)) (pow.f64 z 4))) (/.f64 y z))))
(+.f64 (/.f64 y (/.f64 (pow.f64 z 3) (*.f64 x x))) (fma.f64 -1 (/.f64 (*.f64 x y) (*.f64 z z)) (fma.f64 -1 (/.f64 y (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (/.f64 y z))))
(+.f64 (/.f64 (*.f64 x (*.f64 x y)) (pow.f64 z 3)) (-.f64 (-.f64 (/.f64 y z) (*.f64 (/.f64 y (pow.f64 z 4)) (pow.f64 x 3))) (*.f64 (/.f64 y z) (/.f64 x z))))
(+.f64 (/.f64 y z) (-.f64 (*.f64 (/.f64 (/.f64 y z) z) (-.f64 (*.f64 (/.f64 x z) x) x)) (*.f64 (pow.f64 x 3) (/.f64 y (pow.f64 z 4)))))
(+.f64 (/.f64 y z) (*.f64 (/.f64 (/.f64 y z) z) (-.f64 (-.f64 (*.f64 (/.f64 x z) x) x) (/.f64 (pow.f64 x 3) (*.f64 z z)))))
(/.f64 y z)
(+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (/.f64 y z))
(fma.f64 -1 (/.f64 (*.f64 x y) (*.f64 z z)) (/.f64 y z))
(-.f64 (/.f64 y z) (*.f64 (/.f64 y z) (/.f64 x z)))
(-.f64 (/.f64 y z) (*.f64 x (/.f64 (/.f64 y z) z)))
(*.f64 (+.f64 (/.f64 (neg.f64 x) z) 1) (/.f64 y z))
(+.f64 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 z 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (/.f64 y z)))
(+.f64 (fma.f64 -1 (/.f64 (*.f64 x y) (*.f64 z z)) (/.f64 y z)) (/.f64 y (/.f64 (pow.f64 z 3) (*.f64 x x))))
(+.f64 (/.f64 y z) (-.f64 (/.f64 (*.f64 x (*.f64 x y)) (pow.f64 z 3)) (*.f64 (/.f64 y z) (/.f64 x z))))
(+.f64 (/.f64 y z) (*.f64 (/.f64 (/.f64 y z) z) (-.f64 (*.f64 (/.f64 x z) x) x)))
(+.f64 (/.f64 y z) (*.f64 (*.f64 x (/.f64 (/.f64 y z) z)) (+.f64 -1 (/.f64 x z))))
(+.f64 (/.f64 (*.f64 y (pow.f64 x 2)) (pow.f64 z 3)) (+.f64 (*.f64 -1 (/.f64 (*.f64 y x) (pow.f64 z 2))) (+.f64 (*.f64 -1 (/.f64 (*.f64 y (pow.f64 x 3)) (pow.f64 z 4))) (/.f64 y z))))
(+.f64 (/.f64 y (/.f64 (pow.f64 z 3) (*.f64 x x))) (fma.f64 -1 (/.f64 (*.f64 x y) (*.f64 z z)) (fma.f64 -1 (/.f64 y (/.f64 (pow.f64 z 4) (pow.f64 x 3))) (/.f64 y z))))
(+.f64 (/.f64 (*.f64 x (*.f64 x y)) (pow.f64 z 3)) (-.f64 (-.f64 (/.f64 y z) (*.f64 (/.f64 y (pow.f64 z 4)) (pow.f64 x 3))) (*.f64 (/.f64 y z) (/.f64 x z))))
(+.f64 (/.f64 y z) (-.f64 (*.f64 (/.f64 (/.f64 y z) z) (-.f64 (*.f64 (/.f64 x z) x) x)) (*.f64 (pow.f64 x 3) (/.f64 y (pow.f64 z 4)))))
(+.f64 (/.f64 y z) (*.f64 (/.f64 (/.f64 y z) z) (-.f64 (-.f64 (*.f64 (/.f64 x z) x) x) (/.f64 (pow.f64 x 3) (*.f64 z z)))))
(/.f64 y x)
(+.f64 (/.f64 y x) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2))))
(+.f64 (/.f64 y x) (neg.f64 (/.f64 y (/.f64 (*.f64 x x) z))))
(-.f64 (/.f64 y x) (*.f64 (/.f64 y x) (/.f64 z x)))
(-.f64 (/.f64 y x) (/.f64 (/.f64 y (/.f64 x z)) x))
(*.f64 (+.f64 (/.f64 (neg.f64 z) x) 1) (/.f64 y x))
(+.f64 (/.f64 (*.f64 y (pow.f64 z 2)) (pow.f64 x 3)) (+.f64 (/.f64 y x) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2)))))
(+.f64 (+.f64 (/.f64 y (/.f64 (pow.f64 x 3) (*.f64 z z))) (/.f64 y x)) (neg.f64 (/.f64 y (/.f64 (*.f64 x x) z))))
(-.f64 (+.f64 (/.f64 y x) (/.f64 (*.f64 z (*.f64 y z)) (pow.f64 x 3))) (*.f64 (/.f64 y x) (/.f64 z x)))
(-.f64 (fma.f64 (/.f64 y (pow.f64 x 3)) (*.f64 z z) (/.f64 y x)) (/.f64 (/.f64 y (/.f64 x z)) x))
(-.f64 (/.f64 y x) (*.f64 (/.f64 y (*.f64 x x)) (-.f64 z (*.f64 (/.f64 z x) z))))
(+.f64 (/.f64 (*.f64 y (pow.f64 z 2)) (pow.f64 x 3)) (+.f64 (/.f64 y x) (+.f64 (*.f64 -1 (/.f64 (*.f64 y (pow.f64 z 3)) (pow.f64 x 4))) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2))))))
(+.f64 (+.f64 (/.f64 y (/.f64 (pow.f64 x 3) (*.f64 z z))) (/.f64 y x)) (*.f64 -1 (+.f64 (/.f64 y (/.f64 (pow.f64 x 4) (pow.f64 z 3))) (/.f64 y (/.f64 (*.f64 x x) z)))))
(+.f64 (/.f64 (*.f64 z (*.f64 y z)) (pow.f64 x 3)) (-.f64 (-.f64 (/.f64 y x) (*.f64 (/.f64 y (pow.f64 x 4)) (pow.f64 z 3))) (*.f64 (/.f64 y x) (/.f64 z x))))
(-.f64 (fma.f64 (/.f64 y (pow.f64 x 3)) (*.f64 z z) (/.f64 y x)) (*.f64 (/.f64 y (*.f64 x x)) (+.f64 z (/.f64 (pow.f64 z 3) (*.f64 x x)))))
(+.f64 (/.f64 y x) (*.f64 (/.f64 y (*.f64 x x)) (-.f64 (*.f64 (/.f64 z x) z) (+.f64 z (/.f64 (pow.f64 z 3) (*.f64 x x))))))
(/.f64 y x)
(+.f64 (/.f64 y x) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2))))
(+.f64 (/.f64 y x) (neg.f64 (/.f64 y (/.f64 (*.f64 x x) z))))
(-.f64 (/.f64 y x) (*.f64 (/.f64 y x) (/.f64 z x)))
(-.f64 (/.f64 y x) (/.f64 (/.f64 y (/.f64 x z)) x))
(*.f64 (+.f64 (/.f64 (neg.f64 z) x) 1) (/.f64 y x))
(+.f64 (/.f64 (*.f64 y (pow.f64 z 2)) (pow.f64 x 3)) (+.f64 (/.f64 y x) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2)))))
(+.f64 (+.f64 (/.f64 y (/.f64 (pow.f64 x 3) (*.f64 z z))) (/.f64 y x)) (neg.f64 (/.f64 y (/.f64 (*.f64 x x) z))))
(-.f64 (+.f64 (/.f64 y x) (/.f64 (*.f64 z (*.f64 y z)) (pow.f64 x 3))) (*.f64 (/.f64 y x) (/.f64 z x)))
(-.f64 (fma.f64 (/.f64 y (pow.f64 x 3)) (*.f64 z z) (/.f64 y x)) (/.f64 (/.f64 y (/.f64 x z)) x))
(-.f64 (/.f64 y x) (*.f64 (/.f64 y (*.f64 x x)) (-.f64 z (*.f64 (/.f64 z x) z))))
(+.f64 (/.f64 (*.f64 y (pow.f64 z 2)) (pow.f64 x 3)) (+.f64 (/.f64 y x) (+.f64 (*.f64 -1 (/.f64 (*.f64 y (pow.f64 z 3)) (pow.f64 x 4))) (*.f64 -1 (/.f64 (*.f64 y z) (pow.f64 x 2))))))
(+.f64 (+.f64 (/.f64 y (/.f64 (pow.f64 x 3) (*.f64 z z))) (/.f64 y x)) (*.f64 -1 (+.f64 (/.f64 y (/.f64 (pow.f64 x 4) (pow.f64 z 3))) (/.f64 y (/.f64 (*.f64 x x) z)))))
(+.f64 (/.f64 (*.f64 z (*.f64 y z)) (pow.f64 x 3)) (-.f64 (-.f64 (/.f64 y x) (*.f64 (/.f64 y (pow.f64 x 4)) (pow.f64 z 3))) (*.f64 (/.f64 y x) (/.f64 z x))))
(-.f64 (fma.f64 (/.f64 y (pow.f64 x 3)) (*.f64 z z) (/.f64 y x)) (*.f64 (/.f64 y (*.f64 x x)) (+.f64 z (/.f64 (pow.f64 z 3) (*.f64 x x)))))
(+.f64 (/.f64 y x) (*.f64 (/.f64 y (*.f64 x x)) (-.f64 (*.f64 (/.f64 z x) z) (+.f64 z (/.f64 (pow.f64 z 3) (*.f64 x x))))))

localize10.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 1/2 (/.f64 x (/.f64 y x)))
0.1b
(/.f64 x (/.f64 y x))
Compiler

Compiled 21 to 8 computations (61.9% saved)

series4.0ms (0%)

Counts
2 → 48
Calls

12 calls:

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

rewrite74.0ms (0.5%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0717
115317
2210117
Stop Event
node limit
Counts
2 → 60
Calls
Call 1
Inputs
(/.f64 x (/.f64 y x))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 x (/.f64 y x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (/.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x (/.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 x (/.f64 y x))) (pow.f64 (cbrt.f64 (/.f64 x (/.f64 y x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 x (/.f64 y x))) 2) (cbrt.f64 (/.f64 x (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 x (/.f64 y x))) (sqrt.f64 (/.f64 x (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (/.f64 1 (/.f64 (neg.f64 y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x y) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) 1) (/.f64 (cbrt.f64 x) (/.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) 1) (/.f64 (sqrt.f64 x) (/.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) y) (/.f64 (sqrt.f64 x) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (/.f64 x (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) y) (/.f64 (cbrt.f64 x) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 y x)) 2)) (/.f64 x (cbrt.f64 (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (pow.f64 (cbrt.f64 (/.f64 y x)) 2)) (cbrt.f64 (/.f64 x (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) (pow.f64 (cbrt.f64 (/.f64 y x)) 2)) (/.f64 (sqrt.f64 x) (cbrt.f64 (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (/.f64 y x))) (/.f64 x (sqrt.f64 (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 x) 2) (sqrt.f64 (/.f64 y x))) (/.f64 (cbrt.f64 x) (sqrt.f64 (/.f64 y 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 (neg.f64 y)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x y) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x y) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x y) (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (/.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 x (/.f64 y x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 x (/.f64 y x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 x (/.f64 y x))) 2)))) (#(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 x (/.f64 (neg.f64 y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 x (/.f64 y x)) 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 y x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 x 3) (pow.f64 (/.f64 y x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 x (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 x (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 x (/.f64 y x))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 1/2 (/.f64 y (*.f64 x x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1/2 (/.f64 y (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 y x) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x 1/2) (/.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 x 1/2)) (/.f64 (neg.f64 y) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x 1/2) y) (/.f64 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x 1/2) 1) (/.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x 1/2) (pow.f64 (cbrt.f64 (/.f64 y x)) 2)) (cbrt.f64 (/.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x 1/2) (sqrt.f64 (/.f64 y x))) (sqrt.f64 (/.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) 1/2) (/.f64 (neg.f64 y) x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 1/2 (neg.f64 x)) (/.f64 (neg.f64 y) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1/2 (/.f64 y (*.f64 x x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1/2 (/.f64 y (*.f64 x x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 1/2 (/.f64 y (*.f64 x x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 1/2 (/.f64 y (*.f64 x x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 1/2 (/.f64 y (*.f64 x x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/2) (/.f64 x (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1/2 (/.f64 y (*.f64 x x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1/2 (/.f64 y (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1/2 (/.f64 y (*.f64 x x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 1/2 (/.f64 y (*.f64 x x)))))))))

simplify156.0ms (1%)

Algorithm
egg-herbie
Rules
724×associate-/l/_binary64
523×associate-*l*_binary64
493×*-commutative_binary64
470×sqr-pow_binary64
438×associate-*l/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08408
116408
230408
361408
4165408
5610408
62646408
73715408
83925408
94144408
104372408
114709408
126251408
136916408
147713408
Stop Event
node limit
Counts
108 → 63
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)
(*.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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
(/.f64 (*.f64 1/2 (*.f64 x x)) y)
(*.f64 (/.f64 x (/.f64 y x)) 1/2)
(*.f64 (*.f64 (/.f64 x y) x) 1/2)
(*.f64 (/.f64 (*.f64 x x) y) 1/2)
(*.f64 x (/.f64 (*.f64 x 1/2) y))
(*.f64 x (/.f64 1/2 (/.f64 y x)))

localize9.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 21 to 13 computations (38.1% saved)

series38.0ms (0.3%)

Counts
2 → 48
Calls

12 calls:

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

rewrite77.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
792×pow1_binary64
736×add-log-exp_binary64
736×log1p-expm1-u_binary64
736×expm1-log1p-u_binary64
721×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0717
114817
2196417
Stop Event
node limit
Counts
2 → 64
Calls
Call 1
Inputs
(*.f64 (/.f64 x (*.f64 y 2)) x)
(/.f64 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 2 (/.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 y 2) (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x x) (*.f64 y 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 x x)) (*.f64 y -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) x) (*.f64 y -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 x y) x) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (neg.f64 x)) (*.f64 y -2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (/.f64 x y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x x) y) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x x) 2) y)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x x) 1) (*.f64 y 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x x) (pow.f64 (cbrt.f64 (*.f64 y 2)) 2)) (cbrt.f64 (*.f64 y 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 x x) (sqrt.f64 (*.f64 y 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 sqrt.f64 (pow.f64 (*.f64 (*.f64 x x) (/.f64 1/2 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (sqrt.f64 (exp.f64 (/.f64 x y))) x))))) (#(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 x 3) (pow.f64 (*.f64 x (/.f64 1/2 y)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 x (/.f64 1/2 y)) 3) (pow.f64 x 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))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 x (/.f64 1/2 y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 1/2 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (/.f64 1/2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x (/.f64 1/2 y))) (pow.f64 (cbrt.f64 (*.f64 x (/.f64 1/2 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 x (/.f64 1/2 y))) 2) (cbrt.f64 (*.f64 x (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 x (/.f64 1/2 y))) (sqrt.f64 (*.f64 x (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) (/.f64 1/2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (/.f64 1 (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1/2 y) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x y) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (/.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 x x)) 1) (/.f64 (cbrt.f64 x) (*.f64 y 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) 1) (/.f64 (sqrt.f64 x) (*.f64 y 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) y) (/.f64 (sqrt.f64 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (/.f64 x 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 x x)) y) (/.f64 (cbrt.f64 x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) 2) (/.f64 (sqrt.f64 x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 x x)) 2) (/.f64 (cbrt.f64 x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 y 2)) 2)) (/.f64 x (cbrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 x x)) (pow.f64 (cbrt.f64 (*.f64 y 2)) 2)) (cbrt.f64 (*.f64 x (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 x) (pow.f64 (cbrt.f64 (*.f64 y 2)) 2)) (/.f64 (sqrt.f64 x) (cbrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (*.f64 y 2))) (/.f64 x (sqrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 x x)) (sqrt.f64 (*.f64 y 2))) (/.f64 (cbrt.f64 x) (sqrt.f64 (*.f64 y 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (/.f64 1/2 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 x (/.f64 1/2 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (/.f64 1/2 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x (/.f64 1/2 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (/.f64 y x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 x (*.f64 y -2)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 x (/.f64 1/2 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (sqrt.f64 (exp.f64 (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 x (/.f64 1/2 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 x 3) (pow.f64 (*.f64 y 2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (/.f64 1/2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (/.f64 1/2 y))))))))

simplify104.0ms (0.7%)

Algorithm
egg-herbie
Rules
1371×associate-*l/_binary64
1103×associate-*r/_binary64
349×sqr-pow_binary64
316×*-commutative_binary64
242×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
010408
121408
237408
369408
4188408
5699408
61819408
72838408
82948408
93091408
103272408
113546408
123874408
135356408
Stop Event
node limit
Counts
112 → 66
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))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 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 y (*.f64 x x)))
(*.f64 x (*.f64 x (/.f64 1/2 y)))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 (/.f64 1/2 y) x)
(*.f64 x (/.f64 1/2 y))

localize86.0ms (0.6%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(/.f64 z (/.f64 y z))
Compiler

Compiled 30 to 9 computations (70% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite57.0ms (0.4%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
057
11107
216057
Stop Event
node limit
Counts
1 → 38
Calls
Call 1
Inputs
(/.f64 z (/.f64 y z))
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 z y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 z (/.f64 z y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 z (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 z (/.f64 z y))) (pow.f64 (cbrt.f64 (*.f64 z (/.f64 z y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 z (/.f64 z y))) 2) (cbrt.f64 (*.f64 z (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 z (/.f64 z y))) (sqrt.f64 (*.f64 z (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (/.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 z) (/.f64 1 (/.f64 (neg.f64 y) z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z y) z)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) 1) (/.f64 (cbrt.f64 z) (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 z) 1) (/.f64 (sqrt.f64 z) (/.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 z) y) (/.f64 (sqrt.f64 z) (/.f64 1 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (/.f64 z (/.f64 1 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) y) (/.f64 (cbrt.f64 z) (/.f64 1 z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (/.f64 y z)) 2)) (/.f64 z (cbrt.f64 (/.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 (cbrt.f64 (/.f64 y z)) 2)) (cbrt.f64 (*.f64 z (/.f64 z y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 z) (pow.f64 (cbrt.f64 (/.f64 y z)) 2)) (/.f64 (sqrt.f64 z) (cbrt.f64 (/.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (/.f64 y z))) (/.f64 z (sqrt.f64 (/.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (sqrt.f64 (/.f64 y z))) (/.f64 (cbrt.f64 z) (sqrt.f64 (/.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z 1) (/.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 z (neg.f64 y)) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 z y) 1) z)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 z y) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 z y) (sqrt.f64 z)) (sqrt.f64 z))))) (#(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 (sqrt.f64 (*.f64 z (/.f64 z y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 y (*.f64 z z)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 z (/.f64 (neg.f64 y) z)))))) (#(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))))))))

simplify117.0ms (0.8%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
06168
111168
220168
337168
483168
5266168
61091168
73478168
84280168
94465168
104681168
115028168
125456168
135935168
146584168
157273168
Stop Event
node limit
Counts
62 → 39
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)
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))

localize46.0ms (0.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
1.2b
(-.f64 (*.f64 x x) (*.f64 z z))
14.2b
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
Compiler

Compiled 34 to 12 computations (64.7% saved)

series7.0ms (0%)

Counts
2 → 60
Calls

15 calls:

TimeVariablePointExpression
1.0ms
x
@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
y
@0
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
1.0ms
z
@inf
(/.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))

rewrite142.0ms (0.9%)

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

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

eval541.0ms (3.5%)

Compiler

Compiled 13879 to 4926 computations (64.5% saved)

prune233.0ms (1.5%)

Pruning

16 alts after pruning (11 fresh and 5 done)

PrunedKeptTotal
New7217728
Fresh549
Picked011
Done448
Total73016746
Error
0b
Counts
746 → 16
Alt Table
Click to see full alt table
StatusErrorProgram
51.8b
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
51.9b
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
16.6b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 x y) (neg.f64 x)) y))
54.1b
(/.f64 1/2 (/.f64 y (*.f64 x x)))
16.5b
(*.f64 -1/2 (-.f64 (/.f64 (-.f64 z x) (/.f64 y x)) y))
43.0b
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
50.6b
(*.f64 1/2 (/.f64 x (/.f64 y x)))
31.3b
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
56.5b
(/.f64 (/.f64 (*.f64 x 1/2) (sqrt.f64 (/.f64 y x))) (sqrt.f64 (/.f64 y x)))
20.0b
(*.f64 -1/2 (-.f64 (/.f64 1 (/.f64 y (*.f64 z z))) y))
12.1b
(*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y))
47.5b
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
50.6b
(*.f64 (*.f64 (/.f64 1/2 y) x) x)
35.0b
(*.f64 (/.f64 (+.f64 x z) 2) (/.f64 (-.f64 x z) y))
28.1b
(*.f64 1/2 y)
35.6b
(*.f64 -1/2 (-.f64 (pow.f64 (/.f64 z (sqrt.f64 y)) 2) y))
Compiler

Compiled 330 to 224 computations (32.1% saved)

localize12.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (/.f64 (-.f64 z x) (/.f64 y x)) y)
5.6b
(/.f64 (-.f64 z x) (/.f64 y x))
Compiler

Compiled 40 to 10 computations (75% saved)

series9.0ms (0.1%)

Counts
2 → 72
Calls

18 calls:

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

rewrite96.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
596×log-prod_binary64
446×fma-def_binary64
376×pow-prod-down_binary64
345×fma-neg_binary64
286×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0823
119523
2332123
Stop Event
node limit
Counts
2 → 237
Calls
Call 1
Inputs
(/.f64 (-.f64 z x) (/.f64 y x))
(-.f64 (/.f64 (-.f64 z x) (/.f64 y x)) y)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (/.f64 x y)) (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (/.f64 (-.f64 z x) y))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (/.f64 (-.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (/.f64 (-.f64 z x) y)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (/.f64 (-.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (/.f64 x y)) (*.f64 x (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 x (/.f64 (-.f64 z x) y)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (/.f64 (-.f64 z x) y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z x) (/.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (/.f64 (-.f64 z x) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) (cbrt.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2)) (cbrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 z x)) 2) (*.f64 (cbrt.f64 (-.f64 z x)) (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) (sqrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 z x)) (*.f64 (sqrt.f64 (-.f64 z x)) (/.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (-.f64 z x)) (/.f64 1 (/.f64 (neg.f64 y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x y) (-.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z x) y) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 y) (/.f64 (-.f64 z x) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 y x)) -2) (/.f64 (-.f64 z x) (cbrt.f64 (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 y x) -1/2) (/.f64 (-.f64 z x) (sqrt.f64 (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 z x)) 2) 1) (/.f64 (cbrt.f64 (-.f64 z x)) (/.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 z x)) 1) (/.f64 (sqrt.f64 (-.f64 z x)) (/.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 z x)) y) (/.f64 (sqrt.f64 (-.f64 z x)) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 z x)) 2) y) (/.f64 (cbrt.f64 (-.f64 z x)) (/.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 z x)) 2) (pow.f64 (cbrt.f64 (/.f64 y x)) 2)) (cbrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (-.f64 z x)) (pow.f64 (cbrt.f64 (/.f64 y x)) 2)) (/.f64 (sqrt.f64 (-.f64 z x)) (cbrt.f64 (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 z x)) 2) (sqrt.f64 (/.f64 y x))) (/.f64 (cbrt.f64 (-.f64 z x)) (sqrt.f64 (/.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z x) 1) (/.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z x) (neg.f64 y)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 z x) y) 1) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 z x) y) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (-.f64 z x) y) (sqrt.f64 x)) (sqrt.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (/.f64 (-.f64 z x) y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (/.f64 y x) (-.f64 z x)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (-.f64 z x) (/.f64 (neg.f64 y) x)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 x) (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 x (/.f64 (-.f64 z x) y)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 x (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 x (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 x (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 x (/.f64 (-.f64 z x) y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (/.f64 x y) (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z (/.f64 x y)) (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (/.f64 x y))) 2) (cbrt.f64 (*.f64 z (/.f64 x y))) (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z (/.f64 x y))) (sqrt.f64 (*.f64 z (/.f64 x y))) (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y) (/.f64 z (/.f64 1 x)) (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 y x)) -2) (/.f64 z (cbrt.f64 (/.f64 y x))) (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (/.f64 y x) -1/2) (/.f64 z (sqrt.f64 (/.f64 y x))) (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) y) (/.f64 (cbrt.f64 z) (/.f64 1 x)) (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) y) (/.f64 (sqrt.f64 z) (/.f64 1 x)) (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) 1) (/.f64 (cbrt.f64 z) (/.f64 y x)) (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) 1) (/.f64 (sqrt.f64 z) (/.f64 y x)) (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 (cbrt.f64 (/.f64 y x)) 2)) (/.f64 (cbrt.f64 z) (cbrt.f64 (/.f64 y x))) (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) (pow.f64 (cbrt.f64 (/.f64 y x)) 2)) (/.f64 (sqrt.f64 z) (cbrt.f64 (/.f64 y x))) (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (sqrt.f64 (/.f64 y x))) (/.f64 (cbrt.f64 z) (sqrt.f64 (/.f64 y x))) (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) (sqrt.f64 (/.f64 y x))) (/.f64 (sqrt.f64 z) (sqrt.f64 (/.f64 y x))) (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z y) x (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z 1) (/.f64 x y) (neg.f64 (*.f64 x (/.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z (neg.f64 y)) (neg.f64 x) (neg.f64 (*.f64 x (/.f64 x y))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (/.f64 (-.f64 z x) y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (/.f64 (-.f64 z x) y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (-.f64 z x) (/.f64 x 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 (-.f64 z x) (/.f64 x y) (neg.f64 y)) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 y) (*.f64 x (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) 2) (cbrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) (sqrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 (-.f64 z x) (/.f64 x y) y) (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2) (*.f64 y y)) (/.f64 1 (fma.f64 (-.f64 z x) (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (sqrt.f64 (-.f64 z x)) (sqrt.f64 (/.f64 x y)) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) (sqrt.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 y (fma.f64 (-.f64 z x) (/.f64 x y) y) (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2)) (-.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -3) (pow.f64 y 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (-.f64 z x) (/.f64 x y) y) (-.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2) (*.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -3) (pow.f64 y 3)) (fma.f64 y (fma.f64 (-.f64 z x) (/.f64 x y) y) (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2) (*.f64 y y)) (fma.f64 (-.f64 z x) (/.f64 x y) y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -3) (pow.f64 y 3))) (neg.f64 (fma.f64 y (fma.f64 (-.f64 z x) (/.f64 x y) y) (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2) (*.f64 y y))) (neg.f64 (fma.f64 (-.f64 z x) (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -3) (pow.f64 (neg.f64 y) 3)) (+.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2) (-.f64 (pow.f64 (neg.f64 y) 2) (*.f64 (*.f64 x (/.f64 (-.f64 z x) y)) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2) (pow.f64 (neg.f64 y) 2)) (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 y (fma.f64 (-.f64 z x) (/.f64 x y) y) (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2)) (-.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -3) (pow.f64 y 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (-.f64 z x) (/.f64 x y) y) (-.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2) (*.f64 y y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 x (/.f64 (-.f64 z x) y)))) (exp.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 x) (/.f64 (-.f64 z x) y)) (+.f64 1 (expm1.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 x (/.f64 (-.f64 z x) y)))) (+.f64 1 (expm1.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (/.f64 (-.f64 z x) y)))) (exp.f64 (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x (/.f64 (-.f64 z x) y)))) (/.f64 1 (exp.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 y)) (pow.f64 (exp.f64 x) (/.f64 (-.f64 z x) y))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 y)) (+.f64 1 (expm1.f64 (*.f64 x (/.f64 (-.f64 z x) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 y)) (+.f64 1 (expm1.f64 (*.f64 x (/.f64 (-.f64 z x) y))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (/.f64 x y) (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 z (/.f64 x y) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (/.f64 (-.f64 z x) y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x (/.f64 (-.f64 z x) y) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 z x) (/.f64 x y) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (/.f64 (-.f64 z x) y)) 1 (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 x (/.f64 (-.f64 z x) y)) 1 (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y)) 1 (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 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 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y)) 1 (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (/.f64 (-.f64 z x) y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 x (/.f64 (-.f64 z x) y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (-.f64 z x) (/.f64 x 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 fma.f64 1 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y)) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 y) (*.f64 x (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z (/.f64 x y)) (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 z (/.f64 x y)) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) 2) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 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 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) 2) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) 2) (cbrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) 2) (cbrt.f64 (fma.f64 (-.f64 z x) (/.f64 x 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 fma.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) 2) (cbrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 y) 2) (neg.f64 (cbrt.f64 y)) (*.f64 x (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) (cbrt.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) (cbrt.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2)) (cbrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2)) (cbrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 z x)) 2) (*.f64 (cbrt.f64 (-.f64 z x)) (/.f64 x y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 z x)) 2) (*.f64 (cbrt.f64 (-.f64 z x)) (/.f64 x y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) (sqrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) (sqrt.f64 (fma.f64 (-.f64 z x) (/.f64 x 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 fma.f64 (sqrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) (sqrt.f64 (fma.f64 (-.f64 z x) (/.f64 x y) (neg.f64 y))) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 y) (neg.f64 (sqrt.f64 y)) (*.f64 x (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) (sqrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) (sqrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 z x)) (*.f64 (sqrt.f64 (-.f64 z x)) (/.f64 x y)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 z x)) (*.f64 (sqrt.f64 (-.f64 z x)) (/.f64 x y)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (-.f64 z x)) (/.f64 1 (/.f64 (neg.f64 y) x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (-.f64 z x)) (/.f64 1 (/.f64 (neg.f64 y) x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 (-.f64 z x) (/.f64 x y) y) (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2))) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 (-.f64 z x) (/.f64 x y) y) (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -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 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (fma.f64 (-.f64 z x) (/.f64 x y) y) (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2))) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x y) (-.f64 z x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 x y) (-.f64 z x) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2) (*.f64 y y)) (/.f64 1 (fma.f64 (-.f64 z x) (/.f64 x y) y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2) (*.f64 y y)) (/.f64 1 (fma.f64 (-.f64 z x) (/.f64 x 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 (-.f64 (pow.f64 (/.f64 (/.f64 y x) (-.f64 z x)) -2) (*.f64 y y)) (/.f64 1 (fma.f64 (-.f64 z x) (/.f64 x y) y)) (+.f64 (neg.f64 y) y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) y) x (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) y) x (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 y)) 2) (cbrt.f64 (neg.f64 y)) (*.f64 x (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (/.f64 x y))) 2) (cbrt.f64 (*.f64 z (/.f64 x y))) (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 z (/.f64 x y))) 2) (cbrt.f64 (*.f64 z (/.f64 x y))) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 y)) (sqrt.f64 (neg.f64 y)) (*.f64 x (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z (/.f64 x y))) (sqrt.f64 (*.f64 z (/.f64 x y))) (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 z (/.f64 x y))) (sqrt.f64 (*.f64 z (/.f64 x y))) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 y)) (sqrt.f64 y) (*.f64 x (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 y (*.f64 x (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y) (/.f64 z (/.f64 1 x)) (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y) (/.f64 z (/.f64 1 x)) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y) (/.f64 (-.f64 z x) (/.f64 1 x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 1 y) (/.f64 (-.f64 z x) (/.f64 1 x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 y x)) -2) (/.f64 z (cbrt.f64 (/.f64 y x))) (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 y x)) -2) (/.f64 z (cbrt.f64 (/.f64 y x))) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 y x)) -2) (/.f64 (-.f64 z x) (cbrt.f64 (/.f64 y x))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 y x)) -2) (/.f64 (-.f64 z x) (cbrt.f64 (/.f64 y x))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (/.f64 y x) -1/2) (/.f64 z (sqrt.f64 (/.f64 y x))) (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (/.f64 y x) -1/2) (/.f64 z (sqrt.f64 (/.f64 y x))) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (/.f64 y x) -1/2) (/.f64 (-.f64 z x) (sqrt.f64 (/.f64 y x))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (/.f64 y x) -1/2) (/.f64 (-.f64 z x) (sqrt.f64 (/.f64 y x))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 z x)) 2) 1) (/.f64 (cbrt.f64 (-.f64 z x)) (/.f64 y x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 z x)) 2) 1) (/.f64 (cbrt.f64 (-.f64 z x)) (/.f64 y x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (-.f64 z x)) 1) (/.f64 (sqrt.f64 (-.f64 z x)) (/.f64 y x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (-.f64 z x)) 1) (/.f64 (sqrt.f64 (-.f64 z x)) (/.f64 y x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (-.f64 z x)) y) (/.f64 (sqrt.f64 (-.f64 z x)) (/.f64 1 x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (-.f64 z x)) y) (/.f64 (sqrt.f64 (-.f64 z x)) (/.f64 1 x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) y) (/.f64 (cbrt.f64 z) (/.f64 1 x)) (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) y) (/.f64 (cbrt.f64 z) (/.f64 1 x)) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) y) (/.f64 (sqrt.f64 z) (/.f64 1 x)) (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) y) (/.f64 (sqrt.f64 z) (/.f64 1 x)) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) 1) (/.f64 (cbrt.f64 z) (/.f64 y x)) (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) 1) (/.f64 (cbrt.f64 z) (/.f64 y x)) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) 1) (/.f64 (sqrt.f64 z) (/.f64 y x)) (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) 1) (/.f64 (sqrt.f64 z) (/.f64 y x)) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 (cbrt.f64 (/.f64 y x)) 2)) (/.f64 (cbrt.f64 z) (cbrt.f64 (/.f64 y x))) (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (pow.f64 (cbrt.f64 (/.f64 y x)) 2)) (/.f64 (cbrt.f64 z) (cbrt.f64 (/.f64 y x))) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) (pow.f64 (cbrt.f64 (/.f64 y x)) 2)) (/.f64 (sqrt.f64 z) (cbrt.f64 (/.f64 y x))) (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) (pow.f64 (cbrt.f64 (/.f64 y x)) 2)) (/.f64 (sqrt.f64 z) (cbrt.f64 (/.f64 y x))) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (sqrt.f64 (/.f64 y x))) (/.f64 (cbrt.f64 z) (sqrt.f64 (/.f64 y x))) (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 z) 2) (sqrt.f64 (/.f64 y x))) (/.f64 (cbrt.f64 z) (sqrt.f64 (/.f64 y x))) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) (sqrt.f64 (/.f64 y x))) (/.f64 (sqrt.f64 z) (sqrt.f64 (/.f64 y x))) (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 z) (sqrt.f64 (/.f64 y x))) (/.f64 (sqrt.f64 z) (sqrt.f64 (/.f64 y x))) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 z x)) 2) y) (/.f64 (cbrt.f64 (-.f64 z x)) (/.f64 1 x)) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 z x)) 2) y) (/.f64 (cbrt.f64 (-.f64 z x)) (/.f64 1 x)) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 z x)) 2) (pow.f64 (cbrt.f64 (/.f64 y x)) 2)) (cbrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 z x)) 2) (pow.f64 (cbrt.f64 (/.f64 y x)) 2)) (cbrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (-.f64 z x)) (pow.f64 (cbrt.f64 (/.f64 y x)) 2)) (/.f64 (sqrt.f64 (-.f64 z x)) (cbrt.f64 (/.f64 y x))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sqrt.f64 (-.f64 z x)) (pow.f64 (cbrt.f64 (/.f64 y x)) 2)) (/.f64 (sqrt.f64 (-.f64 z x)) (cbrt.f64 (/.f64 y x))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 z x)) 2) (sqrt.f64 (/.f64 y x))) (/.f64 (cbrt.f64 (-.f64 z x)) (sqrt.f64 (/.f64 y x))) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (pow.f64 (cbrt.f64 (-.f64 z x)) 2) (sqrt.f64 (/.f64 y x))) (/.f64 (cbrt.f64 (-.f64 z x)) (sqrt.f64 (/.f64 y x))) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z y) x (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z y) x (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 (-.f64 z x)) (sqrt.f64 (/.f64 x y)) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) (sqrt.f64 y)) (fma.f64 (neg.f64 y) 1 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (sqrt.f64 (-.f64 z x)) (sqrt.f64 (/.f64 x y)) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) (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 (sqrt.f64 (-.f64 z x)) (sqrt.f64 (/.f64 x y)) (sqrt.f64 y)) (-.f64 (sqrt.f64 (*.f64 x (/.f64 (-.f64 z x) y))) (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 x (/.f64 (-.f64 z x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z 1) (/.f64 x y) (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z 1) (/.f64 x y) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z (neg.f64 y)) (neg.f64 x) (neg.f64 (fma.f64 x (/.f64 x y) y)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 z (neg.f64 y)) (neg.f64 x) (neg.f64 (fma.f64 x (/.f64 x y) (neg.f64 (neg.f64 y)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) 1) (/.f64 x y) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) 1) (/.f64 x y) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) (neg.f64 y)) (neg.f64 x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (-.f64 z x) (neg.f64 y)) (neg.f64 x) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) 1) x (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) 1) x (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) (*.f64 (neg.f64 y) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (sqrt.f64 x)) (sqrt.f64 x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (-.f64 z x) y) (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (neg.f64 y) 1))))))

simplify112.0ms (0.7%)

Algorithm
egg-herbie
Rules
701×fma-neg_binary64
611×cancel-sign-sub-inv_binary64
518×associate-/l*_binary64
422×associate-/r*_binary64
369×associate-/r/_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0241211
158753
2113753
3232751
4659751
52349751
67812751
Stop Event
node limit
Counts
309 → 254
Calls
Call 1
Inputs
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(/.f64 (*.f64 z x) y)
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(/.f64 (*.f64 z x) y)
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(/.f64 (*.f64 z x) y)
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(/.f64 (*.f64 (-.f64 z x) x) y)
(/.f64 (*.f64 (-.f64 z x) x) y)
(/.f64 (*.f64 (-.f64 z x) x) y)
(/.f64 (*.f64 (-.f64 z x) x) y)
(/.f64 (*.f64 (-.f64 z x) x) y)
(/.f64 (*.f64 (-.f64 z x) x) y)
(/.f64 (*.f64 (-.f64 z x) x) y)
(/.f64 (*.f64 (-.f64 z x) x) y)
(/.f64 (*.f64 (-.f64 z x) x) y)
(/.f64 (*.f64 (-.f64 z x) x) y)
(/.f64 (*.f64 (-.f64 z x) x) y)
(/.f64 (*.f64 (-.f64 z x) x) y)
(-.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) y)
(-.f64 (+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(-.f64 (+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(-.f64 (+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(/.f64 (*.f64 z x) y)
(-.f64 (+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(-.f64 (+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(-.f64 (+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(/.f64 (*.f64 z x) y)
(-.f64 (+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(-.f64 (+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(-.f64 (+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(*.f64 -1 y)
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 y))
(+.f64 (/.f64 (*.f64 z x) y) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y)))
(+.f64 (/.f64 (*.f64 z x) y) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y)))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (/.f64 (*.f64 z x) y) (+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))))
(+.f64 (/.f64 (*.f64 z x) y) (+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (/.f64 (*.f64 z x) y) (+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))))
(+.f64 (/.f64 (*.f64 z x) y) (+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))))
(/.f64 (*.f64 (-.f64 z x) x) y)
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
(*.f64 -1 y)
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
(*.f64 -1 y)
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
Outputs
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(neg.f64 (/.f64 x (/.f64 y x)))
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (/.f64 (neg.f64 x) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(/.f64 (*.f64 z x) y)
(/.f64 z (/.f64 y x))
(/.f64 x (/.f64 y z))
(*.f64 x (/.f64 z y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(/.f64 (*.f64 z x) y)
(/.f64 z (/.f64 y x))
(/.f64 x (/.f64 y z))
(*.f64 x (/.f64 z y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(/.f64 (*.f64 z x) y)
(/.f64 z (/.f64 y x))
(/.f64 x (/.f64 y z))
(*.f64 x (/.f64 z y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(neg.f64 (/.f64 x (/.f64 y x)))
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (/.f64 (neg.f64 x) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(neg.f64 (/.f64 x (/.f64 y x)))
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (/.f64 (neg.f64 x) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(/.f64 (*.f64 (-.f64 z x) x) y)
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(/.f64 (*.f64 (-.f64 z x) x) y)
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(/.f64 (*.f64 (-.f64 z x) x) y)
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(/.f64 (*.f64 (-.f64 z x) x) y)
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(/.f64 (*.f64 (-.f64 z x) x) y)
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(/.f64 (*.f64 (-.f64 z x) x) y)
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(/.f64 (*.f64 (-.f64 z x) x) y)
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(/.f64 (*.f64 (-.f64 z x) x) y)
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(/.f64 (*.f64 (-.f64 z x) x) y)
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(/.f64 (*.f64 (-.f64 z x) x) y)
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(/.f64 (*.f64 (-.f64 z x) x) y)
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(/.f64 (*.f64 (-.f64 z x) x) y)
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(-.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) y)
(-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y)
(neg.f64 (+.f64 y (/.f64 x (/.f64 y x))))
(-.f64 (/.f64 (neg.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 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(-.f64 (+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(-.f64 (+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(/.f64 (*.f64 z x) y)
(/.f64 z (/.f64 y x))
(/.f64 x (/.f64 y z))
(*.f64 x (/.f64 z y))
(-.f64 (+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(-.f64 (+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(-.f64 (+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(/.f64 (*.f64 z x) y)
(/.f64 z (/.f64 y x))
(/.f64 x (/.f64 y z))
(*.f64 x (/.f64 z y))
(-.f64 (+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(-.f64 (+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(-.f64 (+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))) y)
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 y))
(+.f64 (/.f64 z (/.f64 y x)) (neg.f64 y))
(-.f64 (/.f64 x (/.f64 y z)) y)
(-.f64 (*.f64 x (/.f64 z y)) y)
(+.f64 (/.f64 (*.f64 z x) y) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y)))
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(+.f64 (/.f64 (*.f64 z x) y) (+.f64 (*.f64 -1 (/.f64 (pow.f64 x 2) y)) (*.f64 -1 y)))
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(neg.f64 (/.f64 x (/.f64 y x)))
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (/.f64 (neg.f64 x) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(+.f64 (/.f64 (*.f64 z x) y) (+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))))
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(+.f64 (/.f64 (*.f64 z x) y) (+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))))
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(*.f64 -1 (/.f64 (pow.f64 x 2) y))
(neg.f64 (/.f64 (*.f64 x x) y))
(neg.f64 (/.f64 x (/.f64 y x)))
(/.f64 (neg.f64 x) (/.f64 y x))
(*.f64 (/.f64 (neg.f64 x) y) x)
(*.f64 x (/.f64 (neg.f64 x) y))
(+.f64 (/.f64 (*.f64 z x) y) (*.f64 -1 (/.f64 (pow.f64 x 2) y)))
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(+.f64 (/.f64 (*.f64 z x) y) (+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))))
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(+.f64 (/.f64 (*.f64 z x) y) (+.f64 (*.f64 -1 y) (*.f64 -1 (/.f64 (pow.f64 x 2) y))))
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(/.f64 (*.f64 (-.f64 z x) x) y)
(+.f64 (neg.f64 (/.f64 (*.f64 x x) y)) (/.f64 z (/.f64 y x)))
(*.f64 (/.f64 (-.f64 z x) y) x)
(*.f64 (/.f64 x y) (-.f64 z x))
(*.f64 x (/.f64 (-.f64 z x) y))
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(*.f64 -1 y)
(neg.f64 y)
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)
(+.f64 (/.f64 (*.f64 (-.f64 z x) x) y) (*.f64 -1 y))
(+.f64 (/.f64 z (/.f64 y x)) (-.f64 (neg.f64 (/.f64 (*.f64 x x) y)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z x) y) x) y)
(-.f64 (*.f64 (/.f64 x y) (-.f64 z x)) y)
(-.f64 (*.f64 x (/.f64 (-.f64 z x) y)) y)

localize8.0ms (0%)

Local error

Found 1 expressions with local error:

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

Compiled 21 to 8 computations (61.9% saved)

localize19.0ms (0.1%)

Local error

Found 2 expressions with local error:

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

Compiled 21 to 13 computations (38.1% saved)

series3.0ms (0%)

Counts
2 → 48
Calls

12 calls:

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

rewrite60.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
726×pow1_binary64
673×add-log-exp_binary64
673×log1p-expm1-u_binary64
673×expm1-log1p-u_binary64
660×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify115.0ms (0.8%)

Algorithm
egg-herbie
Rules
1371×associate-*l/_binary64
1103×associate-*r/_binary64
349×sqr-pow_binary64
317×*-commutative_binary64
242×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
010408
121408
237408
369408
4185408
5690408
61804408
72823408
82933408
93076408
103257408
113527408
123853408
135337408
147990408
Stop Event
node limit
Counts
89 → 45
Calls
Call 1
Inputs
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x y))
(*.f64 1/2 (/.f64 x 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))
(*.f64 1/2 (/.f64 (pow.f64 x 2) y))
Outputs
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 y))
(*.f64 1/2 (/.f64 x y))
(/.f64 (*.f64 1/2 x) y)
(/.f64 1/2 (/.f64 y x))
(*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 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 (/.f64 x y) x))
(*.f64 1/2 (*.f64 x (/.f64 x y)))
(*.f64 x (*.f64 x (/.f64 1/2 y)))

localize9.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 23 to 11 computations (52.2% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
z
@0
(/.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))
0.0ms
y
@0
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))
0.0ms
y
@inf
(/.f64 (*.f64 z (neg.f64 z)) (*.f64 y 2))

rewrite65.0ms (0.4%)

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

simplify130.0ms (0.9%)

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

localize13.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1 (/.f64 y (*.f64 z z)))
11.6b
(/.f64 y (*.f64 z z))
Compiler

Compiled 42 to 17 computations (59.5% saved)

series56.0ms (0.4%)

Counts
2 → 48
Calls

12 calls:

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

rewrite63.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
724×pow1_binary64
673×add-log-exp_binary64
672×log1p-expm1-u_binary64
672×expm1-log1p-u_binary64
655×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify181.0ms (1.2%)

Algorithm
egg-herbie
Rules
759×sqr-pow_binary64
436×cube-prod_binary64
434×unswap-sqr_binary64
423×associate-*r/_binary64
423×fabs-mul_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07336
112336
222336
340336
491336
5283336
61133336
73128336
83930336
94115336
104331336
114671336
125096336
135577336
146228336
156919336
167752336
Stop Event
node limit
Counts
117 → 73
Calls
Call 1
Inputs
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.f64 y (pow.f64 z 2))
(/.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)
Outputs
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 y (pow.f64 z 2))
(/.f64 y (*.f64 z z))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))
(/.f64 (pow.f64 z 2) y)
(/.f64 (*.f64 z z) y)
(/.f64 z (/.f64 y z))
(*.f64 z (/.f64 z y))

eval174.0ms (1.1%)

Compiler

Compiled 7073 to 2777 computations (60.7% saved)

prune110.0ms (0.7%)

Pruning

16 alts after pruning (8 fresh and 8 done)

PrunedKeptTotal
New4324436
Fresh246
Picked101
Done189
Total43616452
Error
0b
Counts
452 → 16
Alt Table
Click to see full alt table
StatusErrorProgram
54.3b
(*.f64 -1/2 (pow.f64 (/.f64 z (sqrt.f64 y)) 2))
56.5b
(/.f64 (/.f64 (*.f64 x 1/2) (sqrt.f64 (/.f64 y x))) (sqrt.f64 (/.f64 y x)))
16.6b
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 x y) (neg.f64 x)) y))
54.1b
(/.f64 1/2 (/.f64 y (*.f64 x x)))
16.5b
(*.f64 -1/2 (-.f64 (/.f64 (-.f64 z x) (/.f64 y x)) y))
47.5b
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
43.0b
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
50.6b
(*.f64 1/2 (/.f64 x (/.f64 y x)))
31.3b
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
12.1b
(*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y))
47.5b
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
50.6b
(*.f64 (*.f64 (/.f64 1/2 y) x) x)
35.0b
(*.f64 (/.f64 (+.f64 x z) 2) (/.f64 (-.f64 x z) y))
28.1b
(*.f64 1/2 y)
51.8b
(*.f64 -1/2 (/.f64 1 (/.f64 y (*.f64 z z))))
51.8b
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
Compiler

Compiled 190 to 129 computations (32.1% saved)

regimes194.0ms (1.3%)

Counts
35 → 1
Calls
Call 1
Inputs
(*.f64 1/2 y)
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(/.f64 1/2 (/.f64 y (*.f64 x x)))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 (*.f64 (/.f64 1/2 y) x) x)
(*.f64 x (*.f64 x (/.f64 1/2 y)))
(*.f64 (/.f64 x (*.f64 y 2)) x)
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(/.f64 (*.f64 y y) (*.f64 y 2))
(*.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 1 (/.f64 y (*.f64 z z))))
(*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y))
(*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y))
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 x y) (neg.f64 x)) y))
(*.f64 -1/2 (-.f64 (*.f64 x (/.f64 (neg.f64 x) y)) y))
(*.f64 -1/2 (-.f64 (/.f64 (-.f64 z x) (/.f64 y x)) y))
(*.f64 (/.f64 (+.f64 x z) 2) (/.f64 (-.f64 x z) y))
(*.f64 -1/2 (-.f64 (/.f64 1 (/.f64 y (*.f64 z z))) y))
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
(*.f64 -1/2 (-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 z x))) y))
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 (-.f64 z x) y) (+.f64 x z)) y))
(*.f64 -1/2 (-.f64 (/.f64 1 (/.f64 y (-.f64 (*.f64 z z) (*.f64 x x)))) y))
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
(*.f64 -1/2 (-.f64 (/.f64 (fma.f64 z z (*.f64 x (neg.f64 x))) y) y))
(*.f64 -1/2 (pow.f64 (/.f64 z (sqrt.f64 y)) 2))
(*.f64 -1/2 (-.f64 (pow.f64 (/.f64 z (sqrt.f64 y)) 2) y))
(/.f64 (/.f64 (*.f64 x 1/2) (sqrt.f64 (/.f64 y x))) (sqrt.f64 (/.f64 y x)))
(*.f64 -1/2 (-.f64 (pow.f64 (/.f64 (hypot.f64 z x) (sqrt.f64 y)) 2) y))
(*.f64 -1/2 (-.f64 (pow.f64 (/.f64 y (pow.f64 (hypot.f64 z x) 2)) -1) y))
(pow.f64 (*.f64 2 (/.f64 y (-.f64 (pow.f64 (hypot.f64 x y) 2) (*.f64 z z)))) -1)
(fma.f64 (/.f64 (hypot.f64 x y) y) (/.f64 (hypot.f64 x y) 2) (neg.f64 (*.f64 (*.f64 z z) (/.f64 1/2 y))))
(*.f64 -1/2 (-.f64 (fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) (/.f64 (-.f64 z x) y)) (*.f64 z (/.f64 (-.f64 z x) y))) y))
Outputs
(*.f64 -1/2 (-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 z x))) y))
Calls

8 calls:

53.0ms
y
40.0ms
(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
20.0ms
x
19.0ms
z
15.0ms
(*.f64 z z)
Results
ErrorSegmentsBranch
0.1b1x
0.1b1y
0.1b1z
0.1b1(/.f64 (-.f64 (+.f64 (*.f64 x x) (*.f64 y y)) (*.f64 z z)) (*.f64 y 2))
0.1b1(*.f64 x x)
0.1b1(*.f64 x x)
0.1b1(*.f64 z z)
0.1b1(*.f64 z z)
Compiler

Compiled 419 to 216 computations (48.4% saved)

regimes606.0ms (4%)

Counts
22 → 3
Calls
Call 1
Inputs
(*.f64 1/2 y)
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(/.f64 1/2 (/.f64 y (*.f64 x x)))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 (*.f64 (/.f64 1/2 y) x) x)
(*.f64 x (*.f64 x (/.f64 1/2 y)))
(*.f64 (/.f64 x (*.f64 y 2)) x)
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(/.f64 (*.f64 y y) (*.f64 y 2))
(*.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 1 (/.f64 y (*.f64 z z))))
(*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y))
(*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y))
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 x y) (neg.f64 x)) y))
(*.f64 -1/2 (-.f64 (*.f64 x (/.f64 (neg.f64 x) y)) y))
(*.f64 -1/2 (-.f64 (/.f64 (-.f64 z x) (/.f64 y x)) y))
(*.f64 (/.f64 (+.f64 x z) 2) (/.f64 (-.f64 x z) y))
(*.f64 -1/2 (-.f64 (/.f64 1 (/.f64 y (*.f64 z z))) y))
(/.f64 (-.f64 (*.f64 x x) (*.f64 z z)) (*.f64 y 2))
Outputs
(*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y))
(*.f64 -1/2 (-.f64 (*.f64 (/.f64 x y) (neg.f64 x)) y))
(*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y))
Calls

7 calls:

189.0ms
x
177.0ms
y
76.0ms
z
63.0ms
(*.f64 z z)
46.0ms
(*.f64 x x)
Results
ErrorSegmentsBranch
6.2b5x
6.5b4y
3.9b3z
7.9b2(*.f64 x x)
7.9b2(*.f64 x x)
4.1b2(*.f64 z z)
4.1b2(*.f64 z z)
Compiler

Compiled 218 to 119 computations (45.4% saved)

bsearch113.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
66.0ms
8.001816451971836e-35
4.844832226052253e-31
46.0ms
-8.000693531832851e-53
-3.789341729185353e-53
Compiler

Compiled 24 to 16 computations (33.3% saved)

regimes197.0ms (1.3%)

Counts
16 → 3
Calls
Call 1
Inputs
(*.f64 1/2 y)
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(/.f64 1/2 (/.f64 y (*.f64 x x)))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 (*.f64 (/.f64 1/2 y) x) x)
(*.f64 x (*.f64 x (/.f64 1/2 y)))
(*.f64 (/.f64 x (*.f64 y 2)) x)
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(/.f64 (*.f64 y y) (*.f64 y 2))
(*.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 1 (/.f64 y (*.f64 z z))))
(*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y))
(*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y))
Outputs
(*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y))
Calls

6 calls:

60.0ms
y
56.0ms
x
21.0ms
(*.f64 x x)
21.0ms
z
15.0ms
(*.f64 z z)
Results
ErrorSegmentsBranch
11.0b3x
9.5b3y
12.1b1z
12.1b1(*.f64 x x)
12.1b1(*.f64 z z)
12.1b1(*.f64 z z)
Compiler

Compiled 148 to 84 computations (43.2% saved)

bsearch121.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
49.0ms
1.5682897434979305e-292
2.184606364312601e-277
72.0ms
-5.781202344871438e-182
-3.900659109906861e-222
Compiler

Compiled 552 to 390 computations (29.3% saved)

regimes178.0ms (1.2%)

Counts
15 → 3
Calls
Call 1
Inputs
(*.f64 1/2 y)
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(/.f64 1/2 (/.f64 y (*.f64 x x)))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 (*.f64 (/.f64 1/2 y) x) x)
(*.f64 x (*.f64 x (/.f64 1/2 y)))
(*.f64 (/.f64 x (*.f64 y 2)) x)
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(/.f64 (*.f64 y y) (*.f64 y 2))
(*.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 1 (/.f64 y (*.f64 z z))))
(*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y))
Outputs
(*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y))
Calls

6 calls:

43.0ms
z
34.0ms
y
33.0ms
(*.f64 z z)
29.0ms
x
19.0ms
(*.f64 x x)
Results
ErrorSegmentsBranch
11.0b3x
9.5b3y
12.1b1z
12.1b1(*.f64 x x)
12.1b1(*.f64 z z)
12.1b1(*.f64 z z)
Compiler

Compiled 139 to 81 computations (41.7% saved)

bsearch73.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
26.0ms
1.5682897434979305e-292
2.184606364312601e-277
48.0ms
-5.781202344871438e-182
-3.900659109906861e-222
Compiler

Compiled 552 to 390 computations (29.3% saved)

regimes400.0ms (2.6%)

Counts
14 → 6
Calls
Call 1
Inputs
(*.f64 1/2 y)
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(*.f64 -1/2 (/.f64 (*.f64 z z) y))
(/.f64 1/2 (/.f64 y (*.f64 x x)))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 (*.f64 (/.f64 1/2 y) x) x)
(*.f64 x (*.f64 x (/.f64 1/2 y)))
(*.f64 (/.f64 x (*.f64 y 2)) x)
(*.f64 (*.f64 z z) (/.f64 -1/2 y))
(/.f64 (*.f64 y y) (*.f64 y 2))
(*.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 1 (/.f64 y (*.f64 z z))))
Outputs
(*.f64 1/2 y)
(*.f64 -1/2 (/.f64 z (/.f64 y z)))
(/.f64 (*.f64 y y) (*.f64 y 2))
(*.f64 1/2 (/.f64 x (/.f64 y x)))
(*.f64 -1/2 (*.f64 z (/.f64 z y)))
(*.f64 1/2 y)
Calls

7 calls:

103.0ms
x
93.0ms
y
88.0ms
z
35.0ms
(*.f64 z z)
34.0ms
(*.f64 x x)
Results
ErrorSegmentsBranch
24.3b7x
20.0b6y
22.6b6z
26.8b2(*.f64 x x)
26.8b2(*.f64 x x)
23.1b6(*.f64 z z)
23.1b6(*.f64 z z)
Compiler

Compiled 136 to 82 computations (39.7% saved)

bsearch451.0ms (3%)

Algorithm
binary-search
Steps
TimeLeftRight
117.0ms
57180.599372084565
5170897.35537499
24.0ms
1.5682897434979305e-292
2.184606364312601e-277
41.0ms
-4.193948362993453e-106
-3.861759247429587e-108
93.0ms
-1.2469199952473177e-14
-3.2465278907075183e-16
176.0ms
-9.39225336172592e+91
-6.486923414966704e+88
Compiler

Compiled 822 to 610 computations (25.8% saved)

regimes428.0ms (2.8%)

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

7 calls:

116.0ms
(*.f64 z z)
108.0ms
z
64.0ms
x
53.0ms
y
52.0ms
(*.f64 z z)
Results
ErrorSegmentsBranch
24.3b7x
20.0b6y
22.6b6z
26.8b2(*.f64 x x)
26.8b2(*.f64 x x)
23.1b6(*.f64 z z)
23.1b6(*.f64 z z)
Compiler

Compiled 105 to 65 computations (38.1% saved)

bsearch550.0ms (3.6%)

Algorithm
binary-search
Steps
TimeLeftRight
110.0ms
57180.599372084565
5170897.35537499
42.0ms
1.5682897434979305e-292
2.184606364312601e-277
71.0ms
-4.193948362993453e-106
-3.861759247429587e-108
123.0ms
-1.2469199952473177e-14
-3.2465278907075183e-16
204.0ms
-9.39225336172592e+91
-6.486923414966704e+88
Compiler

Compiled 822 to 610 computations (25.8% saved)

regimes265.0ms (1.7%)

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

7 calls:

74.0ms
(*.f64 z z)
60.0ms
y
43.0ms
x
39.0ms
z
24.0ms
(*.f64 z z)
Results
ErrorSegmentsBranch
24.3b7x
20.0b6y
22.6b6z
26.8b2(*.f64 x x)
26.8b2(*.f64 x x)
23.1b6(*.f64 z z)
23.1b6(*.f64 z z)
Compiler

Compiled 98 to 61 computations (37.8% saved)

bsearch585.0ms (3.8%)

Algorithm
binary-search
Steps
TimeLeftRight
86.0ms
57180.599372084565
5170897.35537499
100.0ms
1.5682897434979305e-292
2.184606364312601e-277
76.0ms
-4.193948362993453e-106
-3.861759247429587e-108
113.0ms
-1.2469199952473177e-14
-3.2465278907075183e-16
209.0ms
-9.39225336172592e+91
-6.486923414966704e+88
Compiler

Compiled 766 to 582 computations (24% saved)

regimes231.0ms (1.5%)

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

6 calls:

82.0ms
y
75.0ms
z
25.0ms
x
21.0ms
(*.f64 z z)
20.0ms
(*.f64 z z)
Results
ErrorSegmentsBranch
25.5b5x
20.4b6y
22.6b6z
28.1b1(*.f64 x x)
23.1b6(*.f64 z z)
23.1b6(*.f64 z z)
Compiler

Compiled 64 to 42 computations (34.4% saved)

bsearch525.0ms (3.4%)

Algorithm
binary-search
Steps
TimeLeftRight
137.0ms
57180.599372084565
5170897.35537499
28.0ms
1.5682897434979305e-292
2.184606364312601e-277
45.0ms
-4.193948362993453e-106
-3.861759247429587e-108
84.0ms
-1.2469199952473177e-14
-3.2465278907075183e-16
231.0ms
-9.39225336172592e+91
-6.486923414966704e+88
Compiler

Compiled 766 to 582 computations (24% saved)

regimes222.0ms (1.5%)

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

6 calls:

71.0ms
y
50.0ms
z
43.0ms
x
29.0ms
(*.f64 z z)
19.0ms
(*.f64 z z)
Results
ErrorSegmentsBranch
25.5b5x
20.4b6y
22.6b6z
28.1b1(*.f64 x x)
23.1b6(*.f64 z z)
23.1b6(*.f64 z z)
Compiler

Compiled 57 to 38 computations (33.3% saved)

bsearch745.0ms (4.9%)

Algorithm
binary-search
Steps
TimeLeftRight
121.0ms
57180.599372084565
5170897.35537499
51.0ms
1.5682897434979305e-292
2.184606364312601e-277
105.0ms
-4.193948362993453e-106
-3.861759247429587e-108
175.0ms
-1.2469199952473177e-14
-3.2465278907075183e-16
292.0ms
-9.39225336172592e+91
-6.486923414966704e+88
Compiler

Compiled 766 to 582 computations (24% saved)

regimes101.0ms (0.7%)

Accuracy

Total -40.4b remaining (-178.6%)

Threshold costs -40.4b (-178.6%)

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

5 calls:

27.0ms
z
23.0ms
y
17.0ms
(*.f64 z z)
17.0ms
(*.f64 z z)
15.0ms
x
Results
ErrorSegmentsBranch
26.5b3x
22.6b5y
22.6b6z
23.1b6(*.f64 z z)
23.1b6(*.f64 z z)
Compiler

Compiled 44 to 30 computations (31.8% saved)

bsearch736.0ms (4.8%)

Algorithm
binary-search
Steps
TimeLeftRight
172.0ms
57180.599372084565
5170897.35537499
85.0ms
-2.9292506220844326e-128
-1.1562836754166485e-132
208.0ms
-1.2469199952473177e-14
-3.2465278907075183e-16
270.0ms
-9.39225336172592e+91
-6.486923414966704e+88
Compiler

Compiled 564 to 436 computations (22.7% saved)

simplify74.0ms (0.5%)

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

Useful iterations: 3 (0.0ms)

IterNodesCost
090600
1116600
2133600
3151598
4164598
5168598
6169598
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 -1/2 (-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 z x))) y))
(if (<=.f64 z -4313965418368615/53919893334301279589334030174039261347274288845081144962207220498432) (*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y)) (if (<=.f64 z 7484587421554045/93536104789177786765035829293842113257979682750464) (*.f64 -1/2 (-.f64 (*.f64 (/.f64 x y) (neg.f64 x)) y)) (*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y))))
(if (<=.f64 y -6430336184051617/1627933211152308172382776316094057079381044512284157265721742629825204403764070329961287158415906809263410622703474912218234570716337735615323084973713581554222450580936038710562274972146438970881094974642550439936936217782587026682413056) (*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y)) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (*.f64 1/2 (/.f64 x (/.f64 y x))) (*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y))))
(if (<=.f64 y -6430336184051617/1627933211152308172382776316094057079381044512284157265721742629825204403764070329961287158415906809263410622703474912218234570716337735615323084973713581554222450580936038710562274972146438970881094974642550439936936217782587026682413056) (*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y)) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (*.f64 1/2 (/.f64 x (/.f64 y x))) (*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 1/2 y) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -676921312041214592/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (/.f64 (*.f64 y y) (*.f64 y 2)) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (*.f64 1/2 (/.f64 x (/.f64 y x))) (if (<=.f64 y 58000) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (*.f64 1/2 y))))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 1/2 y) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -676921312041214592/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (/.f64 (*.f64 y y) (*.f64 y 2)) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (*.f64 (*.f64 (/.f64 1/2 y) x) x) (if (<=.f64 y 58000) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (*.f64 1/2 y))))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 1/2 y) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -676921312041214592/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (*.f64 1/2 y) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (*.f64 (*.f64 (/.f64 1/2 y) x) x) (if (<=.f64 y 58000) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (*.f64 1/2 y))))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 1/2 y) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -676921312041214592/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (*.f64 1/2 y) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (/.f64 1/2 (/.f64 y (*.f64 x x))) (if (<=.f64 y 58000) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (*.f64 1/2 y))))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 1/2 y) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -676921312041214592/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (*.f64 1/2 y) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (/.f64 1/2 (/.f64 y (*.f64 x x))) (if (<=.f64 y 58000) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (*.f64 1/2 y))))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 1/2 y) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -927034449501837/799167628880894011233688890827050574271641124522232614619944181664095165137859998750798362384253944616915694367080095461234681773897801038410285056) (*.f64 1/2 y) (if (<=.f64 y 58000) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (*.f64 1/2 y)))))
(*.f64 1/2 y)
Outputs
(*.f64 -1/2 (-.f64 (/.f64 (-.f64 z x) (/.f64 y (+.f64 z x))) y))
(if (<=.f64 z -4313965418368615/53919893334301279589334030174039261347274288845081144962207220498432) (*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y)) (if (<=.f64 z 7484587421554045/93536104789177786765035829293842113257979682750464) (*.f64 -1/2 (-.f64 (*.f64 (/.f64 x y) (neg.f64 x)) y)) (*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y))))
(if (<=.f64 z -4313965418368615/53919893334301279589334030174039261347274288845081144962207220498432) (*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y)) (if (<=.f64 z 7484587421554045/93536104789177786765035829293842113257979682750464) (*.f64 1/2 (+.f64 y (*.f64 x (/.f64 x y)))) (*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y))))
(if (<=.f64 y -6430336184051617/1627933211152308172382776316094057079381044512284157265721742629825204403764070329961287158415906809263410622703474912218234570716337735615323084973713581554222450580936038710562274972146438970881094974642550439936936217782587026682413056) (*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y)) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (*.f64 1/2 (/.f64 x (/.f64 y x))) (*.f64 -1/2 (-.f64 (*.f64 z (/.f64 z y)) y))))
(if (<=.f64 y -6430336184051617/1627933211152308172382776316094057079381044512284157265721742629825204403764070329961287158415906809263410622703474912218234570716337735615323084973713581554222450580936038710562274972146438970881094974642550439936936217782587026682413056) (*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y)) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (*.f64 1/2 (/.f64 x (/.f64 y x))) (*.f64 -1/2 (-.f64 (/.f64 z (/.f64 y z)) y))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 1/2 y) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -676921312041214592/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (/.f64 (*.f64 y y) (*.f64 y 2)) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (*.f64 1/2 (/.f64 x (/.f64 y x))) (if (<=.f64 y 58000) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (*.f64 1/2 y))))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 y 1/2) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -5288447750321989/1322111937580497197903830616065542079656809365928562438569297590548811582472622691650378420879430569695182424050046716608512) (/.f64 (*.f64 y y) (*.f64 y 2)) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (*.f64 1/2 (/.f64 x (/.f64 y x))) (if (<=.f64 y 58000) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (*.f64 y 1/2))))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 1/2 y) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -676921312041214592/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (/.f64 (*.f64 y y) (*.f64 y 2)) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (*.f64 (*.f64 (/.f64 1/2 y) x) x) (if (<=.f64 y 58000) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (*.f64 1/2 y))))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 y 1/2) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -5288447750321989/1322111937580497197903830616065542079656809365928562438569297590548811582472622691650378420879430569695182424050046716608512) (/.f64 (*.f64 y y) (*.f64 y 2)) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (*.f64 x (*.f64 x (/.f64 1/2 y))) (if (<=.f64 y 58000) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (*.f64 y 1/2))))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 1/2 y) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -676921312041214592/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (*.f64 1/2 y) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (*.f64 (*.f64 (/.f64 1/2 y) x) x) (if (<=.f64 y 58000) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (*.f64 1/2 y))))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 y 1/2) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -5288447750321989/1322111937580497197903830616065542079656809365928562438569297590548811582472622691650378420879430569695182424050046716608512) (*.f64 y 1/2) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (*.f64 x (*.f64 x (/.f64 1/2 y))) (if (<=.f64 y 58000) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (*.f64 y 1/2))))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 1/2 y) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -676921312041214592/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (*.f64 1/2 y) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (/.f64 1/2 (/.f64 y (*.f64 x x))) (if (<=.f64 y 58000) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (*.f64 1/2 y))))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 y 1/2) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -5288447750321989/1322111937580497197903830616065542079656809365928562438569297590548811582472622691650378420879430569695182424050046716608512) (*.f64 y 1/2) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (/.f64 1/2 (/.f64 y (*.f64 x x))) (if (<=.f64 y 58000) (*.f64 -1/2 (*.f64 z (/.f64 z y))) (*.f64 y 1/2))))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 1/2 y) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -676921312041214592/169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536) (*.f64 1/2 y) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (/.f64 1/2 (/.f64 y (*.f64 x x))) (if (<=.f64 y 58000) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (*.f64 1/2 y))))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 y 1/2) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -5288447750321989/1322111937580497197903830616065542079656809365928562438569297590548811582472622691650378420879430569695182424050046716608512) (*.f64 y 1/2) (if (<=.f64 y 8582113330999295/39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696) (/.f64 1/2 (/.f64 y (*.f64 x x))) (if (<=.f64 y 58000) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (*.f64 y 1/2))))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 1/2 y) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -927034449501837/799167628880894011233688890827050574271641124522232614619944181664095165137859998750798362384253944616915694367080095461234681773897801038410285056) (*.f64 1/2 y) (if (<=.f64 y 58000) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (*.f64 1/2 y)))))
(if (<=.f64 y -91999999999999996464225521239412416210592960330864406222294185352286084221107701692248358912) (*.f64 y 1/2) (if (<=.f64 y -6693195169205051/20282409603651670423947251286016) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (if (<=.f64 y -927034449501837/799167628880894011233688890827050574271641124522232614619944181664095165137859998750798362384253944616915694367080095461234681773897801038410285056) (*.f64 y 1/2) (if (<=.f64 y 58000) (*.f64 -1/2 (/.f64 z (/.f64 y z))) (*.f64 y 1/2)))))
(*.f64 1/2 y)
(*.f64 y 1/2)
Compiler

Compiled 447 to 291 computations (34.9% saved)

soundness289.0ms (1.9%)

Algorithm
egg-herbie
Rules
803×div-sub_binary64
796×fma-def_binary64
645×fma-neg_binary64
587×unswap-sqr_binary64
541×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
01220
12720
26720
313620
432020
575520
6189419
7445119
0221421
1551327
21091153
32301151
45981151
521671151
662581151
Stop Event
node limit
node limit
Compiler

Compiled 508 to 327 computations (35.6% saved)

end313.0ms (2%)

Compiler

Compiled 417 to 225 computations (46% saved)

Profiling

Loading profile data...