Details

Time bar (total: 4.7s)

analyze185.0ms (3.9%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
0%0%99.9%0.1%0%0%0%5
0%0%99.9%0.1%0%0%0%6
12.5%12.5%87.4%0.1%0%0%0%7
18.8%18.7%81.1%0.1%0%0%0%8
28.1%28.1%71.8%0.1%0%0%0%9
37.6%34.3%56.9%0.1%8.6%0%0%10
44.8%40.6%49.9%0.1%9.4%0%0%11
53.4%48%41.9%0.1%9.9%0%0%12
Compiler

Compiled 11 to 8 computations (27.3% saved)

sample1.4s (30.1%)

Results
1.3s8254×body256valid
108.0ms1174×body256infinite
0.0msbody1024valid
Bogosity

preprocess34.0ms (0.7%)

Algorithm
egg-herbie
Rules
860×fma-def
244×distribute-lft-in
174×distribute-rgt-in
120×+-commutative
106×associate-+r+
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01776
14676
214376
348176
480676
5111576
6114576
7115176
033
133
Stop Event
unsound
saturated
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
0
2
Call 2
Inputs
(*.f64 (+.f64 x y) (+.f64 z 1))
(*.f64 (+.f64 y x) (+.f64 z 1))
(*.f64 (+.f64 z y) (+.f64 x 1))
(*.f64 (+.f64 x z) (+.f64 y 1))
Outputs
(*.f64 (+.f64 x y) (+.f64 z 1))
(*.f64 (+.f64 z 1) (+.f64 x y))
(*.f64 (+.f64 1 z) (+.f64 x y))
(*.f64 (+.f64 y x) (+.f64 z 1))
(*.f64 (+.f64 z 1) (+.f64 x y))
(*.f64 (+.f64 1 z) (+.f64 x y))
(*.f64 (+.f64 z y) (+.f64 x 1))
(*.f64 (+.f64 y z) (+.f64 x 1))
(*.f64 (+.f64 x 1) (+.f64 y z))
(*.f64 (+.f64 x z) (+.f64 y 1))
(*.f64 (+.f64 y 1) (+.f64 x z))
(*.f64 (+.f64 1 y) (+.f64 x z))
Symmetry

(sort x y)

Compiler

Compiled 13 to 10 computations (23.1% saved)

simplify18.0ms (0.4%)

Algorithm
egg-herbie
Rules
296×fma-def
78×distribute-lft-in
58×distribute-rgt-in
38×*-commutative
38×+-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
12119
25219
315419
427219
538419
639419
739619
Stop Event
saturated
Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 (+.f64 x y) (+.f64 z 1))
Outputs
(*.f64 (+.f64 x y) (+.f64 z 1))

eval0.0ms (0%)

Compiler

Compiled 10 to 7 computations (30% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.0b
Counts
2 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(*.f64 (+.f64 x y) (+.f64 z 1))
Compiler

Compiled 10 to 7 computations (30% saved)

localize7.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (+.f64 x y) (+.f64 z 1))
Compiler

Compiled 20 to 10 computations (50% saved)

series3.0ms (0.1%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
z
@0
(*.f64 (+.f64 x y) (+.f64 z 1))
0.0ms
x
@inf
(*.f64 (+.f64 x y) (+.f64 z 1))
0.0ms
x
@0
(*.f64 (+.f64 x y) (+.f64 z 1))
0.0ms
y
@inf
(*.f64 (+.f64 x y) (+.f64 z 1))
0.0ms
x
@-inf
(*.f64 (+.f64 x y) (+.f64 z 1))

rewrite68.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
1346×associate-*r/
1096×associate-*l/
950×*-commutative
836×distribute-lft-in
798×distribute-rgt-in
Iterations

Useful iterations: 0 (0.0ms)

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

simplify165.0ms (3.5%)

Algorithm
egg-herbie
Rules
1196×associate-/r/
1138×associate-*r/
902×associate-/l*
892×associate-*l/
604×+-commutative
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03536783
110546157
245286079
Stop Event
node limit
Counts
159 → 203
Calls
Call 1
Inputs
(*.f64 y (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 1 z) x)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 1 z) x)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 1 z) x)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(*.f64 y (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(*.f64 y (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y x)
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(*.f64 (+.f64 y x) z)
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(*.f64 (+.f64 y x) z)
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(+.f64 x (+.f64 y (*.f64 (+.f64 x y) z)))
(+.f64 y (+.f64 x (*.f64 (+.f64 x y) z)))
(+.f64 (+.f64 x y) (*.f64 (+.f64 x y) z))
(+.f64 (*.f64 (+.f64 x y) z) (+.f64 x y))
(+.f64 (+.f64 x (*.f64 (+.f64 x y) z)) y)
(+.f64 (+.f64 y (*.f64 (+.f64 x y) z)) x)
(+.f64 (*.f64 x z) (+.f64 (*.f64 y z) (+.f64 x y)))
(+.f64 (*.f64 y z) (+.f64 (*.f64 x z) (+.f64 x y)))
(+.f64 (+.f64 x (*.f64 x z)) (+.f64 y (*.f64 y z)))
(+.f64 (+.f64 y (*.f64 y z)) (+.f64 x (*.f64 x z)))
(+.f64 (+.f64 (+.f64 x y) (*.f64 x z)) (*.f64 y z))
(+.f64 (+.f64 (+.f64 x y) (*.f64 y z)) (*.f64 x z))
(+.f64 (*.f64 1 (+.f64 x (*.f64 (+.f64 x y) z))) y)
(+.f64 (*.f64 1 (+.f64 y (*.f64 (+.f64 x y) z))) x)
(+.f64 (*.f64 1 (+.f64 x (*.f64 x z))) (*.f64 1 (+.f64 y (*.f64 y z))))
(+.f64 (*.f64 1 (+.f64 y (*.f64 y z))) (*.f64 1 (+.f64 x (*.f64 x z))))
(+.f64 (*.f64 (+.f64 x (*.f64 (+.f64 x y) z)) 1) y)
(+.f64 (*.f64 (+.f64 y (*.f64 (+.f64 x y) z)) 1) x)
(+.f64 (*.f64 (+.f64 x (*.f64 x z)) 1) (*.f64 (+.f64 y (*.f64 y z)) 1))
(+.f64 (*.f64 (+.f64 y (*.f64 y z)) 1) (*.f64 (+.f64 x (*.f64 x z)) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 x y) (+.f64 z 1)))) 1)
(-.f64 (exp.f64 (log1p.f64 (+.f64 x y))) (-.f64 1 (*.f64 (+.f64 x y) z)))
(-.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (-.f64 (/.f64 y (/.f64 (-.f64 x y) y)) (*.f64 (+.f64 x y) z)))
(-.f64 (+.f64 (*.f64 (+.f64 x y) z) (exp.f64 (log1p.f64 (+.f64 x y)))) 1)
(-.f64 (+.f64 (*.f64 (+.f64 x y) z) (/.f64 (*.f64 x x) (-.f64 x y))) (/.f64 y (/.f64 (-.f64 x y) y)))
(-.f64 (+.f64 (+.f64 x (*.f64 (+.f64 x y) z)) (exp.f64 (log1p.f64 y))) 1)
(-.f64 (+.f64 (+.f64 y (*.f64 (+.f64 x y) z)) (exp.f64 (log1p.f64 x))) 1)
(/.f64 (+.f64 x y) (/.f64 1 (+.f64 z 1)))
(/.f64 (+.f64 z 1) (/.f64 1 (+.f64 x y)))
(/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (-.f64 x y) (+.f64 z 1)))
(/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (*.f64 (-.f64 x y) (+.f64 z -1)) (fma.f64 z z -1)))
(/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (*.f64 (-.f64 x y) (fma.f64 z z (-.f64 1 z))) (+.f64 1 (pow.f64 z 3))))
(/.f64 (fma.f64 z z -1) (/.f64 (+.f64 z -1) (+.f64 x y)))
(/.f64 (fma.f64 z z -1) (/.f64 (*.f64 (-.f64 x y) (+.f64 z -1)) (-.f64 (*.f64 x x) (*.f64 y y))))
(/.f64 (fma.f64 z z -1) (/.f64 (*.f64 (+.f64 z -1) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 (pow.f64 x 3) (pow.f64 y 3))))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (/.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (+.f64 z 1)))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (/.f64 (*.f64 (+.f64 z -1) (fma.f64 x x (*.f64 y (-.f64 y x)))) (fma.f64 z z -1)))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (/.f64 (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (fma.f64 z z (-.f64 1 z))) (+.f64 1 (pow.f64 z 3))))
(/.f64 (+.f64 1 (pow.f64 z 3)) (/.f64 (fma.f64 z z (-.f64 1 z)) (+.f64 x y)))
(/.f64 (+.f64 1 (pow.f64 z 3)) (/.f64 (*.f64 (-.f64 x y) (fma.f64 z z (-.f64 1 z))) (-.f64 (*.f64 x x) (*.f64 y y))))
(/.f64 (+.f64 1 (pow.f64 z 3)) (/.f64 (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (fma.f64 z z (-.f64 1 z))) (+.f64 (pow.f64 x 3) (pow.f64 y 3))))
(/.f64 (*.f64 (+.f64 z 1) (-.f64 (*.f64 x x) (*.f64 y y))) (-.f64 x y))
(/.f64 (*.f64 (+.f64 z 1) (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(/.f64 (*.f64 (+.f64 x y) (fma.f64 z z -1)) (+.f64 z -1))
(/.f64 (*.f64 (+.f64 x y) (+.f64 1 (pow.f64 z 3))) (fma.f64 z z (-.f64 1 z)))
(/.f64 (-.f64 (*.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 x y) z)) (pow.f64 (+.f64 x y) 2)) (-.f64 (*.f64 (+.f64 x y) z) (+.f64 x y)))
(/.f64 (+.f64 (pow.f64 (+.f64 x y) 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) (+.f64 (*.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 x y) z)) (-.f64 (pow.f64 (+.f64 x y) 2) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) z)))))
(/.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (fma.f64 z z -1)) (*.f64 (-.f64 x y) (+.f64 z -1)))
(/.f64 (*.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (+.f64 1 (pow.f64 z 3))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (fma.f64 z z -1) (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (*.f64 (+.f64 z -1) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (+.f64 1 (pow.f64 z 3))) (*.f64 (-.f64 x y) (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (+.f64 x y) (-.f64 1 (*.f64 z z))) (-.f64 1 z))
(/.f64 (*.f64 (+.f64 x y) (neg.f64 (fma.f64 z z -1))) (neg.f64 (+.f64 z -1)))
(/.f64 (*.f64 (+.f64 x y) (neg.f64 (+.f64 1 (pow.f64 z 3)))) (neg.f64 (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 1 (*.f64 (+.f64 x y) (fma.f64 z z -1))) (+.f64 z -1))
(/.f64 (*.f64 1 (*.f64 (+.f64 x y) (+.f64 1 (pow.f64 z 3)))) (fma.f64 z z (-.f64 1 z)))
(/.f64 (*.f64 1 (*.f64 (+.f64 z 1) (-.f64 (*.f64 x x) (*.f64 y y)))) (-.f64 x y))
(/.f64 (*.f64 1 (*.f64 (+.f64 z 1) (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(/.f64 (*.f64 1 (-.f64 (*.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 x y) z)) (pow.f64 (+.f64 x y) 2))) (-.f64 (*.f64 (+.f64 x y) z) (+.f64 x y)))
(/.f64 (*.f64 1 (+.f64 (pow.f64 (+.f64 x y) 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (+.f64 (*.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 x y) z)) (-.f64 (pow.f64 (+.f64 x y) 2) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) z)))))
(/.f64 (*.f64 1 (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (fma.f64 z z -1))) (*.f64 (-.f64 x y) (+.f64 z -1)))
(/.f64 (*.f64 1 (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (+.f64 1 (pow.f64 z 3)))) (*.f64 (-.f64 x y) (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 1 (*.f64 (fma.f64 z z -1) (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (*.f64 (+.f64 z -1) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 1 (*.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (+.f64 1 (pow.f64 z 3)))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (+.f64 z 1) (-.f64 (*.f64 y y) (*.f64 x x))) (-.f64 y x))
(/.f64 (*.f64 (+.f64 z 1) (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (neg.f64 (-.f64 x y)))
(/.f64 (*.f64 (+.f64 z 1) (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (sqrt.f64 (+.f64 z 1))) (sqrt.f64 (fma.f64 z z -1))) (sqrt.f64 (+.f64 z -1)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (sqrt.f64 (+.f64 z 1))) (sqrt.f64 (+.f64 1 (pow.f64 z 3)))) (sqrt.f64 (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (pow.f64 (cbrt.f64 (+.f64 z 1)) 2)) (cbrt.f64 (fma.f64 z z -1))) (cbrt.f64 (+.f64 z -1)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (pow.f64 (cbrt.f64 (+.f64 z 1)) 2)) (cbrt.f64 (+.f64 1 (pow.f64 z 3)))) (cbrt.f64 (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (*.f64 (+.f64 z 1) (sqrt.f64 (+.f64 x y))) (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (*.f64 (+.f64 z 1) (sqrt.f64 (+.f64 x y))) (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (sqrt.f64 (-.f64 x y)))
(/.f64 (*.f64 (*.f64 (+.f64 z 1) (pow.f64 (cbrt.f64 (+.f64 x y)) 2)) (cbrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (*.f64 (+.f64 z 1) (pow.f64 (cbrt.f64 (+.f64 x y)) 2)) (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (cbrt.f64 (-.f64 x y)))
(/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 z 1)) (-.f64 y x))
(/.f64 (*.f64 (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y))) (+.f64 z 1)) (neg.f64 (-.f64 x y)))
(/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (+.f64 z 1)) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (-.f64 1 (*.f64 z z)) (+.f64 x y)) (-.f64 1 z))
(/.f64 (*.f64 (neg.f64 (fma.f64 z z -1)) (+.f64 x y)) (neg.f64 (+.f64 z -1)))
(/.f64 (*.f64 (neg.f64 (+.f64 1 (pow.f64 z 3))) (+.f64 x y)) (neg.f64 (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (fma.f64 z z -1)) 1) (+.f64 z -1))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (+.f64 1 (pow.f64 z 3))) 1) (fma.f64 z z (-.f64 1 z)))
(/.f64 (*.f64 (*.f64 (+.f64 z 1) (-.f64 (*.f64 x x) (*.f64 y y))) 1) (-.f64 x y))
(/.f64 (*.f64 (*.f64 (+.f64 z 1) (+.f64 (pow.f64 x 3) (pow.f64 y 3))) 1) (fma.f64 x x (*.f64 y (-.f64 y x))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 x y) z)) (pow.f64 (+.f64 x y) 2)) 1) (-.f64 (*.f64 (+.f64 x y) z) (+.f64 x y)))
(/.f64 (*.f64 (+.f64 (pow.f64 (+.f64 x y) 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) 1) (+.f64 (*.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 x y) z)) (-.f64 (pow.f64 (+.f64 x y) 2) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) z)))))
(/.f64 (*.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (fma.f64 z z -1)) 1) (*.f64 (-.f64 x y) (+.f64 z -1)))
(/.f64 (*.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (+.f64 1 (pow.f64 z 3))) 1) (*.f64 (-.f64 x y) (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (*.f64 (fma.f64 z z -1) (+.f64 (pow.f64 x 3) (pow.f64 y 3))) 1) (*.f64 (+.f64 z -1) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (*.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (+.f64 1 (pow.f64 z 3))) 1) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 z z -1)) (*.f64 (+.f64 x y) (sqrt.f64 (+.f64 z 1)))) (sqrt.f64 (+.f64 z -1)))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1 (pow.f64 z 3))) (*.f64 (+.f64 x y) (sqrt.f64 (+.f64 z 1)))) (sqrt.f64 (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (*.f64 (+.f64 z 1) (sqrt.f64 (+.f64 x y)))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 (+.f64 z 1) (sqrt.f64 (+.f64 x y)))) (sqrt.f64 (-.f64 x y)))
(/.f64 (/.f64 (*.f64 (+.f64 x y) (fma.f64 z z -1)) 1) (+.f64 z -1))
(/.f64 (/.f64 (*.f64 (+.f64 x y) (fma.f64 z z -1)) (sqrt.f64 (+.f64 z -1))) (sqrt.f64 (+.f64 z -1)))
(/.f64 (/.f64 (*.f64 (+.f64 x y) (fma.f64 z z -1)) (*.f64 (cbrt.f64 (+.f64 z -1)) (cbrt.f64 (+.f64 z -1)))) (cbrt.f64 (+.f64 z -1)))
(/.f64 (/.f64 (*.f64 (+.f64 x y) (fma.f64 z z -1)) (+.f64 1 (sqrt.f64 z))) (-.f64 (sqrt.f64 z) 1))
(/.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 1 (pow.f64 z 3))) 1) (fma.f64 z z (-.f64 1 z)))
(/.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 1 (pow.f64 z 3))) (sqrt.f64 (fma.f64 z z (-.f64 1 z)))) (sqrt.f64 (fma.f64 z z (-.f64 1 z))))
(/.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 1 (pow.f64 z 3))) (*.f64 (cbrt.f64 (fma.f64 z z (-.f64 1 z))) (cbrt.f64 (fma.f64 z z (-.f64 1 z))))) (cbrt.f64 (fma.f64 z z (-.f64 1 z))))
(/.f64 (/.f64 (*.f64 (+.f64 z 1) (-.f64 (*.f64 x x) (*.f64 y y))) 1) (-.f64 x y))
(/.f64 (/.f64 (*.f64 (+.f64 z 1) (-.f64 (*.f64 x x) (*.f64 y y))) (sqrt.f64 (-.f64 x y))) (sqrt.f64 (-.f64 x y)))
(/.f64 (/.f64 (*.f64 (+.f64 z 1) (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 (cbrt.f64 (-.f64 x y)) (cbrt.f64 (-.f64 x y)))) (cbrt.f64 (-.f64 x y)))
(/.f64 (/.f64 (*.f64 (+.f64 z 1) (-.f64 (*.f64 x x) (*.f64 y y))) (+.f64 (sqrt.f64 x) (sqrt.f64 y))) (-.f64 (sqrt.f64 x) (sqrt.f64 y)))
(/.f64 (/.f64 (*.f64 (+.f64 z 1) (+.f64 (pow.f64 x 3) (pow.f64 y 3))) 1) (fma.f64 x x (*.f64 y (-.f64 y x))))
(/.f64 (/.f64 (*.f64 (+.f64 z 1) (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (/.f64 (*.f64 (+.f64 z 1) (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (*.f64 (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))) (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(pow.f64 (*.f64 (+.f64 x y) (+.f64 z 1)) 1)
(pow.f64 (sqrt.f64 (*.f64 (+.f64 x y) (+.f64 z 1))) 2)
(pow.f64 (cbrt.f64 (*.f64 (+.f64 x y) (+.f64 z 1))) 3)
(pow.f64 (pow.f64 (*.f64 (+.f64 x y) (+.f64 z 1)) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 (+.f64 x y) (+.f64 z 1)) 2))
(log.f64 (pow.f64 (exp.f64 (+.f64 x y)) (+.f64 z 1)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 x y) (+.f64 z 1)))))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 x y) (+.f64 z 1)) 3))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 z 1) 3) (pow.f64 (+.f64 x y) 3)))
(expm1.f64 (log1p.f64 (*.f64 (+.f64 x y) (+.f64 z 1))))
(exp.f64 (+.f64 (log1p.f64 z) (log.f64 (+.f64 x y))))
(log1p.f64 (expm1.f64 (*.f64 (+.f64 x y) (+.f64 z 1))))
(fma.f64 (+.f64 x y) z (+.f64 x y))
(fma.f64 z (+.f64 x y) (+.f64 x y))
Outputs
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(*.f64 (+.f64 1 z) x)
(*.f64 x (+.f64 1 z))
(fma.f64 z x x)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(*.f64 (+.f64 1 z) x)
(*.f64 x (+.f64 1 z))
(fma.f64 z x x)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(*.f64 (+.f64 1 z) x)
(*.f64 x (+.f64 1 z))
(fma.f64 z x x)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 y x)
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 y x))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 y x))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 x (+.f64 y (*.f64 (+.f64 x y) z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 y (+.f64 x (*.f64 (+.f64 x y) z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (+.f64 x y) (*.f64 (+.f64 x y) z))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 (+.f64 x y) z) (+.f64 x y))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (+.f64 x (*.f64 (+.f64 x y) z)) y)
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (+.f64 y (*.f64 (+.f64 x y) z)) x)
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 x z) (+.f64 (*.f64 y z) (+.f64 x y)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 y z) (+.f64 (*.f64 x z) (+.f64 x y)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (+.f64 x (*.f64 x z)) (+.f64 y (*.f64 y z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (+.f64 y (*.f64 y z)) (+.f64 x (*.f64 x z)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (+.f64 (+.f64 x y) (*.f64 x z)) (*.f64 y z))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (+.f64 (+.f64 x y) (*.f64 y z)) (*.f64 x z))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 1 (+.f64 x (*.f64 (+.f64 x y) z))) y)
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 1 (+.f64 y (*.f64 (+.f64 x y) z))) x)
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 1 (+.f64 x (*.f64 x z))) (*.f64 1 (+.f64 y (*.f64 y z))))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 1 (+.f64 y (*.f64 y z))) (*.f64 1 (+.f64 x (*.f64 x z))))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 (+.f64 x (*.f64 (+.f64 x y) z)) 1) y)
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 (+.f64 y (*.f64 (+.f64 x y) z)) 1) x)
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 (+.f64 x (*.f64 x z)) 1) (*.f64 (+.f64 y (*.f64 y z)) 1))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(+.f64 (*.f64 (+.f64 y (*.f64 y z)) 1) (*.f64 (+.f64 x (*.f64 x z)) 1))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 x y) (+.f64 z 1)))) 1)
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(-.f64 (exp.f64 (log1p.f64 (+.f64 x y))) (-.f64 1 (*.f64 (+.f64 x y) z)))
(-.f64 (exp.f64 (log1p.f64 (+.f64 y x))) (-.f64 1 (*.f64 z (+.f64 y x))))
(fma.f64 z (+.f64 y x) (expm1.f64 (log1p.f64 (+.f64 y x))))
(-.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (-.f64 (/.f64 y (/.f64 (-.f64 x y) y)) (*.f64 (+.f64 x y) z)))
(+.f64 (-.f64 (/.f64 x (/.f64 (-.f64 x y) x)) (*.f64 (/.f64 y (-.f64 x y)) y)) (*.f64 z (+.f64 y x)))
(fma.f64 z (+.f64 y x) (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(fma.f64 z (+.f64 y x) (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(-.f64 (+.f64 (*.f64 (+.f64 x y) z) (exp.f64 (log1p.f64 (+.f64 x y)))) 1)
(-.f64 (exp.f64 (log1p.f64 (+.f64 y x))) (-.f64 1 (*.f64 z (+.f64 y x))))
(fma.f64 z (+.f64 y x) (expm1.f64 (log1p.f64 (+.f64 y x))))
(-.f64 (+.f64 (*.f64 (+.f64 x y) z) (/.f64 (*.f64 x x) (-.f64 x y))) (/.f64 y (/.f64 (-.f64 x y) y)))
(+.f64 (-.f64 (/.f64 x (/.f64 (-.f64 x y) x)) (*.f64 (/.f64 y (-.f64 x y)) y)) (*.f64 z (+.f64 y x)))
(fma.f64 z (+.f64 y x) (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(fma.f64 z (+.f64 y x) (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(-.f64 (+.f64 (+.f64 x (*.f64 (+.f64 x y) z)) (exp.f64 (log1p.f64 y))) 1)
(+.f64 (fma.f64 (+.f64 y x) z x) (-.f64 (exp.f64 (log1p.f64 y)) 1))
(+.f64 (fma.f64 z (+.f64 y x) x) (expm1.f64 (log1p.f64 y)))
(-.f64 (+.f64 (+.f64 y (*.f64 (+.f64 x y) z)) (exp.f64 (log1p.f64 x))) 1)
(+.f64 (+.f64 y (*.f64 z (+.f64 y x))) (-.f64 (exp.f64 (log1p.f64 x)) 1))
(+.f64 (fma.f64 z (+.f64 y x) y) (expm1.f64 (log1p.f64 x)))
(/.f64 (+.f64 x y) (/.f64 1 (+.f64 z 1)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(/.f64 (+.f64 z 1) (/.f64 1 (+.f64 x y)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (-.f64 x y) (+.f64 z 1)))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 (+.f64 1 z) (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (*.f64 (-.f64 x y) (+.f64 z -1)) (fma.f64 z z -1)))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (*.f64 (-.f64 x y) (+.f64 z -1))) (fma.f64 z z -1))
(*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (fma.f64 z z -1) (*.f64 (-.f64 x y) (+.f64 z -1))))
(*.f64 (fma.f64 z z -1) (*.f64 (/.f64 (+.f64 y x) (+.f64 z -1)) (/.f64 (-.f64 x y) (-.f64 x y))))
(/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (*.f64 (-.f64 x y) (fma.f64 z z (-.f64 1 z))) (+.f64 1 (pow.f64 z 3))))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))))
(*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (+.f64 1 (pow.f64 z 3)) (*.f64 (-.f64 x y) (fma.f64 z z (-.f64 1 z)))))
(*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (/.f64 (+.f64 1 (pow.f64 z 3)) (-.f64 x y)) (fma.f64 z z (-.f64 1 z))))
(/.f64 (fma.f64 z z -1) (/.f64 (+.f64 z -1) (+.f64 x y)))
(/.f64 (fma.f64 z z -1) (/.f64 (+.f64 z -1) (+.f64 y x)))
(*.f64 (+.f64 y x) (/.f64 (fma.f64 z z -1) (+.f64 z -1)))
(/.f64 (fma.f64 z z -1) (/.f64 (*.f64 (-.f64 x y) (+.f64 z -1)) (-.f64 (*.f64 x x) (*.f64 y y))))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (*.f64 (-.f64 x y) (+.f64 z -1))) (fma.f64 z z -1))
(*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (fma.f64 z z -1) (*.f64 (-.f64 x y) (+.f64 z -1))))
(*.f64 (fma.f64 z z -1) (*.f64 (/.f64 (+.f64 y x) (+.f64 z -1)) (/.f64 (-.f64 x y) (-.f64 x y))))
(/.f64 (fma.f64 z z -1) (/.f64 (*.f64 (+.f64 z -1) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 (pow.f64 x 3) (pow.f64 y 3))))
(*.f64 (/.f64 (fma.f64 z z -1) (+.f64 z -1)) (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (fma.f64 z z -1) (/.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (+.f64 z -1)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (/.f64 (/.f64 (fma.f64 z z -1) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 z -1)))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (/.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (+.f64 z 1)))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (/.f64 (*.f64 (+.f64 z -1) (fma.f64 x x (*.f64 y (-.f64 y x)))) (fma.f64 z z -1)))
(*.f64 (/.f64 (fma.f64 z z -1) (+.f64 z -1)) (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (fma.f64 z z -1) (/.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (+.f64 z -1)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (/.f64 (/.f64 (fma.f64 z z -1) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 z -1)))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (/.f64 (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (fma.f64 z z (-.f64 1 z))) (+.f64 1 (pow.f64 z 3))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 1 (pow.f64 z 3))) (fma.f64 z z (-.f64 1 z)))
(/.f64 (+.f64 1 (pow.f64 z 3)) (/.f64 (fma.f64 z z (-.f64 1 z)) (+.f64 x y)))
(*.f64 (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))) (+.f64 y x))
(/.f64 (+.f64 y x) (/.f64 (fma.f64 z z (-.f64 1 z)) (+.f64 1 (pow.f64 z 3))))
(*.f64 (/.f64 (+.f64 y x) (fma.f64 z z (-.f64 1 z))) (+.f64 1 (pow.f64 z 3)))
(/.f64 (+.f64 1 (pow.f64 z 3)) (/.f64 (*.f64 (-.f64 x y) (fma.f64 z z (-.f64 1 z))) (-.f64 (*.f64 x x) (*.f64 y y))))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))))
(*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (+.f64 1 (pow.f64 z 3)) (*.f64 (-.f64 x y) (fma.f64 z z (-.f64 1 z)))))
(*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (/.f64 (+.f64 1 (pow.f64 z 3)) (-.f64 x y)) (fma.f64 z z (-.f64 1 z))))
(/.f64 (+.f64 1 (pow.f64 z 3)) (/.f64 (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (fma.f64 z z (-.f64 1 z))) (+.f64 (pow.f64 x 3) (pow.f64 y 3))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 1 (pow.f64 z 3))) (fma.f64 z z (-.f64 1 z)))
(/.f64 (*.f64 (+.f64 z 1) (-.f64 (*.f64 x x) (*.f64 y y))) (-.f64 x y))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 (+.f64 1 z) (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (*.f64 (+.f64 z 1) (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (+.f64 x y) (fma.f64 z z -1)) (+.f64 z -1))
(/.f64 (fma.f64 z z -1) (/.f64 (+.f64 z -1) (+.f64 y x)))
(*.f64 (+.f64 y x) (/.f64 (fma.f64 z z -1) (+.f64 z -1)))
(/.f64 (*.f64 (+.f64 x y) (+.f64 1 (pow.f64 z 3))) (fma.f64 z z (-.f64 1 z)))
(*.f64 (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))) (+.f64 y x))
(/.f64 (+.f64 y x) (/.f64 (fma.f64 z z (-.f64 1 z)) (+.f64 1 (pow.f64 z 3))))
(*.f64 (/.f64 (+.f64 y x) (fma.f64 z z (-.f64 1 z))) (+.f64 1 (pow.f64 z 3)))
(/.f64 (-.f64 (*.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 x y) z)) (pow.f64 (+.f64 x y) 2)) (-.f64 (*.f64 (+.f64 x y) z) (+.f64 x y)))
(/.f64 (-.f64 (*.f64 (pow.f64 (+.f64 y x) 2) (*.f64 z z)) (pow.f64 (+.f64 y x) 2)) (-.f64 (*.f64 z (+.f64 y x)) (+.f64 y x)))
(/.f64 (-.f64 (*.f64 z (*.f64 z (pow.f64 (+.f64 y x) 2))) (pow.f64 (+.f64 y x) 2)) (-.f64 (*.f64 z (+.f64 y x)) (+.f64 y x)))
(/.f64 (*.f64 (+.f64 y x) (*.f64 (+.f64 y x) (fma.f64 z z -1))) (-.f64 (*.f64 z (+.f64 y x)) (+.f64 y x)))
(/.f64 (+.f64 (pow.f64 (+.f64 x y) 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) (+.f64 (*.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 x y) z)) (-.f64 (pow.f64 (+.f64 x y) 2) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) z)))))
(/.f64 (+.f64 (pow.f64 (+.f64 y x) 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (+.f64 (*.f64 (pow.f64 (+.f64 y x) 2) (*.f64 z z)) (-.f64 (pow.f64 (+.f64 y x) 2) (*.f64 (pow.f64 (+.f64 y x) 2) z))))
(/.f64 (+.f64 (pow.f64 (+.f64 y x) 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (-.f64 (fma.f64 (pow.f64 (+.f64 y x) 2) (*.f64 z z) (pow.f64 (+.f64 y x) 2)) (*.f64 z (pow.f64 (+.f64 y x) 2))))
(/.f64 (*.f64 (pow.f64 (+.f64 y x) 3) (+.f64 1 (pow.f64 z 3))) (+.f64 (pow.f64 (+.f64 y x) 2) (*.f64 (pow.f64 (+.f64 y x) 2) (+.f64 (neg.f64 z) (*.f64 z z)))))
(/.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (fma.f64 z z -1)) (*.f64 (-.f64 x y) (+.f64 z -1)))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (*.f64 (-.f64 x y) (+.f64 z -1))) (fma.f64 z z -1))
(*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (fma.f64 z z -1) (*.f64 (-.f64 x y) (+.f64 z -1))))
(*.f64 (fma.f64 z z -1) (*.f64 (/.f64 (+.f64 y x) (+.f64 z -1)) (/.f64 (-.f64 x y) (-.f64 x y))))
(/.f64 (*.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (+.f64 1 (pow.f64 z 3))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (fma.f64 z z (-.f64 1 z))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 1 (pow.f64 z 3))) (fma.f64 z z (-.f64 1 z)))
(/.f64 (*.f64 (fma.f64 z z -1) (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (*.f64 (+.f64 z -1) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (/.f64 (fma.f64 z z -1) (+.f64 z -1)) (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (fma.f64 z z -1) (/.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (+.f64 z -1)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (/.f64 (/.f64 (fma.f64 z z -1) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 z -1)))
(/.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (+.f64 1 (pow.f64 z 3))) (*.f64 (-.f64 x y) (fma.f64 z z (-.f64 1 z))))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))))
(*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (+.f64 1 (pow.f64 z 3)) (*.f64 (-.f64 x y) (fma.f64 z z (-.f64 1 z)))))
(*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (/.f64 (+.f64 1 (pow.f64 z 3)) (-.f64 x y)) (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (+.f64 x y) (-.f64 1 (*.f64 z z))) (-.f64 1 z))
(/.f64 (fma.f64 z z -1) (/.f64 (+.f64 z -1) (+.f64 y x)))
(*.f64 (+.f64 y x) (/.f64 (fma.f64 z z -1) (+.f64 z -1)))
(/.f64 (*.f64 (+.f64 x y) (neg.f64 (fma.f64 z z -1))) (neg.f64 (+.f64 z -1)))
(/.f64 (fma.f64 z z -1) (/.f64 (+.f64 z -1) (+.f64 y x)))
(*.f64 (+.f64 y x) (/.f64 (fma.f64 z z -1) (+.f64 z -1)))
(/.f64 (*.f64 (+.f64 x y) (neg.f64 (+.f64 1 (pow.f64 z 3)))) (neg.f64 (fma.f64 z z (-.f64 1 z))))
(*.f64 (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))) (+.f64 y x))
(/.f64 (+.f64 y x) (/.f64 (fma.f64 z z (-.f64 1 z)) (+.f64 1 (pow.f64 z 3))))
(*.f64 (/.f64 (+.f64 y x) (fma.f64 z z (-.f64 1 z))) (+.f64 1 (pow.f64 z 3)))
(/.f64 (*.f64 1 (*.f64 (+.f64 x y) (fma.f64 z z -1))) (+.f64 z -1))
(/.f64 (fma.f64 z z -1) (/.f64 (+.f64 z -1) (+.f64 y x)))
(*.f64 (+.f64 y x) (/.f64 (fma.f64 z z -1) (+.f64 z -1)))
(/.f64 (*.f64 1 (*.f64 (+.f64 x y) (+.f64 1 (pow.f64 z 3)))) (fma.f64 z z (-.f64 1 z)))
(*.f64 (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))) (+.f64 y x))
(/.f64 (+.f64 y x) (/.f64 (fma.f64 z z (-.f64 1 z)) (+.f64 1 (pow.f64 z 3))))
(*.f64 (/.f64 (+.f64 y x) (fma.f64 z z (-.f64 1 z))) (+.f64 1 (pow.f64 z 3)))
(/.f64 (*.f64 1 (*.f64 (+.f64 z 1) (-.f64 (*.f64 x x) (*.f64 y y)))) (-.f64 x y))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 (+.f64 1 z) (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (*.f64 1 (*.f64 (+.f64 z 1) (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 1 (-.f64 (*.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 x y) z)) (pow.f64 (+.f64 x y) 2))) (-.f64 (*.f64 (+.f64 x y) z) (+.f64 x y)))
(/.f64 (-.f64 (*.f64 (pow.f64 (+.f64 y x) 2) (*.f64 z z)) (pow.f64 (+.f64 y x) 2)) (-.f64 (*.f64 z (+.f64 y x)) (+.f64 y x)))
(/.f64 (-.f64 (*.f64 z (*.f64 z (pow.f64 (+.f64 y x) 2))) (pow.f64 (+.f64 y x) 2)) (-.f64 (*.f64 z (+.f64 y x)) (+.f64 y x)))
(/.f64 (*.f64 (+.f64 y x) (*.f64 (+.f64 y x) (fma.f64 z z -1))) (-.f64 (*.f64 z (+.f64 y x)) (+.f64 y x)))
(/.f64 (*.f64 1 (+.f64 (pow.f64 (+.f64 x y) 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (+.f64 (*.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 x y) z)) (-.f64 (pow.f64 (+.f64 x y) 2) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) z)))))
(/.f64 (+.f64 (pow.f64 (+.f64 y x) 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (+.f64 (*.f64 (pow.f64 (+.f64 y x) 2) (*.f64 z z)) (-.f64 (pow.f64 (+.f64 y x) 2) (*.f64 (pow.f64 (+.f64 y x) 2) z))))
(/.f64 (+.f64 (pow.f64 (+.f64 y x) 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (-.f64 (fma.f64 (pow.f64 (+.f64 y x) 2) (*.f64 z z) (pow.f64 (+.f64 y x) 2)) (*.f64 z (pow.f64 (+.f64 y x) 2))))
(/.f64 (*.f64 (pow.f64 (+.f64 y x) 3) (+.f64 1 (pow.f64 z 3))) (+.f64 (pow.f64 (+.f64 y x) 2) (*.f64 (pow.f64 (+.f64 y x) 2) (+.f64 (neg.f64 z) (*.f64 z z)))))
(/.f64 (*.f64 1 (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (fma.f64 z z -1))) (*.f64 (-.f64 x y) (+.f64 z -1)))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (*.f64 (-.f64 x y) (+.f64 z -1))) (fma.f64 z z -1))
(*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (fma.f64 z z -1) (*.f64 (-.f64 x y) (+.f64 z -1))))
(*.f64 (fma.f64 z z -1) (*.f64 (/.f64 (+.f64 y x) (+.f64 z -1)) (/.f64 (-.f64 x y) (-.f64 x y))))
(/.f64 (*.f64 1 (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (+.f64 1 (pow.f64 z 3)))) (*.f64 (-.f64 x y) (fma.f64 z z (-.f64 1 z))))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))))
(*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (+.f64 1 (pow.f64 z 3)) (*.f64 (-.f64 x y) (fma.f64 z z (-.f64 1 z)))))
(*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (/.f64 (+.f64 1 (pow.f64 z 3)) (-.f64 x y)) (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 1 (*.f64 (fma.f64 z z -1) (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (*.f64 (+.f64 z -1) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (/.f64 (fma.f64 z z -1) (+.f64 z -1)) (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (fma.f64 z z -1) (/.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (+.f64 z -1)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (/.f64 (/.f64 (fma.f64 z z -1) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 z -1)))
(/.f64 (*.f64 1 (*.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (+.f64 1 (pow.f64 z 3)))) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (fma.f64 z z (-.f64 1 z))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 1 (pow.f64 z 3))) (fma.f64 z z (-.f64 1 z)))
(/.f64 (*.f64 (+.f64 z 1) (-.f64 (*.f64 y y) (*.f64 x x))) (-.f64 y x))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 (+.f64 1 z) (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (*.f64 (+.f64 z 1) (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (neg.f64 (-.f64 x y)))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 (+.f64 1 z) (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (*.f64 (+.f64 z 1) (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (sqrt.f64 (+.f64 z 1))) (sqrt.f64 (fma.f64 z z -1))) (sqrt.f64 (+.f64 z -1)))
(/.f64 (*.f64 (+.f64 y x) (sqrt.f64 (+.f64 1 z))) (/.f64 (sqrt.f64 (+.f64 z -1)) (sqrt.f64 (fma.f64 z z -1))))
(*.f64 (/.f64 (*.f64 (+.f64 y x) (sqrt.f64 (+.f64 1 z))) (sqrt.f64 (+.f64 z -1))) (sqrt.f64 (fma.f64 z z -1)))
(*.f64 (/.f64 (+.f64 y x) (/.f64 (sqrt.f64 (+.f64 z -1)) (sqrt.f64 (fma.f64 z z -1)))) (sqrt.f64 (+.f64 1 z)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (sqrt.f64 (+.f64 z 1))) (sqrt.f64 (+.f64 1 (pow.f64 z 3)))) (sqrt.f64 (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (+.f64 y x) (sqrt.f64 (+.f64 1 z))) (/.f64 (sqrt.f64 (fma.f64 z z (-.f64 1 z))) (sqrt.f64 (+.f64 1 (pow.f64 z 3)))))
(/.f64 (*.f64 (+.f64 y x) (sqrt.f64 (+.f64 1 z))) (/.f64 (sqrt.f64 (fma.f64 z z (-.f64 1 z))) (hypot.f64 1 (pow.f64 z 3/2))))
(*.f64 (/.f64 (*.f64 (+.f64 y x) (sqrt.f64 (+.f64 1 z))) (sqrt.f64 (fma.f64 z z (-.f64 1 z)))) (hypot.f64 1 (pow.f64 z 3/2)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (pow.f64 (cbrt.f64 (+.f64 z 1)) 2)) (cbrt.f64 (fma.f64 z z -1))) (cbrt.f64 (+.f64 z -1)))
(/.f64 (*.f64 (+.f64 y x) (pow.f64 (cbrt.f64 (+.f64 1 z)) 2)) (/.f64 (cbrt.f64 (+.f64 z -1)) (cbrt.f64 (fma.f64 z z -1))))
(*.f64 (/.f64 (*.f64 (+.f64 y x) (pow.f64 (cbrt.f64 (+.f64 1 z)) 2)) (cbrt.f64 (+.f64 z -1))) (cbrt.f64 (fma.f64 z z -1)))
(*.f64 (/.f64 (+.f64 y x) (cbrt.f64 (+.f64 z -1))) (*.f64 (pow.f64 (cbrt.f64 (+.f64 1 z)) 2) (cbrt.f64 (fma.f64 z z -1))))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (pow.f64 (cbrt.f64 (+.f64 z 1)) 2)) (cbrt.f64 (+.f64 1 (pow.f64 z 3)))) (cbrt.f64 (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (+.f64 y x) (pow.f64 (cbrt.f64 (+.f64 1 z)) 2)) (/.f64 (cbrt.f64 (fma.f64 z z (-.f64 1 z))) (cbrt.f64 (+.f64 1 (pow.f64 z 3)))))
(*.f64 (/.f64 (*.f64 (+.f64 y x) (pow.f64 (cbrt.f64 (+.f64 1 z)) 2)) (cbrt.f64 (fma.f64 z z (-.f64 1 z)))) (cbrt.f64 (+.f64 1 (pow.f64 z 3))))
(*.f64 (/.f64 (+.f64 y x) (/.f64 (cbrt.f64 (fma.f64 z z (-.f64 1 z))) (cbrt.f64 (+.f64 1 (pow.f64 z 3))))) (pow.f64 (cbrt.f64 (+.f64 1 z)) 2))
(/.f64 (*.f64 (*.f64 (+.f64 z 1) (sqrt.f64 (+.f64 x y))) (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (/.f64 (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (*.f64 (+.f64 1 z) (sqrt.f64 (+.f64 y x)))))
(*.f64 (/.f64 (*.f64 (+.f64 1 z) (sqrt.f64 (+.f64 y x))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))) (hypot.f64 (pow.f64 y 3/2) (pow.f64 x 3/2)))
(*.f64 (/.f64 (+.f64 1 z) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))) (*.f64 (sqrt.f64 (+.f64 y x)) (hypot.f64 (pow.f64 y 3/2) (pow.f64 x 3/2))))
(/.f64 (*.f64 (*.f64 (+.f64 z 1) (sqrt.f64 (+.f64 x y))) (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (sqrt.f64 (-.f64 x y)))
(/.f64 (*.f64 (+.f64 1 z) (sqrt.f64 (+.f64 y x))) (/.f64 (sqrt.f64 (-.f64 x y)) (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))) (sqrt.f64 (-.f64 x y))) (*.f64 (+.f64 1 z) (sqrt.f64 (+.f64 y x))))
(*.f64 (/.f64 (*.f64 (+.f64 1 z) (sqrt.f64 (+.f64 y x))) (sqrt.f64 (-.f64 x y))) (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))))
(/.f64 (*.f64 (*.f64 (+.f64 z 1) (pow.f64 (cbrt.f64 (+.f64 x y)) 2)) (cbrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (+.f64 1 z) (pow.f64 (cbrt.f64 (+.f64 y x)) 2)) (/.f64 (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (cbrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))))
(*.f64 (/.f64 (+.f64 1 z) (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))) (*.f64 (pow.f64 (cbrt.f64 (+.f64 y x)) 2) (cbrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))))
(/.f64 (*.f64 (*.f64 (+.f64 z 1) (pow.f64 (cbrt.f64 (+.f64 x y)) 2)) (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (cbrt.f64 (-.f64 x y)))
(/.f64 (*.f64 (+.f64 1 z) (pow.f64 (cbrt.f64 (+.f64 y x)) 2)) (/.f64 (cbrt.f64 (-.f64 x y)) (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))))
(*.f64 (/.f64 (+.f64 1 z) (cbrt.f64 (-.f64 x y))) (*.f64 (pow.f64 (cbrt.f64 (+.f64 y x)) 2) (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))))
(/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (+.f64 z 1)) (-.f64 y x))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 (+.f64 1 z) (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (*.f64 (neg.f64 (-.f64 (*.f64 x x) (*.f64 y y))) (+.f64 z 1)) (neg.f64 (-.f64 x y)))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 (+.f64 1 z) (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (+.f64 z 1)) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (-.f64 1 (*.f64 z z)) (+.f64 x y)) (-.f64 1 z))
(/.f64 (fma.f64 z z -1) (/.f64 (+.f64 z -1) (+.f64 y x)))
(*.f64 (+.f64 y x) (/.f64 (fma.f64 z z -1) (+.f64 z -1)))
(/.f64 (*.f64 (neg.f64 (fma.f64 z z -1)) (+.f64 x y)) (neg.f64 (+.f64 z -1)))
(/.f64 (fma.f64 z z -1) (/.f64 (+.f64 z -1) (+.f64 y x)))
(*.f64 (+.f64 y x) (/.f64 (fma.f64 z z -1) (+.f64 z -1)))
(/.f64 (*.f64 (neg.f64 (+.f64 1 (pow.f64 z 3))) (+.f64 x y)) (neg.f64 (fma.f64 z z (-.f64 1 z))))
(*.f64 (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))) (+.f64 y x))
(/.f64 (+.f64 y x) (/.f64 (fma.f64 z z (-.f64 1 z)) (+.f64 1 (pow.f64 z 3))))
(*.f64 (/.f64 (+.f64 y x) (fma.f64 z z (-.f64 1 z))) (+.f64 1 (pow.f64 z 3)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (fma.f64 z z -1)) 1) (+.f64 z -1))
(/.f64 (fma.f64 z z -1) (/.f64 (+.f64 z -1) (+.f64 y x)))
(*.f64 (+.f64 y x) (/.f64 (fma.f64 z z -1) (+.f64 z -1)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (+.f64 1 (pow.f64 z 3))) 1) (fma.f64 z z (-.f64 1 z)))
(*.f64 (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))) (+.f64 y x))
(/.f64 (+.f64 y x) (/.f64 (fma.f64 z z (-.f64 1 z)) (+.f64 1 (pow.f64 z 3))))
(*.f64 (/.f64 (+.f64 y x) (fma.f64 z z (-.f64 1 z))) (+.f64 1 (pow.f64 z 3)))
(/.f64 (*.f64 (*.f64 (+.f64 z 1) (-.f64 (*.f64 x x) (*.f64 y y))) 1) (-.f64 x y))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 (+.f64 1 z) (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (*.f64 (*.f64 (+.f64 z 1) (+.f64 (pow.f64 x 3) (pow.f64 y 3))) 1) (fma.f64 x x (*.f64 y (-.f64 y x))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 x y) z)) (pow.f64 (+.f64 x y) 2)) 1) (-.f64 (*.f64 (+.f64 x y) z) (+.f64 x y)))
(/.f64 (-.f64 (*.f64 (pow.f64 (+.f64 y x) 2) (*.f64 z z)) (pow.f64 (+.f64 y x) 2)) (-.f64 (*.f64 z (+.f64 y x)) (+.f64 y x)))
(/.f64 (-.f64 (*.f64 z (*.f64 z (pow.f64 (+.f64 y x) 2))) (pow.f64 (+.f64 y x) 2)) (-.f64 (*.f64 z (+.f64 y x)) (+.f64 y x)))
(/.f64 (*.f64 (+.f64 y x) (*.f64 (+.f64 y x) (fma.f64 z z -1))) (-.f64 (*.f64 z (+.f64 y x)) (+.f64 y x)))
(/.f64 (*.f64 (+.f64 (pow.f64 (+.f64 x y) 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) 1) (+.f64 (*.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 x y) z)) (-.f64 (pow.f64 (+.f64 x y) 2) (*.f64 (+.f64 x y) (*.f64 (+.f64 x y) z)))))
(/.f64 (+.f64 (pow.f64 (+.f64 y x) 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (+.f64 (*.f64 (pow.f64 (+.f64 y x) 2) (*.f64 z z)) (-.f64 (pow.f64 (+.f64 y x) 2) (*.f64 (pow.f64 (+.f64 y x) 2) z))))
(/.f64 (+.f64 (pow.f64 (+.f64 y x) 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (-.f64 (fma.f64 (pow.f64 (+.f64 y x) 2) (*.f64 z z) (pow.f64 (+.f64 y x) 2)) (*.f64 z (pow.f64 (+.f64 y x) 2))))
(/.f64 (*.f64 (pow.f64 (+.f64 y x) 3) (+.f64 1 (pow.f64 z 3))) (+.f64 (pow.f64 (+.f64 y x) 2) (*.f64 (pow.f64 (+.f64 y x) 2) (+.f64 (neg.f64 z) (*.f64 z z)))))
(/.f64 (*.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (fma.f64 z z -1)) 1) (*.f64 (-.f64 x y) (+.f64 z -1)))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (*.f64 (-.f64 x y) (+.f64 z -1))) (fma.f64 z z -1))
(*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (fma.f64 z z -1) (*.f64 (-.f64 x y) (+.f64 z -1))))
(*.f64 (fma.f64 z z -1) (*.f64 (/.f64 (+.f64 y x) (+.f64 z -1)) (/.f64 (-.f64 x y) (-.f64 x y))))
(/.f64 (*.f64 (*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (+.f64 1 (pow.f64 z 3))) 1) (*.f64 (-.f64 x y) (fma.f64 z z (-.f64 1 z))))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))))
(*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (+.f64 1 (pow.f64 z 3)) (*.f64 (-.f64 x y) (fma.f64 z z (-.f64 1 z)))))
(*.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (/.f64 (+.f64 1 (pow.f64 z 3)) (-.f64 x y)) (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (*.f64 (fma.f64 z z -1) (+.f64 (pow.f64 x 3) (pow.f64 y 3))) 1) (*.f64 (+.f64 z -1) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (/.f64 (fma.f64 z z -1) (+.f64 z -1)) (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (fma.f64 z z -1) (/.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (+.f64 z -1)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (/.f64 (/.f64 (fma.f64 z z -1) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 z -1)))
(/.f64 (*.f64 (*.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (+.f64 1 (pow.f64 z 3))) 1) (*.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) (fma.f64 z z (-.f64 1 z))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 1 (pow.f64 z 3))) (fma.f64 z z (-.f64 1 z)))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 z z -1)) (*.f64 (+.f64 x y) (sqrt.f64 (+.f64 z 1)))) (sqrt.f64 (+.f64 z -1)))
(/.f64 (*.f64 (+.f64 y x) (sqrt.f64 (+.f64 1 z))) (/.f64 (sqrt.f64 (+.f64 z -1)) (sqrt.f64 (fma.f64 z z -1))))
(*.f64 (/.f64 (*.f64 (+.f64 y x) (sqrt.f64 (+.f64 1 z))) (sqrt.f64 (+.f64 z -1))) (sqrt.f64 (fma.f64 z z -1)))
(*.f64 (/.f64 (+.f64 y x) (/.f64 (sqrt.f64 (+.f64 z -1)) (sqrt.f64 (fma.f64 z z -1)))) (sqrt.f64 (+.f64 1 z)))
(/.f64 (*.f64 (sqrt.f64 (+.f64 1 (pow.f64 z 3))) (*.f64 (+.f64 x y) (sqrt.f64 (+.f64 z 1)))) (sqrt.f64 (fma.f64 z z (-.f64 1 z))))
(/.f64 (*.f64 (+.f64 y x) (sqrt.f64 (+.f64 1 z))) (/.f64 (sqrt.f64 (fma.f64 z z (-.f64 1 z))) (sqrt.f64 (+.f64 1 (pow.f64 z 3)))))
(/.f64 (*.f64 (+.f64 y x) (sqrt.f64 (+.f64 1 z))) (/.f64 (sqrt.f64 (fma.f64 z z (-.f64 1 z))) (hypot.f64 1 (pow.f64 z 3/2))))
(*.f64 (/.f64 (*.f64 (+.f64 y x) (sqrt.f64 (+.f64 1 z))) (sqrt.f64 (fma.f64 z z (-.f64 1 z)))) (hypot.f64 1 (pow.f64 z 3/2)))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (*.f64 (+.f64 z 1) (sqrt.f64 (+.f64 x y)))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (/.f64 (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (*.f64 (+.f64 1 z) (sqrt.f64 (+.f64 y x)))))
(*.f64 (/.f64 (*.f64 (+.f64 1 z) (sqrt.f64 (+.f64 y x))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))) (hypot.f64 (pow.f64 y 3/2) (pow.f64 x 3/2)))
(*.f64 (/.f64 (+.f64 1 z) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))) (*.f64 (sqrt.f64 (+.f64 y x)) (hypot.f64 (pow.f64 y 3/2) (pow.f64 x 3/2))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 (+.f64 z 1) (sqrt.f64 (+.f64 x y)))) (sqrt.f64 (-.f64 x y)))
(/.f64 (*.f64 (+.f64 1 z) (sqrt.f64 (+.f64 y x))) (/.f64 (sqrt.f64 (-.f64 x y)) (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))) (sqrt.f64 (-.f64 x y))) (*.f64 (+.f64 1 z) (sqrt.f64 (+.f64 y x))))
(*.f64 (/.f64 (*.f64 (+.f64 1 z) (sqrt.f64 (+.f64 y x))) (sqrt.f64 (-.f64 x y))) (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))))
(/.f64 (/.f64 (*.f64 (+.f64 x y) (fma.f64 z z -1)) 1) (+.f64 z -1))
(/.f64 (fma.f64 z z -1) (/.f64 (+.f64 z -1) (+.f64 y x)))
(*.f64 (+.f64 y x) (/.f64 (fma.f64 z z -1) (+.f64 z -1)))
(/.f64 (/.f64 (*.f64 (+.f64 x y) (fma.f64 z z -1)) (sqrt.f64 (+.f64 z -1))) (sqrt.f64 (+.f64 z -1)))
(/.f64 (fma.f64 z z -1) (/.f64 (+.f64 z -1) (+.f64 y x)))
(*.f64 (+.f64 y x) (/.f64 (fma.f64 z z -1) (+.f64 z -1)))
(/.f64 (/.f64 (*.f64 (+.f64 x y) (fma.f64 z z -1)) (*.f64 (cbrt.f64 (+.f64 z -1)) (cbrt.f64 (+.f64 z -1)))) (cbrt.f64 (+.f64 z -1)))
(/.f64 (fma.f64 z z -1) (/.f64 (+.f64 z -1) (+.f64 y x)))
(*.f64 (+.f64 y x) (/.f64 (fma.f64 z z -1) (+.f64 z -1)))
(/.f64 (/.f64 (*.f64 (+.f64 x y) (fma.f64 z z -1)) (+.f64 1 (sqrt.f64 z))) (-.f64 (sqrt.f64 z) 1))
(/.f64 (/.f64 (*.f64 (+.f64 y x) (fma.f64 z z -1)) (+.f64 1 (sqrt.f64 z))) (+.f64 (sqrt.f64 z) -1))
(*.f64 (/.f64 (+.f64 y x) (+.f64 -1 (sqrt.f64 z))) (/.f64 (fma.f64 z z -1) (+.f64 1 (sqrt.f64 z))))
(/.f64 (*.f64 (/.f64 (+.f64 y x) (+.f64 1 (sqrt.f64 z))) (fma.f64 z z -1)) (+.f64 -1 (sqrt.f64 z)))
(/.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 1 (pow.f64 z 3))) 1) (fma.f64 z z (-.f64 1 z)))
(*.f64 (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))) (+.f64 y x))
(/.f64 (+.f64 y x) (/.f64 (fma.f64 z z (-.f64 1 z)) (+.f64 1 (pow.f64 z 3))))
(*.f64 (/.f64 (+.f64 y x) (fma.f64 z z (-.f64 1 z))) (+.f64 1 (pow.f64 z 3)))
(/.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 1 (pow.f64 z 3))) (sqrt.f64 (fma.f64 z z (-.f64 1 z)))) (sqrt.f64 (fma.f64 z z (-.f64 1 z))))
(*.f64 (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))) (+.f64 y x))
(/.f64 (+.f64 y x) (/.f64 (fma.f64 z z (-.f64 1 z)) (+.f64 1 (pow.f64 z 3))))
(*.f64 (/.f64 (+.f64 y x) (fma.f64 z z (-.f64 1 z))) (+.f64 1 (pow.f64 z 3)))
(/.f64 (/.f64 (*.f64 (+.f64 x y) (+.f64 1 (pow.f64 z 3))) (*.f64 (cbrt.f64 (fma.f64 z z (-.f64 1 z))) (cbrt.f64 (fma.f64 z z (-.f64 1 z))))) (cbrt.f64 (fma.f64 z z (-.f64 1 z))))
(*.f64 (/.f64 (+.f64 1 (pow.f64 z 3)) (fma.f64 z z (-.f64 1 z))) (+.f64 y x))
(/.f64 (+.f64 y x) (/.f64 (fma.f64 z z (-.f64 1 z)) (+.f64 1 (pow.f64 z 3))))
(*.f64 (/.f64 (+.f64 y x) (fma.f64 z z (-.f64 1 z))) (+.f64 1 (pow.f64 z 3)))
(/.f64 (/.f64 (*.f64 (+.f64 z 1) (-.f64 (*.f64 x x) (*.f64 y y))) 1) (-.f64 x y))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 (+.f64 1 z) (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (/.f64 (*.f64 (+.f64 z 1) (-.f64 (*.f64 x x) (*.f64 y y))) (sqrt.f64 (-.f64 x y))) (sqrt.f64 (-.f64 x y)))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 (+.f64 1 z) (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (/.f64 (*.f64 (+.f64 z 1) (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 (cbrt.f64 (-.f64 x y)) (cbrt.f64 (-.f64 x y)))) (cbrt.f64 (-.f64 x y)))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 (+.f64 1 z) (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (/.f64 (*.f64 (+.f64 z 1) (-.f64 (*.f64 x x) (*.f64 y y))) (+.f64 (sqrt.f64 x) (sqrt.f64 y))) (-.f64 (sqrt.f64 x) (sqrt.f64 y)))
(/.f64 (/.f64 (+.f64 1 z) (/.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 y)) (-.f64 (*.f64 x x) (*.f64 y y)))) (-.f64 (sqrt.f64 x) (sqrt.f64 y)))
(*.f64 (/.f64 (+.f64 1 z) (-.f64 (sqrt.f64 x) (sqrt.f64 y))) (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (+.f64 (sqrt.f64 x) (sqrt.f64 y))))
(*.f64 (/.f64 (+.f64 1 z) (*.f64 (+.f64 (sqrt.f64 x) (sqrt.f64 y)) (-.f64 (sqrt.f64 x) (sqrt.f64 y)))) (-.f64 (*.f64 x x) (*.f64 y y)))
(/.f64 (/.f64 (*.f64 (+.f64 z 1) (+.f64 (pow.f64 x 3) (pow.f64 y 3))) 1) (fma.f64 x x (*.f64 y (-.f64 y x))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (/.f64 (*.f64 (+.f64 z 1) (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (/.f64 (*.f64 (+.f64 z 1) (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (*.f64 (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))) (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) (+.f64 1 z))
(*.f64 (+.f64 1 z) (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(pow.f64 (*.f64 (+.f64 x y) (+.f64 z 1)) 1)
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(pow.f64 (sqrt.f64 (*.f64 (+.f64 x y) (+.f64 z 1))) 2)
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(pow.f64 (cbrt.f64 (*.f64 (+.f64 x y) (+.f64 z 1))) 3)
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(pow.f64 (pow.f64 (*.f64 (+.f64 x y) (+.f64 z 1)) 3) 1/3)
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(sqrt.f64 (pow.f64 (*.f64 (+.f64 x y) (+.f64 z 1)) 2))
(sqrt.f64 (pow.f64 (*.f64 (+.f64 y x) (+.f64 1 z)) 2))
(fabs.f64 (*.f64 (+.f64 y x) (+.f64 1 z)))
(log.f64 (pow.f64 (exp.f64 (+.f64 x y)) (+.f64 z 1)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 x y) (+.f64 z 1)))))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 x y) (+.f64 z 1)) 3))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(cbrt.f64 (*.f64 (pow.f64 (+.f64 z 1) 3) (pow.f64 (+.f64 x y) 3)))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(expm1.f64 (log1p.f64 (*.f64 (+.f64 x y) (+.f64 z 1))))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(exp.f64 (+.f64 (log1p.f64 z) (log.f64 (+.f64 x y))))
(exp.f64 (+.f64 (log1p.f64 z) (log.f64 (+.f64 y x))))
(*.f64 (+.f64 y x) (exp.f64 (log1p.f64 z)))
(log1p.f64 (expm1.f64 (*.f64 (+.f64 x y) (+.f64 z 1))))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(fma.f64 (+.f64 x y) z (+.f64 x y))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))
(fma.f64 z (+.f64 x y) (+.f64 x y))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 y x) (+.f64 1 z))

eval71.0ms (1.5%)

Compiler

Compiled 3739 to 1614 computations (56.8% saved)

prune40.0ms (0.8%)

Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New1967203
Fresh000
Picked101
Done000
Total1977204
Error
0b
Counts
204 → 7
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
0.0b
(+.f64 (+.f64 (+.f64 x y) (*.f64 y z)) (*.f64 x z))
0.0b
(+.f64 (+.f64 y (*.f64 (+.f64 x y) z)) x)
21.4b
(+.f64 y x)
42.3b
(*.f64 (+.f64 y x) z)
32.8b
(*.f64 (+.f64 1 z) x)
30.5b
(*.f64 y (+.f64 1 z))
Compiler

Compiled 138 to 90 computations (34.8% saved)

localize9.0ms (0.2%)

Local error

Found 2 expressions with local error:

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

Compiled 30 to 7 computations (76.7% saved)

series3.0ms (0.1%)

Counts
2 → 72
Calls

18 calls:

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

rewrite76.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
924×associate-*r/
906×*-commutative
758×distribute-lft-in
746×distribute-rgt-in
684×associate-*l/
Iterations

Useful iterations: 1 (0.0ms)

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

simplify134.0ms (2.8%)

Algorithm
egg-herbie
Rules
1194×associate-/l/
1130×associate-/r/
718×associate-+r+
622×+-commutative
584×associate-/l*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03517480
19906870
247626862
Stop Event
node limit
Counts
196 → 208
Calls
Call 1
Inputs
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 z)))
(*.f64 y (+.f64 1 z))
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 z)))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 z) 1)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 z) 1))))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 z) 1))))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 z) 1))))
(+.f64 (*.f64 y z) y)
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
(*.f64 z x)
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
(*.f64 z x)
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
y
(+.f64 y (*.f64 (+.f64 y x) z))
(+.f64 y (*.f64 (+.f64 y x) z))
(+.f64 y (*.f64 (+.f64 y x) z))
(*.f64 (+.f64 y x) z)
(+.f64 y (*.f64 (+.f64 y x) z))
(+.f64 y (*.f64 (+.f64 y x) z))
(+.f64 y (*.f64 (+.f64 y x) z))
(*.f64 (+.f64 y x) z)
(+.f64 y (*.f64 (+.f64 y x) z))
(+.f64 y (*.f64 (+.f64 y x) z))
(+.f64 y (*.f64 (+.f64 y x) z))
(+.f64 (*.f64 y z) (*.f64 x z))
(+.f64 (*.f64 x z) (*.f64 y z))
(+.f64 (*.f64 (*.f64 y z) 1) (*.f64 (*.f64 x z) 1))
(+.f64 (*.f64 1 (*.f64 y z)) (*.f64 1 (*.f64 x z)))
(+.f64 (*.f64 1 (*.f64 x z)) (*.f64 1 (*.f64 y z)))
(+.f64 (*.f64 (*.f64 x z) 1) (*.f64 (*.f64 y z) 1))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 x y) z))) 1)
(/.f64 z (/.f64 1 (+.f64 x y)))
(/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (-.f64 x y) z))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (/.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) z))
(/.f64 (*.f64 z (-.f64 (*.f64 x x) (*.f64 y y))) (-.f64 x y))
(/.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(/.f64 (*.f64 z (-.f64 (*.f64 y y) (*.f64 x x))) (-.f64 y x))
(/.f64 (*.f64 z (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y)))) (neg.f64 (-.f64 x y)))
(/.f64 (*.f64 z (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 1 (*.f64 z (-.f64 (*.f64 x x) (*.f64 y y)))) (-.f64 x y))
(/.f64 (*.f64 1 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(/.f64 (*.f64 (*.f64 z (sqrt.f64 (+.f64 x y))) (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (*.f64 z (sqrt.f64 (+.f64 x y))) (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (sqrt.f64 (-.f64 x y)))
(/.f64 (*.f64 (*.f64 z (pow.f64 (cbrt.f64 (+.f64 x y)) 2)) (cbrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (*.f64 z (pow.f64 (cbrt.f64 (+.f64 x y)) 2)) (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (cbrt.f64 (-.f64 x y)))
(/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (-.f64 y x))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y))) z) (neg.f64 (-.f64 x y)))
(/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3))) z) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (*.f64 z (-.f64 (*.f64 x x) (*.f64 y y))) 1) (-.f64 x y))
(/.f64 (*.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) 1) (fma.f64 x x (*.f64 y (-.f64 y x))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (*.f64 z (sqrt.f64 (+.f64 x y)))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 z (sqrt.f64 (+.f64 x y)))) (sqrt.f64 (-.f64 x y)))
(/.f64 (/.f64 (*.f64 z (-.f64 (*.f64 x x) (*.f64 y y))) 1) (-.f64 x y))
(/.f64 (/.f64 (*.f64 z (-.f64 (*.f64 x x) (*.f64 y y))) (sqrt.f64 (-.f64 x y))) (sqrt.f64 (-.f64 x y)))
(/.f64 (/.f64 (*.f64 z (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 (cbrt.f64 (-.f64 x y)) (cbrt.f64 (-.f64 x y)))) (cbrt.f64 (-.f64 x y)))
(/.f64 (/.f64 (*.f64 z (-.f64 (*.f64 x x) (*.f64 y y))) (+.f64 (sqrt.f64 x) (sqrt.f64 y))) (-.f64 (sqrt.f64 x) (sqrt.f64 y)))
(/.f64 (/.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) 1) (fma.f64 x x (*.f64 y (-.f64 y x))))
(/.f64 (/.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (/.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (*.f64 (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))) (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(pow.f64 (*.f64 (+.f64 x y) z) 1)
(pow.f64 (sqrt.f64 (*.f64 (+.f64 x y) z)) 2)
(pow.f64 (cbrt.f64 (*.f64 (+.f64 x y) z)) 3)
(pow.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2))
(log.f64 (pow.f64 (exp.f64 z) (+.f64 x y)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 x y) z))))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3))
(expm1.f64 (log1p.f64 (*.f64 (+.f64 x y) z)))
(exp.f64 (log.f64 (*.f64 (+.f64 x y) z)))
(log1p.f64 (expm1.f64 (*.f64 (+.f64 x y) z)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 x y) z))) (-.f64 1 y))
(-.f64 (exp.f64 (log1p.f64 y)) (-.f64 1 (*.f64 (+.f64 x y) z)))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (+.f64 x y) z y))) 1)
(-.f64 (/.f64 (*.f64 y y) (-.f64 y (*.f64 (+.f64 x y) z))) (/.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (-.f64 y (*.f64 (+.f64 x y) z))))
(-.f64 (+.f64 y (exp.f64 (log1p.f64 (*.f64 (+.f64 x y) z)))) 1)
(-.f64 (+.f64 (*.f64 (+.f64 x y) z) (exp.f64 (log1p.f64 y))) 1)
(*.f64 (fma.f64 (+.f64 x y) z y) 1)
(*.f64 1 (fma.f64 (+.f64 x y) z y))
(*.f64 (sqrt.f64 (fma.f64 (+.f64 x y) z y)) (sqrt.f64 (fma.f64 (+.f64 x y) z y)))
(*.f64 (cbrt.f64 (fma.f64 (+.f64 x y) z y)) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 x y) z y)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 x y) z y)) 2) (cbrt.f64 (fma.f64 (+.f64 x y) z y)))
(*.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) (/.f64 1 (-.f64 y (*.f64 (+.f64 x y) z))))
(*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) (/.f64 1 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(*.f64 (/.f64 1 (-.f64 y (*.f64 (+.f64 x y) z))) (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)))
(*.f64 (/.f64 1 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))) (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)))
(*.f64 (/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2))) (fma.f64 (+.f64 x y) z y))
(*.f64 (/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (+.f64 (*.f64 y y) (*.f64 (*.f64 (+.f64 x y) z) (fma.f64 (+.f64 x y) z y))))
(*.f64 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) (-.f64 (*.f64 y (pow.f64 y 3)) (*.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (*.f64 (-.f64 (*.f64 (+.f64 x y) z) y) (-.f64 (*.f64 (+.f64 x y) z) y))))) (-.f64 (*.f64 y y) (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))))
(*.f64 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) (+.f64 (pow.f64 (*.f64 y y) 3) (pow.f64 (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)) 3))) (+.f64 (*.f64 y (pow.f64 y 3)) (*.f64 (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)) (-.f64 (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)) (*.f64 y y)))))
(/.f64 (fma.f64 (+.f64 x y) z y) (/.f64 (-.f64 y (*.f64 (+.f64 x y) z)) (-.f64 y (*.f64 (+.f64 x y) z))))
(/.f64 1 (/.f64 1 (fma.f64 (+.f64 x y) z y)))
(/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) (-.f64 y (*.f64 (+.f64 x y) z)))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))))
(/.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))) (/.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))) (fma.f64 (+.f64 x y) z y)))
(/.f64 (sqrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (/.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))) (sqrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2))) (/.f64 (-.f64 y (*.f64 (+.f64 x y) z)) (sqrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)))))
(/.f64 (*.f64 (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)))) (/.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))) (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2))) (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)))) (/.f64 (-.f64 y (*.f64 (+.f64 x y) z)) (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (*.f64 y y)) (-.f64 (*.f64 (+.f64 x y) z) y))
(/.f64 (-.f64 (*.f64 (pow.f64 y 3) (pow.f64 y 3)) (*.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (*.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))) (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))))
(/.f64 (-.f64 (*.f64 y (pow.f64 y 3)) (*.f64 (*.f64 (+.f64 x y) z) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (*.f64 (-.f64 y (*.f64 (+.f64 x y) z)) (+.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (*.f64 y y))))
(/.f64 (+.f64 (pow.f64 (pow.f64 y 3) 3) (pow.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) 3)) (*.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))) (+.f64 (*.f64 (pow.f64 y 3) (pow.f64 y 3)) (*.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) (-.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) (pow.f64 y 3))))))
(/.f64 (-.f64 (pow.f64 (*.f64 y y) 3) (pow.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) 3)) (*.f64 (-.f64 y (*.f64 (+.f64 x y) z)) (+.f64 (*.f64 y (pow.f64 y 3)) (*.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (+.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (*.f64 y y))))))
(/.f64 (neg.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2))) (neg.f64 (-.f64 y (*.f64 (+.f64 x y) z))))
(/.f64 (neg.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (neg.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 (+.f64 x y) z y)) (sqrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)))) (sqrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 (+.f64 x y) z y)) (sqrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)))) (sqrt.f64 (-.f64 y (*.f64 (+.f64 x y) z))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 x y) z y)) 2) (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)))) (cbrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 x y) z y)) 2) (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)))) (cbrt.f64 (-.f64 y (*.f64 (+.f64 x y) z))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (*.f64 y y)) 1) (-.f64 (*.f64 (+.f64 x y) z) y))
(/.f64 (*.f64 (neg.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2))) 1) (neg.f64 (-.f64 y (*.f64 (+.f64 x y) z))))
(/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) 1) (neg.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (sqrt.f64 (fma.f64 (+.f64 x y) z y))) (sqrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2))) (sqrt.f64 (fma.f64 (+.f64 x y) z y))) (sqrt.f64 (-.f64 y (*.f64 (+.f64 x y) z))))
(/.f64 (*.f64 (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 x y) z y)) 2)) (cbrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 x y) z y)) 2)) (cbrt.f64 (-.f64 y (*.f64 (+.f64 x y) z))))
(/.f64 (*.f64 (-.f64 (*.f64 y (pow.f64 y 3)) (*.f64 (*.f64 (+.f64 x y) z) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (/.f64 1 (-.f64 y (*.f64 (+.f64 x y) z)))) (+.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (*.f64 y y)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 y y) 3) (pow.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) 3)) (/.f64 1 (-.f64 y (*.f64 (+.f64 x y) z)))) (+.f64 (*.f64 y (pow.f64 y 3)) (*.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (+.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (*.f64 y y)))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 y 3) (pow.f64 y 3)) (*.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (/.f64 1 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))))) (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)))
(/.f64 (*.f64 (+.f64 (pow.f64 (pow.f64 y 3) 3) (pow.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) 3)) (/.f64 1 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))))) (+.f64 (*.f64 (pow.f64 y 3) (pow.f64 y 3)) (*.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) (-.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) (pow.f64 y 3)))))
(/.f64 (/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) 1) (-.f64 y (*.f64 (+.f64 x y) z)))
(/.f64 (/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) (sqrt.f64 (-.f64 y (*.f64 (+.f64 x y) z)))) (sqrt.f64 (-.f64 y (*.f64 (+.f64 x y) z))))
(/.f64 (/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) (*.f64 (cbrt.f64 (-.f64 y (*.f64 (+.f64 x y) z))) (cbrt.f64 (-.f64 y (*.f64 (+.f64 x y) z))))) (cbrt.f64 (-.f64 y (*.f64 (+.f64 x y) z))))
(/.f64 (/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) (+.f64 (sqrt.f64 (*.f64 (+.f64 x y) z)) (sqrt.f64 y))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 (+.f64 x y) z))))
(/.f64 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) 1) (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))))
(/.f64 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) (sqrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))))) (sqrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(/.f64 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) (*.f64 (cbrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))) (cbrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))) (cbrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(pow.f64 (fma.f64 (+.f64 x y) z y) 1)
(pow.f64 (sqrt.f64 (fma.f64 (+.f64 x y) z y)) 2)
(pow.f64 (cbrt.f64 (fma.f64 (+.f64 x y) z y)) 3)
(pow.f64 (pow.f64 (fma.f64 (+.f64 x y) z y) 3) 1/3)
(neg.f64 (/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) (neg.f64 (-.f64 y (*.f64 (+.f64 x y) z)))))
(neg.f64 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) (neg.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))))))
(sqrt.f64 (pow.f64 (fma.f64 (+.f64 x y) z y) 2))
(log.f64 (exp.f64 (fma.f64 (+.f64 x y) z y)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (+.f64 x y) z y))))
(cbrt.f64 (pow.f64 (fma.f64 (+.f64 x y) z y) 3))
(expm1.f64 (log1p.f64 (fma.f64 (+.f64 x y) z y)))
(exp.f64 (log.f64 (fma.f64 (+.f64 x y) z y)))
(log1p.f64 (expm1.f64 (fma.f64 (+.f64 x y) z y)))
(fma.f64 (+.f64 x y) z y)
(fma.f64 z (+.f64 x y) y)
(fma.f64 1 y (*.f64 (+.f64 x y) z))
(fma.f64 1 (*.f64 (+.f64 x y) z) y)
(fma.f64 (sqrt.f64 (*.f64 (+.f64 x y) z)) (sqrt.f64 (*.f64 (+.f64 x y) z)) y)
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 (+.f64 x y) z))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 x y) z)) 2) (cbrt.f64 (*.f64 (+.f64 x y) z)) y)
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 (+.f64 x y) z))
Outputs
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 y x))
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 y x))
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 y x))
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 y x))
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 y x))
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 y x))
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 y x))
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 y x))
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 y x))
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 y x))
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 y x))
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 y x))
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 y x))
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 z)))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 z)))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 z)))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(*.f64 y (+.f64 1 z))
(*.f64 y (+.f64 z 1))
(fma.f64 y z y)
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 z)))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 z)))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 z)))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 z) 1)))
(neg.f64 (*.f64 y (fma.f64 -1 z -1)))
(*.f64 (fma.f64 z -1 -1) (neg.f64 y))
(*.f64 (-.f64 -1 z) (neg.f64 y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 z) 1))))
(fma.f64 z x (neg.f64 (*.f64 y (fma.f64 -1 z -1))))
(-.f64 (*.f64 z x) (*.f64 y (fma.f64 z -1 -1)))
(-.f64 (*.f64 z x) (*.f64 y (-.f64 -1 z)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 z) 1))))
(fma.f64 z x (neg.f64 (*.f64 y (fma.f64 -1 z -1))))
(-.f64 (*.f64 z x) (*.f64 y (fma.f64 z -1 -1)))
(-.f64 (*.f64 z x) (*.f64 y (-.f64 -1 z)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 z) 1))))
(fma.f64 z x (neg.f64 (*.f64 y (fma.f64 -1 z -1))))
(-.f64 (*.f64 z x) (*.f64 y (fma.f64 z -1 -1)))
(-.f64 (*.f64 z x) (*.f64 y (-.f64 -1 z)))
(+.f64 (*.f64 y z) y)
(*.f64 y (+.f64 z 1))
(fma.f64 y z y)
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(*.f64 z x)
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(*.f64 z x)
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(+.f64 (*.f64 y z) (+.f64 (*.f64 z x) y))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
y
(+.f64 y (*.f64 (+.f64 y x) z))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(+.f64 y (*.f64 (+.f64 y x) z))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(+.f64 y (*.f64 (+.f64 y x) z))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 y x))
(+.f64 y (*.f64 (+.f64 y x) z))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(+.f64 y (*.f64 (+.f64 y x) z))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(+.f64 y (*.f64 (+.f64 y x) z))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 y x))
(+.f64 y (*.f64 (+.f64 y x) z))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(+.f64 y (*.f64 (+.f64 y x) z))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(+.f64 y (*.f64 (+.f64 y x) z))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(+.f64 (*.f64 y z) (*.f64 x z))
(*.f64 z (+.f64 y x))
(+.f64 (*.f64 x z) (*.f64 y z))
(*.f64 z (+.f64 y x))
(+.f64 (*.f64 (*.f64 y z) 1) (*.f64 (*.f64 x z) 1))
(*.f64 z (+.f64 y x))
(+.f64 (*.f64 1 (*.f64 y z)) (*.f64 1 (*.f64 x z)))
(*.f64 z (+.f64 y x))
(+.f64 (*.f64 1 (*.f64 x z)) (*.f64 1 (*.f64 y z)))
(*.f64 z (+.f64 y x))
(+.f64 (*.f64 (*.f64 x z) 1) (*.f64 (*.f64 y z) 1))
(*.f64 z (+.f64 y x))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 x y) z))) 1)
(*.f64 z (+.f64 y x))
(/.f64 z (/.f64 1 (+.f64 x y)))
(*.f64 z (+.f64 y x))
(/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (/.f64 (-.f64 x y) z))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) z)
(*.f64 z (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 z (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (/.f64 (fma.f64 x x (*.f64 y (-.f64 y x))) z))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) z)
(/.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(/.f64 (*.f64 z (-.f64 (*.f64 x x) (*.f64 y y))) (-.f64 x y))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) z)
(*.f64 z (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 z (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) z)
(/.f64 (*.f64 z (-.f64 (*.f64 y y) (*.f64 x x))) (-.f64 y x))
(/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (-.f64 y x) z))
(*.f64 (/.f64 z (-.f64 y x)) (-.f64 (*.f64 y y) (*.f64 x x)))
(/.f64 (*.f64 z (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y)))) (neg.f64 (-.f64 x y)))
(/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (-.f64 y x) z))
(*.f64 (/.f64 z (-.f64 y x)) (-.f64 (*.f64 y y) (*.f64 x x)))
(/.f64 (*.f64 z (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) z)
(/.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(/.f64 (*.f64 1 (*.f64 z (-.f64 (*.f64 x x) (*.f64 y y)))) (-.f64 x y))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) z)
(*.f64 z (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 z (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (*.f64 1 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) z)
(/.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(/.f64 (*.f64 (*.f64 z (sqrt.f64 (+.f64 x y))) (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 z (sqrt.f64 (+.f64 y x))) (/.f64 (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))))
(/.f64 z (/.f64 (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (*.f64 (sqrt.f64 (+.f64 y x)) (hypot.f64 (pow.f64 y 3/2) (pow.f64 x 3/2)))))
(/.f64 (*.f64 (*.f64 z (sqrt.f64 (+.f64 x y))) (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (sqrt.f64 (-.f64 x y)))
(/.f64 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))) (/.f64 (sqrt.f64 (-.f64 x y)) (*.f64 z (sqrt.f64 (+.f64 y x)))))
(*.f64 (/.f64 (*.f64 z (sqrt.f64 (+.f64 y x))) (sqrt.f64 (-.f64 x y))) (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))))
(*.f64 (/.f64 z (sqrt.f64 (-.f64 x y))) (*.f64 (sqrt.f64 (+.f64 y x)) (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))))
(/.f64 (*.f64 (*.f64 z (pow.f64 (cbrt.f64 (+.f64 x y)) 2)) (cbrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))) (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 z (pow.f64 (cbrt.f64 (+.f64 y x)) 2)) (/.f64 (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (cbrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))))
(*.f64 (/.f64 (*.f64 z (pow.f64 (cbrt.f64 (+.f64 y x)) 2)) (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))) (cbrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3))))
(*.f64 (/.f64 z (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))) (*.f64 (pow.f64 (cbrt.f64 (+.f64 y x)) 2) (cbrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))))
(/.f64 (*.f64 (*.f64 z (pow.f64 (cbrt.f64 (+.f64 x y)) 2)) (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))) (cbrt.f64 (-.f64 x y)))
(/.f64 (*.f64 z (pow.f64 (cbrt.f64 (+.f64 y x)) 2)) (/.f64 (cbrt.f64 (-.f64 x y)) (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))))
(*.f64 (/.f64 (*.f64 z (pow.f64 (cbrt.f64 (+.f64 y x)) 2)) (cbrt.f64 (-.f64 x y))) (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))))
(*.f64 (/.f64 z (cbrt.f64 (-.f64 x y))) (*.f64 (pow.f64 (cbrt.f64 (+.f64 y x)) 2) (cbrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))))
(/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (-.f64 y x))
(/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (-.f64 y x) z))
(*.f64 (/.f64 z (-.f64 y x)) (-.f64 (*.f64 y y) (*.f64 x x)))
(/.f64 (*.f64 (*.f64 (+.f64 x y) (neg.f64 (-.f64 x y))) z) (neg.f64 (-.f64 x y)))
(/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (/.f64 (-.f64 y x) z))
(*.f64 (/.f64 z (-.f64 y x)) (-.f64 (*.f64 y y) (*.f64 x x)))
(/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3))) z) (neg.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) z)
(/.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(/.f64 (*.f64 (*.f64 z (-.f64 (*.f64 x x) (*.f64 y y))) 1) (-.f64 x y))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) z)
(*.f64 z (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 z (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (*.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) 1) (fma.f64 x x (*.f64 y (-.f64 y x))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) z)
(/.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (*.f64 z (sqrt.f64 (+.f64 x y)))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 z (sqrt.f64 (+.f64 y x))) (/.f64 (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (sqrt.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)))))
(/.f64 z (/.f64 (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (*.f64 (sqrt.f64 (+.f64 y x)) (hypot.f64 (pow.f64 y 3/2) (pow.f64 x 3/2)))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 z (sqrt.f64 (+.f64 x y)))) (sqrt.f64 (-.f64 x y)))
(/.f64 (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))) (/.f64 (sqrt.f64 (-.f64 x y)) (*.f64 z (sqrt.f64 (+.f64 y x)))))
(*.f64 (/.f64 (*.f64 z (sqrt.f64 (+.f64 y x))) (sqrt.f64 (-.f64 x y))) (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y))))
(*.f64 (/.f64 z (sqrt.f64 (-.f64 x y))) (*.f64 (sqrt.f64 (+.f64 y x)) (sqrt.f64 (-.f64 (*.f64 x x) (*.f64 y y)))))
(/.f64 (/.f64 (*.f64 z (-.f64 (*.f64 x x) (*.f64 y y))) 1) (-.f64 x y))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) z)
(*.f64 z (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 z (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (/.f64 (*.f64 z (-.f64 (*.f64 x x) (*.f64 y y))) (sqrt.f64 (-.f64 x y))) (sqrt.f64 (-.f64 x y)))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) z)
(*.f64 z (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 z (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (/.f64 (*.f64 z (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 (cbrt.f64 (-.f64 x y)) (cbrt.f64 (-.f64 x y)))) (cbrt.f64 (-.f64 x y)))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 x y)) z)
(*.f64 z (/.f64 (+.f64 y x) (/.f64 (-.f64 x y) (-.f64 x y))))
(*.f64 z (*.f64 (/.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y)))
(/.f64 (/.f64 (*.f64 z (-.f64 (*.f64 x x) (*.f64 y y))) (+.f64 (sqrt.f64 x) (sqrt.f64 y))) (-.f64 (sqrt.f64 x) (sqrt.f64 y)))
(/.f64 (*.f64 z (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 (-.f64 (sqrt.f64 x) (sqrt.f64 y)) (+.f64 (sqrt.f64 x) (sqrt.f64 y))))
(*.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y y)) (-.f64 (sqrt.f64 x) (sqrt.f64 y))) (/.f64 z (+.f64 (sqrt.f64 x) (sqrt.f64 y))))
(/.f64 (/.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) 1) (fma.f64 x x (*.f64 y (-.f64 y x))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) z)
(/.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(/.f64 (/.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x))))) (sqrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) z)
(/.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(/.f64 (/.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (*.f64 (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))) (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))) (cbrt.f64 (fma.f64 x x (*.f64 y (-.f64 y x)))))
(*.f64 (/.f64 (+.f64 (pow.f64 x 3) (pow.f64 y 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))) z)
(/.f64 (*.f64 z (+.f64 (pow.f64 x 3) (pow.f64 y 3))) (fma.f64 x x (*.f64 y (-.f64 y x))))
(pow.f64 (*.f64 (+.f64 x y) z) 1)
(*.f64 z (+.f64 y x))
(pow.f64 (sqrt.f64 (*.f64 (+.f64 x y) z)) 2)
(*.f64 z (+.f64 y x))
(pow.f64 (cbrt.f64 (*.f64 (+.f64 x y) z)) 3)
(*.f64 z (+.f64 y x))
(pow.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) 1/3)
(*.f64 z (+.f64 y x))
(sqrt.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2))
(sqrt.f64 (pow.f64 (*.f64 z (+.f64 y x)) 2))
(fabs.f64 (*.f64 z (+.f64 y x)))
(log.f64 (pow.f64 (exp.f64 z) (+.f64 x y)))
(*.f64 z (+.f64 y x))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 x y) z))))
(*.f64 z (+.f64 y x))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3))
(*.f64 z (+.f64 y x))
(expm1.f64 (log1p.f64 (*.f64 (+.f64 x y) z)))
(*.f64 z (+.f64 y x))
(exp.f64 (log.f64 (*.f64 (+.f64 x y) z)))
(*.f64 z (+.f64 y x))
(log1p.f64 (expm1.f64 (*.f64 (+.f64 x y) z)))
(*.f64 z (+.f64 y x))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 x y) z))) (-.f64 1 y))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(-.f64 (exp.f64 (log1p.f64 y)) (-.f64 1 (*.f64 (+.f64 x y) z)))
(+.f64 (-.f64 (exp.f64 (log1p.f64 y)) 1) (*.f64 z (+.f64 y x)))
(fma.f64 z (+.f64 y x) (expm1.f64 (log1p.f64 y)))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (+.f64 x y) z y))) 1)
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(-.f64 (/.f64 (*.f64 y y) (-.f64 y (*.f64 (+.f64 x y) z))) (/.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (-.f64 y (*.f64 (+.f64 x y) z))))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(-.f64 (+.f64 y (exp.f64 (log1p.f64 (*.f64 (+.f64 x y) z)))) 1)
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(-.f64 (+.f64 (*.f64 (+.f64 x y) z) (exp.f64 (log1p.f64 y))) 1)
(+.f64 (-.f64 (exp.f64 (log1p.f64 y)) 1) (*.f64 z (+.f64 y x)))
(fma.f64 z (+.f64 y x) (expm1.f64 (log1p.f64 y)))
(*.f64 (fma.f64 (+.f64 x y) z y) 1)
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(*.f64 1 (fma.f64 (+.f64 x y) z y))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(*.f64 (sqrt.f64 (fma.f64 (+.f64 x y) z y)) (sqrt.f64 (fma.f64 (+.f64 x y) z y)))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(*.f64 (cbrt.f64 (fma.f64 (+.f64 x y) z y)) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 x y) z y)) 2))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 x y) z y)) 2) (cbrt.f64 (fma.f64 (+.f64 x y) z y)))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(*.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) (/.f64 1 (-.f64 y (*.f64 (+.f64 x y) z))))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) (/.f64 1 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(/.f64 (*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) 1) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y)))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y)))))
(*.f64 (/.f64 1 (-.f64 y (*.f64 (+.f64 x y) z))) (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(*.f64 (/.f64 1 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))) (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)))
(/.f64 (*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) 1) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y)))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y)))))
(*.f64 (/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2))) (fma.f64 (+.f64 x y) z y))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(*.f64 (/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (+.f64 (*.f64 y y) (*.f64 (*.f64 (+.f64 x y) z) (fma.f64 (+.f64 x y) z y))))
(/.f64 (*.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2)) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) y)))) (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)))
(/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2)) (/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (fma.f64 y y (*.f64 z (*.f64 (+.f64 y x) (fma.f64 z (+.f64 y x) y))))))
(*.f64 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) (-.f64 (*.f64 y (pow.f64 y 3)) (*.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (*.f64 (-.f64 (*.f64 (+.f64 x y) z) y) (-.f64 (*.f64 (+.f64 x y) z) y))))) (-.f64 (*.f64 y y) (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))))
(*.f64 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (-.f64 (*.f64 y (pow.f64 y 3)) (*.f64 (pow.f64 (*.f64 z (+.f64 y x)) 2) (*.f64 (fma.f64 (+.f64 y x) z (neg.f64 y)) (fma.f64 (+.f64 y x) z (neg.f64 y)))))) (-.f64 (*.f64 y y) (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y)))))
(*.f64 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (-.f64 (pow.f64 y 4) (*.f64 (pow.f64 (*.f64 z (+.f64 y x)) 2) (*.f64 (fma.f64 z (+.f64 y x) (neg.f64 y)) (fma.f64 z (+.f64 y x) (neg.f64 y)))))) (-.f64 (*.f64 y y) (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y)))))
(*.f64 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) (+.f64 (pow.f64 (*.f64 y y) 3) (pow.f64 (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)) 3))) (+.f64 (*.f64 y (pow.f64 y 3)) (*.f64 (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)) (-.f64 (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)) (*.f64 y y)))))
(*.f64 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (+.f64 (pow.f64 (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y))) 3) (pow.f64 y 6))) (fma.f64 y (pow.f64 y 3) (*.f64 (*.f64 z (+.f64 y x)) (*.f64 (fma.f64 (+.f64 y x) z (neg.f64 y)) (-.f64 (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y))) (*.f64 y y))))))
(/.f64 (*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (fma.f64 (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y))) (fma.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y)) (*.f64 y (neg.f64 y))) (pow.f64 y 4))) (+.f64 (pow.f64 (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y))) 3) (pow.f64 y 6)))
(/.f64 (fma.f64 (+.f64 x y) z y) (/.f64 (-.f64 y (*.f64 (+.f64 x y) z)) (-.f64 y (*.f64 (+.f64 x y) z))))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(/.f64 1 (/.f64 1 (fma.f64 (+.f64 x y) z y)))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) (-.f64 y (*.f64 (+.f64 x y) z)))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))))
(/.f64 (*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) 1) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y)))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y)))))
(/.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))) (/.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))) (fma.f64 (+.f64 x y) z y)))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(/.f64 (sqrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (/.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))) (sqrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)))))
(*.f64 (/.f64 (sqrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3))) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y))))) (sqrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3))))
(*.f64 (hypot.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3/2) (pow.f64 y 3/2)) (/.f64 (hypot.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3/2) (pow.f64 y 3/2)) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y))))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2))) (/.f64 (-.f64 y (*.f64 (+.f64 x y) z)) (sqrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2))) (-.f64 y (*.f64 z (+.f64 y x)))) (sqrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2))))
(*.f64 (sqrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2))) (/.f64 (sqrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2))) (-.f64 y (*.f64 z (+.f64 y x)))))
(/.f64 (*.f64 (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)))) (/.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))) (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)))))
(/.f64 (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3))) (/.f64 (/.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y)))) (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)))) (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)))))
(*.f64 (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3))) (/.f64 (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3))) (/.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y)))) (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3))))))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2))) (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)))) (/.f64 (-.f64 y (*.f64 (+.f64 x y) z)) (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)))))
(*.f64 (/.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2))) (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2)))) (-.f64 y (*.f64 z (+.f64 y x)))) (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2))))
(*.f64 (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2))) (/.f64 (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2))) (/.f64 (-.f64 y (*.f64 z (+.f64 y x))) (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (*.f64 y y)) (-.f64 (*.f64 (+.f64 x y) z) y))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(/.f64 (-.f64 (*.f64 (pow.f64 y 3) (pow.f64 y 3)) (*.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (*.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))) (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))))
(/.f64 (-.f64 (pow.f64 y 6) (pow.f64 (*.f64 z (+.f64 y x)) 6)) (*.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y)))) (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3))))
(/.f64 (-.f64 (pow.f64 y 6) (pow.f64 (*.f64 z (+.f64 y x)) 6)) (*.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y)))) (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3))))
(/.f64 (-.f64 (*.f64 y (pow.f64 y 3)) (*.f64 (*.f64 (+.f64 x y) z) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (*.f64 (-.f64 y (*.f64 (+.f64 x y) z)) (+.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (*.f64 y y))))
(/.f64 (-.f64 (*.f64 y (pow.f64 y 3)) (*.f64 (*.f64 z (+.f64 y x)) (pow.f64 (*.f64 z (+.f64 y x)) 3))) (*.f64 (-.f64 y (*.f64 z (+.f64 y x))) (+.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2))))
(/.f64 (-.f64 (pow.f64 y 4) (pow.f64 (*.f64 z (+.f64 y x)) 4)) (*.f64 (-.f64 y (*.f64 z (+.f64 y x))) (fma.f64 y y (pow.f64 (*.f64 z (+.f64 y x)) 2))))
(/.f64 (+.f64 (pow.f64 (pow.f64 y 3) 3) (pow.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) 3)) (*.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))) (+.f64 (*.f64 (pow.f64 y 3) (pow.f64 y 3)) (*.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) (-.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) (pow.f64 y 3))))))
(/.f64 (/.f64 (+.f64 (pow.f64 (pow.f64 y 3) 3) (pow.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3) 3)) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y))))) (+.f64 (pow.f64 y 6) (*.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3) (-.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3) (pow.f64 y 3)))))
(/.f64 (+.f64 (pow.f64 (pow.f64 y 3) 3) (pow.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3) 3)) (*.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y)))) (fma.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3) (-.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3) (pow.f64 y 3)) (pow.f64 y 6))))
(/.f64 (-.f64 (pow.f64 (*.f64 y y) 3) (pow.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) 3)) (*.f64 (-.f64 y (*.f64 (+.f64 x y) z)) (+.f64 (*.f64 y (pow.f64 y 3)) (*.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (+.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (*.f64 y y))))))
(/.f64 (/.f64 (-.f64 (pow.f64 y 6) (pow.f64 (pow.f64 (*.f64 z (+.f64 y x)) 2) 3)) (-.f64 y (*.f64 z (+.f64 y x)))) (fma.f64 y (pow.f64 y 3) (*.f64 (pow.f64 (*.f64 z (+.f64 y x)) 2) (+.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2)))))
(/.f64 (-.f64 (pow.f64 y 6) (pow.f64 (*.f64 z (+.f64 y x)) 6)) (*.f64 (-.f64 y (*.f64 z (+.f64 y x))) (fma.f64 (pow.f64 (*.f64 z (+.f64 y x)) 2) (fma.f64 y y (pow.f64 (*.f64 z (+.f64 y x)) 2)) (pow.f64 y 4))))
(/.f64 (neg.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2))) (neg.f64 (-.f64 y (*.f64 (+.f64 x y) z))))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(/.f64 (neg.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (neg.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3))) (neg.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y))))))
(*.f64 1 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y))))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 (+.f64 x y) z y)) (sqrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)))) (sqrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 z (+.f64 y x) y)) (sqrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)))) (sqrt.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y))))))
(*.f64 (/.f64 (hypot.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3/2) (pow.f64 y 3/2)) (sqrt.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y)))))) (sqrt.f64 (fma.f64 z (+.f64 y x) y)))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 (+.f64 x y) z y)) (sqrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)))) (sqrt.f64 (-.f64 y (*.f64 (+.f64 x y) z))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2))) (/.f64 (sqrt.f64 (-.f64 y (*.f64 z (+.f64 y x)))) (sqrt.f64 (fma.f64 z (+.f64 y x) y))))
(/.f64 (sqrt.f64 (fma.f64 z (+.f64 y x) y)) (/.f64 (sqrt.f64 (-.f64 y (*.f64 z (+.f64 y x)))) (sqrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2)))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 x y) z y)) 2) (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)))) (cbrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 z (+.f64 y x) y)) 2) (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)))) (cbrt.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y))))))
(*.f64 (/.f64 (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3))) (cbrt.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y)))))) (pow.f64 (cbrt.f64 (fma.f64 z (+.f64 y x) y)) 2))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 (+.f64 x y) z y)) 2) (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)))) (cbrt.f64 (-.f64 y (*.f64 (+.f64 x y) z))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 z (+.f64 y x) y)) 2) (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2)))) (cbrt.f64 (-.f64 y (*.f64 z (+.f64 y x)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 z (+.f64 y x) y)) 2) (cbrt.f64 (-.f64 y (*.f64 z (+.f64 y x))))) (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (*.f64 y y)) 1) (-.f64 (*.f64 (+.f64 x y) z) y))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(/.f64 (*.f64 (neg.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2))) 1) (neg.f64 (-.f64 y (*.f64 (+.f64 x y) z))))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(/.f64 (*.f64 (neg.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) 1) (neg.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3))) (neg.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y))))))
(*.f64 1 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y))))))
(/.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (sqrt.f64 (fma.f64 (+.f64 x y) z y))) (sqrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(/.f64 (*.f64 (sqrt.f64 (fma.f64 z (+.f64 y x) y)) (sqrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)))) (sqrt.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y))))))
(*.f64 (/.f64 (hypot.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3/2) (pow.f64 y 3/2)) (sqrt.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y)))))) (sqrt.f64 (fma.f64 z (+.f64 y x) y)))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2))) (sqrt.f64 (fma.f64 (+.f64 x y) z y))) (sqrt.f64 (-.f64 y (*.f64 (+.f64 x y) z))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2))) (/.f64 (sqrt.f64 (-.f64 y (*.f64 z (+.f64 y x)))) (sqrt.f64 (fma.f64 z (+.f64 y x) y))))
(/.f64 (sqrt.f64 (fma.f64 z (+.f64 y x) y)) (/.f64 (sqrt.f64 (-.f64 y (*.f64 z (+.f64 y x)))) (sqrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2)))))
(/.f64 (*.f64 (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 x y) z y)) 2)) (cbrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 z (+.f64 y x) y)) 2) (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)))) (cbrt.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y))))))
(*.f64 (/.f64 (cbrt.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3))) (cbrt.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y)))))) (pow.f64 (cbrt.f64 (fma.f64 z (+.f64 y x) y)) 2))
(/.f64 (*.f64 (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2))) (pow.f64 (cbrt.f64 (fma.f64 (+.f64 x y) z y)) 2)) (cbrt.f64 (-.f64 y (*.f64 (+.f64 x y) z))))
(/.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 z (+.f64 y x) y)) 2) (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2)))) (cbrt.f64 (-.f64 y (*.f64 z (+.f64 y x)))))
(*.f64 (/.f64 (pow.f64 (cbrt.f64 (fma.f64 z (+.f64 y x) y)) 2) (cbrt.f64 (-.f64 y (*.f64 z (+.f64 y x))))) (cbrt.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2))))
(/.f64 (*.f64 (-.f64 (*.f64 y (pow.f64 y 3)) (*.f64 (*.f64 (+.f64 x y) z) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (/.f64 1 (-.f64 y (*.f64 (+.f64 x y) z)))) (+.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (*.f64 y y)))
(/.f64 (-.f64 (*.f64 y (pow.f64 y 3)) (*.f64 (*.f64 z (+.f64 y x)) (pow.f64 (*.f64 z (+.f64 y x)) 3))) (*.f64 (-.f64 y (*.f64 z (+.f64 y x))) (+.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2))))
(/.f64 (-.f64 (pow.f64 y 4) (pow.f64 (*.f64 z (+.f64 y x)) 4)) (*.f64 (-.f64 y (*.f64 z (+.f64 y x))) (fma.f64 y y (pow.f64 (*.f64 z (+.f64 y x)) 2))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 y y) 3) (pow.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) 3)) (/.f64 1 (-.f64 y (*.f64 (+.f64 x y) z)))) (+.f64 (*.f64 y (pow.f64 y 3)) (*.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (+.f64 (pow.f64 (*.f64 (+.f64 x y) z) 2) (*.f64 y y)))))
(/.f64 (/.f64 (-.f64 (pow.f64 y 6) (pow.f64 (pow.f64 (*.f64 z (+.f64 y x)) 2) 3)) (-.f64 y (*.f64 z (+.f64 y x)))) (fma.f64 y (pow.f64 y 3) (*.f64 (pow.f64 (*.f64 z (+.f64 y x)) 2) (+.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2)))))
(/.f64 (-.f64 (pow.f64 y 6) (pow.f64 (*.f64 z (+.f64 y x)) 6)) (*.f64 (-.f64 y (*.f64 z (+.f64 y x))) (fma.f64 (pow.f64 (*.f64 z (+.f64 y x)) 2) (fma.f64 y y (pow.f64 (*.f64 z (+.f64 y x)) 2)) (pow.f64 y 4))))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 y 3) (pow.f64 y 3)) (*.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) (pow.f64 (*.f64 (+.f64 x y) z) 3))) (/.f64 1 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))))) (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)))
(/.f64 (-.f64 (pow.f64 y 6) (pow.f64 (*.f64 z (+.f64 y x)) 6)) (*.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y)))) (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3))))
(/.f64 (-.f64 (pow.f64 y 6) (pow.f64 (*.f64 z (+.f64 y x)) 6)) (*.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y)))) (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3))))
(/.f64 (*.f64 (+.f64 (pow.f64 (pow.f64 y 3) 3) (pow.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) 3)) (/.f64 1 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))))) (+.f64 (*.f64 (pow.f64 y 3) (pow.f64 y 3)) (*.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) (-.f64 (pow.f64 (*.f64 (+.f64 x y) z) 3) (pow.f64 y 3)))))
(/.f64 (/.f64 (+.f64 (pow.f64 (pow.f64 y 3) 3) (pow.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3) 3)) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y))))) (+.f64 (pow.f64 y 6) (*.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3) (-.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3) (pow.f64 y 3)))))
(/.f64 (+.f64 (pow.f64 (pow.f64 y 3) 3) (pow.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3) 3)) (*.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y)))) (fma.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3) (-.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3) (pow.f64 y 3)) (pow.f64 y 6))))
(/.f64 (/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) 1) (-.f64 y (*.f64 (+.f64 x y) z)))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(/.f64 (/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) (sqrt.f64 (-.f64 y (*.f64 (+.f64 x y) z)))) (sqrt.f64 (-.f64 y (*.f64 (+.f64 x y) z))))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(/.f64 (/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) (*.f64 (cbrt.f64 (-.f64 y (*.f64 (+.f64 x y) z))) (cbrt.f64 (-.f64 y (*.f64 (+.f64 x y) z))))) (cbrt.f64 (-.f64 y (*.f64 (+.f64 x y) z))))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(/.f64 (/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) (+.f64 (sqrt.f64 (*.f64 (+.f64 x y) z)) (sqrt.f64 y))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 (+.f64 x y) z))))
(/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2)) (*.f64 (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 z (+.f64 y x)))) (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 z (+.f64 y x))))))
(/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z (+.f64 y x)) 2)) (*.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 z (+.f64 y x)))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 z (+.f64 y x))))))
(/.f64 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) 1) (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))))
(/.f64 (*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) 1) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y)))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y)))))
(/.f64 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) (sqrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))))) (sqrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(/.f64 (*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) 1) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y)))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y)))))
(/.f64 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) (*.f64 (cbrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))) (cbrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))) (cbrt.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y)))))
(/.f64 (*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) 1) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y)))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y)))))
(pow.f64 (fma.f64 (+.f64 x y) z y) 1)
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(pow.f64 (sqrt.f64 (fma.f64 (+.f64 x y) z y)) 2)
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(pow.f64 (cbrt.f64 (fma.f64 (+.f64 x y) z y)) 3)
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(pow.f64 (pow.f64 (fma.f64 (+.f64 x y) z y) 3) 1/3)
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(neg.f64 (/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 (+.f64 x y) z) 2)) (neg.f64 (-.f64 y (*.f64 (+.f64 x y) z)))))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(neg.f64 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 (+.f64 x y) z) 3)) (neg.f64 (fma.f64 y y (*.f64 (*.f64 (+.f64 x y) z) (-.f64 (*.f64 (+.f64 x y) z) y))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3))) (neg.f64 (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 (+.f64 y x) z (neg.f64 y))))))
(*.f64 1 (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z (+.f64 y x)) 3)) (fma.f64 y y (*.f64 (*.f64 z (+.f64 y x)) (fma.f64 z (+.f64 y x) (neg.f64 y))))))
(sqrt.f64 (pow.f64 (fma.f64 (+.f64 x y) z y) 2))
(sqrt.f64 (pow.f64 (fma.f64 z (+.f64 y x) y) 2))
(fabs.f64 (fma.f64 z (+.f64 y x) y))
(log.f64 (exp.f64 (fma.f64 (+.f64 x y) z y)))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (+.f64 x y) z y))))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(cbrt.f64 (pow.f64 (fma.f64 (+.f64 x y) z y) 3))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(expm1.f64 (log1p.f64 (fma.f64 (+.f64 x y) z y)))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(exp.f64 (log.f64 (fma.f64 (+.f64 x y) z y)))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(log1p.f64 (expm1.f64 (fma.f64 (+.f64 x y) z y)))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(fma.f64 (+.f64 x y) z y)
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(fma.f64 z (+.f64 x y) y)
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(fma.f64 1 y (*.f64 (+.f64 x y) z))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(fma.f64 1 (*.f64 (+.f64 x y) z) y)
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(fma.f64 (sqrt.f64 (*.f64 (+.f64 x y) z)) (sqrt.f64 (*.f64 (+.f64 x y) z)) y)
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 (+.f64 x y) z))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 x y) z)) 2) (cbrt.f64 (*.f64 (+.f64 x y) z)) y)
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 (+.f64 x y) z))
(fma.f64 z x (*.f64 y (+.f64 z 1)))
(fma.f64 z (+.f64 y x) y)

localize3.0ms (0.1%)

Compiler

Compiled 8 to 4 computations (50% saved)

localize7.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 y (+.f64 1 z))
Compiler

Compiled 14 to 9 computations (35.7% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

6 calls:

TimeVariablePointExpression
0.0ms
y
@inf
(*.f64 y (+.f64 1 z))
0.0ms
y
@0
(*.f64 y (+.f64 1 z))
0.0ms
z
@-inf
(*.f64 y (+.f64 1 z))
0.0ms
y
@-inf
(*.f64 y (+.f64 1 z))
0.0ms
z
@0
(*.f64 y (+.f64 1 z))

rewrite75.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
1500×add-sqr-sqrt
1484×*-un-lft-identity
1386×add-cube-cbrt
1366×add-cbrt-cube
1354×add-exp-log
Iterations

Useful iterations: 0 (0.0ms)

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

simplify78.0ms (1.6%)

Algorithm
egg-herbie
Rules
1590×associate-/l*
1486×associate-/r*
912×associate-*r*
804×associate-*l*
470×distribute-lft-out
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
073463
1204455
2686437
33402433
Stop Event
node limit
Counts
37 → 36
Calls
Call 1
Inputs
y
(+.f64 (*.f64 y z) y)
(+.f64 (*.f64 y z) y)
(+.f64 (*.f64 y z) y)
(*.f64 y z)
(+.f64 (*.f64 y z) y)
(+.f64 (*.f64 y z) y)
(+.f64 (*.f64 y z) y)
(*.f64 y z)
(+.f64 (*.f64 y z) y)
(+.f64 (*.f64 y z) y)
(+.f64 (*.f64 y z) y)
(+.f64 y (*.f64 y z))
(+.f64 y (*.f64 (*.f64 y z) 1))
(+.f64 (*.f64 y z) y)
(-.f64 (+.f64 1 (+.f64 y (*.f64 y z))) 1)
(/.f64 (*.f64 y (-.f64 1 (*.f64 z z))) (-.f64 1 z))
(/.f64 (*.f64 y (+.f64 1 (pow.f64 z 3))) (+.f64 1 (-.f64 (*.f64 z z) z)))
(/.f64 (*.f64 (-.f64 1 (*.f64 z z)) y) (-.f64 1 z))
(/.f64 (*.f64 (+.f64 1 (pow.f64 z 3)) y) (+.f64 1 (-.f64 (*.f64 z z) z)))
(/.f64 (-.f64 (*.f64 y y) (*.f64 (*.f64 y z) (*.f64 y z))) (-.f64 y (*.f64 y z)))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 y z) 3)) (+.f64 (*.f64 y y) (-.f64 (*.f64 (*.f64 y z) (*.f64 y z)) (*.f64 y (*.f64 y z)))))
(pow.f64 (+.f64 y (*.f64 y z)) 1)
(pow.f64 (sqrt.f64 (+.f64 y (*.f64 y z))) 2)
(pow.f64 (cbrt.f64 (+.f64 y (*.f64 y z))) 3)
(pow.f64 (pow.f64 (+.f64 y (*.f64 y z)) 3) 1/3)
(sqrt.f64 (pow.f64 (+.f64 y (*.f64 y z)) 2))
(log.f64 (exp.f64 (+.f64 y (*.f64 y z))))
(cbrt.f64 (pow.f64 (+.f64 y (*.f64 y z)) 3))
(expm1.f64 (log1p.f64 (+.f64 y (*.f64 y z))))
(exp.f64 (+.f64 (log1p.f64 z) (log.f64 y)))
(exp.f64 (*.f64 (+.f64 (log1p.f64 z) (log.f64 y)) 1))
(log1p.f64 (expm1.f64 (+.f64 y (*.f64 y z))))
(fma.f64 y 1 (*.f64 y z))
(fma.f64 1 y (*.f64 y z))
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 y z))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 y z))
Outputs
y
(+.f64 (*.f64 y z) y)
(fma.f64 y z y)
(+.f64 (*.f64 y z) y)
(fma.f64 y z y)
(+.f64 (*.f64 y z) y)
(fma.f64 y z y)
(*.f64 y z)
(+.f64 (*.f64 y z) y)
(fma.f64 y z y)
(+.f64 (*.f64 y z) y)
(fma.f64 y z y)
(+.f64 (*.f64 y z) y)
(fma.f64 y z y)
(*.f64 y z)
(+.f64 (*.f64 y z) y)
(fma.f64 y z y)
(+.f64 (*.f64 y z) y)
(fma.f64 y z y)
(+.f64 (*.f64 y z) y)
(fma.f64 y z y)
(+.f64 y (*.f64 y z))
(fma.f64 y z y)
(+.f64 y (*.f64 (*.f64 y z) 1))
(fma.f64 y z y)
(+.f64 (*.f64 y z) y)
(fma.f64 y z y)
(-.f64 (+.f64 1 (+.f64 y (*.f64 y z))) 1)
(fma.f64 y z y)
(/.f64 (*.f64 y (-.f64 1 (*.f64 z z))) (-.f64 1 z))
(fma.f64 y z y)
(/.f64 (*.f64 y (+.f64 1 (pow.f64 z 3))) (+.f64 1 (-.f64 (*.f64 z z) z)))
(/.f64 y (/.f64 (+.f64 1 (fma.f64 z z (neg.f64 z))) (+.f64 1 (pow.f64 z 3))))
(*.f64 (/.f64 y (+.f64 1 (fma.f64 z z (neg.f64 z)))) (+.f64 1 (pow.f64 z 3)))
(/.f64 (fma.f64 y (pow.f64 z 3) y) (-.f64 (fma.f64 z z 1) z))
(/.f64 (*.f64 (-.f64 1 (*.f64 z z)) y) (-.f64 1 z))
(fma.f64 y z y)
(/.f64 (*.f64 (+.f64 1 (pow.f64 z 3)) y) (+.f64 1 (-.f64 (*.f64 z z) z)))
(/.f64 y (/.f64 (+.f64 1 (fma.f64 z z (neg.f64 z))) (+.f64 1 (pow.f64 z 3))))
(*.f64 (/.f64 y (+.f64 1 (fma.f64 z z (neg.f64 z)))) (+.f64 1 (pow.f64 z 3)))
(/.f64 (fma.f64 y (pow.f64 z 3) y) (-.f64 (fma.f64 z z 1) z))
(/.f64 (-.f64 (*.f64 y y) (*.f64 (*.f64 y z) (*.f64 y z))) (-.f64 y (*.f64 y z)))
(fma.f64 y z y)
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 y z) 3)) (+.f64 (*.f64 y y) (-.f64 (*.f64 (*.f64 y z) (*.f64 y z)) (*.f64 y (*.f64 y z)))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 y y (*.f64 (*.f64 y z) (-.f64 (*.f64 y z) y))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 y y (*.f64 y (*.f64 z (-.f64 (*.f64 y z) y)))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 y z) 3)) (*.f64 y (+.f64 y (*.f64 z (*.f64 y (+.f64 z -1))))))
(/.f64 (+.f64 1 (pow.f64 z 3)) (/.f64 (*.f64 (-.f64 (fma.f64 z z 1) z) (*.f64 y y)) (pow.f64 y 3)))
(pow.f64 (+.f64 y (*.f64 y z)) 1)
(fma.f64 y z y)
(pow.f64 (sqrt.f64 (+.f64 y (*.f64 y z))) 2)
(fma.f64 y z y)
(pow.f64 (cbrt.f64 (+.f64 y (*.f64 y z))) 3)
(fma.f64 y z y)
(pow.f64 (pow.f64 (+.f64 y (*.f64 y z)) 3) 1/3)
(fma.f64 y z y)
(sqrt.f64 (pow.f64 (+.f64 y (*.f64 y z)) 2))
(fma.f64 y z y)
(log.f64 (exp.f64 (+.f64 y (*.f64 y z))))
(fma.f64 y z y)
(cbrt.f64 (pow.f64 (+.f64 y (*.f64 y z)) 3))
(fma.f64 y z y)
(expm1.f64 (log1p.f64 (+.f64 y (*.f64 y z))))
(fma.f64 y z y)
(exp.f64 (+.f64 (log1p.f64 z) (log.f64 y)))
(*.f64 y (exp.f64 (log1p.f64 z)))
(exp.f64 (*.f64 (+.f64 (log1p.f64 z) (log.f64 y)) 1))
(exp.f64 (+.f64 (log1p.f64 z) (log.f64 y)))
(*.f64 y (exp.f64 (log1p.f64 z)))
(log1p.f64 (expm1.f64 (+.f64 y (*.f64 y z))))
(fma.f64 y z y)
(fma.f64 y 1 (*.f64 y z))
(fma.f64 y z y)
(fma.f64 1 y (*.f64 y z))
(fma.f64 y z y)
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 y z))
(fma.f64 y z y)
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 y z))
(fma.f64 y z y)

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 (+.f64 1 z) x)
Compiler

Compiled 14 to 9 computations (35.7% saved)

series1.0ms (0%)

Counts
1 → 12
Calls

6 calls:

TimeVariablePointExpression
0.0ms
z
@0
(*.f64 (+.f64 1 z) x)
0.0ms
x
@0
(*.f64 (+.f64 1 z) x)
0.0ms
x
@inf
(*.f64 (+.f64 1 z) x)
0.0ms
x
@-inf
(*.f64 (+.f64 1 z) x)
0.0ms
z
@-inf
(*.f64 (+.f64 1 z) x)

rewrite77.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
1422×add-sqr-sqrt
1406×*-un-lft-identity
1310×add-cube-cbrt
1294×add-cbrt-cube
1282×add-exp-log
Iterations

Useful iterations: 0 (0.0ms)

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

simplify66.0ms (1.4%)

Algorithm
egg-herbie
Rules
1428×associate--r+
974×associate-/r*
902×+-commutative
806×*-commutative
768×fma-def
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
056408
1139400
2407384
31950384
43527384
55978384
Stop Event
node limit
Counts
32 → 33
Calls
Call 1
Inputs
x
(+.f64 (*.f64 z x) x)
(+.f64 (*.f64 z x) x)
(+.f64 (*.f64 z x) x)
(*.f64 z x)
(+.f64 (*.f64 z x) x)
(+.f64 (*.f64 z x) x)
(+.f64 (*.f64 z x) x)
(*.f64 z x)
(+.f64 (*.f64 z x) x)
(+.f64 (*.f64 z x) x)
(+.f64 (*.f64 z x) x)
(+.f64 x (*.f64 x z))
(+.f64 x (*.f64 z x))
(+.f64 (*.f64 x z) x)
(+.f64 (*.f64 z x) x)
(-.f64 (+.f64 1 (+.f64 x (*.f64 x z))) 1)
(/.f64 (*.f64 x (-.f64 1 (*.f64 z z))) (-.f64 1 z))
(/.f64 (*.f64 x (+.f64 1 (pow.f64 z 3))) (+.f64 1 (-.f64 (*.f64 z z) z)))
(/.f64 (*.f64 (-.f64 1 (*.f64 z z)) x) (-.f64 1 z))
(/.f64 (*.f64 (+.f64 1 (pow.f64 z 3)) x) (+.f64 1 (-.f64 (*.f64 z z) z)))
(pow.f64 (+.f64 x (*.f64 x z)) 1)
(pow.f64 (sqrt.f64 (+.f64 x (*.f64 x z))) 2)
(pow.f64 (cbrt.f64 (+.f64 x (*.f64 x z))) 3)
(pow.f64 (pow.f64 (+.f64 x (*.f64 x z)) 3) 1/3)
(sqrt.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2))
(log.f64 (pow.f64 (exp.f64 x) (+.f64 1 z)))
(cbrt.f64 (pow.f64 (+.f64 x (*.f64 x z)) 3))
(expm1.f64 (log1p.f64 (+.f64 x (*.f64 x z))))
(exp.f64 (+.f64 (log.f64 x) (log1p.f64 z)))
(exp.f64 (*.f64 (+.f64 (log.f64 x) (log1p.f64 z)) 1))
(log1p.f64 (expm1.f64 (+.f64 x (*.f64 x z))))
Outputs
x
(+.f64 (*.f64 z x) x)
(fma.f64 x z x)
(+.f64 (*.f64 z x) x)
(fma.f64 x z x)
(+.f64 (*.f64 z x) x)
(fma.f64 x z x)
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 z x) x)
(fma.f64 x z x)
(+.f64 (*.f64 z x) x)
(fma.f64 x z x)
(+.f64 (*.f64 z x) x)
(fma.f64 x z x)
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 z x) x)
(fma.f64 x z x)
(+.f64 (*.f64 z x) x)
(fma.f64 x z x)
(+.f64 (*.f64 z x) x)
(fma.f64 x z x)
(+.f64 x (*.f64 x z))
(fma.f64 x z x)
(+.f64 x (*.f64 z x))
(fma.f64 x z x)
(+.f64 (*.f64 x z) x)
(fma.f64 x z x)
(+.f64 (*.f64 z x) x)
(fma.f64 x z x)
(-.f64 (+.f64 1 (+.f64 x (*.f64 x z))) 1)
(fma.f64 x z x)
(/.f64 (*.f64 x (-.f64 1 (*.f64 z z))) (-.f64 1 z))
(/.f64 (-.f64 1 (*.f64 z z)) (/.f64 (-.f64 1 z) x))
(*.f64 (/.f64 x (-.f64 1 z)) (-.f64 1 (*.f64 z z)))
(*.f64 x (/.f64 (-.f64 1 (*.f64 z z)) (-.f64 1 z)))
(/.f64 (-.f64 x (*.f64 x (*.f64 z z))) (-.f64 1 z))
(/.f64 (*.f64 x (+.f64 1 (pow.f64 z 3))) (+.f64 1 (-.f64 (*.f64 z z) z)))
(/.f64 x (/.f64 (+.f64 1 (-.f64 (*.f64 z z) z)) (+.f64 1 (pow.f64 z 3))))
(*.f64 (/.f64 x (+.f64 1 (-.f64 (*.f64 z z) z))) (+.f64 1 (pow.f64 z 3)))
(/.f64 (fma.f64 x (pow.f64 z 3) x) (fma.f64 z z (-.f64 1 z)))
(/.f64 (fma.f64 x (pow.f64 z 3) x) (-.f64 (fma.f64 z z 1) z))
(/.f64 (*.f64 (-.f64 1 (*.f64 z z)) x) (-.f64 1 z))
(/.f64 (-.f64 1 (*.f64 z z)) (/.f64 (-.f64 1 z) x))
(*.f64 (/.f64 x (-.f64 1 z)) (-.f64 1 (*.f64 z z)))
(*.f64 x (/.f64 (-.f64 1 (*.f64 z z)) (-.f64 1 z)))
(/.f64 (-.f64 x (*.f64 x (*.f64 z z))) (-.f64 1 z))
(/.f64 (*.f64 (+.f64 1 (pow.f64 z 3)) x) (+.f64 1 (-.f64 (*.f64 z z) z)))
(/.f64 x (/.f64 (+.f64 1 (-.f64 (*.f64 z z) z)) (+.f64 1 (pow.f64 z 3))))
(*.f64 (/.f64 x (+.f64 1 (-.f64 (*.f64 z z) z))) (+.f64 1 (pow.f64 z 3)))
(/.f64 (fma.f64 x (pow.f64 z 3) x) (fma.f64 z z (-.f64 1 z)))
(/.f64 (fma.f64 x (pow.f64 z 3) x) (-.f64 (fma.f64 z z 1) z))
(pow.f64 (+.f64 x (*.f64 x z)) 1)
(fma.f64 x z x)
(pow.f64 (sqrt.f64 (+.f64 x (*.f64 x z))) 2)
(fma.f64 x z x)
(pow.f64 (cbrt.f64 (+.f64 x (*.f64 x z))) 3)
(fma.f64 x z x)
(pow.f64 (pow.f64 (+.f64 x (*.f64 x z)) 3) 1/3)
(fma.f64 x z x)
(sqrt.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2))
(fma.f64 x z x)
(log.f64 (pow.f64 (exp.f64 x) (+.f64 1 z)))
(fma.f64 x z x)
(cbrt.f64 (pow.f64 (+.f64 x (*.f64 x z)) 3))
(fma.f64 x z x)
(expm1.f64 (log1p.f64 (+.f64 x (*.f64 x z))))
(fma.f64 x z x)
(exp.f64 (+.f64 (log.f64 x) (log1p.f64 z)))
(*.f64 x (exp.f64 (log1p.f64 z)))
(exp.f64 (*.f64 (+.f64 (log.f64 x) (log1p.f64 z)) 1))
(exp.f64 (+.f64 (log.f64 x) (log1p.f64 z)))
(*.f64 x (exp.f64 (log1p.f64 z)))
(log1p.f64 (expm1.f64 (+.f64 x (*.f64 x z))))
(fma.f64 x z x)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 14 to 5 computations (64.3% saved)

series1.0ms (0%)

Counts
1 → 24
Calls

9 calls:

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

rewrite55.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
1642×add-sqr-sqrt
1626×*-un-lft-identity
1516×add-cube-cbrt
1496×add-cbrt-cube
158×pow1
Iterations

Useful iterations: 0 (0.0ms)

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

simplify60.0ms (1.3%)

Algorithm
egg-herbie
Rules
1114×fma-def
1022×distribute-lft-out
824×associate-*r*
758×associate-*l*
568×log-prod
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
065625
1151625
2439625
32842625
46040625
Stop Event
node limit
Counts
45 → 30
Calls
Call 1
Inputs
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 z y) (*.f64 z x))
(+.f64 (*.f64 z x) (*.f64 z y))
(+.f64 (*.f64 y z) (*.f64 x z))
(+.f64 (*.f64 x z) (*.f64 y z))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 y x) z))) 1)
(/.f64 (*.f64 z (-.f64 (*.f64 y y) (*.f64 x x))) (-.f64 y x))
(/.f64 (*.f64 z (+.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 y y (*.f64 x (-.f64 x y))))
(/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (-.f64 y x))
(/.f64 (*.f64 (+.f64 (pow.f64 y 3) (pow.f64 x 3)) z) (fma.f64 y y (*.f64 x (-.f64 x y))))
(pow.f64 (*.f64 (+.f64 y x) z) 1)
(pow.f64 (sqrt.f64 (*.f64 (+.f64 y x) z)) 2)
(pow.f64 (cbrt.f64 (*.f64 (+.f64 y x) z)) 3)
(pow.f64 (pow.f64 (*.f64 (+.f64 y x) z) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 (+.f64 y x) z) 2))
(log.f64 (pow.f64 (exp.f64 z) (+.f64 y x)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y x) z))))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 y x) z) 3))
(expm1.f64 (log1p.f64 (*.f64 (+.f64 y x) z)))
(exp.f64 (log.f64 (*.f64 (+.f64 y x) z)))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 y x) z)) 1))
(log1p.f64 (expm1.f64 (*.f64 (+.f64 y x) z)))
Outputs
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(*.f64 y z)
(*.f64 z y)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(*.f64 y z)
(*.f64 z y)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(*.f64 y z)
(*.f64 z y)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z (+.f64 x y))
(+.f64 (*.f64 z y) (*.f64 z x))
(*.f64 z (+.f64 x y))
(+.f64 (*.f64 z x) (*.f64 z y))
(*.f64 z (+.f64 x y))
(+.f64 (*.f64 y z) (*.f64 x z))
(*.f64 z (+.f64 x y))
(+.f64 (*.f64 x z) (*.f64 y z))
(*.f64 z (+.f64 x y))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 y x) z))) 1)
(*.f64 z (+.f64 x y))
(/.f64 (*.f64 z (-.f64 (*.f64 y y) (*.f64 x x))) (-.f64 y x))
(*.f64 z (+.f64 x y))
(/.f64 (*.f64 z (+.f64 (pow.f64 y 3) (pow.f64 x 3))) (fma.f64 y y (*.f64 x (-.f64 x y))))
(/.f64 z (/.f64 (fma.f64 y y (*.f64 x (-.f64 x y))) (+.f64 (pow.f64 y 3) (pow.f64 x 3))))
(*.f64 (/.f64 z (fma.f64 y y (*.f64 x (-.f64 x y)))) (+.f64 (pow.f64 y 3) (pow.f64 x 3)))
(*.f64 z (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 x 3)) (fma.f64 x (-.f64 x y) (*.f64 y y))))
(*.f64 z (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 x 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(/.f64 (*.f64 (-.f64 (*.f64 y y) (*.f64 x x)) z) (-.f64 y x))
(*.f64 z (+.f64 x y))
(/.f64 (*.f64 (+.f64 (pow.f64 y 3) (pow.f64 x 3)) z) (fma.f64 y y (*.f64 x (-.f64 x y))))
(/.f64 z (/.f64 (fma.f64 y y (*.f64 x (-.f64 x y))) (+.f64 (pow.f64 y 3) (pow.f64 x 3))))
(*.f64 (/.f64 z (fma.f64 y y (*.f64 x (-.f64 x y)))) (+.f64 (pow.f64 y 3) (pow.f64 x 3)))
(*.f64 z (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 x 3)) (fma.f64 x (-.f64 x y) (*.f64 y y))))
(*.f64 z (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 x 3)) (fma.f64 x x (*.f64 y (-.f64 y x)))))
(pow.f64 (*.f64 (+.f64 y x) z) 1)
(*.f64 z (+.f64 x y))
(pow.f64 (sqrt.f64 (*.f64 (+.f64 y x) z)) 2)
(*.f64 z (+.f64 x y))
(pow.f64 (cbrt.f64 (*.f64 (+.f64 y x) z)) 3)
(*.f64 z (+.f64 x y))
(pow.f64 (pow.f64 (*.f64 (+.f64 y x) z) 3) 1/3)
(*.f64 z (+.f64 x y))
(sqrt.f64 (pow.f64 (*.f64 (+.f64 y x) z) 2))
(*.f64 z (+.f64 x y))
(log.f64 (pow.f64 (exp.f64 z) (+.f64 y x)))
(*.f64 z (+.f64 x y))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 y x) z))))
(*.f64 z (+.f64 x y))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 y x) z) 3))
(*.f64 z (+.f64 x y))
(expm1.f64 (log1p.f64 (*.f64 (+.f64 y x) z)))
(*.f64 z (+.f64 x y))
(exp.f64 (log.f64 (*.f64 (+.f64 y x) z)))
(*.f64 z (+.f64 x y))
(exp.f64 (*.f64 (log.f64 (*.f64 (+.f64 y x) z)) 1))
(*.f64 z (+.f64 x y))
(log1p.f64 (expm1.f64 (*.f64 (+.f64 y x) z)))
(*.f64 z (+.f64 x y))

eval76.0ms (1.6%)

Compiler

Compiled 6322 to 2065 computations (67.3% saved)

prune58.0ms (1.2%)

Pruning

11 alts after pruning (7 fresh and 4 done)

PrunedKeptTotal
New3016307
Fresh112
Picked011
Done134
Total30311314
Error
0b
Counts
314 → 11
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
42.3b
(+.f64 (*.f64 z y) (*.f64 z x))
30.5b
(+.f64 (*.f64 y z) y)
21.4b
(+.f64 y x)
42.3b
(*.f64 (+.f64 y x) z)
32.8b
(*.f64 (+.f64 1 z) x)
52.3b
(*.f64 z y)
52.5b
(*.f64 z x)
30.5b
(*.f64 y (+.f64 1 z))
41.1b
y
43.2b
x
Compiler

Compiled 124 to 83 computations (33.1% saved)

localize10.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
0.0b
(*.f64 y (+.f64 1 z))
Compiler

Compiled 25 to 15 computations (40% saved)

series2.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
x
@-inf
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
0.0ms
y
@0
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
0.0ms
x
@inf
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
0.0ms
x
@0
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
0.0ms
z
@-inf
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))

rewrite62.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
928×*-commutative
800×unswap-sqr
586×associate-*r/
546×swap-sqr
540×associate-*l/
Iterations

Useful iterations: 1 (0.0ms)

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

simplify75.0ms (1.6%)

Algorithm
egg-herbie
Rules
1546×associate-/r/
1040×+-commutative
888×fma-def
580×associate-+l-
576×*-commutative
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01652674
15032300
219882264
358242260
Stop Event
node limit
Counts
88 → 92
Calls
Call 1
Inputs
(+.f64 y x)
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(*.f64 (+.f64 y x) z)
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(+.f64 y (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z)) x))
(+.f64 y (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z)) x))
(+.f64 y (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z)) x))
(*.f64 y (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 1 z) x)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 1 z) x)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(*.f64 (+.f64 1 z) x)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(*.f64 y (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(*.f64 y (+.f64 1 z))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (+.f64 (*.f64 z y) (+.f64 x (*.f64 x z))))
(+.f64 (+.f64 y (*.f64 z y)) (+.f64 x (*.f64 x z)))
(+.f64 (*.f64 z y) (+.f64 y (+.f64 x (*.f64 x z))))
(+.f64 (+.f64 x (*.f64 x z)) (+.f64 y (*.f64 z y)))
(+.f64 (+.f64 y (+.f64 x (*.f64 x z))) (*.f64 z y))
(+.f64 (+.f64 (+.f64 x (*.f64 x z)) (*.f64 z y)) y)
(+.f64 (*.f64 (+.f64 y (+.f64 x (*.f64 x z))) 1) (*.f64 z y))
(-.f64 (exp.f64 (log1p.f64 (+.f64 y (*.f64 z y)))) (-.f64 1 (+.f64 x (*.f64 x z))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 1 z) (+.f64 x y)))) 1)
(-.f64 (+.f64 (+.f64 x (*.f64 x z)) (exp.f64 (log1p.f64 (+.f64 y (*.f64 z y))))) 1)
(*.f64 1 (*.f64 (+.f64 1 z) (+.f64 x y)))
(*.f64 (+.f64 1 z) (+.f64 x y))
(*.f64 (*.f64 (+.f64 1 z) (+.f64 x y)) 1)
(*.f64 (sqrt.f64 (+.f64 1 z)) (+.f64 (*.f64 y (sqrt.f64 (+.f64 1 z))) (*.f64 x (sqrt.f64 (+.f64 1 z)))))
(*.f64 (sqrt.f64 (+.f64 1 z)) (+.f64 (*.f64 x (sqrt.f64 (+.f64 1 z))) (*.f64 y (sqrt.f64 (+.f64 1 z)))))
(*.f64 (sqrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) (sqrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 1 z)) 2) (+.f64 (*.f64 y (cbrt.f64 (+.f64 1 z))) (*.f64 x (cbrt.f64 (+.f64 1 z)))))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 1 z)) 2) (+.f64 (*.f64 x (cbrt.f64 (+.f64 1 z))) (*.f64 y (cbrt.f64 (+.f64 1 z)))))
(*.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) (pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 2) (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))
(*.f64 (+.f64 x y) (+.f64 1 z))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y)))) (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y)))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y)))) (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y)))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 2))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))) (*.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 3/2) (pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 3/2))
(*.f64 (pow.f64 (pow.f64 (*.f64 (+.f64 1 z) (+.f64 x y)) 3) 1/6) (pow.f64 (pow.f64 (*.f64 (+.f64 1 z) (+.f64 x y)) 3) 1/6))
(/.f64 (+.f64 x y) (/.f64 1 (+.f64 1 z)))
(/.f64 (-.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (pow.f64 (+.f64 y (*.f64 z y)) 2)) (*.f64 (+.f64 1 z) (-.f64 x y)))
(/.f64 (+.f64 (pow.f64 (+.f64 y (*.f64 z y)) 3) (pow.f64 (+.f64 x (*.f64 x z)) 3)) (+.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (*.f64 (+.f64 y (*.f64 z y)) (-.f64 (+.f64 y (*.f64 z y)) (+.f64 x (*.f64 x z))))))
(/.f64 (*.f64 1 (-.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (pow.f64 (+.f64 y (*.f64 z y)) 2))) (*.f64 (+.f64 1 z) (-.f64 x y)))
(/.f64 (*.f64 1 (+.f64 (pow.f64 (+.f64 y (*.f64 z y)) 3) (pow.f64 (+.f64 x (*.f64 x z)) 3))) (+.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (*.f64 (+.f64 y (*.f64 z y)) (-.f64 (+.f64 y (*.f64 z y)) (+.f64 x (*.f64 x z))))))
(/.f64 (*.f64 (-.f64 1 (*.f64 z z)) (+.f64 x y)) (-.f64 1 z))
(/.f64 (*.f64 (+.f64 1 (pow.f64 z 3)) (+.f64 x y)) (+.f64 1 (-.f64 (*.f64 z z) z)))
(/.f64 (*.f64 (-.f64 (*.f64 z z) 1) (+.f64 x y)) (-.f64 z 1))
(/.f64 (*.f64 (neg.f64 (-.f64 1 (*.f64 z z))) (+.f64 x y)) (neg.f64 (-.f64 1 z)))
(/.f64 (*.f64 (+.f64 -1 (neg.f64 (pow.f64 z 3))) (+.f64 x y)) (+.f64 -1 (neg.f64 (-.f64 (*.f64 z z) z))))
(/.f64 (*.f64 (-.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (pow.f64 (+.f64 y (*.f64 z y)) 2)) 1) (*.f64 (+.f64 1 z) (-.f64 x y)))
(/.f64 (*.f64 (+.f64 (pow.f64 (+.f64 y (*.f64 z y)) 3) (pow.f64 (+.f64 x (*.f64 x z)) 3)) 1) (+.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (*.f64 (+.f64 y (*.f64 z y)) (-.f64 (+.f64 y (*.f64 z y)) (+.f64 x (*.f64 x z))))))
(/.f64 (-.f64 (pow.f64 (+.f64 y (*.f64 z y)) 2) (pow.f64 (+.f64 x (*.f64 x z)) 2)) (-.f64 (+.f64 y (*.f64 z y)) (+.f64 x (*.f64 x z))))
(/.f64 (-.f64 (*.f64 (+.f64 y (+.f64 x (*.f64 x z))) (+.f64 y (+.f64 x (*.f64 x z)))) (pow.f64 (*.f64 z y) 2)) (-.f64 (+.f64 y (+.f64 x (*.f64 x z))) (*.f64 z y)))
(pow.f64 (*.f64 (+.f64 1 z) (+.f64 x y)) 1)
(pow.f64 (sqrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 2)
(pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 3)
(pow.f64 (pow.f64 (*.f64 (+.f64 1 z) (+.f64 x y)) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 (+.f64 1 z) (+.f64 x y)) 2))
(log.f64 (exp.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 1 z) (+.f64 x y)))))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 1 z) (+.f64 x y)) 3))
(expm1.f64 (log1p.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))
(exp.f64 (log.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))
(log1p.f64 (expm1.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))
Outputs
(+.f64 y x)
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 y x))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 y (+.f64 (*.f64 (+.f64 y x) z) x))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(*.f64 z (+.f64 y x))
(+.f64 y (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z)) x))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 y (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z)) x))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 y (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z)) x))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 y (+.f64 1 z))
(+.f64 y (*.f64 y z))
(fma.f64 y z y)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (+.f64 1 z) x)
(*.f64 x (+.f64 z 1))
(fma.f64 x z x)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (+.f64 1 z) x)
(*.f64 x (+.f64 z 1))
(fma.f64 x z x)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (+.f64 1 z) x)
(*.f64 x (+.f64 z 1))
(fma.f64 x z x)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 y (+.f64 1 z))
(+.f64 y (*.f64 y z))
(fma.f64 y z y)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 y (+.f64 1 z))
(+.f64 y (*.f64 y z))
(fma.f64 y z y)
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 y (+.f64 (*.f64 z y) (+.f64 x (*.f64 x z))))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (+.f64 y (*.f64 z y)) (+.f64 x (*.f64 x z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (*.f64 z y) (+.f64 y (+.f64 x (*.f64 x z))))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (+.f64 x (*.f64 x z)) (+.f64 y (*.f64 z y)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (+.f64 y (+.f64 x (*.f64 x z))) (*.f64 z y))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (+.f64 (+.f64 x (*.f64 x z)) (*.f64 z y)) y)
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(+.f64 (*.f64 (+.f64 y (+.f64 x (*.f64 x z))) 1) (*.f64 z y))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(-.f64 (exp.f64 (log1p.f64 (+.f64 y (*.f64 z y)))) (-.f64 1 (+.f64 x (*.f64 x z))))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(-.f64 (exp.f64 (log1p.f64 (*.f64 (+.f64 1 z) (+.f64 x y)))) 1)
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(-.f64 (+.f64 (+.f64 x (*.f64 x z)) (exp.f64 (log1p.f64 (+.f64 y (*.f64 z y))))) 1)
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 1 (*.f64 (+.f64 1 z) (+.f64 x y)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (+.f64 1 z) (+.f64 x y))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (*.f64 (+.f64 1 z) (+.f64 x y)) 1)
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (sqrt.f64 (+.f64 1 z)) (+.f64 (*.f64 y (sqrt.f64 (+.f64 1 z))) (*.f64 x (sqrt.f64 (+.f64 1 z)))))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (sqrt.f64 (+.f64 1 z)) (+.f64 (*.f64 x (sqrt.f64 (+.f64 1 z))) (*.f64 y (sqrt.f64 (+.f64 1 z)))))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (sqrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) (sqrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 1 z)) 2) (+.f64 (*.f64 y (cbrt.f64 (+.f64 1 z))) (*.f64 x (cbrt.f64 (+.f64 1 z)))))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 1 z)) 2) (+.f64 (*.f64 x (cbrt.f64 (+.f64 1 z))) (*.f64 y (cbrt.f64 (+.f64 1 z)))))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) (pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 2))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 2) (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (+.f64 x y) (+.f64 1 z))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y)))) (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y)))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y)))) (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y)))))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 2))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 z 1) (+.f64 y x)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 z 1) (+.f64 y x))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 z 1) (+.f64 y x)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 z 1) (+.f64 y x))) 2))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 z 1) (+.f64 y x))) 2) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 z 1) (+.f64 y x)))) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 z 1) (+.f64 y x))))))
(*.f64 (*.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))) (*.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) (sqrt.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))) (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 2)) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))))
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 z 1) (+.f64 y x)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 z 1) (+.f64 y x))) 2))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 z 1) (+.f64 y x)))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 z 1) (+.f64 y x))) 2))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 z 1) (+.f64 y x))) 2) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 z 1) (+.f64 y x)))) (cbrt.f64 (sqrt.f64 (*.f64 (+.f64 z 1) (+.f64 y x))))))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 3/2) (pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 3/2))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(*.f64 (pow.f64 (pow.f64 (*.f64 (+.f64 1 z) (+.f64 x y)) 3) 1/6) (pow.f64 (pow.f64 (*.f64 (+.f64 1 z) (+.f64 x y)) 3) 1/6))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(/.f64 (+.f64 x y) (/.f64 1 (+.f64 1 z)))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(/.f64 (-.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (pow.f64 (+.f64 y (*.f64 z y)) 2)) (*.f64 (+.f64 1 z) (-.f64 x y)))
(/.f64 (-.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (pow.f64 (+.f64 y (*.f64 y z)) 2)) (*.f64 (+.f64 z 1) (-.f64 x y)))
(/.f64 (-.f64 (pow.f64 (fma.f64 x z x) 2) (pow.f64 (fma.f64 y z y) 2)) (*.f64 (+.f64 z 1) (-.f64 x y)))
(/.f64 (+.f64 (pow.f64 (+.f64 y (*.f64 z y)) 3) (pow.f64 (+.f64 x (*.f64 x z)) 3)) (+.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (*.f64 (+.f64 y (*.f64 z y)) (-.f64 (+.f64 y (*.f64 z y)) (+.f64 x (*.f64 x z))))))
(/.f64 (+.f64 (pow.f64 (+.f64 y (*.f64 y z)) 3) (pow.f64 (+.f64 x (*.f64 x z)) 3)) (+.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (*.f64 (+.f64 y (*.f64 y z)) (-.f64 (+.f64 y (*.f64 y z)) (+.f64 x (*.f64 x z))))))
(/.f64 (+.f64 (pow.f64 (fma.f64 y z y) 3) (pow.f64 (fma.f64 x z x) 3)) (fma.f64 (fma.f64 y z y) (-.f64 (fma.f64 y z y) (fma.f64 x z x)) (pow.f64 (fma.f64 x z x) 2)))
(/.f64 (+.f64 (pow.f64 (fma.f64 y z y) 3) (pow.f64 (fma.f64 x z x) 3)) (fma.f64 (fma.f64 y z y) (*.f64 (+.f64 z 1) (-.f64 y x)) (pow.f64 (fma.f64 x z x) 2)))
(/.f64 (*.f64 1 (-.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (pow.f64 (+.f64 y (*.f64 z y)) 2))) (*.f64 (+.f64 1 z) (-.f64 x y)))
(/.f64 (-.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (pow.f64 (+.f64 y (*.f64 y z)) 2)) (*.f64 (+.f64 z 1) (-.f64 x y)))
(/.f64 (-.f64 (pow.f64 (fma.f64 x z x) 2) (pow.f64 (fma.f64 y z y) 2)) (*.f64 (+.f64 z 1) (-.f64 x y)))
(/.f64 (*.f64 1 (+.f64 (pow.f64 (+.f64 y (*.f64 z y)) 3) (pow.f64 (+.f64 x (*.f64 x z)) 3))) (+.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (*.f64 (+.f64 y (*.f64 z y)) (-.f64 (+.f64 y (*.f64 z y)) (+.f64 x (*.f64 x z))))))
(/.f64 (+.f64 (pow.f64 (+.f64 y (*.f64 y z)) 3) (pow.f64 (+.f64 x (*.f64 x z)) 3)) (+.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (*.f64 (+.f64 y (*.f64 y z)) (-.f64 (+.f64 y (*.f64 y z)) (+.f64 x (*.f64 x z))))))
(/.f64 (+.f64 (pow.f64 (fma.f64 y z y) 3) (pow.f64 (fma.f64 x z x) 3)) (fma.f64 (fma.f64 y z y) (-.f64 (fma.f64 y z y) (fma.f64 x z x)) (pow.f64 (fma.f64 x z x) 2)))
(/.f64 (+.f64 (pow.f64 (fma.f64 y z y) 3) (pow.f64 (fma.f64 x z x) 3)) (fma.f64 (fma.f64 y z y) (*.f64 (+.f64 z 1) (-.f64 y x)) (pow.f64 (fma.f64 x z x) 2)))
(/.f64 (*.f64 (-.f64 1 (*.f64 z z)) (+.f64 x y)) (-.f64 1 z))
(/.f64 (-.f64 1 (*.f64 z z)) (/.f64 (-.f64 1 z) (+.f64 y x)))
(*.f64 (/.f64 (-.f64 1 (*.f64 z z)) (-.f64 1 z)) (+.f64 y x))
(*.f64 (+.f64 y x) (/.f64 (fma.f64 z z -1) (+.f64 z -1)))
(*.f64 (+.f64 y x) (/.f64 (fma.f64 z z -1) (-.f64 z 1)))
(/.f64 (*.f64 (+.f64 1 (pow.f64 z 3)) (+.f64 x y)) (+.f64 1 (-.f64 (*.f64 z z) z)))
(/.f64 (+.f64 1 (pow.f64 z 3)) (/.f64 (+.f64 1 (-.f64 (*.f64 z z) z)) (+.f64 y x)))
(*.f64 (/.f64 (+.f64 1 (pow.f64 z 3)) (+.f64 1 (-.f64 (*.f64 z z) z))) (+.f64 y x))
(*.f64 (+.f64 y x) (/.f64 (+.f64 1 (pow.f64 z 3)) (-.f64 (fma.f64 z z 1) z)))
(/.f64 (*.f64 (-.f64 (*.f64 z z) 1) (+.f64 x y)) (-.f64 z 1))
(/.f64 (-.f64 1 (*.f64 z z)) (/.f64 (-.f64 1 z) (+.f64 y x)))
(*.f64 (/.f64 (-.f64 1 (*.f64 z z)) (-.f64 1 z)) (+.f64 y x))
(*.f64 (+.f64 y x) (/.f64 (fma.f64 z z -1) (+.f64 z -1)))
(*.f64 (+.f64 y x) (/.f64 (fma.f64 z z -1) (-.f64 z 1)))
(/.f64 (*.f64 (neg.f64 (-.f64 1 (*.f64 z z))) (+.f64 x y)) (neg.f64 (-.f64 1 z)))
(/.f64 (-.f64 1 (*.f64 z z)) (/.f64 (-.f64 1 z) (+.f64 y x)))
(*.f64 (/.f64 (-.f64 1 (*.f64 z z)) (-.f64 1 z)) (+.f64 y x))
(*.f64 (+.f64 y x) (/.f64 (fma.f64 z z -1) (+.f64 z -1)))
(*.f64 (+.f64 y x) (/.f64 (fma.f64 z z -1) (-.f64 z 1)))
(/.f64 (*.f64 (+.f64 -1 (neg.f64 (pow.f64 z 3))) (+.f64 x y)) (+.f64 -1 (neg.f64 (-.f64 (*.f64 z z) z))))
(/.f64 (-.f64 -1 (pow.f64 z 3)) (/.f64 (-.f64 -1 (-.f64 (*.f64 z z) z)) (+.f64 y x)))
(/.f64 (+.f64 y x) (/.f64 (+.f64 (-.f64 -1 (*.f64 z z)) z) (-.f64 -1 (pow.f64 z 3))))
(/.f64 (+.f64 y x) (/.f64 (+.f64 z (-.f64 -1 (*.f64 z z))) (-.f64 -1 (pow.f64 z 3))))
(*.f64 (/.f64 (+.f64 y x) (-.f64 z (fma.f64 z z 1))) (-.f64 -1 (pow.f64 z 3)))
(/.f64 (*.f64 (-.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (pow.f64 (+.f64 y (*.f64 z y)) 2)) 1) (*.f64 (+.f64 1 z) (-.f64 x y)))
(/.f64 (-.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (pow.f64 (+.f64 y (*.f64 y z)) 2)) (*.f64 (+.f64 z 1) (-.f64 x y)))
(/.f64 (-.f64 (pow.f64 (fma.f64 x z x) 2) (pow.f64 (fma.f64 y z y) 2)) (*.f64 (+.f64 z 1) (-.f64 x y)))
(/.f64 (*.f64 (+.f64 (pow.f64 (+.f64 y (*.f64 z y)) 3) (pow.f64 (+.f64 x (*.f64 x z)) 3)) 1) (+.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (*.f64 (+.f64 y (*.f64 z y)) (-.f64 (+.f64 y (*.f64 z y)) (+.f64 x (*.f64 x z))))))
(/.f64 (+.f64 (pow.f64 (+.f64 y (*.f64 y z)) 3) (pow.f64 (+.f64 x (*.f64 x z)) 3)) (+.f64 (pow.f64 (+.f64 x (*.f64 x z)) 2) (*.f64 (+.f64 y (*.f64 y z)) (-.f64 (+.f64 y (*.f64 y z)) (+.f64 x (*.f64 x z))))))
(/.f64 (+.f64 (pow.f64 (fma.f64 y z y) 3) (pow.f64 (fma.f64 x z x) 3)) (fma.f64 (fma.f64 y z y) (-.f64 (fma.f64 y z y) (fma.f64 x z x)) (pow.f64 (fma.f64 x z x) 2)))
(/.f64 (+.f64 (pow.f64 (fma.f64 y z y) 3) (pow.f64 (fma.f64 x z x) 3)) (fma.f64 (fma.f64 y z y) (*.f64 (+.f64 z 1) (-.f64 y x)) (pow.f64 (fma.f64 x z x) 2)))
(/.f64 (-.f64 (pow.f64 (+.f64 y (*.f64 z y)) 2) (pow.f64 (+.f64 x (*.f64 x z)) 2)) (-.f64 (+.f64 y (*.f64 z y)) (+.f64 x (*.f64 x z))))
(/.f64 (-.f64 (pow.f64 (+.f64 y (*.f64 y z)) 2) (pow.f64 (+.f64 x (*.f64 x z)) 2)) (-.f64 (+.f64 y (*.f64 y z)) (+.f64 x (*.f64 x z))))
(/.f64 (-.f64 (pow.f64 (fma.f64 y z y) 2) (pow.f64 (fma.f64 x z x) 2)) (-.f64 (fma.f64 y z y) (fma.f64 x z x)))
(/.f64 (-.f64 (pow.f64 (fma.f64 y z y) 2) (pow.f64 (fma.f64 x z x) 2)) (*.f64 (+.f64 z 1) (-.f64 y x)))
(/.f64 (-.f64 (*.f64 (+.f64 y (+.f64 x (*.f64 x z))) (+.f64 y (+.f64 x (*.f64 x z)))) (pow.f64 (*.f64 z y) 2)) (-.f64 (+.f64 y (+.f64 x (*.f64 x z))) (*.f64 z y)))
(/.f64 (-.f64 (*.f64 (+.f64 y (+.f64 x (*.f64 x z))) (+.f64 y (+.f64 x (*.f64 x z)))) (pow.f64 (*.f64 y z) 2)) (-.f64 (+.f64 y (+.f64 x (*.f64 x z))) (*.f64 y z)))
(/.f64 (*.f64 (*.f64 (+.f64 z 1) (+.f64 y x)) (+.f64 y (-.f64 (fma.f64 x z x) (*.f64 y z)))) (+.f64 y (-.f64 (fma.f64 x z x) (*.f64 y z))))
(/.f64 (*.f64 (+.f64 z 1) (+.f64 y x)) (/.f64 (+.f64 y (+.f64 x (*.f64 z (-.f64 x y)))) (+.f64 y (+.f64 x (*.f64 z (-.f64 x y))))))
(*.f64 (/.f64 (*.f64 (+.f64 z 1) (+.f64 y x)) (-.f64 y (-.f64 (*.f64 z (-.f64 y x)) x))) (-.f64 y (-.f64 (*.f64 z (-.f64 y x)) x)))
(pow.f64 (*.f64 (+.f64 1 z) (+.f64 x y)) 1)
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(pow.f64 (sqrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 2)
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(pow.f64 (cbrt.f64 (*.f64 (+.f64 1 z) (+.f64 x y))) 3)
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(pow.f64 (pow.f64 (*.f64 (+.f64 1 z) (+.f64 x y)) 3) 1/3)
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(sqrt.f64 (pow.f64 (*.f64 (+.f64 1 z) (+.f64 x y)) 2))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(log.f64 (exp.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 (+.f64 1 z) (+.f64 x y)))))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(cbrt.f64 (pow.f64 (*.f64 (+.f64 1 z) (+.f64 x y)) 3))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(expm1.f64 (log1p.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(exp.f64 (log.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))
(log1p.f64 (expm1.f64 (*.f64 (+.f64 1 z) (+.f64 x y))))
(+.f64 y (fma.f64 (+.f64 y x) z x))
(*.f64 (+.f64 z 1) (+.f64 y x))

localize3.0ms (0.1%)

Compiler

Compiled 8 to 4 computations (50% saved)

localize3.0ms (0.1%)

Compiler

Compiled 8 to 4 computations (50% saved)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 y z) y)
Compiler

Compiled 13 to 5 computations (61.5% saved)

series2.0ms (0%)

Counts
1 → 15
Calls

6 calls:

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

rewrite75.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
1466×add-sqr-sqrt
1450×*-un-lft-identity
1354×add-cube-cbrt
1340×add-cbrt-cube
1328×add-exp-log
Iterations

Useful iterations: 0 (0.0ms)

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

simplify65.0ms (1.4%)

Algorithm
egg-herbie
Rules
1374×associate-*r*
1238×associate-*l*
744×associate-+r+
734×distribute-lft-out
628×associate-*r/
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0981158
1240948
2895948
35125902
Stop Event
node limit
Counts
54 → 47
Calls
Call 1
Inputs
(*.f64 y (+.f64 1 z))
(*.f64 y (+.f64 1 z))
(*.f64 y (+.f64 1 z))
(*.f64 y (+.f64 1 z))
(*.f64 y (+.f64 1 z))
(*.f64 y (+.f64 1 z))
(*.f64 y (+.f64 1 z))
(*.f64 y (+.f64 1 z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 z) 1)))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 z) 1)))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 z) 1)))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 z) 1)))
y
(*.f64 y z)
(*.f64 y z)
(-.f64 (+.f64 1 (fma.f64 y z y)) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 y z) 2) (-.f64 (*.f64 y z) y)) (/.f64 (*.f64 y y) (-.f64 (*.f64 y z) y)))
(*.f64 y (+.f64 1 z))
(*.f64 y (+.f64 z 1))
(*.f64 (fma.f64 y z y) 1)
(*.f64 1 (fma.f64 y z y))
(*.f64 (sqrt.f64 (fma.f64 y z y)) (sqrt.f64 (fma.f64 y z y)))
(*.f64 (cbrt.f64 (fma.f64 y z y)) (pow.f64 (cbrt.f64 (fma.f64 y z y)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 y z y)) 2) (cbrt.f64 (fma.f64 y z y)))
(*.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y y)) (/.f64 1 (-.f64 (*.f64 y z) y)))
(*.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y (-.f64 y (*.f64 y z))))))
(*.f64 (+.f64 z 1) y)
(/.f64 1 (/.f64 (-.f64 (*.f64 y z) y) (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y y))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y (-.f64 y (*.f64 y z)))) (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3))))
(/.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y y)) (-.f64 (*.f64 y z) y))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y (-.f64 y (*.f64 y z)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (+.f64 (*.f64 y y) (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y (*.f64 y z)))))
(/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 y z) 2)) (-.f64 y (*.f64 y z)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y y))) (neg.f64 (-.f64 (*.f64 y z) y)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y (-.f64 y (*.f64 y z))))))
(pow.f64 (fma.f64 y z y) 1)
(pow.f64 (sqrt.f64 (fma.f64 y z y)) 2)
(pow.f64 (cbrt.f64 (fma.f64 y z y)) 3)
(pow.f64 (pow.f64 (fma.f64 y z y) 3) 1/3)
(sqrt.f64 (pow.f64 (fma.f64 y z y) 2))
(log.f64 (exp.f64 (fma.f64 y z y)))
(cbrt.f64 (pow.f64 (fma.f64 y z y) 3))
(expm1.f64 (log1p.f64 (fma.f64 y z y)))
(exp.f64 (log.f64 (fma.f64 y z y)))
(exp.f64 (*.f64 (log.f64 (fma.f64 y z y)) 1))
(log1p.f64 (expm1.f64 (fma.f64 y z y)))
(fma.f64 y z y)
(fma.f64 z y y)
(fma.f64 1 y (*.f64 y z))
(fma.f64 1 (*.f64 y z) y)
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 y z))
(fma.f64 (sqrt.f64 (*.f64 y z)) (sqrt.f64 (*.f64 y z)) y)
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 y z))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (cbrt.f64 (*.f64 y z)) y)
Outputs
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 z) 1)))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 z) 1)))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 z) 1)))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 z) 1)))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
y
(*.f64 y z)
(*.f64 y z)
(-.f64 (+.f64 1 (fma.f64 y z y)) 1)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(-.f64 (/.f64 (pow.f64 (*.f64 y z) 2) (-.f64 (*.f64 y z) y)) (/.f64 (*.f64 y y) (-.f64 (*.f64 y z) y)))
(/.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y y)) (-.f64 (*.f64 y z) y))
(*.f64 (/.f64 1 (+.f64 z -1)) (*.f64 y (+.f64 -1 (*.f64 z z))))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 y (+.f64 z 1))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 (fma.f64 y z y) 1)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 1 (fma.f64 y z y))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 (sqrt.f64 (fma.f64 y z y)) (sqrt.f64 (fma.f64 y z y)))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 (cbrt.f64 (fma.f64 y z y)) (pow.f64 (cbrt.f64 (fma.f64 y z y)) 2))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 y z y)) 2) (cbrt.f64 (fma.f64 y z y)))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(*.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y y)) (/.f64 1 (-.f64 (*.f64 y z) y)))
(/.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y y)) (-.f64 (*.f64 y z) y))
(*.f64 (/.f64 1 (+.f64 z -1)) (*.f64 y (+.f64 -1 (*.f64 z z))))
(*.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y (-.f64 y (*.f64 y z))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) 1) (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y (-.f64 y (*.f64 y z)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (fma.f64 y (-.f64 y (*.f64 y z)) (pow.f64 (*.f64 y z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (fma.f64 (*.f64 y z) (-.f64 (*.f64 y z) y) (*.f64 y y)))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (*.f64 y (+.f64 y (*.f64 (*.f64 y z) (+.f64 z -1)))))
(*.f64 (+.f64 z 1) y)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(/.f64 1 (/.f64 (-.f64 (*.f64 y z) y) (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y y))))
(/.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y y)) (-.f64 (*.f64 y z) y))
(*.f64 (/.f64 1 (+.f64 z -1)) (*.f64 y (+.f64 -1 (*.f64 z z))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y (-.f64 y (*.f64 y z)))) (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) 1) (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y (-.f64 y (*.f64 y z)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (fma.f64 y (-.f64 y (*.f64 y z)) (pow.f64 (*.f64 y z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (fma.f64 (*.f64 y z) (-.f64 (*.f64 y z) y) (*.f64 y y)))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (*.f64 y (+.f64 y (*.f64 (*.f64 y z) (+.f64 z -1)))))
(/.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y y)) (-.f64 (*.f64 y z) y))
(*.f64 (/.f64 1 (+.f64 z -1)) (*.f64 y (+.f64 -1 (*.f64 z z))))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y (-.f64 y (*.f64 y z)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) 1) (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y (-.f64 y (*.f64 y z)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (fma.f64 y (-.f64 y (*.f64 y z)) (pow.f64 (*.f64 y z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (fma.f64 (*.f64 y z) (-.f64 (*.f64 y z) y) (*.f64 y y)))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (*.f64 y (+.f64 y (*.f64 (*.f64 y z) (+.f64 z -1)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (+.f64 (*.f64 y y) (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y (*.f64 y z)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) 1) (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y (-.f64 y (*.f64 y z)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (fma.f64 y (-.f64 y (*.f64 y z)) (pow.f64 (*.f64 y z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (fma.f64 (*.f64 y z) (-.f64 (*.f64 y z) y) (*.f64 y y)))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (*.f64 y (+.f64 y (*.f64 (*.f64 y z) (+.f64 z -1)))))
(/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 y z) 2)) (-.f64 y (*.f64 y z)))
(/.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y y)) (-.f64 (*.f64 y z) y))
(*.f64 (/.f64 1 (+.f64 z -1)) (*.f64 y (+.f64 -1 (*.f64 z z))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y y))) (neg.f64 (-.f64 (*.f64 y z) y)))
(/.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y y)) (-.f64 (*.f64 y z) y))
(*.f64 (/.f64 1 (+.f64 z -1)) (*.f64 y (+.f64 -1 (*.f64 z z))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y (-.f64 y (*.f64 y z))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) 1) (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 y (-.f64 y (*.f64 y z)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (fma.f64 y (-.f64 y (*.f64 y z)) (pow.f64 (*.f64 y z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (fma.f64 (*.f64 y z) (-.f64 (*.f64 y z) y) (*.f64 y y)))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 y 3)) (*.f64 y (+.f64 y (*.f64 (*.f64 y z) (+.f64 z -1)))))
(pow.f64 (fma.f64 y z y) 1)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(pow.f64 (sqrt.f64 (fma.f64 y z y)) 2)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(pow.f64 (cbrt.f64 (fma.f64 y z y)) 3)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(pow.f64 (pow.f64 (fma.f64 y z y) 3) 1/3)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(sqrt.f64 (pow.f64 (fma.f64 y z y) 2))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(log.f64 (exp.f64 (fma.f64 y z y)))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(cbrt.f64 (pow.f64 (fma.f64 y z y) 3))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(expm1.f64 (log1p.f64 (fma.f64 y z y)))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(exp.f64 (log.f64 (fma.f64 y z y)))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(exp.f64 (*.f64 (log.f64 (fma.f64 y z y)) 1))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(log1p.f64 (expm1.f64 (fma.f64 y z y)))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(fma.f64 y z y)
(*.f64 y (+.f64 1 z))
(fma.f64 z y y)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(fma.f64 1 y (*.f64 y z))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(fma.f64 1 (*.f64 y z) y)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 y z))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(fma.f64 (sqrt.f64 (*.f64 y z)) (sqrt.f64 (*.f64 y z)) y)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 y z))
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y z)) 2) (cbrt.f64 (*.f64 y z)) y)
(*.f64 y (+.f64 1 z))
(fma.f64 y z y)

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 19 to 6 computations (68.4% saved)

series2.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite70.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
1902×add-sqr-sqrt
1886×*-un-lft-identity
1756×add-cube-cbrt
1738×add-cbrt-cube
182×pow1
Iterations

Useful iterations: 0 (0.0ms)

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

simplify86.0ms (1.8%)

Algorithm
egg-herbie
Rules
1374×associate-+r+
1126×associate-+l+
1096×times-frac
558×distribute-lft-in
550×associate-/l*
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01151567
13121517
212571517
360221517
Stop Event
node limit
Counts
79 → 53
Calls
Call 1
Inputs
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(-.f64 (exp.f64 (log1p.f64 (*.f64 z (+.f64 y x)))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 z y) 2) (*.f64 z (-.f64 y x))) (/.f64 (pow.f64 (*.f64 z x) 2) (*.f64 z (-.f64 y x))))
(*.f64 z (+.f64 y x))
(*.f64 (*.f64 z (+.f64 y x)) 1)
(*.f64 1 (*.f64 z (+.f64 y x)))
(*.f64 (sqrt.f64 (*.f64 z (+.f64 y x))) (sqrt.f64 (*.f64 z (+.f64 y x))))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (+.f64 y x)))
(*.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) 2) (cbrt.f64 (*.f64 z (+.f64 y x))))
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (+.f64 y x)))
(*.f64 (+.f64 y x) z)
(*.f64 (-.f64 (pow.f64 (*.f64 z y) 2) (pow.f64 (*.f64 z x) 2)) (/.f64 1 (*.f64 z (-.f64 y x))))
(*.f64 (+.f64 (pow.f64 (*.f64 z y) 3) (pow.f64 (*.f64 z x) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 z y) 2) (*.f64 (*.f64 z x) (-.f64 (*.f64 z x) (*.f64 z y))))))
(/.f64 1 (/.f64 (*.f64 z (-.f64 y x)) (-.f64 (pow.f64 (*.f64 z y) 2) (pow.f64 (*.f64 z x) 2))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 z y) 2) (*.f64 (*.f64 z x) (-.f64 (*.f64 z x) (*.f64 z y)))) (+.f64 (pow.f64 (*.f64 z y) 3) (pow.f64 (*.f64 z x) 3))))
(/.f64 (-.f64 (pow.f64 (*.f64 z y) 2) (pow.f64 (*.f64 z x) 2)) (*.f64 z (-.f64 y x)))
(/.f64 (+.f64 (pow.f64 (*.f64 z y) 3) (pow.f64 (*.f64 z x) 3)) (+.f64 (pow.f64 (*.f64 z y) 2) (*.f64 (*.f64 z x) (-.f64 (*.f64 z x) (*.f64 z y)))))
(/.f64 (+.f64 (pow.f64 (*.f64 z y) 3) (pow.f64 (*.f64 z x) 3)) (+.f64 (pow.f64 (*.f64 z x) 2) (-.f64 (pow.f64 (*.f64 z y) 2) (*.f64 z (*.f64 y (*.f64 z x))))))
(/.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (pow.f64 (*.f64 z y) 2)) (-.f64 (*.f64 z x) (*.f64 z y)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 z y) 2) (pow.f64 (*.f64 z x) 2))) (neg.f64 (*.f64 z (-.f64 y x))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 z y) 3) (pow.f64 (*.f64 z x) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 z y) 2) (*.f64 (*.f64 z x) (-.f64 (*.f64 z x) (*.f64 z y))))))
(pow.f64 (*.f64 z (+.f64 y x)) 1)
(pow.f64 (sqrt.f64 (*.f64 z (+.f64 y x))) 2)
(pow.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) 3)
(pow.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 z (+.f64 y x)) 2))
(log.f64 (pow.f64 (exp.f64 z) (+.f64 y x)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 z (+.f64 y x)))))
(cbrt.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3))
(expm1.f64 (log1p.f64 (*.f64 z (+.f64 y x))))
(exp.f64 (log.f64 (*.f64 z (+.f64 y x))))
(exp.f64 (*.f64 (log.f64 (*.f64 z (+.f64 y x))) 1))
(log1p.f64 (expm1.f64 (*.f64 z (+.f64 y x))))
(fma.f64 z y (*.f64 z x))
(fma.f64 z x (*.f64 z y))
(fma.f64 y z (*.f64 z x))
(fma.f64 x z (*.f64 z y))
(fma.f64 1 (*.f64 z y) (*.f64 z x))
(fma.f64 1 (*.f64 z x) (*.f64 z y))
(fma.f64 (sqrt.f64 (*.f64 z y)) (sqrt.f64 (*.f64 z y)) (*.f64 z x))
(fma.f64 (sqrt.f64 (*.f64 z x)) (sqrt.f64 (*.f64 z x)) (*.f64 z y))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z y)) 2) (cbrt.f64 (*.f64 z y)) (*.f64 z x))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z x)) 2) (cbrt.f64 (*.f64 z x)) (*.f64 z y))
Outputs
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(*.f64 (+.f64 y x) z)
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(*.f64 (+.f64 y x) z)
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(*.f64 (+.f64 y x) z)
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(*.f64 (+.f64 y x) z)
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(-.f64 (exp.f64 (log1p.f64 (*.f64 z (+.f64 y x)))) 1)
(*.f64 (+.f64 y x) z)
(-.f64 (/.f64 (pow.f64 (*.f64 z y) 2) (*.f64 z (-.f64 y x))) (/.f64 (pow.f64 (*.f64 z x) 2) (*.f64 z (-.f64 y x))))
(/.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (pow.f64 (*.f64 x z) 2)) (*.f64 z (-.f64 y x)))
(/.f64 (*.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 z (-.f64 x y)))
(*.f64 z (+.f64 y x))
(*.f64 (+.f64 y x) z)
(*.f64 (*.f64 z (+.f64 y x)) 1)
(*.f64 (+.f64 y x) z)
(*.f64 1 (*.f64 z (+.f64 y x)))
(*.f64 (+.f64 y x) z)
(*.f64 (sqrt.f64 (*.f64 z (+.f64 y x))) (sqrt.f64 (*.f64 z (+.f64 y x))))
(*.f64 (+.f64 y x) z)
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (+.f64 y x)))
(*.f64 (+.f64 y x) z)
(*.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) 2))
(*.f64 (+.f64 y x) z)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) 2) (cbrt.f64 (*.f64 z (+.f64 y x))))
(*.f64 (+.f64 y x) z)
(*.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) (+.f64 y x)))
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (-.f64 (pow.f64 (*.f64 z y) 2) (pow.f64 (*.f64 z x) 2)) (/.f64 1 (*.f64 z (-.f64 y x))))
(/.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (pow.f64 (*.f64 x z) 2)) (*.f64 z (-.f64 y x)))
(/.f64 (*.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 z (-.f64 x y)))
(*.f64 (+.f64 (pow.f64 (*.f64 z y) 3) (pow.f64 (*.f64 z x) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 z y) 2) (*.f64 (*.f64 z x) (-.f64 (*.f64 z x) (*.f64 z y))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 x z) 3)) 1) (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 (*.f64 x z) (*.f64 z (-.f64 x y)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 (*.f64 x z) (*.f64 z (-.f64 x y)) (pow.f64 (*.f64 y z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 x (*.f64 z (*.f64 z (-.f64 x y))) (pow.f64 (*.f64 y z) 2)))
(/.f64 1 (/.f64 (*.f64 z (-.f64 y x)) (-.f64 (pow.f64 (*.f64 z y) 2) (pow.f64 (*.f64 z x) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (pow.f64 (*.f64 x z) 2)) (*.f64 z (-.f64 y x)))
(/.f64 (*.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 z (-.f64 x y)))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 z y) 2) (*.f64 (*.f64 z x) (-.f64 (*.f64 z x) (*.f64 z y)))) (+.f64 (pow.f64 (*.f64 z y) 3) (pow.f64 (*.f64 z x) 3))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 x z) 3)) 1) (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 (*.f64 x z) (*.f64 z (-.f64 x y)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 (*.f64 x z) (*.f64 z (-.f64 x y)) (pow.f64 (*.f64 y z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 x (*.f64 z (*.f64 z (-.f64 x y))) (pow.f64 (*.f64 y z) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 z y) 2) (pow.f64 (*.f64 z x) 2)) (*.f64 z (-.f64 y x)))
(/.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (pow.f64 (*.f64 x z) 2)) (*.f64 z (-.f64 y x)))
(/.f64 (*.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 z (-.f64 x y)))
(/.f64 (+.f64 (pow.f64 (*.f64 z y) 3) (pow.f64 (*.f64 z x) 3)) (+.f64 (pow.f64 (*.f64 z y) 2) (*.f64 (*.f64 z x) (-.f64 (*.f64 z x) (*.f64 z y)))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 x z) 3)) 1) (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 (*.f64 x z) (*.f64 z (-.f64 x y)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 (*.f64 x z) (*.f64 z (-.f64 x y)) (pow.f64 (*.f64 y z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 x (*.f64 z (*.f64 z (-.f64 x y))) (pow.f64 (*.f64 y z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z y) 3) (pow.f64 (*.f64 z x) 3)) (+.f64 (pow.f64 (*.f64 z x) 2) (-.f64 (pow.f64 (*.f64 z y) 2) (*.f64 z (*.f64 y (*.f64 z x))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 x z) 3)) 1) (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 (*.f64 x z) (*.f64 z (-.f64 x y)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 (*.f64 x z) (*.f64 z (-.f64 x y)) (pow.f64 (*.f64 y z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 x (*.f64 z (*.f64 z (-.f64 x y))) (pow.f64 (*.f64 y z) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (pow.f64 (*.f64 z y) 2)) (-.f64 (*.f64 z x) (*.f64 z y)))
(/.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (pow.f64 (*.f64 x z) 2)) (*.f64 z (-.f64 y x)))
(/.f64 (*.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 z (-.f64 x y)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 z y) 2) (pow.f64 (*.f64 z x) 2))) (neg.f64 (*.f64 z (-.f64 y x))))
(/.f64 (-.f64 (pow.f64 (*.f64 y z) 2) (pow.f64 (*.f64 x z) 2)) (*.f64 z (-.f64 y x)))
(/.f64 (*.f64 (*.f64 z z) (-.f64 (*.f64 x x) (*.f64 y y))) (*.f64 z (-.f64 x y)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 z y) 3) (pow.f64 (*.f64 z x) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 z y) 2) (*.f64 (*.f64 z x) (-.f64 (*.f64 z x) (*.f64 z y))))))
(/.f64 (*.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 x z) 3)) 1) (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 (*.f64 x z) (*.f64 z (-.f64 x y)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 (*.f64 x z) (*.f64 z (-.f64 x y)) (pow.f64 (*.f64 y z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 y z) 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 x (*.f64 z (*.f64 z (-.f64 x y))) (pow.f64 (*.f64 y z) 2)))
(pow.f64 (*.f64 z (+.f64 y x)) 1)
(*.f64 (+.f64 y x) z)
(pow.f64 (sqrt.f64 (*.f64 z (+.f64 y x))) 2)
(*.f64 (+.f64 y x) z)
(pow.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) 3)
(*.f64 (+.f64 y x) z)
(pow.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3) 1/3)
(*.f64 (+.f64 y x) z)
(sqrt.f64 (pow.f64 (*.f64 z (+.f64 y x)) 2))
(*.f64 (+.f64 y x) z)
(log.f64 (pow.f64 (exp.f64 z) (+.f64 y x)))
(*.f64 (+.f64 y x) z)
(log.f64 (+.f64 1 (expm1.f64 (*.f64 z (+.f64 y x)))))
(*.f64 (+.f64 y x) z)
(cbrt.f64 (pow.f64 (*.f64 z (+.f64 y x)) 3))
(*.f64 (+.f64 y x) z)
(expm1.f64 (log1p.f64 (*.f64 z (+.f64 y x))))
(*.f64 (+.f64 y x) z)
(exp.f64 (log.f64 (*.f64 z (+.f64 y x))))
(*.f64 (+.f64 y x) z)
(exp.f64 (*.f64 (log.f64 (*.f64 z (+.f64 y x))) 1))
(*.f64 (+.f64 y x) z)
(log1p.f64 (expm1.f64 (*.f64 z (+.f64 y x))))
(*.f64 (+.f64 y x) z)
(fma.f64 z y (*.f64 z x))
(*.f64 (+.f64 y x) z)
(fma.f64 z x (*.f64 z y))
(*.f64 (+.f64 y x) z)
(fma.f64 y z (*.f64 z x))
(*.f64 (+.f64 y x) z)
(fma.f64 x z (*.f64 z y))
(*.f64 (+.f64 y x) z)
(fma.f64 1 (*.f64 z y) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(fma.f64 1 (*.f64 z x) (*.f64 z y))
(*.f64 (+.f64 y x) z)
(fma.f64 (sqrt.f64 (*.f64 z y)) (sqrt.f64 (*.f64 z y)) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(fma.f64 (sqrt.f64 (*.f64 z x)) (sqrt.f64 (*.f64 z x)) (*.f64 z y))
(*.f64 (+.f64 y x) z)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z y)) 2) (cbrt.f64 (*.f64 z y)) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z x)) 2) (cbrt.f64 (*.f64 z x)) (*.f64 z y))
(*.f64 (+.f64 y x) z)

eval90.0ms (1.9%)

Compiler

Compiled 3419 to 1424 computations (58.4% saved)

prune73.0ms (1.5%)

Pruning

11 alts after pruning (3 fresh and 8 done)

PrunedKeptTotal
New2271228
Fresh022
Picked011
Done178
Total22811239
Error
0b
Counts
239 → 11
Alt Table
Click to see full alt table
StatusErrorProgram
42.3b
(fma.f64 z x (*.f64 z y))
42.3b
(+.f64 (*.f64 z y) (*.f64 z x))
30.5b
(+.f64 (*.f64 y z) y)
21.4b
(+.f64 y x)
42.3b
(*.f64 (+.f64 y x) z)
32.8b
(*.f64 (+.f64 1 z) x)
52.3b
(*.f64 z y)
52.5b
(*.f64 z x)
30.5b
(*.f64 y (+.f64 1 z))
41.1b
y
43.2b
x
Compiler

Compiled 77 to 51 computations (33.8% saved)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(fma.f64 z x (*.f64 z y))
Compiler

Compiled 15 to 5 computations (66.7% saved)

series1.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
z
@-inf
(fma.f64 z x (*.f64 z y))
0.0ms
z
@inf
(fma.f64 z x (*.f64 z y))
0.0ms
x
@inf
(fma.f64 z x (*.f64 z y))
0.0ms
x
@-inf
(fma.f64 z x (*.f64 z y))
0.0ms
y
@0
(fma.f64 z x (*.f64 z y))

rewrite54.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
1528×add-sqr-sqrt
1518×*-un-lft-identity
1396×add-cube-cbrt
1374×add-cbrt-cube
1358×add-exp-log
Iterations

Useful iterations: 1 (0.0ms)

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

simplify53.0ms (1.1%)

Algorithm
egg-herbie
Rules
1472×associate-/l*
730×associate-+r+
728×*-commutative
662×associate-+l+
568×associate-/r*
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
068853
1192841
2891833
33152827
Stop Event
node limit
Counts
59 → 37
Calls
Call 1
Inputs
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 z x)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 y z) (*.f64 z x))
(+.f64 (*.f64 z y) (*.f64 z x))
(+.f64 (*.f64 z x) (*.f64 z y))
(+.f64 (*.f64 (*.f64 z x) 1) (*.f64 z y))
(-.f64 (+.f64 1 (*.f64 z (+.f64 x y))) 1)
(*.f64 z (+.f64 x y))
(*.f64 (*.f64 z (+.f64 x y)) 1)
(*.f64 1 (*.f64 z (+.f64 x y)))
(*.f64 (sqrt.f64 (*.f64 z (+.f64 x y))) (sqrt.f64 (*.f64 z (+.f64 x y))))
(*.f64 (cbrt.f64 (*.f64 z (+.f64 x y))) (pow.f64 (cbrt.f64 (*.f64 z (+.f64 x y))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (+.f64 x y))) 2) (cbrt.f64 (*.f64 z (+.f64 x y))))
(/.f64 (-.f64 (*.f64 (*.f64 z x) (*.f64 z x)) (pow.f64 (*.f64 z y) 2)) (-.f64 (*.f64 z x) (*.f64 z y)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 z y) 3)) (+.f64 (*.f64 (*.f64 z x) (*.f64 z x)) (-.f64 (pow.f64 (*.f64 z y) 2) (*.f64 (*.f64 z x) (*.f64 z y)))))
(pow.f64 (*.f64 z (+.f64 x y)) 1)
(pow.f64 (sqrt.f64 (*.f64 z (+.f64 x y))) 2)
(pow.f64 (cbrt.f64 (*.f64 z (+.f64 x y))) 3)
(pow.f64 (pow.f64 (*.f64 z (+.f64 x y)) 3) 1/3)
(sqrt.f64 (pow.f64 (*.f64 z (+.f64 x y)) 2))
(log.f64 (exp.f64 (*.f64 z (+.f64 x y))))
(cbrt.f64 (pow.f64 (*.f64 z (+.f64 x y)) 3))
(expm1.f64 (log1p.f64 (*.f64 z (+.f64 x y))))
(exp.f64 (log.f64 (*.f64 z (+.f64 x y))))
(exp.f64 (*.f64 (log.f64 (*.f64 z (+.f64 x y))) 1))
(log1p.f64 (expm1.f64 (*.f64 z (+.f64 x y))))
Outputs
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 (+.f64 y x) z)
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(*.f64 (+.f64 y x) z)
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(*.f64 (+.f64 y x) z)
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(*.f64 (+.f64 y x) z)
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 x) (*.f64 -1 y)) z))
(*.f64 (+.f64 y x) z)
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(*.f64 y z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 z y) (*.f64 z x))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 z x) (*.f64 z y))
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 (*.f64 z x) 1) (*.f64 z y))
(*.f64 (+.f64 y x) z)
(-.f64 (+.f64 1 (*.f64 z (+.f64 x y))) 1)
(*.f64 (+.f64 y x) z)
(*.f64 z (+.f64 x y))
(*.f64 (+.f64 y x) z)
(*.f64 (*.f64 z (+.f64 x y)) 1)
(*.f64 (+.f64 y x) z)
(*.f64 1 (*.f64 z (+.f64 x y)))
(*.f64 (+.f64 y x) z)
(*.f64 (sqrt.f64 (*.f64 z (+.f64 x y))) (sqrt.f64 (*.f64 z (+.f64 x y))))
(*.f64 (+.f64 y x) z)
(*.f64 (cbrt.f64 (*.f64 z (+.f64 x y))) (pow.f64 (cbrt.f64 (*.f64 z (+.f64 x y))) 2))
(*.f64 (+.f64 y x) z)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (+.f64 x y))) 2) (cbrt.f64 (*.f64 z (+.f64 x y))))
(*.f64 (+.f64 y x) z)
(/.f64 (-.f64 (*.f64 (*.f64 z x) (*.f64 z x)) (pow.f64 (*.f64 z y) 2)) (-.f64 (*.f64 z x) (*.f64 z y)))
(/.f64 (-.f64 (*.f64 z (*.f64 x (*.f64 x z))) (pow.f64 (*.f64 y z) 2)) (*.f64 z (-.f64 x y)))
(/.f64 (*.f64 (*.f64 (+.f64 y x) z) (*.f64 z (-.f64 x y))) (*.f64 z (-.f64 x y)))
(*.f64 (/.f64 (*.f64 (+.f64 y x) z) z) (/.f64 (*.f64 z (-.f64 x y)) (-.f64 x y)))
(*.f64 (/.f64 (+.f64 y x) 1) (/.f64 z (/.f64 (-.f64 x y) (-.f64 x y))))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 z y) 3)) (+.f64 (*.f64 (*.f64 z x) (*.f64 z x)) (-.f64 (pow.f64 (*.f64 z y) 2) (*.f64 (*.f64 z x) (*.f64 z y)))))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 (*.f64 x z) (*.f64 x z) (-.f64 (pow.f64 (*.f64 y z) 2) (*.f64 (*.f64 x z) (*.f64 y z)))))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 (*.f64 y z) 3)) (fma.f64 z (*.f64 x (*.f64 x z)) (*.f64 (*.f64 y z) (-.f64 (*.f64 y z) (*.f64 x z)))))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 (*.f64 y z) 3)) (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 (*.f64 x z) (*.f64 z (-.f64 x y)))))
(*.f64 (/.f64 (pow.f64 z 3) (+.f64 (pow.f64 (*.f64 y z) 2) (*.f64 z (*.f64 x (*.f64 z (-.f64 x y)))))) (+.f64 (pow.f64 x 3) (pow.f64 y 3)))
(pow.f64 (*.f64 z (+.f64 x y)) 1)
(*.f64 (+.f64 y x) z)
(pow.f64 (sqrt.f64 (*.f64 z (+.f64 x y))) 2)
(*.f64 (+.f64 y x) z)
(pow.f64 (cbrt.f64 (*.f64 z (+.f64 x y))) 3)
(*.f64 (+.f64 y x) z)
(pow.f64 (pow.f64 (*.f64 z (+.f64 x y)) 3) 1/3)
(*.f64 (+.f64 y x) z)
(sqrt.f64 (pow.f64 (*.f64 z (+.f64 x y)) 2))
(*.f64 (+.f64 y x) z)
(log.f64 (exp.f64 (*.f64 z (+.f64 x y))))
(*.f64 (+.f64 y x) z)
(cbrt.f64 (pow.f64 (*.f64 z (+.f64 x y)) 3))
(*.f64 (+.f64 y x) z)
(expm1.f64 (log1p.f64 (*.f64 z (+.f64 x y))))
(*.f64 (+.f64 y x) z)
(exp.f64 (log.f64 (*.f64 z (+.f64 x y))))
(*.f64 (+.f64 y x) z)
(exp.f64 (*.f64 (log.f64 (*.f64 z (+.f64 x y))) 1))
(*.f64 (+.f64 y x) z)
(log1p.f64 (expm1.f64 (*.f64 z (+.f64 x y))))
(*.f64 (+.f64 y x) z)

eval7.0ms (0.1%)

Compiler

Compiled 452 to 148 computations (67.3% saved)

prune8.0ms (0.2%)

Pruning

11 alts after pruning (2 fresh and 9 done)

PrunedKeptTotal
New37037
Fresh022
Picked011
Done088
Total371148
Error
0b
Counts
48 → 11
Alt Table
Click to see full alt table
StatusErrorProgram
42.3b
(fma.f64 z x (*.f64 z y))
42.3b
(+.f64 (*.f64 z y) (*.f64 z x))
30.5b
(+.f64 (*.f64 y z) y)
21.4b
(+.f64 y x)
42.3b
(*.f64 (+.f64 y x) z)
32.8b
(*.f64 (+.f64 1 z) x)
52.3b
(*.f64 z y)
52.5b
(*.f64 z x)
30.5b
(*.f64 y (+.f64 1 z))
41.1b
y
43.2b
x
Compiler

Compiled 77 to 51 computations (33.8% saved)

regimes75.0ms (1.6%)

Counts
15 → 1
Calls
Call 1
Inputs
x
y
(*.f64 z x)
(*.f64 z y)
(+.f64 y x)
(*.f64 y (+.f64 1 z))
(*.f64 (+.f64 1 z) x)
(*.f64 (+.f64 y x) z)
(+.f64 (*.f64 y z) y)
(*.f64 (+.f64 x y) (+.f64 z 1))
(+.f64 (*.f64 z y) (*.f64 z x))
(+.f64 (+.f64 y (*.f64 (+.f64 x y) z)) x)
(+.f64 (+.f64 (+.f64 x y) (*.f64 y z)) (*.f64 x z))
(fma.f64 z x (*.f64 z y))
(fma.f64 (+.f64 1 z) x (*.f64 y (+.f64 1 z)))
Outputs
(+.f64 (+.f64 y (*.f64 (+.f64 x y) z)) x)
Calls

6 calls:

35.0ms
x
8.0ms
(*.f64 (+.f64 x y) (+.f64 z 1))
8.0ms
z
7.0ms
(+.f64 x y)
7.0ms
y
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1(*.f64 (+.f64 x y) (+.f64 z 1))
0.0b1(+.f64 x y)
0.0b1(+.f64 z 1)
Compiler

Compiled 118 to 58 computations (50.8% saved)

regimes63.0ms (1.3%)

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

6 calls:

30.0ms
(*.f64 (+.f64 x y) (+.f64 z 1))
8.0ms
y
6.0ms
(+.f64 x y)
6.0ms
z
6.0ms
x
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1(*.f64 (+.f64 x y) (+.f64 z 1))
0.0b1(+.f64 x y)
0.0b1(+.f64 z 1)
Compiler

Compiled 82 to 45 computations (45.1% saved)

regimes116.0ms (2.4%)

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

3 calls:

83.0ms
z
21.0ms
y
10.0ms
x
Results
ErrorSegmentsBranch
9.4b2x
9.0b4y
2.0b3z
Compiler

Compiled 46 to 24 computations (47.8% saved)

bsearch29.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
15.0ms
0.6491923398979391
68534.24813564868
14.0ms
-8.640400670477367
-1.6640968542808528e-7
Results
26.0ms288×body256valid
Compiler

Compiled 304 to 210 computations (30.9% saved)

regimes96.0ms (2%)

Counts
7 → 2
Calls
Call 1
Inputs
x
y
(*.f64 z x)
(*.f64 z y)
(+.f64 y x)
(*.f64 y (+.f64 1 z))
(*.f64 (+.f64 1 z) x)
Outputs
(*.f64 (+.f64 1 z) x)
(*.f64 y (+.f64 1 z))
Calls

3 calls:

51.0ms
z
33.0ms
y
10.0ms
x
Results
ErrorSegmentsBranch
9.4b2x
10.0b2y
10.9b3z
Compiler

Compiled 36 to 21 computations (41.7% saved)

bsearch7.0ms (0.1%)

Algorithm
binary-search
Steps
TimeLeftRight
6.0ms
-4.117365725951555e-124
-2.8923575738535033e-124
Results
6.0ms64×body256valid
Compiler

Compiled 88 to 68 computations (22.7% saved)

regimes159.0ms (3.4%)

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

3 calls:

60.0ms
y
42.0ms
x
21.0ms
z
Results
ErrorSegmentsBranch
13.3b2x
16.1b4y
9.7b5z
Compiler

Compiled 31 to 18 computations (41.9% saved)

bsearch70.0ms (1.5%)

Algorithm
binary-search
Steps
TimeLeftRight
25.0ms
5.1485166130089354e+187
3.3375583015625674e+194
18.0ms
2.0880602044756788e+129
1.6723562169922945e+131
11.0ms
1.2784335258375037e-11
1.3716431935864777e-9
15.0ms
-1.181578555581511e-10
-3.4544221982989887e-19
Results
47.0ms512×body256valid
16.0ms158×body256infinite
Compiler

Compiled 510 to 378 computations (25.9% saved)

regimes69.0ms (1.5%)

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

3 calls:

28.0ms
x
27.0ms
y
12.0ms
z
Results
ErrorSegmentsBranch
20.2b3x
19.5b3y
11.8b3z
Compiler

Compiled 26 to 15 computations (42.3% saved)

bsearch55.0ms (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
15.0ms
0.6491923398979391
68534.24813564868
41.0ms
-8.640400670477367
-1.6640968542808528e-7
Results
26.0ms288×body256valid
Compiler

Compiled 268 to 192 computations (28.4% saved)

regimes99.0ms (2.1%)

Counts
4 → 5
Calls
Call 1
Inputs
x
y
(*.f64 z x)
(*.f64 z y)
Outputs
x
y
x
(*.f64 z y)
y
Calls

3 calls:

51.0ms
y
25.0ms
z
22.0ms
x
Results
ErrorSegmentsBranch
24.7b6x
24.3b5y
26.6b7z
Compiler

Compiled 23 to 14 computations (39.1% saved)

bsearch69.0ms (1.5%)

Algorithm
binary-search
Steps
TimeLeftRight
12.0ms
5.744219917977541e+54
1.3592998757199252e+56
14.0ms
3.3035541406802158e-52
4.821273659214653e-46
32.0ms
6.977535459068565e-60
5.894506253497337e-59
11.0ms
6.54626042281404e-169
6.002545442891624e-168
Results
41.0ms448×body256valid
0.0msbody256infinite
Compiler

Compiled 328 to 252 computations (23.2% saved)

regimes56.0ms (1.2%)

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

3 calls:

24.0ms
z
18.0ms
x
13.0ms
y
Results
ErrorSegmentsBranch
25.9b4x
26.3b4y
26.7b7z
Compiler

Compiled 20 to 13 computations (35% saved)

bsearch40.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
18.0ms
-4.127046080088838e-76
-7.810620480748691e-86
14.0ms
-6.270287553297409e+22
-1.702113289473135e+21
8.0ms
-3.070362096064118e+72
-8.888743994075044e+71
Results
36.0ms352×body256valid
0.0msbody256infinite
Compiler

Compiled 260 to 200 computations (23.1% saved)

regimes46.0ms (1%)

Accuracy

Total -35.9b remaining (-136.5%)

Threshold costs -35.9b (-136.5%)

Counts
2 → 4
Calls
Call 1
Inputs
x
y
Outputs
x
y
x
y
Calls

3 calls:

24.0ms
z
12.0ms
y
9.0ms
x
Results
ErrorSegmentsBranch
27.0b2x
26.3b4y
36.3b5z
Compiler

Compiled 17 to 12 computations (29.4% saved)

bsearch34.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
13.0ms
9.124733932901907e-11
2.134790500441405e-7
10.0ms
6.977535459068565e-60
5.894506253497337e-59
10.0ms
6.54626042281404e-169
6.002545442891624e-168
Results
30.0ms320×body256valid
Compiler

Compiled 216 to 172 computations (20.4% saved)

simplify14.0ms (0.3%)

Algorithm
egg-herbie
Rules
12×*-commutative
+-commutative
if-if-or-not
not-or
1-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
074362
199362
2102362
3105362
4106362
5107362
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(+.f64 (+.f64 y (*.f64 (+.f64 x y) z)) x)
(*.f64 (+.f64 x y) (+.f64 z 1))
(if (<=.f64 z -1) (*.f64 (+.f64 y x) z) (if (<=.f64 z 1) (+.f64 y x) (*.f64 (+.f64 y x) z)))
(if (<=.f64 x -4763410263543689/11908525658859223294760121268437066290850060053501019099651935423375594096449911575776314174894302258147533153997065059263030913083222523904) (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(if (<=.f64 z -8897694032363671/77371252455336267181195264) (*.f64 y (+.f64 1 z)) (if (<=.f64 z 2780529385113647/2417851639229258349412352) (+.f64 y x) (if (<=.f64 z 146000000000000005280653881739018885961123628921569916403073662509774736358490838798633525973566451991558659784337005133361963859968) (*.f64 y (+.f64 1 z)) (if (<=.f64 z 14999999999999999109744362174945402931434968274539538955801723166263433274876584868500301420359925565079730475358653664960630721616341405846315274216049302947949695962233695148350639303557120) (*.f64 z x) (*.f64 z y)))))
(if (<=.f64 z -1) (*.f64 z y) (if (<=.f64 z 53/2) (+.f64 y x) (*.f64 z y)))
(if (<=.f64 y 6373655913801205/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) x (if (<=.f64 y 1764020109474739/226156424291633194186662080095093570025917938800079226639565593765455331328) y (if (<=.f64 y 2442545827273665/12855504354071922204335696738729300820177623950262342682411008) x (if (<=.f64 y 5799999999999999705469727120593594665946953389449412608) (*.f64 z y) y))))
(if (<=.f64 x -950000000000000015267520632146663327308309738903374431086430371279011840) x (if (<=.f64 x -46000000000000004194304) (*.f64 z x) (if (<=.f64 x -5446766941598321/1067993517960455041197510853084776057301352261178326384973520803911109862890320275011481043468288) x y)))
(if (<=.f64 y 6373655913801205/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) x (if (<=.f64 y 565391060729083/28269553036454149273332760011886696253239742350009903329945699220681916416) y (if (<=.f64 y 4593918114535591/4835703278458516698824704) x y)))
x
Outputs
(+.f64 (+.f64 y (*.f64 (+.f64 x y) z)) x)
(+.f64 x (+.f64 y (*.f64 z (+.f64 y x))))
(*.f64 (+.f64 x y) (+.f64 z 1))
(*.f64 (+.f64 y x) (+.f64 z 1))
(if (<=.f64 z -1) (*.f64 (+.f64 y x) z) (if (<=.f64 z 1) (+.f64 y x) (*.f64 (+.f64 y x) z)))
(if (or (<=.f64 z -1) (not (<=.f64 z 1))) (*.f64 z (+.f64 y x)) (+.f64 y x))
(if (<=.f64 x -4763410263543689/11908525658859223294760121268437066290850060053501019099651935423375594096449911575776314174894302258147533153997065059263030913083222523904) (*.f64 (+.f64 1 z) x) (*.f64 y (+.f64 1 z)))
(if (<=.f64 x -4763410263543689/11908525658859223294760121268437066290850060053501019099651935423375594096449911575776314174894302258147533153997065059263030913083222523904) (*.f64 x (+.f64 z 1)) (*.f64 y (+.f64 z 1)))
(if (<=.f64 z -8897694032363671/77371252455336267181195264) (*.f64 y (+.f64 1 z)) (if (<=.f64 z 2780529385113647/2417851639229258349412352) (+.f64 y x) (if (<=.f64 z 146000000000000005280653881739018885961123628921569916403073662509774736358490838798633525973566451991558659784337005133361963859968) (*.f64 y (+.f64 1 z)) (if (<=.f64 z 14999999999999999109744362174945402931434968274539538955801723166263433274876584868500301420359925565079730475358653664960630721616341405846315274216049302947949695962233695148350639303557120) (*.f64 z x) (*.f64 z y)))))
(if (<=.f64 z -8897694032363671/77371252455336267181195264) (*.f64 y (+.f64 z 1)) (if (<=.f64 z 2780529385113647/2417851639229258349412352) (+.f64 y x) (if (<=.f64 z 146000000000000005280653881739018885961123628921569916403073662509774736358490838798633525973566451991558659784337005133361963859968) (*.f64 y (+.f64 z 1)) (if (<=.f64 z 14999999999999999109744362174945402931434968274539538955801723166263433274876584868500301420359925565079730475358653664960630721616341405846315274216049302947949695962233695148350639303557120) (*.f64 x z) (*.f64 y z)))))
(if (<=.f64 z -1) (*.f64 z y) (if (<=.f64 z 53/2) (+.f64 y x) (*.f64 z y)))
(if (<=.f64 z -1) (*.f64 y z) (if (<=.f64 z 53/2) (+.f64 y x) (*.f64 y z)))
(if (<=.f64 y 6373655913801205/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) x (if (<=.f64 y 1764020109474739/226156424291633194186662080095093570025917938800079226639565593765455331328) y (if (<=.f64 y 2442545827273665/12855504354071922204335696738729300820177623950262342682411008) x (if (<=.f64 y 5799999999999999705469727120593594665946953389449412608) (*.f64 z y) y))))
(if (<=.f64 y 6373655913801205/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) x (if (<=.f64 y 1764020109474739/226156424291633194186662080095093570025917938800079226639565593765455331328) y (if (<=.f64 y 2442545827273665/12855504354071922204335696738729300820177623950262342682411008) x (if (<=.f64 y 5799999999999999705469727120593594665946953389449412608) (*.f64 y z) y))))
(if (<=.f64 x -950000000000000015267520632146663327308309738903374431086430371279011840) x (if (<=.f64 x -46000000000000004194304) (*.f64 z x) (if (<=.f64 x -5446766941598321/1067993517960455041197510853084776057301352261178326384973520803911109862890320275011481043468288) x y)))
(if (<=.f64 x -950000000000000015267520632146663327308309738903374431086430371279011840) x (if (<=.f64 x -46000000000000004194304) (*.f64 x z) (if (<=.f64 x -5446766941598321/1067993517960455041197510853084776057301352261178326384973520803911109862890320275011481043468288) x y)))
(if (<=.f64 y 6373655913801205/1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256) x (if (<=.f64 y 565391060729083/28269553036454149273332760011886696253239742350009903329945699220681916416) y (if (<=.f64 y 4593918114535591/4835703278458516698824704) x y)))
x
Compiler

Compiled 187 to 117 computations (37.4% saved)

soundness0.0ms (0%)

end76.0ms (1.6%)

Remove

(sort x y)

Compiler

Compiled 184 to 96 computations (47.8% saved)

Profiling

Loading profile data...