Details

Time bar (total: 19.3s)

analyze1.6s (8.4%)

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
18.8%18.7%81.1%0.1%0%0%0%9
28.1%28.1%71.8%0.1%0%0%0%10
32.8%32.8%67.1%0.1%0%0%0%11
39.8%39.8%60.1%0.1%0%0%0%12
Compiler

Compiled 19 to 10 computations (47.4% saved)

sample8.9s (45.8%)

Results
4.0s6373×body256valid
1.2s1654×body256infinite
1.1s880×body1024valid
1.1s472×body2048valid
633.0ms204×body1024infinite
406.0ms531×body512valid
287.0ms277×body512infinite
Bogosity

preprocess490.0ms (2.5%)

Algorithm
egg-herbie
Rules
1236×rational_best-simplify-97
1134×rational_best-simplify-86
932×rational_best-simplify-1
722×rational_best-simplify-50
594×rational_best-simplify-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
025136
167124
218796
357552
4163852
5502052
033
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(-.f64 (-.f64 (+.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y z)) (*.f64 y y))
(-.f64 (-.f64 (+.f64 (*.f64 y x) (*.f64 x x)) (*.f64 x z)) (*.f64 x x))
(-.f64 (-.f64 (+.f64 (*.f64 z y) (*.f64 y y)) (*.f64 y x)) (*.f64 y y))
(-.f64 (-.f64 (+.f64 (*.f64 x z) (*.f64 z z)) (*.f64 z y)) (*.f64 z z))
Outputs
(-.f64 (-.f64 (+.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y z)) (*.f64 y y))
(-.f64 (*.f64 y (+.f64 x y)) (*.f64 y (+.f64 z y)))
(-.f64 (*.f64 y (+.f64 x y)) (*.f64 y (+.f64 y z)))
(+.f64 (*.f64 x y) (neg.f64 (*.f64 y z)))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (+.f64 (*.f64 y x) (*.f64 x x)) (*.f64 x z)) (*.f64 x x))
(-.f64 (*.f64 x (+.f64 y x)) (+.f64 (*.f64 x x) (*.f64 x z)))
(-.f64 (*.f64 x (+.f64 x y)) (*.f64 x (+.f64 x z)))
(-.f64 (-.f64 (*.f64 x y) 0) (*.f64 x z))
(*.f64 x (-.f64 y z))
(-.f64 (-.f64 (+.f64 (*.f64 z y) (*.f64 y y)) (*.f64 y x)) (*.f64 y y))
(-.f64 (*.f64 y (+.f64 z y)) (*.f64 y (+.f64 x y)))
(-.f64 (*.f64 y (+.f64 y z)) (*.f64 y (+.f64 x y)))
(+.f64 (*.f64 y z) (neg.f64 (*.f64 x y)))
(*.f64 y (-.f64 z x))
(-.f64 (-.f64 (+.f64 (*.f64 x z) (*.f64 z z)) (*.f64 z y)) (*.f64 z z))
(-.f64 (*.f64 z (+.f64 x z)) (+.f64 (*.f64 z z) (*.f64 y z)))
(-.f64 (*.f64 z (+.f64 x z)) (*.f64 z (+.f64 y z)))
(*.f64 z (-.f64 (+.f64 x z) (+.f64 y z)))
(*.f64 z (-.f64 x y))
Compiler

Compiled 21 to 12 computations (42.9% saved)

simplify705.0ms (3.6%)

Algorithm
egg-herbie
Rules
1140×rational_best-simplify-1
1022×rational_best-simplify-76
1018×rational_best-simplify-75
678×rational_best-simplify-83
590×rational_best-simplify-62
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01137
12431
26025
316413
438613
5171513
6751813
Stop Event
node limit
Counts
1 → 5
Calls
Call 1
Inputs
(-.f64 (-.f64 (+.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y z)) (*.f64 y y))
Outputs
(-.f64 (-.f64 (+.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y z)) (*.f64 y y))
(-.f64 (*.f64 y (+.f64 x y)) (+.f64 (*.f64 y y) (*.f64 y z)))
(-.f64 (*.f64 y (+.f64 x y)) (*.f64 y (+.f64 y z)))
(-.f64 (-.f64 (*.f64 x y) 0) (*.f64 y z))
(*.f64 y (-.f64 x z))

eval2.0ms (0%)

Compiler

Compiled 56 to 21 computations (62.5% saved)

prune3.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New325
Fresh101
Picked000
Done000
Total426
Error
0.0b
Counts
6 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(-.f64 (-.f64 (*.f64 x y) 0) (*.f64 y z))
0.0b
(*.f64 y (-.f64 x z))
Compiler

Compiled 20 to 13 computations (35% saved)

localize36.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

Compiled 14 to 5 computations (64.3% saved)

series29.0ms (0.1%)

Counts
1 → 24
Calls

9 calls:

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

rewrite589.0ms (3%)

Algorithm
batch-egg-rewrite
Rules
672×rational_best-simplify-79
666×rational_best-simplify-1
622×rational_best-simplify-83
564×rational_best-simplify-80
544×rational_best-simplify-47
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
14513
29113
325213
499113
5649213
Stop Event
node limit
Counts
1 → 86
Calls
Call 1
Inputs
(*.f64 y (-.f64 x z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (*.f64 y (*.f64 (-.f64 x z) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (+.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (*.f64 y (*.f64 (-.f64 x z) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (/.f64 (*.f64 -3 (*.f64 y (/.f64 (-.f64 x z) -2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (/.f64 (*.f64 (-.f64 x z) (*.f64 y 3)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (-.f64 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 y (-.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (*.f64 y (/.f64 (-.f64 x z) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (*.f64 y (*.f64 (-.f64 x z) 1/2))) (neg.f64 (*.f64 y (/.f64 (-.f64 x z) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 -3 (*.f64 y (/.f64 (-.f64 x z) -2))) 2) (/.f64 (*.f64 y (/.f64 (-.f64 x z) -2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (-.f64 x z) (*.f64 y 3)) 4) (/.f64 (*.f64 y (-.f64 z x)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 (-.f64 x z) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 (-.f64 x z) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x z) (/.f64 y -1/2)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x z) 4) (*.f64 y 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 2 (*.f64 (-.f64 x z) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z x) (*.f64 2 (*.f64 y 4))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 x z) (/.f64 y -1/2)) (*.f64 (-.f64 x z) (/.f64 y -1/2))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) (*.f64 (-.f64 z x) (*.f64 y 4))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 y (*.f64 2 (*.f64 (-.f64 x z) 4))) (*.f64 y (*.f64 2 (*.f64 (-.f64 x z) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (*.f64 (-.f64 x z) 4) (*.f64 y 4)) (*.f64 (*.f64 (-.f64 x z) 4) (*.f64 y 4))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x z) 4) (*.f64 4 (*.f64 y 4))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 (-.f64 z x) (*.f64 y 4))) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z x) (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4)))) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (-.f64 x z) -2) (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4)))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x z) (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x z) (neg.f64 (*.f64 2 (*.f64 y 4)))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (neg.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (+.f64 (neg.f64 (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 (-.f64 x z) 4)))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 (+.f64 x x) 4))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 2 (*.f64 2 (+.f64 x z))))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 (*.f64 2 (+.f64 x z)) (*.f64 x 4))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 (*.f64 2 (*.f64 2 (+.f64 x z))) (*.f64 (+.f64 x x) 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x z) 1/2) (neg.f64 y)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x z) 1/2) (/.f64 y -1/2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 y y) (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y 4) (+.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)) (*.f64 2 (*.f64 (-.f64 x z) 4)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x z) 4) (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)) (*.f64 2 (*.f64 (-.f64 x z) 4))) (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4)))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4))) (*.f64 2 (*.f64 y 4))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (*.f64 y 4)) (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4))) (+.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)) (*.f64 2 (*.f64 (-.f64 x z) 4)))) 256)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (+.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)) (*.f64 2 (*.f64 (-.f64 x z) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4))) (+.f64 y y)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 y y) (-.f64 (*.f64 2 (+.f64 x z)) (*.f64 z 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y 4) (+.f64 (neg.f64 (*.f64 z 4)) (*.f64 x 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 2 (+.f64 x z))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 2 (*.f64 2 (+.f64 x z))) (*.f64 2 (*.f64 z 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (neg.f64 (*.f64 z 4)) (*.f64 x 4)) (*.f64 y 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 2 (+.f64 x z)))) (*.f64 y 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 x z)) (*.f64 z 4)) (+.f64 y y)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 2 (*.f64 2 (+.f64 x z))) (*.f64 2 (*.f64 z 4))) (*.f64 y 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (*.f64 2 (*.f64 (-.f64 x z) 4))) (neg.f64 (*.f64 2 (*.f64 y 4)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (neg.f64 (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 (-.f64 x z) 4))) (neg.f64 (*.f64 2 (*.f64 y 4)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 (+.f64 x x) 4)) (neg.f64 (*.f64 2 (*.f64 y 4)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 2 (*.f64 2 (+.f64 x z)))) (neg.f64 (*.f64 y 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 x z)) (*.f64 x 4)) (/.f64 y -1/2)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 2 (*.f64 2 (+.f64 x z))) (*.f64 (+.f64 x x) 4)) (neg.f64 (*.f64 y 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (neg.f64 (*.f64 z 4)) (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4))) (+.f64 y y)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (+.f64 (*.f64 z -2) (*.f64 x 4)) (*.f64 z -2)) y) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 z 4))) (+.f64 y y)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4)) (*.f64 z 4)) (+.f64 y y)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (+.f64 (+.f64 (*.f64 z -2) (*.f64 x 4)) (*.f64 z -2))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 y y) (+.f64 (neg.f64 (*.f64 z 4)) (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 y y) (+.f64 (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 z 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 y y) (-.f64 (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4)) (*.f64 z 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4))) (*.f64 y 1/2)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (neg.f64 (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 (-.f64 x z) 4))) (/.f64 y -1/2)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (neg.f64 (*.f64 (-.f64 x z) 4)) (*.f64 (-.f64 x z) 4)) (/.f64 y -1/2)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 (+.f64 x x) 4)) (/.f64 y -1/2)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 y -1/2) (-.f64 (*.f64 2 (+.f64 x z)) (*.f64 x 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (*.f64 y 4)) (neg.f64 (*.f64 (-.f64 x z) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (*.f64 y 4)) (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 2 (*.f64 2 (+.f64 x z))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (*.f64 y 4)) (-.f64 (*.f64 2 (*.f64 2 (+.f64 x z))) (*.f64 (+.f64 x x) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (*.f64 2 (*.f64 y 4))) (neg.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (*.f64 2 (*.f64 y 4))) (+.f64 (neg.f64 (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 (-.f64 x z) 4)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (*.f64 2 (*.f64 y 4))) (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 (+.f64 x x) 4))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y 1/2) (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (-.f64 z x)))))))

simplify459.0ms (2.4%)

Algorithm
egg-herbie
Rules
1078×rational_best-simplify-55
852×rational_best-simplify-48
772×rational_best-simplify-63
746×rational_best-simplify-47
746×rational_best-simplify-52
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02463178
15743010
214592834
339372810
Stop Event
node limit
Counts
110 → 160
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y (-.f64 x z)) 0)
(+.f64 0 (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (*.f64 y (*.f64 (-.f64 x z) 1/2)))
(+.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (+.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (*.f64 y (*.f64 (-.f64 x z) 1/2))))
(+.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (/.f64 (*.f64 -3 (*.f64 y (/.f64 (-.f64 x z) -2))) 2))
(+.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (/.f64 (*.f64 (-.f64 x z) (*.f64 y 3)) 4))
(-.f64 (*.f64 y (-.f64 x z)) 0)
(-.f64 0 (*.f64 y (-.f64 z x)))
(-.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (*.f64 y (/.f64 (-.f64 x z) -2)))
(-.f64 (+.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (*.f64 y (*.f64 (-.f64 x z) 1/2))) (neg.f64 (*.f64 y (/.f64 (-.f64 x z) 4))))
(-.f64 (/.f64 (*.f64 -3 (*.f64 y (/.f64 (-.f64 x z) -2))) 2) (/.f64 (*.f64 y (/.f64 (-.f64 x z) -2)) 2))
(-.f64 (/.f64 (*.f64 (-.f64 x z) (*.f64 y 3)) 4) (/.f64 (*.f64 y (-.f64 z x)) 4))
(/.f64 (*.f64 y (-.f64 x z)) 1)
(/.f64 (*.f64 y (*.f64 (-.f64 x z) 2)) 2)
(/.f64 (*.f64 y (-.f64 z x)) -1)
(/.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) 1/2)
(/.f64 (*.f64 y (*.f64 (-.f64 x z) 4)) 4)
(/.f64 (*.f64 (-.f64 x z) (/.f64 y -1/2)) -2)
(/.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) -4)
(/.f64 (*.f64 (*.f64 (-.f64 x z) 4) (*.f64 y 4)) 16)
(/.f64 (*.f64 y (*.f64 2 (*.f64 (-.f64 x z) 4))) 8)
(/.f64 (/.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) 2) -2)
(/.f64 (*.f64 (-.f64 z x) (*.f64 2 (*.f64 y 4))) -8)
(/.f64 (+.f64 (*.f64 (-.f64 x z) (/.f64 y -1/2)) (*.f64 (-.f64 x z) (/.f64 y -1/2))) -4)
(/.f64 (+.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) (*.f64 (-.f64 z x) (*.f64 y 4))) -8)
(/.f64 (+.f64 (*.f64 y (*.f64 2 (*.f64 (-.f64 x z) 4))) (*.f64 y (*.f64 2 (*.f64 (-.f64 x z) 4)))) 16)
(/.f64 (+.f64 (*.f64 (*.f64 (-.f64 x z) 4) (*.f64 y 4)) (*.f64 (*.f64 (-.f64 x z) 4) (*.f64 y 4))) 32)
(/.f64 (*.f64 (*.f64 (-.f64 x z) 4) (*.f64 4 (*.f64 y 4))) 64)
(/.f64 (*.f64 4 (*.f64 (-.f64 z x) (*.f64 y 4))) -16)
(/.f64 (*.f64 (-.f64 z x) (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4)))) -16)
(/.f64 (*.f64 (/.f64 (-.f64 x z) -2) (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4)))) -8)
(/.f64 (*.f64 (-.f64 x z) (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4)))) 16)
(/.f64 (*.f64 (-.f64 x z) (neg.f64 (*.f64 2 (*.f64 y 4)))) -8)
(/.f64 (*.f64 y (neg.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)))) -8)
(/.f64 (*.f64 y (+.f64 (neg.f64 (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 (-.f64 x z) 4)))) -8)
(/.f64 (*.f64 y (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 (+.f64 x x) 4))) -8)
(/.f64 (*.f64 y (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 2 (*.f64 2 (+.f64 x z))))) -4)
(/.f64 (*.f64 y (-.f64 (*.f64 2 (+.f64 x z)) (*.f64 x 4))) -2)
(/.f64 (*.f64 y (-.f64 (*.f64 2 (*.f64 2 (+.f64 x z))) (*.f64 (+.f64 x x) 4))) -4)
(/.f64 (*.f64 (*.f64 (-.f64 x z) 1/2) (neg.f64 y)) -1/2)
(/.f64 (*.f64 (*.f64 (-.f64 x z) 1/2) (/.f64 y -1/2)) -1)
(/.f64 (*.f64 (+.f64 y y) (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4)))) 16)
(/.f64 (*.f64 (*.f64 y 4) (+.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)) (*.f64 2 (*.f64 (-.f64 x z) 4)))) 64)
(/.f64 (*.f64 (*.f64 (-.f64 x z) 4) (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4)))) 64)
(/.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)) (*.f64 2 (*.f64 (-.f64 x z) 4))) (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4)))) 256)
(/.f64 (*.f64 (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4))) (*.f64 2 (*.f64 y 4))) 64)
(/.f64 (*.f64 (*.f64 2 (*.f64 y 4)) (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4)))) 64)
(/.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4))) (+.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)) (*.f64 2 (*.f64 (-.f64 x z) 4)))) 256)
(/.f64 (*.f64 y (+.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)) (*.f64 2 (*.f64 (-.f64 x z) 4)))) 16)
(/.f64 (*.f64 (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4))) (+.f64 y y)) 16)
(/.f64 (*.f64 (+.f64 y y) (-.f64 (*.f64 2 (+.f64 x z)) (*.f64 z 4))) 4)
(/.f64 (*.f64 (*.f64 y 4) (+.f64 (neg.f64 (*.f64 z 4)) (*.f64 x 4))) 16)
(/.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 2 (+.f64 x z))))) 16)
(/.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 2 (*.f64 2 (+.f64 x z))) (*.f64 2 (*.f64 z 4)))) 16)
(/.f64 (*.f64 (+.f64 (neg.f64 (*.f64 z 4)) (*.f64 x 4)) (*.f64 y 4)) 16)
(/.f64 (*.f64 (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 2 (+.f64 x z)))) (*.f64 y 4)) 16)
(/.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 x z)) (*.f64 z 4)) (+.f64 y y)) 4)
(/.f64 (*.f64 (-.f64 (*.f64 2 (*.f64 2 (+.f64 x z))) (*.f64 2 (*.f64 z 4))) (*.f64 y 4)) 16)
(/.f64 (*.f64 (neg.f64 (*.f64 2 (*.f64 (-.f64 x z) 4))) (neg.f64 (*.f64 2 (*.f64 y 4)))) 64)
(/.f64 (*.f64 (+.f64 (neg.f64 (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 (-.f64 x z) 4))) (neg.f64 (*.f64 2 (*.f64 y 4)))) 64)
(/.f64 (*.f64 (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 (+.f64 x x) 4)) (neg.f64 (*.f64 2 (*.f64 y 4)))) 64)
(/.f64 (*.f64 (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 2 (*.f64 2 (+.f64 x z)))) (neg.f64 (*.f64 y 4))) 16)
(/.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 x z)) (*.f64 x 4)) (/.f64 y -1/2)) 4)
(/.f64 (*.f64 (-.f64 (*.f64 2 (*.f64 2 (+.f64 x z))) (*.f64 (+.f64 x x) 4)) (neg.f64 (*.f64 y 4))) 16)
(/.f64 (*.f64 (+.f64 (neg.f64 (*.f64 z 4)) (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4))) (+.f64 y y)) 16)
(/.f64 (*.f64 (+.f64 (+.f64 (*.f64 z -2) (*.f64 x 4)) (*.f64 z -2)) y) 4)
(/.f64 (*.f64 (+.f64 (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 z 4))) (+.f64 y y)) 16)
(/.f64 (*.f64 (-.f64 (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4)) (*.f64 z 4)) (+.f64 y y)) 16)
(/.f64 (*.f64 y (+.f64 (+.f64 (*.f64 z -2) (*.f64 x 4)) (*.f64 z -2))) 4)
(/.f64 (*.f64 (+.f64 y y) (+.f64 (neg.f64 (*.f64 z 4)) (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4)))) 16)
(/.f64 (*.f64 (+.f64 y y) (+.f64 (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 z 4)))) 16)
(/.f64 (*.f64 (+.f64 y y) (-.f64 (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4)) (*.f64 z 4))) 16)
(/.f64 (*.f64 (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4))) (*.f64 y 1/2)) 4)
(/.f64 (*.f64 (+.f64 (neg.f64 (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 (-.f64 x z) 4))) (/.f64 y -1/2)) 16)
(/.f64 (*.f64 (-.f64 (neg.f64 (*.f64 (-.f64 x z) 4)) (*.f64 (-.f64 x z) 4)) (/.f64 y -1/2)) 16)
(/.f64 (*.f64 (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 (+.f64 x x) 4)) (/.f64 y -1/2)) 16)
(/.f64 (*.f64 (/.f64 y -1/2) (-.f64 (*.f64 2 (+.f64 x z)) (*.f64 x 4))) 4)
(/.f64 (*.f64 (neg.f64 (*.f64 y 4)) (neg.f64 (*.f64 (-.f64 x z) 4))) 16)
(/.f64 (*.f64 (neg.f64 (*.f64 y 4)) (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 2 (*.f64 2 (+.f64 x z))))) 16)
(/.f64 (*.f64 (neg.f64 (*.f64 y 4)) (-.f64 (*.f64 2 (*.f64 2 (+.f64 x z))) (*.f64 (+.f64 x x) 4))) 16)
(/.f64 (*.f64 (neg.f64 (*.f64 2 (*.f64 y 4))) (neg.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)))) 64)
(/.f64 (*.f64 (neg.f64 (*.f64 2 (*.f64 y 4))) (+.f64 (neg.f64 (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 (-.f64 x z) 4)))) 64)
(/.f64 (*.f64 (neg.f64 (*.f64 2 (*.f64 y 4))) (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 (+.f64 x x) 4))) 64)
(/.f64 (*.f64 (*.f64 y 1/2) (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4)))) 4)
(pow.f64 (*.f64 y (-.f64 x z)) 1)
(neg.f64 (*.f64 y (-.f64 z x)))
Outputs
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 y (-.f64 x z)) 0)
(*.f64 y (-.f64 x z))
(+.f64 0 (*.f64 y (-.f64 x z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (*.f64 y (*.f64 (-.f64 x z) 1/2)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (+.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (*.f64 y (*.f64 (-.f64 x z) 1/2))))
(+.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (+.f64 (*.f64 (-.f64 x z) (/.f64 y 4)) (*.f64 (-.f64 x z) (/.f64 y 4))))
(+.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (*.f64 (/.f64 (-.f64 x z) 4) (+.f64 y y)))
(+.f64 (*.f64 (-.f64 x z) (*.f64 y 1/2)) (*.f64 (/.f64 (-.f64 x z) 4) (+.f64 y y)))
(+.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (/.f64 (*.f64 -3 (*.f64 y (/.f64 (-.f64 x z) -2))) 2))
(+.f64 (*.f64 (-.f64 x z) (/.f64 y 4)) (/.f64 (*.f64 -3 (*.f64 y (/.f64 (-.f64 x z) -2))) 2))
(+.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (/.f64 (*.f64 y (*.f64 (/.f64 (-.f64 x z) -2) -3)) 2))
(+.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (/.f64 (*.f64 (*.f64 y -3) (neg.f64 (-.f64 x z))) 4))
(+.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (/.f64 (*.f64 y (*.f64 (-.f64 x z) 3/2)) 2))
(+.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (/.f64 (*.f64 (-.f64 x z) (*.f64 y 3)) 4))
(+.f64 (*.f64 (-.f64 x z) (/.f64 y 4)) (/.f64 (*.f64 (-.f64 x z) (*.f64 y 3)) 4))
(-.f64 (*.f64 y (-.f64 x z)) 0)
(*.f64 y (-.f64 x z))
(-.f64 0 (*.f64 y (-.f64 z x)))
(neg.f64 (*.f64 y (-.f64 z x)))
(*.f64 (-.f64 z x) (neg.f64 y))
(*.f64 y (neg.f64 (-.f64 z x)))
(-.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (*.f64 y (/.f64 (-.f64 x z) -2)))
(*.f64 y (-.f64 x z))
(-.f64 (+.f64 (*.f64 y (/.f64 (-.f64 x z) 4)) (*.f64 y (*.f64 (-.f64 x z) 1/2))) (neg.f64 (*.f64 y (/.f64 (-.f64 x z) 4))))
(+.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (+.f64 (*.f64 (-.f64 x z) (/.f64 y 4)) (*.f64 (-.f64 x z) (/.f64 y 4))))
(+.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (*.f64 (/.f64 (-.f64 x z) 4) (+.f64 y y)))
(+.f64 (*.f64 (-.f64 x z) (*.f64 y 1/2)) (*.f64 (/.f64 (-.f64 x z) 4) (+.f64 y y)))
(-.f64 (/.f64 (*.f64 -3 (*.f64 y (/.f64 (-.f64 x z) -2))) 2) (/.f64 (*.f64 y (/.f64 (-.f64 x z) -2)) 2))
(/.f64 (-.f64 (*.f64 -3 (*.f64 y (/.f64 (-.f64 x z) -2))) (*.f64 y (/.f64 (-.f64 x z) -2))) 2)
(/.f64 (-.f64 (*.f64 y (*.f64 (/.f64 (-.f64 x z) -2) -3)) (*.f64 y (/.f64 (-.f64 x z) -2))) 2)
(/.f64 (*.f64 (/.f64 (-.f64 x z) -2) (-.f64 (*.f64 y -3) y)) 2)
(-.f64 (/.f64 (*.f64 (-.f64 x z) (*.f64 y 3)) 4) (/.f64 (*.f64 y (-.f64 z x)) 4))
(/.f64 (-.f64 (*.f64 (-.f64 x z) (*.f64 y 3)) (*.f64 y (-.f64 z x))) 4)
(/.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (*.f64 (-.f64 x z) 2)) 2)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (-.f64 z x)) -1)
(neg.f64 (*.f64 y (-.f64 z x)))
(*.f64 (-.f64 z x) (neg.f64 y))
(*.f64 y (neg.f64 (-.f64 z x)))
(/.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) 1/2)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (*.f64 (-.f64 x z) 4)) 4)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 x z) (/.f64 y -1/2)) -2)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) -4)
(/.f64 (*.f64 4 (*.f64 y (-.f64 z x))) -4)
(/.f64 (*.f64 y (*.f64 4 (-.f64 z x))) -4)
(/.f64 (*.f64 (*.f64 (-.f64 x z) 4) (*.f64 y 4)) 16)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (*.f64 2 (*.f64 (-.f64 x z) 4))) 8)
(*.f64 y (-.f64 x z))
(/.f64 (/.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) 2) -2)
(/.f64 (*.f64 4 (*.f64 y (-.f64 z x))) -4)
(/.f64 (*.f64 y (*.f64 4 (-.f64 z x))) -4)
(/.f64 (*.f64 (-.f64 z x) (*.f64 2 (*.f64 y 4))) -8)
(/.f64 (*.f64 4 (*.f64 y (-.f64 z x))) -4)
(/.f64 (*.f64 y (*.f64 4 (-.f64 z x))) -4)
(/.f64 (+.f64 (*.f64 (-.f64 x z) (/.f64 y -1/2)) (*.f64 (-.f64 x z) (/.f64 y -1/2))) -4)
(*.f64 y (-.f64 x z))
(/.f64 (+.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) (*.f64 (-.f64 z x) (*.f64 y 4))) -8)
(/.f64 (*.f64 4 (*.f64 y (-.f64 z x))) -4)
(/.f64 (*.f64 y (*.f64 4 (-.f64 z x))) -4)
(/.f64 (+.f64 (*.f64 y (*.f64 2 (*.f64 (-.f64 x z) 4))) (*.f64 y (*.f64 2 (*.f64 (-.f64 x z) 4)))) 16)
(*.f64 y (-.f64 x z))
(/.f64 (+.f64 (*.f64 (*.f64 (-.f64 x z) 4) (*.f64 y 4)) (*.f64 (*.f64 (-.f64 x z) 4) (*.f64 y 4))) 32)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (*.f64 (-.f64 x z) 4) (*.f64 4 (*.f64 y 4))) 64)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 4 (*.f64 (-.f64 z x) (*.f64 y 4))) -16)
(/.f64 (*.f64 4 (*.f64 y (-.f64 z x))) -4)
(/.f64 (*.f64 y (*.f64 4 (-.f64 z x))) -4)
(/.f64 (*.f64 (-.f64 z x) (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4)))) -16)
(/.f64 (*.f64 4 (*.f64 y (-.f64 z x))) -4)
(/.f64 (*.f64 y (*.f64 4 (-.f64 z x))) -4)
(/.f64 (*.f64 (/.f64 (-.f64 x z) -2) (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4)))) -8)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 x z) (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4)))) 16)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 x z) (neg.f64 (*.f64 2 (*.f64 y 4)))) -8)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (neg.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)))) -8)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (+.f64 (neg.f64 (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 (-.f64 x z) 4)))) -8)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 (+.f64 x x) 4))) -8)
(/.f64 (*.f64 y (-.f64 (*.f64 4 (*.f64 z 2)) (*.f64 4 (+.f64 x x)))) -8)
(/.f64 (*.f64 y (-.f64 (*.f64 z 8) (*.f64 4 (+.f64 x x)))) -8)
(/.f64 (*.f64 y (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 2 (*.f64 2 (+.f64 x z))))) -4)
(/.f64 (*.f64 y (-.f64 (*.f64 4 (*.f64 z 2)) (*.f64 (+.f64 z x) 4))) -4)
(/.f64 (*.f64 y (-.f64 (*.f64 z 8) (*.f64 4 (+.f64 z x)))) -4)
(/.f64 (*.f64 y (-.f64 (*.f64 2 (+.f64 x z)) (*.f64 x 4))) -2)
(/.f64 (*.f64 y (-.f64 (*.f64 2 (+.f64 z x)) (*.f64 x 4))) -2)
(/.f64 (*.f64 y (-.f64 (*.f64 2 (*.f64 2 (+.f64 x z))) (*.f64 (+.f64 x x) 4))) -4)
(/.f64 (*.f64 y (-.f64 (*.f64 (+.f64 z x) 4) (*.f64 4 (+.f64 x x)))) -4)
(/.f64 (*.f64 y (*.f64 4 (-.f64 (+.f64 z x) (+.f64 x x)))) -4)
(/.f64 (*.f64 (-.f64 (+.f64 z x) (+.f64 x x)) (*.f64 y 4)) -4)
(/.f64 (*.f64 (*.f64 (-.f64 x z) 1/2) (neg.f64 y)) -1/2)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (*.f64 (-.f64 x z) 1/2) (/.f64 y -1/2)) -1)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (+.f64 y y) (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4)))) 16)
(/.f64 (*.f64 (+.f64 y y) (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 4 (*.f64 z 2)))) 16)
(/.f64 (*.f64 (+.f64 y y) (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 z 8))) 16)
(/.f64 (*.f64 8 (*.f64 (-.f64 (+.f64 x x) (*.f64 z 2)) y)) 16)
(/.f64 (*.f64 (-.f64 (+.f64 x x) (*.f64 z 2)) (*.f64 y 8)) 16)
(/.f64 (*.f64 (*.f64 y 4) (+.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)) (*.f64 2 (*.f64 (-.f64 x z) 4)))) 64)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (*.f64 (-.f64 x z) 4) (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4)))) 64)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)) (*.f64 2 (*.f64 (-.f64 x z) 4))) (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4)))) 256)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4))) (*.f64 2 (*.f64 y 4))) 64)
(/.f64 (*.f64 (*.f64 y 4) (*.f64 2 (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 4 (*.f64 z 2))))) 64)
(/.f64 (*.f64 (*.f64 y 8) (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 z 8))) 64)
(/.f64 (*.f64 16 (*.f64 y (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 z 8)))) 128)
(/.f64 (*.f64 (*.f64 2 (*.f64 y 4)) (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4)))) 64)
(/.f64 (*.f64 (*.f64 y 4) (*.f64 2 (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 4 (*.f64 z 2))))) 64)
(/.f64 (*.f64 (*.f64 y 8) (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 z 8))) 64)
(/.f64 (*.f64 16 (*.f64 y (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 z 8)))) 128)
(/.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 y 4)) (*.f64 2 (*.f64 y 4))) (+.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)) (*.f64 2 (*.f64 (-.f64 x z) 4)))) 256)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (+.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)) (*.f64 2 (*.f64 (-.f64 x z) 4)))) 16)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4))) (+.f64 y y)) 16)
(/.f64 (*.f64 (+.f64 y y) (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 4 (*.f64 z 2)))) 16)
(/.f64 (*.f64 (+.f64 y y) (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 z 8))) 16)
(/.f64 (*.f64 8 (*.f64 (-.f64 (+.f64 x x) (*.f64 z 2)) y)) 16)
(/.f64 (*.f64 (-.f64 (+.f64 x x) (*.f64 z 2)) (*.f64 y 8)) 16)
(/.f64 (*.f64 (+.f64 y y) (-.f64 (*.f64 2 (+.f64 x z)) (*.f64 z 4))) 4)
(/.f64 (*.f64 (+.f64 y y) (-.f64 (*.f64 2 (+.f64 z x)) (*.f64 z 4))) 4)
(/.f64 (*.f64 (*.f64 y 4) (+.f64 (neg.f64 (*.f64 z 4)) (*.f64 x 4))) 16)
(/.f64 (*.f64 4 (*.f64 y (+.f64 (*.f64 x 4) (neg.f64 (*.f64 z 4))))) 16)
(/.f64 (*.f64 y (*.f64 4 (+.f64 (*.f64 x 4) (neg.f64 (*.f64 z 4))))) 16)
(/.f64 (*.f64 y (*.f64 4 (+.f64 (*.f64 x 4) (*.f64 z -4)))) 16)
(/.f64 (*.f64 (*.f64 y 8) (+.f64 (*.f64 x 4) (*.f64 z -4))) 32)
(/.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 2 (+.f64 x z))))) 16)
(/.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 (+.f64 z x) 4))) 16)
(/.f64 (*.f64 y (*.f64 4 (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 4 (+.f64 z x))))) 16)
(/.f64 (*.f64 y (*.f64 4 (*.f64 4 (-.f64 (+.f64 x x) (+.f64 z x))))) 16)
(/.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 2 (*.f64 2 (+.f64 x z))) (*.f64 2 (*.f64 z 4)))) 16)
(/.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 (+.f64 z x) 4) (*.f64 4 (*.f64 z 2)))) 16)
(/.f64 (*.f64 y (*.f64 4 (-.f64 (*.f64 4 (+.f64 z x)) (*.f64 z 8)))) 16)
(/.f64 (*.f64 y (*.f64 (-.f64 (+.f64 z x) (*.f64 z 2)) 16)) 16)
(/.f64 (*.f64 (+.f64 (neg.f64 (*.f64 z 4)) (*.f64 x 4)) (*.f64 y 4)) 16)
(/.f64 (*.f64 4 (*.f64 y (+.f64 (*.f64 x 4) (neg.f64 (*.f64 z 4))))) 16)
(/.f64 (*.f64 y (*.f64 4 (+.f64 (*.f64 x 4) (neg.f64 (*.f64 z 4))))) 16)
(/.f64 (*.f64 y (*.f64 4 (+.f64 (*.f64 x 4) (*.f64 z -4)))) 16)
(/.f64 (*.f64 (*.f64 y 8) (+.f64 (*.f64 x 4) (*.f64 z -4))) 32)
(/.f64 (*.f64 (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 2 (+.f64 x z)))) (*.f64 y 4)) 16)
(/.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 (+.f64 z x) 4))) 16)
(/.f64 (*.f64 y (*.f64 4 (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 4 (+.f64 z x))))) 16)
(/.f64 (*.f64 y (*.f64 4 (*.f64 4 (-.f64 (+.f64 x x) (+.f64 z x))))) 16)
(/.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 x z)) (*.f64 z 4)) (+.f64 y y)) 4)
(/.f64 (*.f64 (+.f64 y y) (-.f64 (*.f64 2 (+.f64 z x)) (*.f64 z 4))) 4)
(/.f64 (*.f64 (-.f64 (*.f64 2 (*.f64 2 (+.f64 x z))) (*.f64 2 (*.f64 z 4))) (*.f64 y 4)) 16)
(/.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 (+.f64 z x) 4) (*.f64 4 (*.f64 z 2)))) 16)
(/.f64 (*.f64 y (*.f64 4 (-.f64 (*.f64 4 (+.f64 z x)) (*.f64 z 8)))) 16)
(/.f64 (*.f64 y (*.f64 (-.f64 (+.f64 z x) (*.f64 z 2)) 16)) 16)
(/.f64 (*.f64 (neg.f64 (*.f64 2 (*.f64 (-.f64 x z) 4))) (neg.f64 (*.f64 2 (*.f64 y 4)))) 64)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (+.f64 (neg.f64 (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 (-.f64 x z) 4))) (neg.f64 (*.f64 2 (*.f64 y 4)))) 64)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 (+.f64 x x) 4)) (neg.f64 (*.f64 2 (*.f64 y 4)))) 64)
(/.f64 (*.f64 (neg.f64 (*.f64 4 (*.f64 y 2))) (-.f64 (*.f64 4 (*.f64 z 2)) (*.f64 4 (+.f64 x x)))) 64)
(/.f64 (*.f64 (neg.f64 (*.f64 y 8)) (-.f64 (*.f64 z 8) (*.f64 4 (+.f64 x x)))) 64)
(/.f64 (*.f64 (*.f64 y 8) (neg.f64 (-.f64 (*.f64 z 8) (*.f64 4 (+.f64 x x))))) 64)
(/.f64 (*.f64 (*.f64 y -8) (-.f64 (*.f64 z 8) (*.f64 4 (+.f64 x x)))) 64)
(/.f64 (*.f64 (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 2 (*.f64 2 (+.f64 x z)))) (neg.f64 (*.f64 y 4))) 16)
(/.f64 (*.f64 (-.f64 (*.f64 4 (*.f64 z 2)) (*.f64 (+.f64 z x) 4)) (neg.f64 (*.f64 y 4))) 16)
(/.f64 (*.f64 (-.f64 (*.f64 z 8) (*.f64 4 (+.f64 z x))) (neg.f64 (*.f64 y 4))) 16)
(/.f64 (*.f64 (-.f64 (*.f64 z 8) (*.f64 4 (+.f64 z x))) (*.f64 y -4)) 16)
(/.f64 (*.f64 (-.f64 (*.f64 2 (+.f64 x z)) (*.f64 x 4)) (/.f64 y -1/2)) 4)
(/.f64 (*.f64 y (/.f64 (-.f64 (*.f64 2 (+.f64 z x)) (*.f64 x 4)) -1/2)) 4)
(/.f64 (*.f64 (-.f64 (*.f64 2 (*.f64 2 (+.f64 x z))) (*.f64 (+.f64 x x) 4)) (neg.f64 (*.f64 y 4))) 16)
(/.f64 (*.f64 (-.f64 (*.f64 (+.f64 z x) 4) (*.f64 4 (+.f64 x x))) (neg.f64 (*.f64 y 4))) 16)
(/.f64 (*.f64 (*.f64 4 (-.f64 (+.f64 z x) (+.f64 x x))) (neg.f64 (*.f64 y 4))) 16)
(/.f64 (*.f64 -1 (*.f64 (-.f64 (+.f64 z x) (+.f64 x x)) (*.f64 y 16))) 16)
(/.f64 (*.f64 (-.f64 (+.f64 z x) (+.f64 x x)) (/.f64 y -1/16)) 16)
(/.f64 (*.f64 (+.f64 (neg.f64 (*.f64 z 4)) (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4))) (+.f64 y y)) 16)
(/.f64 (*.f64 (+.f64 y y) (+.f64 (neg.f64 (*.f64 z 4)) (*.f64 4 (+.f64 x (-.f64 x z))))) 16)
(/.f64 (*.f64 (+.f64 y y) (*.f64 4 (-.f64 (+.f64 x (-.f64 x z)) z))) 16)
(/.f64 (*.f64 (+.f64 (+.f64 (*.f64 z -2) (*.f64 x 4)) (*.f64 z -2)) y) 4)
(/.f64 (*.f64 y (+.f64 (*.f64 z -2) (+.f64 (*.f64 x 4) (*.f64 z -2)))) 4)
(/.f64 (*.f64 y (+.f64 (*.f64 x 4) (+.f64 (*.f64 z -2) (*.f64 z -2)))) 4)
(/.f64 (*.f64 y (+.f64 (*.f64 x 4) (*.f64 z -4))) 4)
(/.f64 (*.f64 (+.f64 (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 z 4))) (+.f64 y y)) 16)
(/.f64 (*.f64 (+.f64 y y) (+.f64 (neg.f64 (*.f64 z 4)) (*.f64 4 (+.f64 x (-.f64 x z))))) 16)
(/.f64 (*.f64 (+.f64 y y) (*.f64 4 (-.f64 (+.f64 x (-.f64 x z)) z))) 16)
(/.f64 (*.f64 (-.f64 (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4)) (*.f64 z 4)) (+.f64 y y)) 16)
(/.f64 (*.f64 (+.f64 y y) (+.f64 (neg.f64 (*.f64 z 4)) (*.f64 4 (+.f64 x (-.f64 x z))))) 16)
(/.f64 (*.f64 (+.f64 y y) (*.f64 4 (-.f64 (+.f64 x (-.f64 x z)) z))) 16)
(/.f64 (*.f64 y (+.f64 (+.f64 (*.f64 z -2) (*.f64 x 4)) (*.f64 z -2))) 4)
(/.f64 (*.f64 y (+.f64 (*.f64 z -2) (+.f64 (*.f64 x 4) (*.f64 z -2)))) 4)
(/.f64 (*.f64 y (+.f64 (*.f64 x 4) (+.f64 (*.f64 z -2) (*.f64 z -2)))) 4)
(/.f64 (*.f64 y (+.f64 (*.f64 x 4) (*.f64 z -4))) 4)
(/.f64 (*.f64 (+.f64 y y) (+.f64 (neg.f64 (*.f64 z 4)) (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4)))) 16)
(/.f64 (*.f64 (+.f64 y y) (+.f64 (neg.f64 (*.f64 z 4)) (*.f64 4 (+.f64 x (-.f64 x z))))) 16)
(/.f64 (*.f64 (+.f64 y y) (*.f64 4 (-.f64 (+.f64 x (-.f64 x z)) z))) 16)
(/.f64 (*.f64 (+.f64 y y) (+.f64 (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 z 4)))) 16)
(/.f64 (*.f64 (+.f64 y y) (+.f64 (neg.f64 (*.f64 z 4)) (*.f64 4 (+.f64 x (-.f64 x z))))) 16)
(/.f64 (*.f64 (+.f64 y y) (*.f64 4 (-.f64 (+.f64 x (-.f64 x z)) z))) 16)
(/.f64 (*.f64 (+.f64 y y) (-.f64 (+.f64 (*.f64 x 4) (*.f64 (-.f64 x z) 4)) (*.f64 z 4))) 16)
(/.f64 (*.f64 (+.f64 y y) (+.f64 (neg.f64 (*.f64 z 4)) (*.f64 4 (+.f64 x (-.f64 x z))))) 16)
(/.f64 (*.f64 (+.f64 y y) (*.f64 4 (-.f64 (+.f64 x (-.f64 x z)) z))) 16)
(/.f64 (*.f64 (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4))) (*.f64 y 1/2)) 4)
(/.f64 (*.f64 1/2 (*.f64 y (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 4 (*.f64 z 2))))) 4)
(/.f64 (*.f64 y (*.f64 1/2 (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 z 8)))) 4)
(/.f64 (*.f64 y (*.f64 (-.f64 (+.f64 x x) (*.f64 z 2)) 2)) 4)
(/.f64 (*.f64 (+.f64 (neg.f64 (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 (-.f64 x z) 4))) (/.f64 y -1/2)) 16)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 (neg.f64 (*.f64 (-.f64 x z) 4)) (*.f64 (-.f64 x z) 4)) (/.f64 y -1/2)) 16)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 (+.f64 x x) 4)) (/.f64 y -1/2)) 16)
(/.f64 (*.f64 y (/.f64 (-.f64 (*.f64 4 (*.f64 z 2)) (*.f64 4 (+.f64 x x))) -1/2)) 16)
(/.f64 (*.f64 y (/.f64 (-.f64 (*.f64 z 8) (*.f64 4 (+.f64 x x))) -1/2)) 16)
(/.f64 (*.f64 (*.f64 y -2) (-.f64 (*.f64 z 8) (*.f64 4 (+.f64 x x)))) 16)
(/.f64 (*.f64 (/.f64 y -1/2) (-.f64 (*.f64 2 (+.f64 x z)) (*.f64 x 4))) 4)
(/.f64 (*.f64 y (/.f64 (-.f64 (*.f64 2 (+.f64 z x)) (*.f64 x 4)) -1/2)) 4)
(/.f64 (*.f64 (neg.f64 (*.f64 y 4)) (neg.f64 (*.f64 (-.f64 x z) 4))) 16)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (neg.f64 (*.f64 y 4)) (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 2 (*.f64 2 (+.f64 x z))))) 16)
(/.f64 (*.f64 (-.f64 (*.f64 4 (*.f64 z 2)) (*.f64 (+.f64 z x) 4)) (neg.f64 (*.f64 y 4))) 16)
(/.f64 (*.f64 (-.f64 (*.f64 z 8) (*.f64 4 (+.f64 z x))) (neg.f64 (*.f64 y 4))) 16)
(/.f64 (*.f64 (-.f64 (*.f64 z 8) (*.f64 4 (+.f64 z x))) (*.f64 y -4)) 16)
(/.f64 (*.f64 (neg.f64 (*.f64 y 4)) (-.f64 (*.f64 2 (*.f64 2 (+.f64 x z))) (*.f64 (+.f64 x x) 4))) 16)
(/.f64 (*.f64 (-.f64 (*.f64 (+.f64 z x) 4) (*.f64 4 (+.f64 x x))) (neg.f64 (*.f64 y 4))) 16)
(/.f64 (*.f64 (*.f64 4 (-.f64 (+.f64 z x) (+.f64 x x))) (neg.f64 (*.f64 y 4))) 16)
(/.f64 (*.f64 -1 (*.f64 (-.f64 (+.f64 z x) (+.f64 x x)) (*.f64 y 16))) 16)
(/.f64 (*.f64 (-.f64 (+.f64 z x) (+.f64 x x)) (/.f64 y -1/16)) 16)
(/.f64 (*.f64 (neg.f64 (*.f64 2 (*.f64 y 4))) (neg.f64 (*.f64 2 (*.f64 (-.f64 x z) 4)))) 64)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (neg.f64 (*.f64 2 (*.f64 y 4))) (+.f64 (neg.f64 (*.f64 (-.f64 x z) 4)) (neg.f64 (*.f64 (-.f64 x z) 4)))) 64)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (neg.f64 (*.f64 2 (*.f64 y 4))) (-.f64 (*.f64 2 (*.f64 z 4)) (*.f64 (+.f64 x x) 4))) 64)
(/.f64 (*.f64 (neg.f64 (*.f64 4 (*.f64 y 2))) (-.f64 (*.f64 4 (*.f64 z 2)) (*.f64 4 (+.f64 x x)))) 64)
(/.f64 (*.f64 (neg.f64 (*.f64 y 8)) (-.f64 (*.f64 z 8) (*.f64 4 (+.f64 x x)))) 64)
(/.f64 (*.f64 (*.f64 y 8) (neg.f64 (-.f64 (*.f64 z 8) (*.f64 4 (+.f64 x x))))) 64)
(/.f64 (*.f64 (*.f64 y -8) (-.f64 (*.f64 z 8) (*.f64 4 (+.f64 x x)))) 64)
(/.f64 (*.f64 (*.f64 y 1/2) (-.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (*.f64 z 4)))) 4)
(/.f64 (*.f64 1/2 (*.f64 y (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 4 (*.f64 z 2))))) 4)
(/.f64 (*.f64 y (*.f64 1/2 (-.f64 (*.f64 4 (+.f64 x x)) (*.f64 z 8)))) 4)
(/.f64 (*.f64 y (*.f64 (-.f64 (+.f64 x x) (*.f64 z 2)) 2)) 4)
(pow.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 y (-.f64 x z))
(neg.f64 (*.f64 y (-.f64 z x)))
(*.f64 (-.f64 z x) (neg.f64 y))
(*.f64 y (neg.f64 (-.f64 z x)))

localize223.0ms (1.2%)

Local error

Found 1 expressions with local error:

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

Compiled 27 to 11 computations (59.3% saved)

series6.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite295.0ms (1.5%)

Algorithm
batch-egg-rewrite
Rules
750×rational_best-simplify-83
656×rational_best-simplify-57
634×rational_best-simplify-47
622×rational_best-simplify-51
524×rational_best-simplify-52
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01019
16413
211513
331413
4125713
Stop Event
node limit
Counts
1 → 90
Calls
Call 1
Inputs
(-.f64 (-.f64 (*.f64 x y) 0) (*.f64 y z))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x y) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (neg.f64 z)) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (neg.f64 z)) (neg.f64 (neg.f64 (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (+.f64 y y)) (neg.f64 (*.f64 y (+.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 x (-.f64 z x))) (neg.f64 (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 x y)) (*.f64 y (-.f64 x (-.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 y 1/2)) (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x z) (*.f64 y 1/2)) (*.f64 (-.f64 x z) (*.f64 y 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (+.f64 x z)) (*.f64 (*.f64 y z) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 2) (/.f64 (*.f64 y (-.f64 z x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (+.f64 x (*.f64 -2 z))) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y z) (*.f64 y (-.f64 z x))) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y z) -2) (+.f64 (*.f64 x y) (/.f64 (*.f64 y z) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y z) -2) (neg.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y z) -2) (/.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 x y)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y z) -2) (-.f64 (/.f64 (*.f64 y z) -2) (neg.f64 (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 y z) -2)) (/.f64 (*.f64 y z) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 y z) -2)) (-.f64 (*.f64 x y) (+.f64 (*.f64 x y) (*.f64 y (*.f64 z 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (neg.f64 (*.f64 x y))) (*.f64 y (neg.f64 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x y) 4) (+.f64 (/.f64 (*.f64 x y) 4) (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (*.f64 (-.f64 x z) (*.f64 y 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (/.f64 (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y z)) (*.f64 x (*.f64 y 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y z)) (neg.f64 (/.f64 (*.f64 x y) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y (+.f64 x z))) (-.f64 (*.f64 x (*.f64 y 1/2)) (neg.f64 (*.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x y) (*.f64 x (*.f64 y 1/2))) (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (+.f64 y y)) (*.f64 y (*.f64 z 1/2))) (neg.f64 (+.f64 (*.f64 x y) (*.f64 y (*.f64 z 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (+.f64 y y)) (*.f64 x (*.f64 y 1/2))) (neg.f64 (+.f64 (*.f64 y z) (*.f64 x (*.f64 y 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y (+.f64 x z)) (*.f64 y (*.f64 z 1/2))) (neg.f64 (*.f64 3 (*.f64 y (*.f64 z 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 x y)) -1) (/.f64 (*.f64 y z) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (+.f64 (*.f64 y z) (/.f64 (*.f64 x y) -2)) -1) (/.f64 (/.f64 (*.f64 x y) -2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y (-.f64 x (-.f64 z x))) 4) (/.f64 (+.f64 (*.f64 y (neg.f64 z)) (*.f64 y (*.f64 -2 (-.f64 z x)))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x z) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x z) (-.f64 0 (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (-.f64 x z) (*.f64 y 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (*.f64 -2 (-.f64 z x))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (/.f64 (-.f64 x z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 1/2 (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 (-.f64 x z) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 1 (/.f64 (-.f64 x z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 -1 (/.f64 (-.f64 z x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 y (-.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 y (*.f64 -2 (-.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 1/2) (*.f64 -2 (-.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (-.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 4) (/.f64 (-.f64 x z) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 4) (*.f64 1/2 (/.f64 (-.f64 x z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x z) (*.f64 y 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (-.f64 z x)) (*.f64 y 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (-.f64 z x)) (/.f64 y -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (*.f64 y (-.f64 x z)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x z) 4) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (*.f64 -2 (-.f64 z x))) 4) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 y y) 4) (/.f64 (-.f64 x z) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 y y) 4) (*.f64 1/4 (/.f64 (-.f64 x z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (/.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (*.f64 y 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 y) (*.f64 (-.f64 z x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 y) (*.f64 1 (/.f64 (-.f64 z x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x z) 2) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 -2 (-.f64 z x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 2 (-.f64 z x))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (*.f64 -2 (-.f64 z x))) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 y y) (*.f64 2 (-.f64 z x))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 y y) (*.f64 2 (-.f64 z x))) -1) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z x) (*.f64 (+.f64 y y) 4)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 y (*.f64 z 4))) (*.f64 x (*.f64 y 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x (*.f64 (+.f64 y y) 4)) (*.f64 y (*.f64 2 (*.f64 z 4)))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 (*.f64 z 4) (*.f64 y 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x (*.f64 (+.f64 y y) 4)) (*.f64 y (+.f64 (*.f64 z 4) (*.f64 x 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 y y) (+.f64 x z)) (*.f64 y (*.f64 z 4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y (+.f64 (*.f64 z 4) (*.f64 x 4))) (*.f64 y (*.f64 2 (*.f64 z 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (*.f64 y 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 x 4) (*.f64 z 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (-.f64 z x)))))))

simplify442.0ms (2.3%)

Algorithm
egg-herbie
Rules
1336×rational_best-simplify-1
1314×rational_best-simplify-57
994×rational_best-simplify-56
912×rational_best-simplify-3
614×rational_best-simplify-75
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02353044
16242334
215231864
340441840
Stop Event
node limit
Counts
126 → 127
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 x y) (*.f64 y (neg.f64 z)))
(+.f64 0 (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x z)) 0)
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 x y))
(+.f64 (*.f64 y (neg.f64 z)) (neg.f64 (neg.f64 (*.f64 x y))))
(+.f64 (*.f64 x (+.f64 y y)) (neg.f64 (*.f64 y (+.f64 x z))))
(+.f64 (*.f64 y (-.f64 x (-.f64 z x))) (neg.f64 (*.f64 x y)))
(+.f64 (neg.f64 (*.f64 x y)) (*.f64 y (-.f64 x (-.f64 z x))))
(+.f64 (*.f64 x (*.f64 y 1/2)) (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y z)))
(+.f64 (*.f64 (-.f64 x z) (*.f64 y 1/2)) (*.f64 (-.f64 x z) (*.f64 y 1/2)))
(+.f64 (*.f64 y (+.f64 x z)) (*.f64 (*.f64 y z) -2))
(+.f64 (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 2) (/.f64 (*.f64 y (-.f64 z x)) 2))
(+.f64 (*.f64 y (+.f64 x (*.f64 -2 z))) (*.f64 y z))
(+.f64 (-.f64 (*.f64 y z) (*.f64 y (-.f64 z x))) (*.f64 y (neg.f64 z)))
(+.f64 (/.f64 (*.f64 y z) -2) (+.f64 (*.f64 x y) (/.f64 (*.f64 y z) -2)))
(+.f64 (/.f64 (*.f64 y z) -2) (neg.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 x y))))
(+.f64 (/.f64 (*.f64 y z) -2) (/.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 x y)) -1))
(+.f64 (/.f64 (*.f64 y z) -2) (-.f64 (/.f64 (*.f64 y z) -2) (neg.f64 (*.f64 x y))))
(+.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 y z) -2)) (/.f64 (*.f64 y z) -2))
(+.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 y z) -2)) (-.f64 (*.f64 x y) (+.f64 (*.f64 x y) (*.f64 y (*.f64 z 1/2)))))
(+.f64 (neg.f64 (neg.f64 (*.f64 x y))) (*.f64 y (neg.f64 z)))
(+.f64 (/.f64 (*.f64 x y) 4) (+.f64 (/.f64 (*.f64 x y) 4) (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y z))))
(+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (*.f64 (-.f64 x z) (*.f64 y 1/2))))
(+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (/.f64 (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 2) 2))
(+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 4))
(+.f64 (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y z)) (*.f64 x (*.f64 y 1/2)))
(+.f64 (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y z)) (neg.f64 (/.f64 (*.f64 x y) -2)))
(+.f64 (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y (+.f64 x z))) (-.f64 (*.f64 x (*.f64 y 1/2)) (neg.f64 (*.f64 x y))))
(+.f64 (-.f64 (*.f64 x y) (*.f64 x (*.f64 y 1/2))) (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y z)))
(+.f64 (-.f64 (*.f64 x (+.f64 y y)) (*.f64 y (*.f64 z 1/2))) (neg.f64 (+.f64 (*.f64 x y) (*.f64 y (*.f64 z 1/2)))))
(+.f64 (-.f64 (*.f64 x (+.f64 y y)) (*.f64 x (*.f64 y 1/2))) (neg.f64 (+.f64 (*.f64 y z) (*.f64 x (*.f64 y 1/2)))))
(+.f64 (-.f64 (*.f64 y (+.f64 x z)) (*.f64 y (*.f64 z 1/2))) (neg.f64 (*.f64 3 (*.f64 y (*.f64 z 1/2)))))
(+.f64 (/.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 x y)) -1) (/.f64 (*.f64 y z) -2))
(+.f64 (/.f64 (+.f64 (*.f64 y z) (/.f64 (*.f64 x y) -2)) -1) (/.f64 (/.f64 (*.f64 x y) -2) -1))
(+.f64 (/.f64 (*.f64 y (-.f64 x (-.f64 z x))) 4) (/.f64 (+.f64 (*.f64 y (neg.f64 z)) (*.f64 y (*.f64 -2 (-.f64 z x)))) 4))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 1 (*.f64 y (-.f64 x z)))
(*.f64 (*.f64 y (-.f64 z x)) -1)
(*.f64 (-.f64 x z) y)
(*.f64 (-.f64 x z) (-.f64 0 (neg.f64 y)))
(*.f64 2 (*.f64 (-.f64 x z) (*.f64 y 1/2)))
(*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 1/2))
(*.f64 (*.f64 y (*.f64 -2 (-.f64 z x))) 1/2)
(*.f64 (+.f64 y y) (/.f64 (-.f64 x z) 2))
(*.f64 (+.f64 y y) (*.f64 1/2 (-.f64 x z)))
(*.f64 (+.f64 y y) (*.f64 (-.f64 x z) 1/2))
(*.f64 (+.f64 y y) (*.f64 1 (/.f64 (-.f64 x z) 2)))
(*.f64 (+.f64 y y) (*.f64 -1 (/.f64 (-.f64 z x) 2)))
(*.f64 -1 (*.f64 y (-.f64 z x)))
(*.f64 (-.f64 z x) (neg.f64 y))
(*.f64 1/2 (*.f64 y (*.f64 -2 (-.f64 z x))))
(*.f64 (*.f64 y 1/2) (*.f64 -2 (-.f64 z x)))
(*.f64 (neg.f64 y) (-.f64 z x))
(*.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 1/4)
(*.f64 (*.f64 y 4) (/.f64 (-.f64 x z) 4))
(*.f64 (*.f64 y 4) (*.f64 1/2 (/.f64 (-.f64 x z) 2)))
(*.f64 (*.f64 (-.f64 x z) (*.f64 y 1/2)) 2)
(*.f64 (*.f64 -2 (-.f64 z x)) (*.f64 y 1/2))
(*.f64 (*.f64 2 (-.f64 z x)) (/.f64 y -2))
(*.f64 1/4 (*.f64 (*.f64 y (-.f64 x z)) 4))
(*.f64 (/.f64 (-.f64 x z) 4) (*.f64 y 4))
(*.f64 (*.f64 (*.f64 y (*.f64 -2 (-.f64 z x))) 4) 1/8)
(*.f64 (*.f64 (+.f64 y y) 4) (/.f64 (-.f64 x z) 8))
(*.f64 (*.f64 (+.f64 y y) 4) (*.f64 1/4 (/.f64 (-.f64 x z) 2)))
(*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (/.f64 y 4))
(*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (*.f64 y 1/4))
(*.f64 (*.f64 -2 y) (*.f64 (-.f64 z x) 1/2))
(*.f64 (*.f64 -2 y) (*.f64 1 (/.f64 (-.f64 z x) 2)))
(*.f64 (/.f64 (-.f64 x z) 2) (+.f64 y y))
(/.f64 (*.f64 y (-.f64 x z)) 1)
(/.f64 (*.f64 y (-.f64 z x)) -1)
(/.f64 (*.f64 y (*.f64 -2 (-.f64 z x))) 2)
(/.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 4)
(/.f64 (*.f64 y (*.f64 2 (-.f64 z x))) -2)
(/.f64 (*.f64 (*.f64 y (*.f64 -2 (-.f64 z x))) 4) 8)
(/.f64 (*.f64 (+.f64 y y) (*.f64 2 (-.f64 z x))) -4)
(/.f64 (/.f64 (*.f64 (+.f64 y y) (*.f64 2 (-.f64 z x))) -1) 4)
(/.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) -4)
(/.f64 (*.f64 (-.f64 z x) (*.f64 (+.f64 y y) 4)) -8)
(/.f64 (+.f64 (neg.f64 (*.f64 y (*.f64 z 4))) (*.f64 x (*.f64 y 4))) 4)
(/.f64 (-.f64 (*.f64 x (*.f64 (+.f64 y y) 4)) (*.f64 y (*.f64 2 (*.f64 z 4)))) 8)
(/.f64 (-.f64 (*.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 (*.f64 z 4) (*.f64 y 4))) 16)
(/.f64 (-.f64 (*.f64 x (*.f64 (+.f64 y y) 4)) (*.f64 y (+.f64 (*.f64 z 4) (*.f64 x 4)))) 4)
(/.f64 (-.f64 (*.f64 (+.f64 y y) (+.f64 x z)) (*.f64 y (*.f64 z 4))) 2)
(/.f64 (-.f64 (*.f64 y (+.f64 (*.f64 z 4) (*.f64 x 4))) (*.f64 y (*.f64 2 (*.f64 z 4)))) 4)
(/.f64 (*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (*.f64 y 4)) 16)
(/.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 x 4) (*.f64 z 4))) 16)
(pow.f64 (*.f64 y (-.f64 x z)) 1)
(neg.f64 (*.f64 y (-.f64 z x)))
Outputs
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 x y) (*.f64 y (neg.f64 z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 0 (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (-.f64 x z)) 0)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 x y))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (neg.f64 z)) (neg.f64 (neg.f64 (*.f64 x y))))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 x (+.f64 y y)) (neg.f64 (*.f64 y (+.f64 x z))))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (-.f64 x (-.f64 z x))) (neg.f64 (*.f64 x y)))
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 y (-.f64 x (-.f64 z x))))
(-.f64 (*.f64 y (-.f64 x (-.f64 z x))) (*.f64 y x))
(*.f64 y (-.f64 (-.f64 x (-.f64 z x)) x))
(+.f64 (neg.f64 (*.f64 x y)) (*.f64 y (-.f64 x (-.f64 z x))))
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 y (-.f64 x (-.f64 z x))))
(-.f64 (*.f64 y (-.f64 x (-.f64 z x))) (*.f64 y x))
(*.f64 y (-.f64 (-.f64 x (-.f64 z x)) x))
(+.f64 (*.f64 x (*.f64 y 1/2)) (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 (-.f64 x z) (*.f64 y 1/2)) (*.f64 (-.f64 x z) (*.f64 y 1/2)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (+.f64 x z)) (*.f64 (*.f64 y z) -2))
(+.f64 (*.f64 y (+.f64 z x)) (*.f64 (*.f64 y z) -2))
(+.f64 (*.f64 y (+.f64 z x)) (*.f64 y (*.f64 z -2)))
(+.f64 (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 2) (/.f64 (*.f64 y (-.f64 z x)) 2))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (+.f64 x (*.f64 -2 z))) (*.f64 y z))
(+.f64 (*.f64 y z) (*.f64 y (+.f64 x (*.f64 z -2))))
(*.f64 y (+.f64 (+.f64 x (*.f64 z -2)) z))
(*.f64 y (+.f64 z (+.f64 x (*.f64 z -2))))
(+.f64 (-.f64 (*.f64 y z) (*.f64 y (-.f64 z x))) (*.f64 y (neg.f64 z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (*.f64 y z) -2) (+.f64 (*.f64 x y) (/.f64 (*.f64 y z) -2)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (*.f64 y z) -2) (neg.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 x y))))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (*.f64 y z) -2) (/.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 x y)) -1))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (*.f64 y z) -2) (-.f64 (/.f64 (*.f64 y z) -2) (neg.f64 (*.f64 x y))))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 y z) -2)) (/.f64 (*.f64 y z) -2))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 y z) -2)) (-.f64 (*.f64 x y) (+.f64 (*.f64 x y) (*.f64 y (*.f64 z 1/2)))))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (neg.f64 (neg.f64 (*.f64 x y))) (*.f64 y (neg.f64 z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (*.f64 x y) 4) (+.f64 (/.f64 (*.f64 x y) 4) (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y z))))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (*.f64 (-.f64 x z) (*.f64 y 1/2))))
(+.f64 (*.f64 (-.f64 x z) (*.f64 y 1/2)) (+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (/.f64 (*.f64 y (-.f64 x z)) 4)))
(+.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (/.f64 (*.f64 (-.f64 x z) (+.f64 y y)) 4))
(+.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (/.f64 (*.f64 y (-.f64 x z)) 2))
(+.f64 (*.f64 y (*.f64 (-.f64 x z) 1/2)) (*.f64 y (/.f64 (-.f64 z x) -2)))
(+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (/.f64 (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 2) 2))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 4))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y z)) (*.f64 x (*.f64 y 1/2)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y z)) (neg.f64 (/.f64 (*.f64 x y) -2)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y (+.f64 x z))) (-.f64 (*.f64 x (*.f64 y 1/2)) (neg.f64 (*.f64 x y))))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 (*.f64 x y) (*.f64 x (*.f64 y 1/2))) (-.f64 (*.f64 x (*.f64 y 1/2)) (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 (*.f64 x (+.f64 y y)) (*.f64 y (*.f64 z 1/2))) (neg.f64 (+.f64 (*.f64 x y) (*.f64 y (*.f64 z 1/2)))))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 (*.f64 x (+.f64 y y)) (*.f64 x (*.f64 y 1/2))) (neg.f64 (+.f64 (*.f64 y z) (*.f64 x (*.f64 y 1/2)))))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 (*.f64 y (+.f64 x z)) (*.f64 y (*.f64 z 1/2))) (neg.f64 (*.f64 3 (*.f64 y (*.f64 z 1/2)))))
(-.f64 (*.f64 y (+.f64 z x)) (+.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 (*.f64 z 1/2) (*.f64 y 3))))
(+.f64 (*.f64 y (-.f64 (+.f64 z x) (*.f64 z 1/2))) (neg.f64 (*.f64 (*.f64 y z) 3/2)))
(-.f64 (*.f64 y (+.f64 z x)) (*.f64 (*.f64 y (*.f64 z 1/2)) 4))
(+.f64 (/.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 x y)) -1) (/.f64 (*.f64 y z) -2))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (+.f64 (*.f64 y z) (/.f64 (*.f64 x y) -2)) -1) (/.f64 (/.f64 (*.f64 x y) -2) -1))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (*.f64 y (-.f64 x (-.f64 z x))) 4) (/.f64 (+.f64 (*.f64 y (neg.f64 z)) (*.f64 y (*.f64 -2 (-.f64 z x)))) 4))
(/.f64 (+.f64 (*.f64 y (-.f64 x (-.f64 z x))) (+.f64 (*.f64 y (neg.f64 z)) (*.f64 y (*.f64 (-.f64 z x) -2)))) 4)
(/.f64 (+.f64 (*.f64 y (-.f64 x (-.f64 z x))) (*.f64 y (+.f64 (neg.f64 z) (*.f64 (-.f64 z x) -2)))) 4)
(/.f64 (+.f64 (*.f64 y (*.f64 (-.f64 z x) -2)) (*.f64 y (+.f64 (neg.f64 z) (-.f64 x (-.f64 z x))))) 4)
(+.f64 (/.f64 (*.f64 y (+.f64 (neg.f64 z) (-.f64 x (-.f64 z x)))) 4) (*.f64 y (/.f64 (-.f64 z x) -2)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 (*.f64 y (-.f64 x z)) 1)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 1 (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (-.f64 z x)) -1)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) (-.f64 0 (neg.f64 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 2 (*.f64 (-.f64 x z) (*.f64 y 1/2)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 1/2))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (*.f64 -2 (-.f64 z x))) 1/2)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 y y) (/.f64 (-.f64 x z) 2))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 y y) (*.f64 1/2 (-.f64 x z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 y y) (*.f64 (-.f64 x z) 1/2))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 y y) (*.f64 1 (/.f64 (-.f64 x z) 2)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 y y) (*.f64 -1 (/.f64 (-.f64 z x) 2)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 z x) (neg.f64 y))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 1/2 (*.f64 y (*.f64 -2 (-.f64 z x))))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y 1/2) (*.f64 -2 (-.f64 z x)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (neg.f64 y) (-.f64 z x))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 1/4)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y 4) (/.f64 (-.f64 x z) 4))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y 4) (*.f64 1/2 (/.f64 (-.f64 x z) 2)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (-.f64 x z) (*.f64 y 1/2)) 2)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 -2 (-.f64 z x)) (*.f64 y 1/2))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 2 (-.f64 z x)) (/.f64 y -2))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 1/4 (*.f64 (*.f64 y (-.f64 x z)) 4))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (/.f64 (-.f64 x z) 4) (*.f64 y 4))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (*.f64 y (*.f64 -2 (-.f64 z x))) 4) 1/8)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (+.f64 y y) 4) (/.f64 (-.f64 x z) 8))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (+.f64 y y) 4) (*.f64 1/4 (/.f64 (-.f64 x z) 2)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (/.f64 y 4))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (*.f64 y 1/4))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 -2 y) (*.f64 (-.f64 z x) 1/2))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 -2 y) (*.f64 1 (/.f64 (-.f64 z x) 2)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (/.f64 (-.f64 x z) 2) (+.f64 y y))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (-.f64 x z)) 1)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (-.f64 z x)) -1)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (*.f64 -2 (-.f64 z x))) 2)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 4)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (*.f64 2 (-.f64 z x))) -2)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (*.f64 y (*.f64 -2 (-.f64 z x))) 4) 8)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (+.f64 y y) (*.f64 2 (-.f64 z x))) -4)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (/.f64 (*.f64 (+.f64 y y) (*.f64 2 (-.f64 z x))) -1) 4)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) -4)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 z x) (*.f64 (+.f64 y y) 4)) -8)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (+.f64 (neg.f64 (*.f64 y (*.f64 z 4))) (*.f64 x (*.f64 y 4))) 4)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (-.f64 (*.f64 x (*.f64 (+.f64 y y) 4)) (*.f64 y (*.f64 2 (*.f64 z 4)))) 8)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (-.f64 (*.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 (*.f64 z 4) (*.f64 y 4))) 16)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (-.f64 (*.f64 x (*.f64 (+.f64 y y) 4)) (*.f64 y (+.f64 (*.f64 z 4) (*.f64 x 4)))) 4)
(/.f64 (-.f64 (*.f64 4 (*.f64 x (+.f64 y y))) (*.f64 y (*.f64 4 (+.f64 z x)))) 4)
(/.f64 (-.f64 (*.f64 (+.f64 y y) (*.f64 x 4)) (*.f64 y (*.f64 (+.f64 z x) 4))) 4)
(/.f64 (-.f64 (*.f64 x (*.f64 y 8)) (*.f64 y (*.f64 (+.f64 z x) 4))) 4)
(/.f64 (*.f64 (*.f64 y 4) (-.f64 (+.f64 x x) (+.f64 z x))) 4)
(/.f64 (-.f64 (*.f64 (+.f64 y y) (+.f64 x z)) (*.f64 y (*.f64 z 4))) 2)
(/.f64 (-.f64 (*.f64 (+.f64 y y) (+.f64 z x)) (*.f64 y (*.f64 z 4))) 2)
(/.f64 (-.f64 (*.f64 (+.f64 y y) (+.f64 z x)) (*.f64 (*.f64 y z) 4)) 2)
(/.f64 (-.f64 (*.f64 y (+.f64 (*.f64 z 4) (*.f64 x 4))) (*.f64 y (*.f64 2 (*.f64 z 4)))) 4)
(/.f64 (-.f64 (*.f64 y (*.f64 4 (+.f64 z x))) (*.f64 y (*.f64 2 (*.f64 z 4)))) 4)
(/.f64 (*.f64 y (-.f64 (*.f64 (+.f64 z x) 4) (*.f64 z 8))) 4)
(/.f64 (*.f64 y (-.f64 (*.f64 z -4) (/.f64 x -1/4))) 4)
(/.f64 (*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (*.f64 y 4)) 16)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 x 4) (*.f64 z 4))) 16)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(pow.f64 (*.f64 y (-.f64 x z)) 1)
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))
(neg.f64 (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x (neg.f64 z)))
(*.f64 y (-.f64 x z))

eval236.0ms (1.2%)

Compiler

Compiled 3982 to 2185 computations (45.1% saved)

prune237.0ms (1.2%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New2834287
Fresh000
Picked101
Done011
Total2845289
Error
0b
Counts
289 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(-.f64 (*.f64 y (-.f64 x (-.f64 z x))) (*.f64 y x))
0.0b
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
29.7b
(*.f64 z (neg.f64 y))
0.0b
(*.f64 y (-.f64 x z))
28.9b
(*.f64 y x)
Compiler

Compiled 46 to 29 computations (37% saved)

localize22.0ms (0.1%)

Compiler

Compiled 8 to 4 computations (50% saved)

localize7.0ms (0%)

Compiler

Compiled 11 to 5 computations (54.5% saved)

localize36.0ms (0.2%)

Local error

Found 1 expressions with local error:

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

Compiled 23 to 7 computations (69.6% saved)

series2.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite246.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
812×rational_best-simplify-48
804×rational_best-simplify-52
794×rational_best-simplify-47
784×rational_best-simplify-63
736×rational_best-simplify-55
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01023
17123
215519
343613
4168313
Stop Event
node limit
Counts
1 → 78
Calls
Call 1
Inputs
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (neg.f64 y)) (neg.f64 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (neg.f64 y)) (-.f64 (*.f64 y x) (*.f64 x (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (neg.f64 y)) (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (*.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y x) (*.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y x) (-.f64 (*.f64 y (+.f64 z x)) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y x) (+.f64 (*.f64 y x) (*.f64 y (-.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y x) (+.f64 (-.f64 (*.f64 y (+.f64 z x)) (*.f64 y x)) 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y x) (+.f64 (/.f64 (*.f64 y (-.f64 x z)) -2) (/.f64 (*.f64 y (+.f64 z x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (-.f64 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (-.f64 x z)) (*.f64 z 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 y (-.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 (*.f64 y (+.f64 z x)) (*.f64 (*.f64 y x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (*.f64 z (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (+.f64 y y)) (*.f64 y (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (/.f64 y -1/2)) (-.f64 0 (*.f64 y (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (/.f64 y -1/2)) (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (/.f64 y -1/2)) (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (*.f64 z 0)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (-.f64 (+.f64 x x) z)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 y x) 2) (+.f64 (*.f64 z y) (/.f64 (*.f64 y x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 y x) 2) (+.f64 (/.f64 (*.f64 y x) -2) (*.f64 z y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 y x) 2) (+.f64 (-.f64 (*.f64 y (+.f64 z x)) (*.f64 y x)) (/.f64 (*.f64 y x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 y x) 2) (+.f64 (/.f64 (*.f64 y (-.f64 x z)) -2) (/.f64 (*.f64 z y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 y (-.f64 x z)) 2) (/.f64 (*.f64 y (-.f64 x z)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (*.f64 y -1/2)) (-.f64 (/.f64 (*.f64 z y) 2) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (*.f64 y -1/2)) (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (*.f64 -3 (*.f64 z (*.f64 y -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (*.f64 y -1/2)) (+.f64 (/.f64 (*.f64 y (-.f64 x z)) -2) (/.f64 (*.f64 y x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 z (*.f64 y -1/2)) (+.f64 (/.f64 (*.f64 z y) 2) (neg.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (+.f64 z x)) (*.f64 z (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 3 (*.f64 z (*.f64 y -1/2))) (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (/.f64 (*.f64 z y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 y x) 2) (*.f64 z y)) (/.f64 (*.f64 y x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 y x) (*.f64 z (*.f64 y -1/2))) (/.f64 (*.f64 z y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (*.f64 y x) 3) 2) (+.f64 (*.f64 y (+.f64 z x)) (/.f64 (*.f64 y x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 (neg.f64 (*.f64 y x))) (*.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y x) (/.f64 (*.f64 z y) 2)) (/.f64 (*.f64 z y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 3 (/.f64 (*.f64 y x) 2)) (+.f64 (*.f64 y (+.f64 z x)) (/.f64 (*.f64 y x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (*.f64 (*.f64 y x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 y x) 2) (-.f64 (*.f64 y (+.f64 z x)) (*.f64 y x))) (/.f64 (*.f64 y x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 (*.f64 y x) 3) 2) (*.f64 y (+.f64 z x))) (/.f64 (*.f64 y x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 3 (/.f64 (*.f64 y x) 2)) (*.f64 y (+.f64 z x))) (/.f64 (*.f64 y x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 z (neg.f64 y)) (-.f64 0 (*.f64 y (+.f64 z x)))) (*.f64 z y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 0 (*.f64 y (+.f64 z x)))) (*.f64 z (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 z (*.f64 y -1/2)) (-.f64 0 (*.f64 y (+.f64 z x)))) (*.f64 -3 (*.f64 z (*.f64 y -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 3 (*.f64 z (*.f64 y -1/2))) (-.f64 0 (*.f64 y (+.f64 z x)))) (/.f64 (*.f64 z y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 y x) (/.f64 (*.f64 y (-.f64 x z)) -2)) (/.f64 (*.f64 y (+.f64 z x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 y x) 2) (/.f64 (*.f64 y (-.f64 x z)) -2)) (/.f64 (*.f64 z y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 (+.f64 x x) (+.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 y (-.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (-.f64 (*.f64 x 1/2) (*.f64 z 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (+.f64 (*.f64 z -1/2) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (+.f64 (*.f64 x 1/2) (*.f64 z -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 y y) (-.f64 x z)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 y y) (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 1/2) (-.f64 (+.f64 x x) (+.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 1/2) (-.f64 (*.f64 x 4) (*.f64 2 (+.f64 z x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 1/2) (+.f64 (*.f64 z -2) (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 1/2) (+.f64 (+.f64 x x) (*.f64 z -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x z) (*.f64 y 4)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (-.f64 x z) (*.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x z) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (+.f64 y y) (-.f64 x z)) 4) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 y y) (-.f64 x z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x z) (*.f64 y 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 y (-.f64 z x))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 y y) (-.f64 x z)) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (*.f64 (-.f64 x z) (*.f64 y 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (-.f64 0 (*.f64 (-.f64 x z) (*.f64 y 4))) -1) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 z (*.f64 2 (*.f64 y -4))) (*.f64 y (*.f64 2 (*.f64 x 4)))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (*.f64 y -4) (*.f64 z 4)) (*.f64 (*.f64 x 4) (*.f64 y 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 y (*.f64 2 (*.f64 x 4))) (*.f64 z (*.f64 2 (*.f64 y -4)))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 (*.f64 y -4) (*.f64 z 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (-.f64 z x)))))))

simplify409.0ms (2.1%)

Algorithm
egg-herbie
Rules
1128×rational_best-simplify-63
1118×rational_best-simplify-57
1024×rational_best-simplify-47
852×rational_best-simplify-1
848×rational_best-simplify-49
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02122810
15072784
210981820
331251812
Stop Event
node limit
Counts
114 → 105
Calls
Call 1
Inputs
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (+.f64 (*.f64 -1 z) x))
(*.f64 y (+.f64 (*.f64 -1 z) x))
(*.f64 y (+.f64 (*.f64 -1 z) x))
(*.f64 y (+.f64 (*.f64 -1 z) x))
(*.f64 y (+.f64 (*.f64 -1 z) x))
(*.f64 y (+.f64 (*.f64 -1 z) x))
(*.f64 y (+.f64 (*.f64 -1 z) x))
(*.f64 y (+.f64 (*.f64 -1 z) x))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) z)))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) z)))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) z)))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) z)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(-.f64 (*.f64 z (neg.f64 y)) (neg.f64 (*.f64 y x)))
(-.f64 (*.f64 z (neg.f64 y)) (-.f64 (*.f64 y x) (*.f64 x (+.f64 y y))))
(-.f64 (*.f64 z (neg.f64 y)) (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (*.f64 z y)))
(-.f64 (*.f64 y x) (*.f64 z y))
(-.f64 (*.f64 y x) (-.f64 (*.f64 y (+.f64 z x)) (*.f64 y x)))
(-.f64 (*.f64 y x) (+.f64 (*.f64 y x) (*.f64 y (-.f64 z x))))
(-.f64 (*.f64 y x) (+.f64 (-.f64 (*.f64 y (+.f64 z x)) (*.f64 y x)) 0))
(-.f64 (*.f64 y x) (+.f64 (/.f64 (*.f64 y (-.f64 x z)) -2) (/.f64 (*.f64 y (+.f64 z x)) 2)))
(-.f64 (*.f64 y (-.f64 x z)) 0)
(-.f64 (*.f64 y (-.f64 x z)) (*.f64 z 0))
(-.f64 0 (*.f64 y (-.f64 z x)))
(-.f64 0 (+.f64 (*.f64 y (+.f64 z x)) (*.f64 (*.f64 y x) -2)))
(-.f64 0 (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (*.f64 z (+.f64 y y))))
(-.f64 (*.f64 x (+.f64 y y)) (*.f64 y (+.f64 z x)))
(-.f64 (*.f64 z (/.f64 y -1/2)) (-.f64 0 (*.f64 y (+.f64 z x))))
(-.f64 (*.f64 z (/.f64 y -1/2)) (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) 0))
(-.f64 (*.f64 z (/.f64 y -1/2)) (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (*.f64 z 0)))
(-.f64 (*.f64 y (-.f64 (+.f64 x x) z)) (*.f64 y x))
(-.f64 (/.f64 (*.f64 y x) 2) (+.f64 (*.f64 z y) (/.f64 (*.f64 y x) -2)))
(-.f64 (/.f64 (*.f64 y x) 2) (+.f64 (/.f64 (*.f64 y x) -2) (*.f64 z y)))
(-.f64 (/.f64 (*.f64 y x) 2) (+.f64 (-.f64 (*.f64 y (+.f64 z x)) (*.f64 y x)) (/.f64 (*.f64 y x) -2)))
(-.f64 (/.f64 (*.f64 y x) 2) (+.f64 (/.f64 (*.f64 y (-.f64 x z)) -2) (/.f64 (*.f64 z y) 2)))
(-.f64 (/.f64 (*.f64 y (-.f64 x z)) 2) (/.f64 (*.f64 y (-.f64 x z)) -2))
(-.f64 (*.f64 z (*.f64 y -1/2)) (-.f64 (/.f64 (*.f64 z y) 2) (*.f64 y x)))
(-.f64 (*.f64 z (*.f64 y -1/2)) (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (*.f64 -3 (*.f64 z (*.f64 y -1/2)))))
(-.f64 (*.f64 z (*.f64 y -1/2)) (+.f64 (/.f64 (*.f64 y (-.f64 x z)) -2) (/.f64 (*.f64 y x) -2)))
(-.f64 (*.f64 z (*.f64 y -1/2)) (+.f64 (/.f64 (*.f64 z y) 2) (neg.f64 (*.f64 y x))))
(-.f64 (*.f64 y (+.f64 z x)) (*.f64 z (+.f64 y y)))
(-.f64 (*.f64 3 (*.f64 z (*.f64 y -1/2))) (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (/.f64 (*.f64 z y) 2)))
(-.f64 (-.f64 (/.f64 (*.f64 y x) 2) (*.f64 z y)) (/.f64 (*.f64 y x) -2))
(-.f64 (+.f64 (*.f64 y x) (*.f64 z (*.f64 y -1/2))) (/.f64 (*.f64 z y) 2))
(-.f64 (/.f64 (*.f64 (*.f64 y x) 3) 2) (+.f64 (*.f64 y (+.f64 z x)) (/.f64 (*.f64 y x) -2)))
(-.f64 (neg.f64 (neg.f64 (*.f64 y x))) (*.f64 z y))
(-.f64 (-.f64 (*.f64 y x) (/.f64 (*.f64 z y) 2)) (/.f64 (*.f64 z y) 2))
(-.f64 (*.f64 3 (/.f64 (*.f64 y x) 2)) (+.f64 (*.f64 y (+.f64 z x)) (/.f64 (*.f64 y x) -2)))
(-.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (*.f64 (*.f64 y x) -2))
(-.f64 (-.f64 (/.f64 (*.f64 y x) 2) (-.f64 (*.f64 y (+.f64 z x)) (*.f64 y x))) (/.f64 (*.f64 y x) -2))
(-.f64 (-.f64 (/.f64 (*.f64 (*.f64 y x) 3) 2) (*.f64 y (+.f64 z x))) (/.f64 (*.f64 y x) -2))
(-.f64 (-.f64 (*.f64 3 (/.f64 (*.f64 y x) 2)) (*.f64 y (+.f64 z x))) (/.f64 (*.f64 y x) -2))
(-.f64 (-.f64 (*.f64 z (neg.f64 y)) (-.f64 0 (*.f64 y (+.f64 z x)))) (*.f64 z y))
(-.f64 (-.f64 0 (-.f64 0 (*.f64 y (+.f64 z x)))) (*.f64 z (+.f64 y y)))
(-.f64 (-.f64 (*.f64 z (*.f64 y -1/2)) (-.f64 0 (*.f64 y (+.f64 z x)))) (*.f64 -3 (*.f64 z (*.f64 y -1/2))))
(-.f64 (-.f64 (*.f64 3 (*.f64 z (*.f64 y -1/2))) (-.f64 0 (*.f64 y (+.f64 z x)))) (/.f64 (*.f64 z y) 2))
(-.f64 (-.f64 (*.f64 y x) (/.f64 (*.f64 y (-.f64 x z)) -2)) (/.f64 (*.f64 y (+.f64 z x)) 2))
(-.f64 (-.f64 (/.f64 (*.f64 y x) 2) (/.f64 (*.f64 y (-.f64 x z)) -2)) (/.f64 (*.f64 z y) 2))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 (+.f64 x x) (+.f64 z x)))
(*.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 1 (*.f64 y (-.f64 x z)))
(*.f64 -1 (*.f64 y (-.f64 z x)))
(*.f64 (+.f64 y y) (-.f64 (*.f64 x 1/2) (*.f64 z 1/2)))
(*.f64 (+.f64 y y) (+.f64 (*.f64 z -1/2) (*.f64 x 1/2)))
(*.f64 (+.f64 y y) (+.f64 (*.f64 x 1/2) (*.f64 z -1/2)))
(*.f64 (*.f64 (+.f64 y y) (-.f64 x z)) 1/2)
(*.f64 1/2 (*.f64 (+.f64 y y) (-.f64 x z)))
(*.f64 (*.f64 y 1/2) (-.f64 (+.f64 x x) (+.f64 z z)))
(*.f64 (*.f64 y 1/2) (-.f64 (*.f64 x 4) (*.f64 2 (+.f64 z x))))
(*.f64 (*.f64 y 1/2) (+.f64 (*.f64 z -2) (+.f64 x x)))
(*.f64 (*.f64 y 1/2) (+.f64 (+.f64 x x) (*.f64 z -2)))
(*.f64 (*.f64 y (-.f64 z x)) -1)
(*.f64 (*.f64 (-.f64 x z) (*.f64 y 4)) 1/4)
(*.f64 1/4 (*.f64 (-.f64 x z) (*.f64 y 4)))
(*.f64 (-.f64 x z) y)
(*.f64 (*.f64 (*.f64 (+.f64 y y) (-.f64 x z)) 4) 1/8)
(/.f64 (*.f64 y (-.f64 x z)) 1)
(/.f64 (*.f64 (+.f64 y y) (-.f64 x z)) 2)
(/.f64 (*.f64 y (-.f64 z x)) -1)
(/.f64 (*.f64 (-.f64 x z) (*.f64 y 4)) 4)
(/.f64 (*.f64 2 (*.f64 y (-.f64 z x))) -2)
(/.f64 (*.f64 (*.f64 (+.f64 y y) (-.f64 x z)) 4) 8)
(/.f64 (-.f64 0 (*.f64 (-.f64 x z) (*.f64 y 4))) -4)
(/.f64 (/.f64 (-.f64 0 (*.f64 (-.f64 x z) (*.f64 y 4))) -1) 4)
(/.f64 (+.f64 (*.f64 z (*.f64 2 (*.f64 y -4))) (*.f64 y (*.f64 2 (*.f64 x 4)))) 8)
(/.f64 (+.f64 (*.f64 (*.f64 y -4) (*.f64 z 4)) (*.f64 (*.f64 x 4) (*.f64 y 4))) 16)
(/.f64 (+.f64 (*.f64 y (*.f64 2 (*.f64 x 4))) (*.f64 z (*.f64 2 (*.f64 y -4)))) 8)
(/.f64 (+.f64 (*.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 (*.f64 y -4) (*.f64 z 4))) 16)
(pow.f64 (*.f64 y (-.f64 x z)) 1)
(neg.f64 (*.f64 y (-.f64 z x)))
Outputs
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y (+.f64 (*.f64 -1 z) x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y (+.f64 (*.f64 -1 z) x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y (+.f64 (*.f64 -1 z) x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y (+.f64 (*.f64 -1 z) x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y (+.f64 (*.f64 -1 z) x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y (+.f64 (*.f64 -1 z) x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y (+.f64 (*.f64 -1 z) x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y (+.f64 (*.f64 -1 z) x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) z)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) z)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) z)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) z)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 z (neg.f64 y)) (neg.f64 (*.f64 y x)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 z (neg.f64 y)) (-.f64 (*.f64 y x) (*.f64 x (+.f64 y y))))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 z (neg.f64 y)) (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (*.f64 z y)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y x) (*.f64 z y))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y x) (-.f64 (*.f64 y (+.f64 z x)) (*.f64 y x)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y x) (+.f64 (*.f64 y x) (*.f64 y (-.f64 z x))))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y x) (+.f64 (-.f64 (*.f64 y (+.f64 z x)) (*.f64 y x)) 0))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y x) (+.f64 (/.f64 (*.f64 y (-.f64 x z)) -2) (/.f64 (*.f64 y (+.f64 z x)) 2)))
(-.f64 (-.f64 (*.f64 y x) (/.f64 (*.f64 y (-.f64 x z)) -2)) (/.f64 (*.f64 y (+.f64 x z)) 2))
(-.f64 (*.f64 y x) (/.f64 (+.f64 (neg.f64 (*.f64 y (-.f64 x z))) (*.f64 y (+.f64 x z))) 2))
(-.f64 (*.f64 y x) (/.f64 (+.f64 (*.f64 y (+.f64 x z)) (*.f64 y (-.f64 z x))) 2))
(-.f64 (*.f64 y (-.f64 x z)) 0)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y (-.f64 x z)) (*.f64 z 0))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 0 (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 0 (+.f64 (*.f64 y (+.f64 z x)) (*.f64 (*.f64 y x) -2)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 0 (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (*.f64 z (+.f64 y y))))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 x (+.f64 y y)) (*.f64 y (+.f64 z x)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 z (/.f64 y -1/2)) (-.f64 0 (*.f64 y (+.f64 z x))))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 z (/.f64 y -1/2)) (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) 0))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 z (/.f64 y -1/2)) (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (*.f64 z 0)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y (-.f64 (+.f64 x x) z)) (*.f64 y x))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (/.f64 (*.f64 y x) 2) (+.f64 (*.f64 z y) (/.f64 (*.f64 y x) -2)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (/.f64 (*.f64 y x) 2) (+.f64 (/.f64 (*.f64 y x) -2) (*.f64 z y)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (/.f64 (*.f64 y x) 2) (+.f64 (-.f64 (*.f64 y (+.f64 z x)) (*.f64 y x)) (/.f64 (*.f64 y x) -2)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (/.f64 (*.f64 y x) 2) (+.f64 (/.f64 (*.f64 y (-.f64 x z)) -2) (/.f64 (*.f64 z y) 2)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (/.f64 (*.f64 y (-.f64 x z)) 2) (/.f64 (*.f64 y (-.f64 x z)) -2))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 z (*.f64 y -1/2)) (-.f64 (/.f64 (*.f64 z y) 2) (*.f64 y x)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 z (*.f64 y -1/2)) (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (*.f64 -3 (*.f64 z (*.f64 y -1/2)))))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 z (*.f64 y -1/2)) (+.f64 (/.f64 (*.f64 y (-.f64 x z)) -2) (/.f64 (*.f64 y x) -2)))
(-.f64 (*.f64 z (*.f64 y -1/2)) (/.f64 (+.f64 (*.f64 y (-.f64 x z)) (*.f64 y x)) -2))
(-.f64 (*.f64 y (*.f64 z -1/2)) (/.f64 (*.f64 y (+.f64 (-.f64 x z) x)) -2))
(-.f64 (*.f64 z (*.f64 y -1/2)) (/.f64 (*.f64 y (+.f64 x (-.f64 x z))) -2))
(-.f64 (*.f64 y (*.f64 z -1/2)) (/.f64 (*.f64 y (-.f64 x (-.f64 z x))) -2))
(-.f64 (*.f64 z (*.f64 y -1/2)) (+.f64 (/.f64 (*.f64 z y) 2) (neg.f64 (*.f64 y x))))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y (+.f64 z x)) (*.f64 z (+.f64 y y)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 3 (*.f64 z (*.f64 y -1/2))) (+.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (/.f64 (*.f64 z y) 2)))
(-.f64 (*.f64 (*.f64 y -1/2) (*.f64 z 3)) (+.f64 (neg.f64 (*.f64 y (+.f64 x z))) (/.f64 (*.f64 y z) 2)))
(+.f64 (-.f64 (*.f64 (*.f64 y z) -3/2) (/.f64 (*.f64 y z) 2)) (*.f64 y (+.f64 x z)))
(+.f64 (*.f64 y (+.f64 x z)) (-.f64 (*.f64 (*.f64 y z) -3/2) (/.f64 (*.f64 y z) 2)))
(-.f64 (-.f64 (/.f64 (*.f64 y x) 2) (*.f64 z y)) (/.f64 (*.f64 y x) -2))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (+.f64 (*.f64 y x) (*.f64 z (*.f64 y -1/2))) (/.f64 (*.f64 z y) 2))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (/.f64 (*.f64 (*.f64 y x) 3) 2) (+.f64 (*.f64 y (+.f64 z x)) (/.f64 (*.f64 y x) -2)))
(-.f64 (/.f64 (*.f64 (*.f64 y x) 3) 2) (+.f64 (*.f64 y (+.f64 x z)) (/.f64 (*.f64 y x) -2)))
(-.f64 (/.f64 (*.f64 x (*.f64 y 3)) 2) (+.f64 (*.f64 y (+.f64 x z)) (/.f64 (*.f64 y x) -2)))
(-.f64 (/.f64 (*.f64 y (*.f64 x 3)) 2) (-.f64 (*.f64 y (+.f64 x z)) (/.f64 (*.f64 y x) 2)))
(-.f64 (*.f64 (*.f64 y x) 1/2) (-.f64 (*.f64 y (+.f64 x z)) (/.f64 (*.f64 x (*.f64 y 3)) 2)))
(-.f64 (neg.f64 (neg.f64 (*.f64 y x))) (*.f64 z y))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (*.f64 y x) (/.f64 (*.f64 z y) 2)) (/.f64 (*.f64 z y) 2))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 3 (/.f64 (*.f64 y x) 2)) (+.f64 (*.f64 y (+.f64 z x)) (/.f64 (*.f64 y x) -2)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 0 (*.f64 y (+.f64 z x))) (*.f64 (*.f64 y x) -2))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (/.f64 (*.f64 y x) 2) (-.f64 (*.f64 y (+.f64 z x)) (*.f64 y x))) (/.f64 (*.f64 y x) -2))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (/.f64 (*.f64 (*.f64 y x) 3) 2) (*.f64 y (+.f64 z x))) (/.f64 (*.f64 y x) -2))
(-.f64 (/.f64 (*.f64 (*.f64 y x) 3) 2) (+.f64 (*.f64 y (+.f64 x z)) (/.f64 (*.f64 y x) -2)))
(-.f64 (/.f64 (*.f64 x (*.f64 y 3)) 2) (+.f64 (*.f64 y (+.f64 x z)) (/.f64 (*.f64 y x) -2)))
(-.f64 (/.f64 (*.f64 y (*.f64 x 3)) 2) (-.f64 (*.f64 y (+.f64 x z)) (/.f64 (*.f64 y x) 2)))
(-.f64 (*.f64 (*.f64 y x) 1/2) (-.f64 (*.f64 y (+.f64 x z)) (/.f64 (*.f64 x (*.f64 y 3)) 2)))
(-.f64 (-.f64 (*.f64 3 (/.f64 (*.f64 y x) 2)) (*.f64 y (+.f64 z x))) (/.f64 (*.f64 y x) -2))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (*.f64 z (neg.f64 y)) (-.f64 0 (*.f64 y (+.f64 z x)))) (*.f64 z y))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 0 (-.f64 0 (*.f64 y (+.f64 z x)))) (*.f64 z (+.f64 y y)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (*.f64 z (*.f64 y -1/2)) (-.f64 0 (*.f64 y (+.f64 z x)))) (*.f64 -3 (*.f64 z (*.f64 y -1/2))))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(-.f64 (-.f64 (*.f64 3 (*.f64 z (*.f64 y -1/2))) (-.f64 0 (*.f64 y (+.f64 z x)))) (/.f64 (*.f64 z y) 2))
(-.f64 (*.f64 (*.f64 y -1/2) (*.f64 z 3)) (+.f64 (neg.f64 (*.f64 y (+.f64 x z))) (/.f64 (*.f64 y z) 2)))
(+.f64 (-.f64 (*.f64 (*.f64 y z) -3/2) (/.f64 (*.f64 y z) 2)) (*.f64 y (+.f64 x z)))
(+.f64 (*.f64 y (+.f64 x z)) (-.f64 (*.f64 (*.f64 y z) -3/2) (/.f64 (*.f64 y z) 2)))
(-.f64 (-.f64 (*.f64 y x) (/.f64 (*.f64 y (-.f64 x z)) -2)) (/.f64 (*.f64 y (+.f64 z x)) 2))
(-.f64 (-.f64 (*.f64 y x) (/.f64 (*.f64 y (-.f64 x z)) -2)) (/.f64 (*.f64 y (+.f64 x z)) 2))
(-.f64 (*.f64 y x) (/.f64 (+.f64 (neg.f64 (*.f64 y (-.f64 x z))) (*.f64 y (+.f64 x z))) 2))
(-.f64 (*.f64 y x) (/.f64 (+.f64 (*.f64 y (+.f64 x z)) (*.f64 y (-.f64 z x))) 2))
(-.f64 (-.f64 (/.f64 (*.f64 y x) 2) (/.f64 (*.f64 y (-.f64 x z)) -2)) (/.f64 (*.f64 z y) 2))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 (+.f64 x x) (+.f64 z x)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (-.f64 x z)) 1)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 1 (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 y y) (-.f64 (*.f64 x 1/2) (*.f64 z 1/2)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 y y) (+.f64 (*.f64 z -1/2) (*.f64 x 1/2)))
(*.f64 (+.f64 y y) (+.f64 (*.f64 x 1/2) (*.f64 z -1/2)))
(*.f64 (+.f64 y y) (+.f64 (*.f64 x 1/2) (*.f64 z -1/2)))
(*.f64 (*.f64 (+.f64 y y) (-.f64 x z)) 1/2)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 1/2 (*.f64 (+.f64 y y) (-.f64 x z)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y 1/2) (-.f64 (+.f64 x x) (+.f64 z z)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y 1/2) (-.f64 (*.f64 x 4) (*.f64 2 (+.f64 z x))))
(*.f64 (*.f64 y 1/2) (-.f64 (*.f64 x 4) (*.f64 (+.f64 x z) 2)))
(*.f64 y (*.f64 1/2 (-.f64 (*.f64 x 4) (*.f64 (+.f64 x z) 2))))
(*.f64 (*.f64 y 1/2) (+.f64 (*.f64 z -2) (+.f64 x x)))
(*.f64 (*.f64 y 1/2) (+.f64 (+.f64 x x) (*.f64 z -2)))
(*.f64 (*.f64 y 1/2) (+.f64 x (+.f64 x (*.f64 z -2))))
(*.f64 (*.f64 y 1/2) (+.f64 (+.f64 x x) (*.f64 z -2)))
(*.f64 (*.f64 y 1/2) (+.f64 x (+.f64 x (*.f64 z -2))))
(*.f64 (*.f64 y (-.f64 z x)) -1)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (-.f64 x z) (*.f64 y 4)) 1/4)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 1/4 (*.f64 (-.f64 x z) (*.f64 y 4)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (*.f64 (+.f64 y y) (-.f64 x z)) 4) 1/8)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (-.f64 x z)) 1)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (+.f64 y y) (-.f64 x z)) 2)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (-.f64 z x)) -1)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 x z) (*.f64 y 4)) 4)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 2 (*.f64 y (-.f64 z x))) -2)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (*.f64 (+.f64 y y) (-.f64 x z)) 4) 8)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (-.f64 0 (*.f64 (-.f64 x z) (*.f64 y 4))) -4)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (/.f64 (-.f64 0 (*.f64 (-.f64 x z) (*.f64 y 4))) -1) 4)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (+.f64 (*.f64 z (*.f64 2 (*.f64 y -4))) (*.f64 y (*.f64 2 (*.f64 x 4)))) 8)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (+.f64 (*.f64 (*.f64 y -4) (*.f64 z 4)) (*.f64 (*.f64 x 4) (*.f64 y 4))) 16)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (+.f64 (*.f64 y (*.f64 2 (*.f64 x 4))) (*.f64 z (*.f64 2 (*.f64 y -4)))) 8)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(/.f64 (+.f64 (*.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 (*.f64 y -4) (*.f64 z 4))) 16)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(pow.f64 (*.f64 y (-.f64 x z)) 1)
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))
(neg.f64 (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y x) (*.f64 y (neg.f64 z)))
(*.f64 y (-.f64 x z))

localize41.0ms (0.2%)

Local error

Found 3 expressions with local error:

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

Compiled 35 to 8 computations (77.1% saved)

series19.0ms (0.1%)

Counts
3 → 96
Calls

24 calls:

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

rewrite354.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
1106×rational_best-simplify-56
948×rational_best-4
948×rational_best-2
948×rational_best-3
948×rational_best-1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01063
16457
213257
345245
4239345
Stop Event
node limit
Counts
3 → 156
Calls
Call 1
Inputs
(*.f64 y (-.f64 x (-.f64 z x)))
(-.f64 x (-.f64 z x))
(-.f64 (*.f64 y (-.f64 x (-.f64 z x))) (*.f64 y x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (+.f64 x (-.f64 x z))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (+.f64 x (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (*.f64 y (-.f64 x (/.f64 z 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (+.f64 x (-.f64 x z))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 y (+.f64 z (*.f64 x -2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (neg.f64 (*.f64 y (-.f64 x (/.f64 z 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (+.f64 x (-.f64 x z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 z (*.f64 x -2)) (/.f64 y -1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (+.f64 z (*.f64 x -2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 (+.f64 x (-.f64 x z)) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 (+.f64 z z) (*.f64 x 4))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 z (*.f64 x -2)) (*.f64 y 4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x (-.f64 x z)) (*.f64 (+.f64 y y) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y 4) (*.f64 (+.f64 x (-.f64 x z)) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (+.f64 z (*.f64 x -2)) (*.f64 y 4)) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 z (*.f64 x -2)) (*.f64 (+.f64 y y) 4)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 2 (-.f64 (+.f64 z z) (*.f64 x 4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 (-.f64 (+.f64 z z) (*.f64 x 4)) 2)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 y y) 4) (*.f64 2 (*.f64 (+.f64 x (-.f64 x z)) 4))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (*.f64 (+.f64 x (-.f64 x z)) 4)) (*.f64 (+.f64 y y) 4)) 64)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (+.f64 x (-.f64 x z))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (+.f64 z (*.f64 x -2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 x (-.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x (-.f64 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 x (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x z) x)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 x) (+.f64 x (+.f64 x (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x x) (neg.f64 z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x (+.f64 x (-.f64 x z))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (/.f64 z 2)) (-.f64 x (/.f64 z 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x 1/2) (+.f64 (-.f64 x z) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 z) (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x (-.f64 -1 z)) (neg.f64 (-.f64 -1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x (-.f64 -1 z)) (-.f64 1 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x (-.f64 1 z)) (neg.f64 (-.f64 1 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 x (-.f64 1 z)) (-.f64 -1 (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 x (/.f64 (-.f64 z x) 2)) (/.f64 (-.f64 z x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 z x) -2) (-.f64 x (/.f64 (-.f64 z x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (-.f64 1 x)) (+.f64 x (-.f64 1 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (-.f64 -1 x)) (+.f64 x (-.f64 -1 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (neg.f64 x)) (+.f64 x (-.f64 1 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (neg.f64 x)) (+.f64 x (-.f64 -1 z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 3 (*.f64 x 1/2)) (-.f64 (*.f64 x 1/2) z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (-.f64 x z) (*.f64 x 1/2)) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x 1/2) z) (*.f64 3 (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 x (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 z (*.f64 x -2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (-.f64 x (/.f64 z 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (-.f64 x z)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (+.f64 z (*.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (+.f64 x (-.f64 x z)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 x 4) (+.f64 z z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x (/.f64 z 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 x (-.f64 x z)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (+.f64 x (-.f64 x z)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (+.f64 x (-.f64 x z)) 4)) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 x (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 z (*.f64 x -2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x (-.f64 x z)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x (-.f64 x z)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 z z) (*.f64 x 4)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 x (-.f64 x z)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (-.f64 (+.f64 z z) (*.f64 x 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (+.f64 z z) (*.f64 x 4)) 2) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (-.f64 (+.f64 z z) (*.f64 x 4))) -1) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 (+.f64 z z) (*.f64 x 4)) 2) -1) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x 4) (+.f64 z z)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 (-.f64 z x) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (neg.f64 (*.f64 (-.f64 z x) 4)) (neg.f64 (*.f64 x 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (neg.f64 (*.f64 x 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (-.f64 z x) -2) 2) (neg.f64 (*.f64 x 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (*.f64 x 4)) (*.f64 z 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 z z) (*.f64 (-.f64 z x) 4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 z 4) (*.f64 2 (*.f64 (-.f64 z x) 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 x (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (+.f64 z (*.f64 x -2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (+.f64 x (-.f64 x z))) (*.f64 y (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (neg.f64 x)) (*.f64 y (+.f64 x (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 z (*.f64 (-.f64 z x) 3))) (*.f64 y (+.f64 z (*.f64 x -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (+.f64 z (*.f64 x -2))) (*.f64 y (-.f64 z (*.f64 (-.f64 z x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (-.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (/.f64 (-.f64 z x) -2)) (*.f64 y (/.f64 (-.f64 z x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (*.f64 y x)) (*.f64 y (-.f64 x (/.f64 z 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 y (-.f64 z (*.f64 (-.f64 z x) 3))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y (-.f64 z (*.f64 (-.f64 z x) 3))) 2) (/.f64 (*.f64 y x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x z) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x z) (-.f64 0 (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 y (/.f64 (-.f64 z x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 z x) 2) (/.f64 y -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 z x) 2) (*.f64 -1 (*.f64 y 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (/.f64 (-.f64 z x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 1/2 (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 (-.f64 x z) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 1 (/.f64 (-.f64 z x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 -1 (/.f64 (-.f64 z x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 z x) (/.f64 y -1/2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 y (-.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 z x) (/.f64 y -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 y (*.f64 (+.f64 x (-.f64 x z)) 4)) (*.f64 (+.f64 y y) (+.f64 x (+.f64 x (-.f64 x z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 1/2) (*.f64 (-.f64 z x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 1/2) (-.f64 (*.f64 (+.f64 x (-.f64 x z)) 4) (*.f64 2 (+.f64 x (+.f64 x (-.f64 x z))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 4) (/.f64 (-.f64 z x) -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 4) (*.f64 1/2 (/.f64 (-.f64 z x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 z x) 4) (/.f64 y -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (/.f64 (-.f64 z x) -2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 z x) -2) (*.f64 y 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (-.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (-.f64 z x) (*.f64 y 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (*.f64 (-.f64 z x) 4)) (/.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (*.f64 y (-.f64 x z)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z x) -4) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 z x) -2) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 y y) 4) (/.f64 (-.f64 x z) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 y y) 4) (*.f64 1/4 (/.f64 (-.f64 z x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 4)) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (/.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 y -1/2) (*.f64 (-.f64 z x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (-.f64 z x) -2) 2) (/.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (-.f64 z x) -2) 2) (*.f64 y 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (neg.f64 y) (neg.f64 y)) (/.f64 (-.f64 z x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z x) (/.f64 y -1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z x) (+.f64 y y)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 z x) (+.f64 y y))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 z x) (+.f64 y y)) 2) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (*.f64 (-.f64 z x) (+.f64 y y))) -1) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (*.f64 (-.f64 z x) (+.f64 y y)) 2) -1) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z x) (*.f64 (+.f64 y y) 4)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y (*.f64 (+.f64 x (-.f64 x z)) 4)) (*.f64 (+.f64 y y) (+.f64 x (+.f64 x (-.f64 x z))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 x (-.f64 x z)) (*.f64 (+.f64 y y) 4)) (*.f64 x (*.f64 (+.f64 y y) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 y 4) (*.f64 (+.f64 x (-.f64 x z)) 4)) (*.f64 (*.f64 x 4) (*.f64 y 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 x (-.f64 x z)) (*.f64 (+.f64 y y) 4)) (*.f64 y (+.f64 (*.f64 x 4) (*.f64 (+.f64 x (-.f64 x z)) 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 y y) (+.f64 x (+.f64 x (-.f64 x z)))) (*.f64 y (*.f64 x 4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y (+.f64 (*.f64 x 4) (*.f64 (+.f64 x (-.f64 x z)) 4))) (*.f64 x (*.f64 (+.f64 y y) 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 x 4) (*.f64 z 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y 4) (neg.f64 (*.f64 (-.f64 z x) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y 4) (*.f64 (*.f64 (-.f64 z x) -2) 2)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (*.f64 (-.f64 z x) 4)) (*.f64 y 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (*.f64 y 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 (-.f64 z x) -2) 2) (*.f64 y 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (-.f64 z x)))))))

simplify781.0ms (4%)

Algorithm
egg-herbie
Rules
1208×rational_best-simplify-51
1136×rational_best-simplify-57
1040×rational_best-simplify-1
724×rational_best-simplify-3
702×rational_best-simplify-108
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03426036
18385952
220415690
351954410
Stop Event
node limit
Counts
252 → 228
Calls
Call 1
Inputs
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(*.f64 2 (*.f64 y x))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(*.f64 2 (*.f64 y x))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(*.f64 2 (*.f64 y x))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(*.f64 2 x)
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(*.f64 2 x)
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(*.f64 2 x)
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(*.f64 -1 z)
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 z x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 z x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 z x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 z x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 z x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 z x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 z x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 z x)))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (-.f64 (*.f64 2 x) z)) (*.f64 -1 x))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (-.f64 (*.f64 2 x) z)) (*.f64 -1 x))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (-.f64 (*.f64 2 x) z)) (*.f64 -1 x))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (-.f64 (*.f64 2 x) z)) (*.f64 -1 x))))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 (-.f64 (*.f64 2 y) y) x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 (-.f64 (*.f64 2 y) y) x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 (-.f64 (*.f64 2 y) y) x) (*.f64 -1 (*.f64 y z)))
(*.f64 (-.f64 (*.f64 2 y) y) x)
(+.f64 (*.f64 (-.f64 (*.f64 2 y) y) x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 (-.f64 (*.f64 2 y) y) x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 (-.f64 (*.f64 2 y) y) x) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -2 y) (*.f64 -1 y)) x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -2 y) (*.f64 -1 y)) x)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -2 y) (*.f64 -1 y)) x)))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -2 y) (*.f64 -1 y)) x)))
(-.f64 (*.f64 2 (*.f64 y x)) (*.f64 y x))
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(*.f64 -1 (*.f64 y z))
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(*.f64 -1 (*.f64 y z))
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(+.f64 (*.f64 y (+.f64 x (-.f64 x z))) 0)
(+.f64 0 (*.f64 y (+.f64 x (-.f64 x z))))
(+.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (*.f64 y (-.f64 x (/.f64 z 2))))
(-.f64 (*.f64 y (+.f64 x (-.f64 x z))) 0)
(-.f64 0 (*.f64 y (+.f64 z (*.f64 x -2))))
(-.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (neg.f64 (*.f64 y (-.f64 x (/.f64 z 2)))))
(/.f64 (*.f64 y (+.f64 x (-.f64 x z))) 1)
(/.f64 (*.f64 (+.f64 z (*.f64 x -2)) (/.f64 y -1/2)) 2)
(/.f64 (*.f64 y (+.f64 z (*.f64 x -2))) -1)
(/.f64 (*.f64 y (*.f64 (+.f64 x (-.f64 x z)) 4)) 4)
(/.f64 (*.f64 y (-.f64 (+.f64 z z) (*.f64 x 4))) -2)
(/.f64 (*.f64 (+.f64 z (*.f64 x -2)) (*.f64 y 4)) -4)
(/.f64 (*.f64 (+.f64 x (-.f64 x z)) (*.f64 (+.f64 y y) 4)) 8)
(/.f64 (*.f64 (*.f64 y 4) (*.f64 (+.f64 x (-.f64 x z)) 4)) 16)
(/.f64 (/.f64 (*.f64 (+.f64 z (*.f64 x -2)) (*.f64 y 4)) 2) -2)
(/.f64 (*.f64 (+.f64 z (*.f64 x -2)) (*.f64 (+.f64 y y) 4)) -8)
(/.f64 (*.f64 y (*.f64 2 (-.f64 (+.f64 z z) (*.f64 x 4)))) -4)
(/.f64 (*.f64 y (*.f64 (-.f64 (+.f64 z z) (*.f64 x 4)) 2)) -4)
(/.f64 (*.f64 (*.f64 (+.f64 y y) 4) (*.f64 2 (*.f64 (+.f64 x (-.f64 x z)) 4))) 64)
(/.f64 (*.f64 (*.f64 2 (*.f64 (+.f64 x (-.f64 x z)) 4)) (*.f64 (+.f64 y y) 4)) 64)
(pow.f64 (*.f64 y (+.f64 x (-.f64 x z))) 1)
(neg.f64 (*.f64 y (+.f64 z (*.f64 x -2))))
(+.f64 x (-.f64 x z))
(+.f64 (+.f64 x (-.f64 x z)) 0)
(+.f64 0 (+.f64 x (-.f64 x z)))
(+.f64 (-.f64 x z) x)
(+.f64 (neg.f64 x) (+.f64 x (+.f64 x (-.f64 x z))))
(+.f64 (+.f64 x x) (neg.f64 z))
(+.f64 (+.f64 x (+.f64 x (-.f64 x z))) (neg.f64 x))
(+.f64 (-.f64 x (/.f64 z 2)) (-.f64 x (/.f64 z 2)))
(+.f64 (*.f64 x 1/2) (+.f64 (-.f64 x z) (*.f64 x 1/2)))
(+.f64 (neg.f64 z) (+.f64 x x))
(+.f64 (+.f64 x (-.f64 -1 z)) (neg.f64 (-.f64 -1 x)))
(+.f64 (+.f64 x (-.f64 -1 z)) (-.f64 1 (neg.f64 x)))
(+.f64 (+.f64 x (-.f64 1 z)) (neg.f64 (-.f64 1 x)))
(+.f64 (+.f64 x (-.f64 1 z)) (-.f64 -1 (neg.f64 x)))
(+.f64 (-.f64 x (/.f64 (-.f64 z x) 2)) (/.f64 (-.f64 z x) -2))
(+.f64 (/.f64 (-.f64 z x) -2) (-.f64 x (/.f64 (-.f64 z x) 2)))
(+.f64 (neg.f64 (-.f64 1 x)) (+.f64 x (-.f64 1 z)))
(+.f64 (neg.f64 (-.f64 -1 x)) (+.f64 x (-.f64 -1 z)))
(+.f64 (-.f64 -1 (neg.f64 x)) (+.f64 x (-.f64 1 z)))
(+.f64 (-.f64 1 (neg.f64 x)) (+.f64 x (-.f64 -1 z)))
(+.f64 (*.f64 3 (*.f64 x 1/2)) (-.f64 (*.f64 x 1/2) z))
(+.f64 (+.f64 (-.f64 x z) (*.f64 x 1/2)) (*.f64 x 1/2))
(+.f64 (-.f64 (*.f64 x 1/2) z) (*.f64 3 (*.f64 x 1/2)))
(*.f64 (+.f64 x (-.f64 x z)) 1)
(*.f64 1 (+.f64 x (-.f64 x z)))
(*.f64 (+.f64 z (*.f64 x -2)) -1)
(*.f64 2 (-.f64 x (/.f64 z 2)))
(*.f64 (*.f64 (+.f64 x (-.f64 x z)) 2) 1/2)
(*.f64 -1 (+.f64 z (*.f64 x -2)))
(*.f64 1/2 (*.f64 (+.f64 x (-.f64 x z)) 2))
(*.f64 1/2 (-.f64 (*.f64 x 4) (+.f64 z z)))
(*.f64 (-.f64 x (/.f64 z 2)) 2)
(*.f64 (*.f64 (+.f64 x (-.f64 x z)) 4) 1/4)
(*.f64 1/4 (*.f64 (+.f64 x (-.f64 x z)) 4))
(*.f64 (*.f64 2 (*.f64 (+.f64 x (-.f64 x z)) 4)) 1/8)
(/.f64 (+.f64 x (-.f64 x z)) 1)
(/.f64 (+.f64 z (*.f64 x -2)) -1)
(/.f64 (*.f64 (+.f64 x (-.f64 x z)) 2) 2)
(/.f64 (*.f64 (+.f64 x (-.f64 x z)) 4) 4)
(/.f64 (-.f64 (+.f64 z z) (*.f64 x 4)) -2)
(/.f64 (*.f64 2 (*.f64 (+.f64 x (-.f64 x z)) 4)) 8)
(/.f64 (*.f64 2 (-.f64 (+.f64 z z) (*.f64 x 4))) -4)
(/.f64 (*.f64 (-.f64 (+.f64 z z) (*.f64 x 4)) 2) -4)
(/.f64 (/.f64 (*.f64 2 (-.f64 (+.f64 z z) (*.f64 x 4))) -1) 4)
(/.f64 (/.f64 (*.f64 (-.f64 (+.f64 z z) (*.f64 x 4)) 2) -1) 4)
(/.f64 (-.f64 (*.f64 x 4) (+.f64 z z)) 2)
(/.f64 (-.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 (-.f64 z x) 4))) 8)
(/.f64 (-.f64 (neg.f64 (*.f64 (-.f64 z x) 4)) (neg.f64 (*.f64 x 4))) 4)
(/.f64 (-.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (neg.f64 (*.f64 x 4))) 4)
(/.f64 (-.f64 (*.f64 (*.f64 (-.f64 z x) -2) 2) (neg.f64 (*.f64 x 4))) 4)
(/.f64 (-.f64 (*.f64 2 (*.f64 x 4)) (*.f64 z 4)) 4)
(/.f64 (-.f64 (+.f64 z z) (*.f64 (-.f64 z x) 4)) 2)
(/.f64 (-.f64 (*.f64 z 4) (*.f64 2 (*.f64 (-.f64 z x) 4))) 4)
(pow.f64 (+.f64 x (-.f64 x z)) 1)
(neg.f64 (+.f64 z (*.f64 x -2)))
(+.f64 (*.f64 y (+.f64 x (-.f64 x z))) (*.f64 y (neg.f64 x)))
(+.f64 (*.f64 y (-.f64 x z)) 0)
(+.f64 0 (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 y (+.f64 x (-.f64 x z))))
(+.f64 (*.f64 y (-.f64 z (*.f64 (-.f64 z x) 3))) (*.f64 y (+.f64 z (*.f64 x -2))))
(+.f64 (*.f64 y (+.f64 z (*.f64 x -2))) (*.f64 y (-.f64 z (*.f64 (-.f64 z x) 3))))
(+.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (-.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (*.f64 y x)))
(+.f64 (*.f64 y (/.f64 (-.f64 z x) -2)) (*.f64 y (/.f64 (-.f64 z x) -2)))
(+.f64 (-.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (*.f64 y x)) (*.f64 y (-.f64 x (/.f64 z 2))))
(+.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 y (-.f64 z (*.f64 (-.f64 z x) 3))) 2))
(+.f64 (/.f64 (*.f64 y (-.f64 z (*.f64 (-.f64 z x) 3))) 2) (/.f64 (*.f64 y x) -2))
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 z x) (neg.f64 y))
(*.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 1 (*.f64 y (-.f64 x z)))
(*.f64 (-.f64 x z) y)
(*.f64 (-.f64 x z) (-.f64 0 (neg.f64 y)))
(*.f64 (*.f64 y (-.f64 z x)) -1)
(*.f64 2 (*.f64 y (/.f64 (-.f64 z x) -2)))
(*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 1/2))
(*.f64 (*.f64 (-.f64 z x) 2) (/.f64 y -2))
(*.f64 (*.f64 (-.f64 z x) 2) (*.f64 -1 (*.f64 y 1/2)))
(*.f64 (+.f64 y y) (/.f64 (-.f64 z x) -2))
(*.f64 (+.f64 y y) (*.f64 1/2 (-.f64 x z)))
(*.f64 (+.f64 y y) (*.f64 (-.f64 x z) 1/2))
(*.f64 (+.f64 y y) (*.f64 1 (/.f64 (-.f64 z x) -2)))
(*.f64 (+.f64 y y) (*.f64 -1 (/.f64 (-.f64 z x) 2)))
(*.f64 (*.f64 (-.f64 z x) (/.f64 y -1/2)) 1/2)
(*.f64 -1 (*.f64 y (-.f64 z x)))
(*.f64 1/2 (*.f64 (-.f64 z x) (/.f64 y -1/2)))
(*.f64 1/2 (-.f64 (*.f64 y (*.f64 (+.f64 x (-.f64 x z)) 4)) (*.f64 (+.f64 y y) (+.f64 x (+.f64 x (-.f64 x z))))))
(*.f64 (*.f64 y 1/2) (*.f64 (-.f64 z x) -2))
(*.f64 (*.f64 y 1/2) (-.f64 (*.f64 (+.f64 x (-.f64 x z)) 4) (*.f64 2 (+.f64 x (+.f64 x (-.f64 x z))))))
(*.f64 (*.f64 y 4) (/.f64 (-.f64 z x) -4))
(*.f64 (*.f64 y 4) (*.f64 1/2 (/.f64 (-.f64 z x) -2)))
(*.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 1/4)
(*.f64 (*.f64 (-.f64 z x) 4) (/.f64 y -4))
(*.f64 (*.f64 y (/.f64 (-.f64 z x) -2)) 2)
(*.f64 (*.f64 (-.f64 z x) -2) (*.f64 y 1/2))
(*.f64 (neg.f64 y) (-.f64 z x))
(*.f64 -2 (*.f64 (-.f64 z x) (*.f64 y 1/2)))
(*.f64 (neg.f64 (*.f64 (-.f64 z x) 4)) (/.f64 y 4))
(*.f64 1/4 (*.f64 (*.f64 y (-.f64 x z)) 4))
(*.f64 (/.f64 (-.f64 z x) -4) (*.f64 y 4))
(*.f64 (/.f64 (-.f64 z x) -2) (+.f64 y y))
(*.f64 (*.f64 (+.f64 y y) 4) (/.f64 (-.f64 x z) 8))
(*.f64 (*.f64 (+.f64 y y) 4) (*.f64 1/4 (/.f64 (-.f64 z x) -2)))
(*.f64 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 4)) 1/8)
(*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (/.f64 y 4))
(*.f64 (/.f64 y -1/2) (*.f64 (-.f64 z x) 1/2))
(*.f64 (*.f64 (*.f64 (-.f64 z x) -2) 2) (/.f64 y 4))
(*.f64 (*.f64 (*.f64 (-.f64 z x) -2) 2) (*.f64 y 1/4))
(*.f64 (+.f64 (neg.f64 y) (neg.f64 y)) (/.f64 (-.f64 z x) 2))
(/.f64 (*.f64 y (-.f64 x z)) 1)
(/.f64 (*.f64 y (-.f64 z x)) -1)
(/.f64 (*.f64 (-.f64 z x) (/.f64 y -1/2)) 2)
(/.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 4)
(/.f64 (*.f64 (-.f64 z x) (+.f64 y y)) -2)
(/.f64 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 4)) 8)
(/.f64 (*.f64 2 (*.f64 (-.f64 z x) (+.f64 y y))) -4)
(/.f64 (*.f64 (*.f64 (-.f64 z x) (+.f64 y y)) 2) -4)
(/.f64 (/.f64 (*.f64 2 (*.f64 (-.f64 z x) (+.f64 y y))) -1) 4)
(/.f64 (/.f64 (*.f64 (*.f64 (-.f64 z x) (+.f64 y y)) 2) -1) 4)
(/.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) -4)
(/.f64 (*.f64 (-.f64 z x) (*.f64 (+.f64 y y) 4)) -8)
(/.f64 (-.f64 (*.f64 y (*.f64 (+.f64 x (-.f64 x z)) 4)) (*.f64 (+.f64 y y) (+.f64 x (+.f64 x (-.f64 x z))))) 2)
(/.f64 (-.f64 (*.f64 (+.f64 x (-.f64 x z)) (*.f64 (+.f64 y y) 4)) (*.f64 x (*.f64 (+.f64 y y) 4))) 8)
(/.f64 (-.f64 (*.f64 (*.f64 y 4) (*.f64 (+.f64 x (-.f64 x z)) 4)) (*.f64 (*.f64 x 4) (*.f64 y 4))) 16)
(/.f64 (-.f64 (*.f64 (+.f64 x (-.f64 x z)) (*.f64 (+.f64 y y) 4)) (*.f64 y (+.f64 (*.f64 x 4) (*.f64 (+.f64 x (-.f64 x z)) 4)))) 4)
(/.f64 (-.f64 (*.f64 (+.f64 y y) (+.f64 x (+.f64 x (-.f64 x z)))) (*.f64 y (*.f64 x 4))) 2)
(/.f64 (-.f64 (*.f64 y (+.f64 (*.f64 x 4) (*.f64 (+.f64 x (-.f64 x z)) 4))) (*.f64 x (*.f64 (+.f64 y y) 4))) 4)
(/.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 x 4) (*.f64 z 4))) 16)
(/.f64 (*.f64 (*.f64 y 4) (neg.f64 (*.f64 (-.f64 z x) 4))) 16)
(/.f64 (*.f64 (*.f64 y 4) (*.f64 (*.f64 (-.f64 z x) -2) 2)) 16)
(/.f64 (*.f64 (neg.f64 (*.f64 (-.f64 z x) 4)) (*.f64 y 4)) 16)
(/.f64 (*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (*.f64 y 4)) 16)
(/.f64 (*.f64 (*.f64 (*.f64 (-.f64 z x) -2) 2) (*.f64 y 4)) 16)
(pow.f64 (*.f64 y (-.f64 x z)) 1)
(neg.f64 (*.f64 y (-.f64 z x)))
Outputs
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(*.f64 2 (*.f64 y x))
(*.f64 2 (*.f64 x y))
(*.f64 x (*.f64 2 y))
(*.f64 x (+.f64 y y))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(*.f64 2 (*.f64 y x))
(*.f64 2 (*.f64 x y))
(*.f64 x (*.f64 2 y))
(*.f64 x (+.f64 y y))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(*.f64 2 (*.f64 y x))
(*.f64 2 (*.f64 x y))
(*.f64 x (*.f64 2 y))
(*.f64 x (+.f64 y y))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 2 (*.f64 x y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (*.f64 2 y)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x y) (*.f64 y (-.f64 z x)))
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(*.f64 2 x)
(+.f64 x x)
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(*.f64 2 x)
(+.f64 x x)
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(*.f64 2 x)
(+.f64 x x)
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(*.f64 -1 z)
(neg.f64 z)
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (*.f64 -1 z) (*.f64 2 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 z x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 z x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 z x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 z x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 z x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 z x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 z x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 z x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (-.f64 (*.f64 2 x) z)) (*.f64 -1 x))))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (-.f64 (*.f64 2 x) z)) (*.f64 -1 x))))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (-.f64 (*.f64 2 x) z)) (*.f64 -1 x))))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (-.f64 (*.f64 2 x) z)) (*.f64 -1 x))))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 (-.f64 (*.f64 2 y) y) x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 (-.f64 (*.f64 2 y) y) x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 (-.f64 (*.f64 2 y) y) x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 (*.f64 2 y) y) x)
(*.f64 x (-.f64 (*.f64 2 y) y))
(*.f64 x y)
(+.f64 (*.f64 (-.f64 (*.f64 2 y) y) x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 (-.f64 (*.f64 2 y) y) x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 (-.f64 (*.f64 2 y) y) x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 (-.f64 (*.f64 -2 y) (*.f64 -1 y)) x))
(*.f64 x (-.f64 (*.f64 2 y) y))
(*.f64 x y)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -2 y) (*.f64 -1 y)) x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -2 y) (*.f64 -1 y)) x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 -1 (*.f64 (-.f64 (*.f64 -2 y) (*.f64 -1 y)) x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 2 (*.f64 y x)) (*.f64 y x))
(*.f64 x (-.f64 (*.f64 2 y) y))
(*.f64 x y)
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(-.f64 (+.f64 (*.f64 2 (*.f64 y x)) (*.f64 -1 (*.f64 y z))) (*.f64 y x))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (+.f64 x (-.f64 x z))) 0)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(+.f64 0 (*.f64 y (+.f64 x (-.f64 x z))))
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(+.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (*.f64 y (-.f64 x (/.f64 z 2))))
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(-.f64 (*.f64 y (+.f64 x (-.f64 x z))) 0)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(-.f64 0 (*.f64 y (+.f64 z (*.f64 x -2))))
(neg.f64 (*.f64 y (+.f64 z (*.f64 x -2))))
(-.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (neg.f64 (*.f64 y (-.f64 x (/.f64 z 2)))))
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(/.f64 (*.f64 y (+.f64 x (-.f64 x z))) 1)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(/.f64 (*.f64 (+.f64 z (*.f64 x -2)) (/.f64 y -1/2)) 2)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(/.f64 (*.f64 y (+.f64 z (*.f64 x -2))) -1)
(neg.f64 (*.f64 y (+.f64 z (*.f64 x -2))))
(/.f64 (*.f64 y (*.f64 (+.f64 x (-.f64 x z)) 4)) 4)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(/.f64 (*.f64 y (-.f64 (+.f64 z z) (*.f64 x 4))) -2)
(/.f64 (*.f64 (+.f64 z (*.f64 x -2)) (*.f64 y 4)) -4)
(/.f64 (*.f64 y (*.f64 (+.f64 z (*.f64 x -2)) 4)) -4)
(/.f64 (*.f64 y (/.f64 (+.f64 x (-.f64 x z)) -1/4)) -4)
(/.f64 (*.f64 (+.f64 x (-.f64 x z)) (*.f64 (+.f64 y y) 4)) 8)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(/.f64 (*.f64 (*.f64 y 4) (*.f64 (+.f64 x (-.f64 x z)) 4)) 16)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(/.f64 (/.f64 (*.f64 (+.f64 z (*.f64 x -2)) (*.f64 y 4)) 2) -2)
(/.f64 (*.f64 (+.f64 z (*.f64 x -2)) (*.f64 y 4)) -4)
(/.f64 (*.f64 y (*.f64 (+.f64 z (*.f64 x -2)) 4)) -4)
(/.f64 (*.f64 y (/.f64 (+.f64 x (-.f64 x z)) -1/4)) -4)
(/.f64 (*.f64 (+.f64 z (*.f64 x -2)) (*.f64 (+.f64 y y) 4)) -8)
(/.f64 (*.f64 (+.f64 z (*.f64 x -2)) (*.f64 y 4)) -4)
(/.f64 (*.f64 y (*.f64 (+.f64 z (*.f64 x -2)) 4)) -4)
(/.f64 (*.f64 y (/.f64 (+.f64 x (-.f64 x z)) -1/4)) -4)
(/.f64 (*.f64 y (*.f64 2 (-.f64 (+.f64 z z) (*.f64 x 4)))) -4)
(/.f64 (*.f64 y (-.f64 (+.f64 z z) (*.f64 x 4))) -2)
(/.f64 (*.f64 y (*.f64 (-.f64 (+.f64 z z) (*.f64 x 4)) 2)) -4)
(/.f64 (*.f64 y (-.f64 (+.f64 z z) (*.f64 x 4))) -2)
(/.f64 (*.f64 (*.f64 (+.f64 y y) 4) (*.f64 2 (*.f64 (+.f64 x (-.f64 x z)) 4))) 64)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(/.f64 (*.f64 (*.f64 2 (*.f64 (+.f64 x (-.f64 x z)) 4)) (*.f64 (+.f64 y y) 4)) 64)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(pow.f64 (*.f64 y (+.f64 x (-.f64 x z))) 1)
(*.f64 (-.f64 (*.f64 2 x) z) y)
(*.f64 y (+.f64 x (-.f64 x z)))
(neg.f64 (*.f64 y (+.f64 z (*.f64 x -2))))
(+.f64 x (-.f64 x z))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 (+.f64 x (-.f64 x z)) 0)
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 0 (+.f64 x (-.f64 x z)))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (-.f64 x z) x)
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (neg.f64 x) (+.f64 x (+.f64 x (-.f64 x z))))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (+.f64 x x) (neg.f64 z))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (+.f64 x (+.f64 x (-.f64 x z))) (neg.f64 x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (-.f64 x (/.f64 z 2)) (-.f64 x (/.f64 z 2)))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (*.f64 x 1/2) (+.f64 (-.f64 x z) (*.f64 x 1/2)))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (neg.f64 z) (+.f64 x x))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (+.f64 x (-.f64 -1 z)) (neg.f64 (-.f64 -1 x)))
(+.f64 (+.f64 x (-.f64 -1 z)) (-.f64 x -1))
(+.f64 x (+.f64 (-.f64 -1 z) (+.f64 x 1)))
(+.f64 (+.f64 x (-.f64 -1 z)) (-.f64 1 (neg.f64 x)))
(+.f64 (+.f64 x (-.f64 -1 z)) (neg.f64 (-.f64 -1 x)))
(+.f64 (+.f64 x (-.f64 -1 z)) (-.f64 x -1))
(+.f64 x (+.f64 (-.f64 -1 z) (+.f64 x 1)))
(+.f64 (+.f64 x (-.f64 1 z)) (neg.f64 (-.f64 1 x)))
(+.f64 (-.f64 1 z) (+.f64 x (neg.f64 (-.f64 1 x))))
(+.f64 (+.f64 x (-.f64 1 z)) (-.f64 x 1))
(+.f64 (+.f64 x (-.f64 1 z)) (+.f64 x -1))
(+.f64 x (+.f64 (-.f64 1 z) (+.f64 x -1)))
(+.f64 (+.f64 x (-.f64 1 z)) (-.f64 -1 (neg.f64 x)))
(+.f64 (-.f64 1 z) (+.f64 x (neg.f64 (-.f64 1 x))))
(+.f64 (+.f64 x (-.f64 1 z)) (-.f64 x 1))
(+.f64 (+.f64 x (-.f64 1 z)) (+.f64 x -1))
(+.f64 x (+.f64 (-.f64 1 z) (+.f64 x -1)))
(+.f64 (-.f64 x (/.f64 (-.f64 z x) 2)) (/.f64 (-.f64 z x) -2))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (/.f64 (-.f64 z x) -2) (-.f64 x (/.f64 (-.f64 z x) 2)))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (neg.f64 (-.f64 1 x)) (+.f64 x (-.f64 1 z)))
(+.f64 (-.f64 1 z) (+.f64 x (neg.f64 (-.f64 1 x))))
(+.f64 (+.f64 x (-.f64 1 z)) (-.f64 x 1))
(+.f64 (+.f64 x (-.f64 1 z)) (+.f64 x -1))
(+.f64 x (+.f64 (-.f64 1 z) (+.f64 x -1)))
(+.f64 (neg.f64 (-.f64 -1 x)) (+.f64 x (-.f64 -1 z)))
(+.f64 (+.f64 x (-.f64 -1 z)) (neg.f64 (-.f64 -1 x)))
(+.f64 (+.f64 x (-.f64 -1 z)) (-.f64 x -1))
(+.f64 x (+.f64 (-.f64 -1 z) (+.f64 x 1)))
(+.f64 (-.f64 -1 (neg.f64 x)) (+.f64 x (-.f64 1 z)))
(+.f64 (-.f64 1 z) (+.f64 x (neg.f64 (-.f64 1 x))))
(+.f64 (+.f64 x (-.f64 1 z)) (-.f64 x 1))
(+.f64 (+.f64 x (-.f64 1 z)) (+.f64 x -1))
(+.f64 x (+.f64 (-.f64 1 z) (+.f64 x -1)))
(+.f64 (-.f64 1 (neg.f64 x)) (+.f64 x (-.f64 -1 z)))
(+.f64 (+.f64 x (-.f64 -1 z)) (neg.f64 (-.f64 -1 x)))
(+.f64 (+.f64 x (-.f64 -1 z)) (-.f64 x -1))
(+.f64 x (+.f64 (-.f64 -1 z) (+.f64 x 1)))
(+.f64 (*.f64 3 (*.f64 x 1/2)) (-.f64 (*.f64 x 1/2) z))
(+.f64 (*.f64 1/2 (*.f64 x 3)) (-.f64 (*.f64 x 1/2) z))
(+.f64 (*.f64 x 3/2) (-.f64 (*.f64 x 1/2) z))
(+.f64 (+.f64 (-.f64 x z) (*.f64 x 1/2)) (*.f64 x 1/2))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (-.f64 (*.f64 x 1/2) z) (*.f64 3 (*.f64 x 1/2)))
(+.f64 (*.f64 1/2 (*.f64 x 3)) (-.f64 (*.f64 x 1/2) z))
(+.f64 (*.f64 x 3/2) (-.f64 (*.f64 x 1/2) z))
(*.f64 (+.f64 x (-.f64 x z)) 1)
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(*.f64 1 (+.f64 x (-.f64 x z)))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(*.f64 (+.f64 z (*.f64 x -2)) -1)
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(*.f64 2 (-.f64 x (/.f64 z 2)))
(*.f64 (*.f64 (+.f64 x (-.f64 x z)) 2) 1/2)
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(*.f64 -1 (+.f64 z (*.f64 x -2)))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(*.f64 1/2 (*.f64 (+.f64 x (-.f64 x z)) 2))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(*.f64 1/2 (-.f64 (*.f64 x 4) (+.f64 z z)))
(*.f64 (-.f64 x (/.f64 z 2)) 2)
(*.f64 2 (-.f64 x (/.f64 z 2)))
(*.f64 (*.f64 (+.f64 x (-.f64 x z)) 4) 1/4)
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(*.f64 1/4 (*.f64 (+.f64 x (-.f64 x z)) 4))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(*.f64 (*.f64 2 (*.f64 (+.f64 x (-.f64 x z)) 4)) 1/8)
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(/.f64 (+.f64 x (-.f64 x z)) 1)
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(/.f64 (+.f64 z (*.f64 x -2)) -1)
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(/.f64 (*.f64 (+.f64 x (-.f64 x z)) 2) 2)
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(/.f64 (*.f64 (+.f64 x (-.f64 x z)) 4) 4)
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(/.f64 (-.f64 (+.f64 z z) (*.f64 x 4)) -2)
(-.f64 (neg.f64 z) (/.f64 (*.f64 x 4) -2))
(-.f64 (/.f64 (*.f64 x 8) 4) z)
(/.f64 (*.f64 2 (*.f64 (+.f64 x (-.f64 x z)) 4)) 8)
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(/.f64 (*.f64 2 (-.f64 (+.f64 z z) (*.f64 x 4))) -4)
(/.f64 (*.f64 (-.f64 (+.f64 z z) (*.f64 x 4)) 2) -4)
(/.f64 (*.f64 2 (-.f64 (+.f64 z z) (*.f64 x 4))) -4)
(/.f64 (/.f64 (*.f64 2 (-.f64 (+.f64 z z) (*.f64 x 4))) -1) 4)
(/.f64 (*.f64 2 (-.f64 (+.f64 z z) (*.f64 x 4))) -4)
(/.f64 (/.f64 (*.f64 (-.f64 (+.f64 z z) (*.f64 x 4)) 2) -1) 4)
(/.f64 (*.f64 2 (-.f64 (+.f64 z z) (*.f64 x 4))) -4)
(/.f64 (-.f64 (*.f64 x 4) (+.f64 z z)) 2)
(/.f64 (-.f64 (+.f64 z z) (*.f64 x 4)) -2)
(-.f64 (neg.f64 z) (/.f64 (*.f64 x 4) -2))
(-.f64 (/.f64 (*.f64 x 8) 4) z)
(/.f64 (-.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 (-.f64 z x) 4))) 8)
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(/.f64 (-.f64 (neg.f64 (*.f64 (-.f64 z x) 4)) (neg.f64 (*.f64 x 4))) 4)
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(/.f64 (-.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (neg.f64 (*.f64 x 4))) 4)
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(/.f64 (-.f64 (*.f64 (*.f64 (-.f64 z x) -2) 2) (neg.f64 (*.f64 x 4))) 4)
(/.f64 (-.f64 (*.f64 2 (*.f64 -2 (-.f64 z x))) (neg.f64 (*.f64 x 4))) 4)
(/.f64 (-.f64 (*.f64 (-.f64 z x) -4) (neg.f64 (*.f64 x 4))) 4)
(/.f64 (-.f64 (*.f64 -4 (-.f64 z x)) (/.f64 x -1/4)) 4)
(/.f64 (-.f64 (*.f64 2 (*.f64 x 4)) (*.f64 z 4)) 4)
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(/.f64 (-.f64 (+.f64 z z) (*.f64 (-.f64 z x) 4)) 2)
(/.f64 (-.f64 (+.f64 z z) (*.f64 4 (-.f64 z x))) 2)
(-.f64 z (/.f64 (*.f64 8 (-.f64 z x)) 4))
(-.f64 z (/.f64 (*.f64 4 (-.f64 z x)) 2))
(/.f64 (-.f64 (*.f64 z 4) (*.f64 2 (*.f64 (-.f64 z x) 4))) 4)
(/.f64 (-.f64 (*.f64 z 4) (*.f64 2 (*.f64 4 (-.f64 z x)))) 4)
(/.f64 (-.f64 (*.f64 z 4) (*.f64 (-.f64 z x) 8)) 4)
(/.f64 (-.f64 (*.f64 z 4) (*.f64 8 (-.f64 z x))) 4)
(pow.f64 (+.f64 x (-.f64 x z)) 1)
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(neg.f64 (+.f64 z (*.f64 x -2)))
(+.f64 (*.f64 2 x) (neg.f64 z))
(-.f64 (*.f64 2 x) z)
(+.f64 x (-.f64 x z))
(+.f64 (*.f64 y (+.f64 x (-.f64 x z))) (*.f64 y (neg.f64 x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (-.f64 x z)) 0)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(+.f64 0 (*.f64 y (-.f64 x z)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 y (+.f64 x (-.f64 x z))))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (-.f64 z (*.f64 (-.f64 z x) 3))) (*.f64 y (+.f64 z (*.f64 x -2))))
(+.f64 (*.f64 y (+.f64 z (*.f64 x -2))) (*.f64 y (-.f64 z (*.f64 (-.f64 z x) 3))))
(*.f64 y (+.f64 (+.f64 z (*.f64 x -2)) (-.f64 z (*.f64 (-.f64 z x) 3))))
(+.f64 (*.f64 y (+.f64 z (*.f64 x -2))) (*.f64 y (-.f64 z (*.f64 (-.f64 z x) 3))))
(*.f64 y (+.f64 (+.f64 z (*.f64 x -2)) (-.f64 z (*.f64 (-.f64 z x) 3))))
(+.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (-.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (*.f64 y x)))
(+.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (-.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (*.f64 x y)))
(+.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (*.f64 y (-.f64 (-.f64 x (/.f64 z 2)) x)))
(+.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (*.f64 y (-.f64 x (+.f64 x (/.f64 z 2)))))
(+.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (*.f64 y (/.f64 z -2)))
(+.f64 (*.f64 y (/.f64 (-.f64 z x) -2)) (*.f64 y (/.f64 (-.f64 z x) -2)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (*.f64 y x)) (*.f64 y (-.f64 x (/.f64 z 2))))
(+.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (-.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (*.f64 x y)))
(+.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (*.f64 y (-.f64 (-.f64 x (/.f64 z 2)) x)))
(+.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (*.f64 y (-.f64 x (+.f64 x (/.f64 z 2)))))
(+.f64 (*.f64 y (-.f64 x (/.f64 z 2))) (*.f64 y (/.f64 z -2)))
(+.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 y (-.f64 z (*.f64 (-.f64 z x) 3))) 2))
(+.f64 (/.f64 (*.f64 x y) -2) (/.f64 (*.f64 y (-.f64 z (*.f64 (-.f64 z x) 3))) 2))
(+.f64 (/.f64 (*.f64 y (-.f64 z (*.f64 (-.f64 z x) 3))) 2) (/.f64 (*.f64 y x) -2))
(+.f64 (/.f64 (*.f64 x y) -2) (/.f64 (*.f64 y (-.f64 z (*.f64 (-.f64 z x) 3))) 2))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 (-.f64 z x) (neg.f64 y))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 1 (*.f64 y (-.f64 x z)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) (-.f64 0 (neg.f64 y)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (-.f64 z x)) -1)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 2 (*.f64 y (/.f64 (-.f64 z x) -2)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 1/2))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (-.f64 z x) 2) (/.f64 y -2))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (-.f64 z x) 2) (*.f64 -1 (*.f64 y 1/2)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 y y) (/.f64 (-.f64 z x) -2))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 y y) (*.f64 1/2 (-.f64 x z)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 y y) (*.f64 (-.f64 x z) 1/2))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 y y) (*.f64 1 (/.f64 (-.f64 z x) -2)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 y y) (*.f64 -1 (/.f64 (-.f64 z x) 2)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (-.f64 z x) (/.f64 y -1/2)) 1/2)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 z x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 1/2 (*.f64 (-.f64 z x) (/.f64 y -1/2)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 1/2 (-.f64 (*.f64 y (*.f64 (+.f64 x (-.f64 x z)) 4)) (*.f64 (+.f64 y y) (+.f64 x (+.f64 x (-.f64 x z))))))
(*.f64 1/2 (-.f64 (*.f64 y (*.f64 (+.f64 x (-.f64 x z)) 4)) (*.f64 (+.f64 y y) (+.f64 (-.f64 x z) (+.f64 x x)))))
(*.f64 1/2 (-.f64 (*.f64 (+.f64 x (-.f64 x z)) (*.f64 y 4)) (*.f64 (+.f64 y y) (+.f64 (-.f64 x z) (+.f64 x x)))))
(*.f64 (*.f64 y 1/2) (*.f64 (-.f64 z x) -2))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y 1/2) (-.f64 (*.f64 (+.f64 x (-.f64 x z)) 4) (*.f64 2 (+.f64 x (+.f64 x (-.f64 x z))))))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y 4) (/.f64 (-.f64 z x) -4))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y 4) (*.f64 1/2 (/.f64 (-.f64 z x) -2)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 1/4)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (-.f64 z x) 4) (/.f64 y -4))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (/.f64 (-.f64 z x) -2)) 2)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (-.f64 z x) -2) (*.f64 y 1/2))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (neg.f64 y) (-.f64 z x))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 -2 (*.f64 (-.f64 z x) (*.f64 y 1/2)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (neg.f64 (*.f64 (-.f64 z x) 4)) (/.f64 y 4))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 1/4 (*.f64 (*.f64 y (-.f64 x z)) 4))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (/.f64 (-.f64 z x) -4) (*.f64 y 4))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (/.f64 (-.f64 z x) -2) (+.f64 y y))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (+.f64 y y) 4) (/.f64 (-.f64 x z) 8))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (+.f64 y y) 4) (*.f64 1/4 (/.f64 (-.f64 z x) -2)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 4)) 1/8)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (/.f64 y 4))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (/.f64 y -1/2) (*.f64 (-.f64 z x) 1/2))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (*.f64 (-.f64 z x) -2) 2) (/.f64 y 4))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (*.f64 (-.f64 z x) -2) 2) (*.f64 y 1/4))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 (neg.f64 y) (neg.f64 y)) (/.f64 (-.f64 z x) 2))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (-.f64 z x)) -1)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 z x) (/.f64 y -1/2)) 2)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 4)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 z x) (+.f64 y y)) -2)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 4)) 8)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 2 (*.f64 (-.f64 z x) (+.f64 y y))) -4)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (*.f64 (-.f64 z x) (+.f64 y y)) 2) -4)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (/.f64 (*.f64 2 (*.f64 (-.f64 z x) (+.f64 y y))) -1) 4)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (/.f64 (*.f64 (*.f64 (-.f64 z x) (+.f64 y y)) 2) -1) 4)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) -4)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 z x) (*.f64 (+.f64 y y) 4)) -8)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (-.f64 (*.f64 y (*.f64 (+.f64 x (-.f64 x z)) 4)) (*.f64 (+.f64 y y) (+.f64 x (+.f64 x (-.f64 x z))))) 2)
(/.f64 (-.f64 (*.f64 y (*.f64 (+.f64 x (-.f64 x z)) 4)) (*.f64 (+.f64 y y) (+.f64 (-.f64 x z) (+.f64 x x)))) 2)
(-.f64 (*.f64 2 (*.f64 y (+.f64 x (-.f64 x z)))) (/.f64 (*.f64 (+.f64 y y) (+.f64 (-.f64 x z) (+.f64 x x))) 2))
(-.f64 (*.f64 (+.f64 x (-.f64 x z)) (+.f64 y y)) (/.f64 (*.f64 (+.f64 y y) (+.f64 (-.f64 x z) (+.f64 x x))) 2))
(/.f64 (-.f64 (*.f64 (+.f64 x (-.f64 x z)) (*.f64 (+.f64 y y) 4)) (*.f64 x (*.f64 (+.f64 y y) 4))) 8)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (-.f64 (*.f64 (*.f64 y 4) (*.f64 (+.f64 x (-.f64 x z)) 4)) (*.f64 (*.f64 x 4) (*.f64 y 4))) 16)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (-.f64 (*.f64 (+.f64 x (-.f64 x z)) (*.f64 (+.f64 y y) 4)) (*.f64 y (+.f64 (*.f64 x 4) (*.f64 (+.f64 x (-.f64 x z)) 4)))) 4)
(/.f64 (-.f64 (*.f64 (+.f64 x (-.f64 x z)) (*.f64 4 (+.f64 y y))) (*.f64 y (*.f64 4 (+.f64 x (+.f64 x (-.f64 x z)))))) 4)
(/.f64 (-.f64 (*.f64 (+.f64 x (-.f64 x z)) (*.f64 4 (+.f64 y y))) (*.f64 (+.f64 (-.f64 x z) (+.f64 x x)) (*.f64 y 4))) 4)
(-.f64 (*.f64 2 (*.f64 y (+.f64 x (-.f64 x z)))) (/.f64 (*.f64 y (*.f64 4 (+.f64 (-.f64 x z) (+.f64 x x)))) 4))
(-.f64 (*.f64 (+.f64 x (-.f64 x z)) (+.f64 y y)) (/.f64 (*.f64 y (*.f64 4 (+.f64 (-.f64 x z) (+.f64 x x)))) 4))
(/.f64 (-.f64 (*.f64 (+.f64 y y) (+.f64 x (+.f64 x (-.f64 x z)))) (*.f64 y (*.f64 x 4))) 2)
(/.f64 (-.f64 (*.f64 (+.f64 y y) (+.f64 (-.f64 x z) (+.f64 x x))) (*.f64 x (*.f64 y 4))) 2)
(/.f64 (-.f64 (*.f64 y (+.f64 (*.f64 x 4) (*.f64 (+.f64 x (-.f64 x z)) 4))) (*.f64 x (*.f64 (+.f64 y y) 4))) 4)
(/.f64 (-.f64 (*.f64 y (*.f64 4 (+.f64 x (+.f64 x (-.f64 x z))))) (*.f64 x (*.f64 4 (+.f64 y y)))) 4)
(/.f64 (-.f64 (*.f64 (+.f64 (-.f64 x z) (+.f64 x x)) (*.f64 y 4)) (*.f64 x (*.f64 4 (+.f64 y y)))) 4)
(/.f64 (-.f64 (*.f64 y (*.f64 4 (+.f64 (-.f64 x z) (+.f64 x x)))) (*.f64 x (*.f64 y 8))) 4)
(/.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 x 4) (*.f64 z 4))) 16)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (*.f64 y 4) (neg.f64 (*.f64 (-.f64 z x) 4))) 16)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (*.f64 y 4) (*.f64 (*.f64 (-.f64 z x) -2) 2)) 16)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (neg.f64 (*.f64 (-.f64 z x) 4)) (*.f64 y 4)) 16)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (*.f64 y 4)) 16)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (*.f64 (*.f64 (-.f64 z x) -2) 2) (*.f64 y 4)) 16)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(pow.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))
(neg.f64 (*.f64 y (-.f64 z x)))
(*.f64 y (-.f64 (*.f64 2 x) (+.f64 x z)))
(*.f64 y (-.f64 x z))

eval373.0ms (1.9%)

Compiler

Compiled 4544 to 2023 computations (55.5% saved)

prune261.0ms (1.3%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New3321333
Fresh000
Picked011
Done134
Total3335338
Error
0b
Counts
338 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(-.f64 (*.f64 y (-.f64 x (-.f64 z x))) (*.f64 y x))
0.0b
(-.f64 (*.f64 y x) (*.f64 z y))
29.7b
(*.f64 z (neg.f64 y))
0.0b
(*.f64 y (-.f64 x z))
28.9b
(*.f64 y x)
Compiler

Compiled 45 to 28 computations (37.8% saved)

localize14.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 19 to 6 computations (68.4% saved)

series1.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite301.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
746×rational_best-simplify-83
650×rational_best-simplify-57
632×rational_best-simplify-47
616×rational_best-simplify-51
522×rational_best-simplify-52
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0819
15213
210413
330313
4124913
Stop Event
node limit
Counts
1 → 91
Calls
Call 1
Inputs
(-.f64 (*.f64 y x) (*.f64 z y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (-.f64 x z)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 y (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 z (neg.f64 y)) (neg.f64 (neg.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (+.f64 x x)) (neg.f64 (*.f64 y (+.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (+.f64 x (-.f64 x z))) (neg.f64 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 y x)) (*.f64 y (+.f64 x (-.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x z) (*.f64 y 1/2)) (*.f64 (-.f64 x z) (*.f64 y 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (*.f64 x 1/2)) (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (+.f64 x z)) (*.f64 (*.f64 y z) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 2) (/.f64 (*.f64 y (-.f64 z x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 y (+.f64 x (*.f64 -2 z))) (*.f64 y z))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y z) (*.f64 y (-.f64 z x))) (*.f64 z (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 y x) (/.f64 (*.f64 y z) -2)) (/.f64 (*.f64 y z) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 y x) (/.f64 (*.f64 y z) -2)) (-.f64 (*.f64 y x) (+.f64 (*.f64 y x) (*.f64 y (*.f64 z 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y z) -2) (+.f64 (*.f64 y x) (/.f64 (*.f64 y z) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y z) -2) (neg.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y z) -2) (/.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 y x)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y z) -2) (-.f64 (/.f64 (*.f64 y z) -2) (neg.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (neg.f64 (*.f64 y x))) (*.f64 z (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y x) 4) (+.f64 (/.f64 (*.f64 y x) 4) (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y z))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (*.f64 (-.f64 x z) (*.f64 y 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (/.f64 (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y z)) (*.f64 y (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y z)) (neg.f64 (/.f64 (*.f64 y x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y x) (*.f64 y (*.f64 x 1/2))) (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y z)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y (+.f64 x z))) (-.f64 (*.f64 y (*.f64 x 1/2)) (neg.f64 (*.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y (+.f64 x x)) (*.f64 y (*.f64 z 1/2))) (neg.f64 (+.f64 (*.f64 y x) (*.f64 y (*.f64 z 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y (+.f64 x x)) (*.f64 y (*.f64 x 1/2))) (neg.f64 (+.f64 (*.f64 y z) (*.f64 y (*.f64 x 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 y (+.f64 x z)) (*.f64 y (*.f64 z 1/2))) (neg.f64 (*.f64 3 (*.f64 y (*.f64 z 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 y x)) -1) (/.f64 (*.f64 y z) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (+.f64 (*.f64 y z) (/.f64 (*.f64 y x) -2)) -1) (/.f64 (/.f64 (*.f64 y x) -2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y (+.f64 x (-.f64 x z))) 4) (/.f64 (+.f64 (*.f64 z (neg.f64 y)) (*.f64 (-.f64 z x) (*.f64 -2 y))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 y (-.f64 x z))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 y (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y (-.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x z) y)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x z) (-.f64 0 (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (-.f64 x z) (*.f64 y 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 z x) (*.f64 -2 y)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (/.f64 (-.f64 x z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 1/2 (-.f64 x z)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 (-.f64 x z) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 1 (/.f64 (-.f64 x z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 y y) (*.f64 -1 (/.f64 (-.f64 z x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 y (-.f64 z x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 z x) (neg.f64 y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 z x) (*.f64 -2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 1/2) (*.f64 (-.f64 x z) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 1/2) (-.f64 (*.f64 x 4) (*.f64 2 (+.f64 x z))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 y) (-.f64 z x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 4) (/.f64 (-.f64 x z) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 y 4) (*.f64 1/2 (/.f64 (-.f64 x z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x z) (*.f64 y 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x z) 2) (*.f64 y 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (-.f64 z x)) (/.f64 y -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (*.f64 y (-.f64 x z)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x z) 4) (*.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 y y) 4) (/.f64 (-.f64 x z) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 y y) 4) (*.f64 1/4 (/.f64 (-.f64 x z) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (-.f64 z x) (*.f64 -2 y)) 4) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (/.f64 y 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (*.f64 y 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 y) (*.f64 (-.f64 z x) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 y) (*.f64 1 (/.f64 (-.f64 z x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 x z) 2) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (-.f64 z x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z x) (*.f64 -2 y)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 y y) (-.f64 z x)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 z x) (*.f64 -2 y)) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 y y) (-.f64 z x))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (*.f64 (+.f64 y y) (-.f64 z x))) -1) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 z x) (*.f64 (+.f64 y y) 4)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 y (*.f64 z 4))) (*.f64 y (*.f64 x 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x (*.f64 (+.f64 y y) 4)) (*.f64 y (*.f64 2 (*.f64 z 4)))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 (*.f64 z 4) (*.f64 y 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x (*.f64 (+.f64 y y) 4)) (*.f64 y (+.f64 (*.f64 x 4) (*.f64 z 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y (*.f64 2 (+.f64 x z))) (*.f64 y (*.f64 z 4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 y (+.f64 (*.f64 x 4) (*.f64 z 4))) (*.f64 y (*.f64 2 (*.f64 z 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 x 4) (*.f64 z 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (*.f64 y 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 y (-.f64 x z)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (-.f64 z x)))))))

simplify748.0ms (3.9%)

Algorithm
egg-herbie
Rules
1318×rational_best-simplify-57
1038×rational_best-simplify-49
926×rational_best-simplify-3
756×rational_best-simplify-1
666×rational_best-simplify-56
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02381915
16221889
215241859
340401835
Stop Event
node limit
Counts
127 → 121
Calls
Call 1
Inputs
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 -1 (*.f64 y z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(+.f64 (*.f64 y (-.f64 x z)) 0)
(+.f64 0 (*.f64 y (-.f64 x z)))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(+.f64 (*.f64 z (neg.f64 y)) (neg.f64 (neg.f64 (*.f64 y x))))
(+.f64 (*.f64 y (+.f64 x x)) (neg.f64 (*.f64 y (+.f64 x z))))
(+.f64 (*.f64 y (+.f64 x (-.f64 x z))) (neg.f64 (*.f64 y x)))
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 y (+.f64 x (-.f64 x z))))
(+.f64 (*.f64 (-.f64 x z) (*.f64 y 1/2)) (*.f64 (-.f64 x z) (*.f64 y 1/2)))
(+.f64 (*.f64 y (*.f64 x 1/2)) (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y z)))
(+.f64 (*.f64 y (+.f64 x z)) (*.f64 (*.f64 y z) -2))
(+.f64 (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 2) (/.f64 (*.f64 y (-.f64 z x)) 2))
(+.f64 (*.f64 y (+.f64 x (*.f64 -2 z))) (*.f64 y z))
(+.f64 (-.f64 (*.f64 y z) (*.f64 y (-.f64 z x))) (*.f64 z (neg.f64 y)))
(+.f64 (+.f64 (*.f64 y x) (/.f64 (*.f64 y z) -2)) (/.f64 (*.f64 y z) -2))
(+.f64 (+.f64 (*.f64 y x) (/.f64 (*.f64 y z) -2)) (-.f64 (*.f64 y x) (+.f64 (*.f64 y x) (*.f64 y (*.f64 z 1/2)))))
(+.f64 (/.f64 (*.f64 y z) -2) (+.f64 (*.f64 y x) (/.f64 (*.f64 y z) -2)))
(+.f64 (/.f64 (*.f64 y z) -2) (neg.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 y x))))
(+.f64 (/.f64 (*.f64 y z) -2) (/.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 y x)) -1))
(+.f64 (/.f64 (*.f64 y z) -2) (-.f64 (/.f64 (*.f64 y z) -2) (neg.f64 (*.f64 y x))))
(+.f64 (neg.f64 (neg.f64 (*.f64 y x))) (*.f64 z (neg.f64 y)))
(+.f64 (/.f64 (*.f64 y x) 4) (+.f64 (/.f64 (*.f64 y x) 4) (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y z))))
(+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (*.f64 (-.f64 x z) (*.f64 y 1/2))))
(+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (/.f64 (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 2) 2))
(+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 4))
(+.f64 (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y z)) (*.f64 y (*.f64 x 1/2)))
(+.f64 (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y z)) (neg.f64 (/.f64 (*.f64 y x) -2)))
(+.f64 (-.f64 (*.f64 y x) (*.f64 y (*.f64 x 1/2))) (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y z)))
(+.f64 (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y (+.f64 x z))) (-.f64 (*.f64 y (*.f64 x 1/2)) (neg.f64 (*.f64 y x))))
(+.f64 (-.f64 (*.f64 y (+.f64 x x)) (*.f64 y (*.f64 z 1/2))) (neg.f64 (+.f64 (*.f64 y x) (*.f64 y (*.f64 z 1/2)))))
(+.f64 (-.f64 (*.f64 y (+.f64 x x)) (*.f64 y (*.f64 x 1/2))) (neg.f64 (+.f64 (*.f64 y z) (*.f64 y (*.f64 x 1/2)))))
(+.f64 (-.f64 (*.f64 y (+.f64 x z)) (*.f64 y (*.f64 z 1/2))) (neg.f64 (*.f64 3 (*.f64 y (*.f64 z 1/2)))))
(+.f64 (/.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 y x)) -1) (/.f64 (*.f64 y z) -2))
(+.f64 (/.f64 (+.f64 (*.f64 y z) (/.f64 (*.f64 y x) -2)) -1) (/.f64 (/.f64 (*.f64 y x) -2) -1))
(+.f64 (/.f64 (*.f64 y (+.f64 x (-.f64 x z))) 4) (/.f64 (+.f64 (*.f64 z (neg.f64 y)) (*.f64 (-.f64 z x) (*.f64 -2 y))) 4))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 1 (*.f64 y (-.f64 x z)))
(*.f64 (*.f64 y (-.f64 z x)) -1)
(*.f64 (-.f64 x z) y)
(*.f64 (-.f64 x z) (-.f64 0 (neg.f64 y)))
(*.f64 2 (*.f64 (-.f64 x z) (*.f64 y 1/2)))
(*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 1/2))
(*.f64 (*.f64 (-.f64 z x) (*.f64 -2 y)) 1/2)
(*.f64 (+.f64 y y) (/.f64 (-.f64 x z) 2))
(*.f64 (+.f64 y y) (*.f64 1/2 (-.f64 x z)))
(*.f64 (+.f64 y y) (*.f64 (-.f64 x z) 1/2))
(*.f64 (+.f64 y y) (*.f64 1 (/.f64 (-.f64 x z) 2)))
(*.f64 (+.f64 y y) (*.f64 -1 (/.f64 (-.f64 z x) 2)))
(*.f64 -1 (*.f64 y (-.f64 z x)))
(*.f64 (-.f64 z x) (neg.f64 y))
(*.f64 1/2 (*.f64 (-.f64 z x) (*.f64 -2 y)))
(*.f64 (*.f64 y 1/2) (*.f64 (-.f64 x z) 2))
(*.f64 (*.f64 y 1/2) (-.f64 (*.f64 x 4) (*.f64 2 (+.f64 x z))))
(*.f64 (neg.f64 y) (-.f64 z x))
(*.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 1/4)
(*.f64 (*.f64 y 4) (/.f64 (-.f64 x z) 4))
(*.f64 (*.f64 y 4) (*.f64 1/2 (/.f64 (-.f64 x z) 2)))
(*.f64 (*.f64 (-.f64 x z) (*.f64 y 1/2)) 2)
(*.f64 (*.f64 (-.f64 x z) 2) (*.f64 y 1/2))
(*.f64 (*.f64 2 (-.f64 z x)) (/.f64 y -2))
(*.f64 1/4 (*.f64 (*.f64 y (-.f64 x z)) 4))
(*.f64 (/.f64 (-.f64 x z) 4) (*.f64 y 4))
(*.f64 (*.f64 (+.f64 y y) 4) (/.f64 (-.f64 x z) 8))
(*.f64 (*.f64 (+.f64 y y) 4) (*.f64 1/4 (/.f64 (-.f64 x z) 2)))
(*.f64 (*.f64 (*.f64 (-.f64 z x) (*.f64 -2 y)) 4) 1/8)
(*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (/.f64 y 4))
(*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (*.f64 y 1/4))
(*.f64 (*.f64 -2 y) (*.f64 (-.f64 z x) 1/2))
(*.f64 (*.f64 -2 y) (*.f64 1 (/.f64 (-.f64 z x) 2)))
(*.f64 (/.f64 (-.f64 x z) 2) (+.f64 y y))
(/.f64 (*.f64 y (-.f64 x z)) 1)
(/.f64 (*.f64 y (-.f64 z x)) -1)
(/.f64 (*.f64 (-.f64 z x) (*.f64 -2 y)) 2)
(/.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 4)
(/.f64 (*.f64 (+.f64 y y) (-.f64 z x)) -2)
(/.f64 (*.f64 (*.f64 (-.f64 z x) (*.f64 -2 y)) 4) 8)
(/.f64 (*.f64 2 (*.f64 (+.f64 y y) (-.f64 z x))) -4)
(/.f64 (/.f64 (*.f64 2 (*.f64 (+.f64 y y) (-.f64 z x))) -1) 4)
(/.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) -4)
(/.f64 (*.f64 (-.f64 z x) (*.f64 (+.f64 y y) 4)) -8)
(/.f64 (+.f64 (neg.f64 (*.f64 y (*.f64 z 4))) (*.f64 y (*.f64 x 4))) 4)
(/.f64 (-.f64 (*.f64 x (*.f64 (+.f64 y y) 4)) (*.f64 y (*.f64 2 (*.f64 z 4)))) 8)
(/.f64 (-.f64 (*.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 (*.f64 z 4) (*.f64 y 4))) 16)
(/.f64 (-.f64 (*.f64 x (*.f64 (+.f64 y y) 4)) (*.f64 y (+.f64 (*.f64 x 4) (*.f64 z 4)))) 4)
(/.f64 (-.f64 (*.f64 y (*.f64 2 (+.f64 x z))) (*.f64 y (*.f64 z 4))) 2)
(/.f64 (-.f64 (*.f64 y (+.f64 (*.f64 x 4) (*.f64 z 4))) (*.f64 y (*.f64 2 (*.f64 z 4)))) 4)
(/.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 x 4) (*.f64 z 4))) 16)
(/.f64 (*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (*.f64 y 4)) 16)
(pow.f64 (*.f64 y (-.f64 x z)) 1)
(neg.f64 (*.f64 y (-.f64 z x)))
Outputs
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 x) (*.f64 -1 z))))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 x z))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (-.f64 x z))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (-.f64 x z))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 -1 (*.f64 y z)) (*.f64 y x))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y z))
(*.f64 z (neg.f64 y))
(*.f64 y (neg.f64 z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 -1 (*.f64 y z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y x) (*.f64 z (neg.f64 y)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (-.f64 x z)) 0)
(*.f64 y (-.f64 x z))
(+.f64 0 (*.f64 y (-.f64 x z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 z (neg.f64 y)) (neg.f64 (neg.f64 (*.f64 y x))))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (+.f64 x x)) (neg.f64 (*.f64 y (+.f64 x z))))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (+.f64 x (-.f64 x z))) (neg.f64 (*.f64 y x)))
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 y (+.f64 x (-.f64 x z))))
(-.f64 (*.f64 y (+.f64 x (-.f64 x z))) (*.f64 y x))
(*.f64 y (-.f64 (+.f64 x (-.f64 x z)) x))
(+.f64 (neg.f64 (*.f64 y x)) (*.f64 y (+.f64 x (-.f64 x z))))
(-.f64 (*.f64 y (+.f64 x (-.f64 x z))) (*.f64 y x))
(*.f64 y (-.f64 (+.f64 x (-.f64 x z)) x))
(+.f64 (*.f64 (-.f64 x z) (*.f64 y 1/2)) (*.f64 (-.f64 x z) (*.f64 y 1/2)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (*.f64 x 1/2)) (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y z)))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (+.f64 x z)) (*.f64 (*.f64 y z) -2))
(+.f64 (*.f64 y (+.f64 x z)) (*.f64 y (*.f64 z -2)))
(+.f64 (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 2) (/.f64 (*.f64 y (-.f64 z x)) 2))
(*.f64 y (-.f64 x z))
(+.f64 (*.f64 y (+.f64 x (*.f64 -2 z))) (*.f64 y z))
(+.f64 (*.f64 y z) (*.f64 y (+.f64 x (*.f64 z -2))))
(*.f64 y (+.f64 z (+.f64 x (*.f64 z -2))))
(*.f64 y (+.f64 x (+.f64 (*.f64 z -2) z)))
(*.f64 y (+.f64 z (-.f64 x (/.f64 z 1/2))))
(+.f64 (-.f64 (*.f64 y z) (*.f64 y (-.f64 z x))) (*.f64 z (neg.f64 y)))
(*.f64 y (-.f64 x z))
(+.f64 (+.f64 (*.f64 y x) (/.f64 (*.f64 y z) -2)) (/.f64 (*.f64 y z) -2))
(*.f64 y (-.f64 x z))
(+.f64 (+.f64 (*.f64 y x) (/.f64 (*.f64 y z) -2)) (-.f64 (*.f64 y x) (+.f64 (*.f64 y x) (*.f64 y (*.f64 z 1/2)))))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (*.f64 y z) -2) (+.f64 (*.f64 y x) (/.f64 (*.f64 y z) -2)))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (*.f64 y z) -2) (neg.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 y x))))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (*.f64 y z) -2) (/.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 y x)) -1))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (*.f64 y z) -2) (-.f64 (/.f64 (*.f64 y z) -2) (neg.f64 (*.f64 y x))))
(*.f64 y (-.f64 x z))
(+.f64 (neg.f64 (neg.f64 (*.f64 y x))) (*.f64 z (neg.f64 y)))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (*.f64 y x) 4) (+.f64 (/.f64 (*.f64 y x) 4) (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y z))))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (*.f64 (-.f64 x z) (*.f64 y 1/2))))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (/.f64 (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 2) 2))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (*.f64 y (-.f64 x z)) 4) (/.f64 (*.f64 (*.f64 y (-.f64 x z)) 3) 4))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y z)) (*.f64 y (*.f64 x 1/2)))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y z)) (neg.f64 (/.f64 (*.f64 y x) -2)))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 (*.f64 y x) (*.f64 y (*.f64 x 1/2))) (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y z)))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y (+.f64 x z))) (-.f64 (*.f64 y (*.f64 x 1/2)) (neg.f64 (*.f64 y x))))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 (*.f64 y (+.f64 x x)) (*.f64 y (*.f64 z 1/2))) (neg.f64 (+.f64 (*.f64 y x) (*.f64 y (*.f64 z 1/2)))))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 (*.f64 y (+.f64 x x)) (*.f64 y (*.f64 x 1/2))) (neg.f64 (+.f64 (*.f64 y z) (*.f64 y (*.f64 x 1/2)))))
(*.f64 y (-.f64 x z))
(+.f64 (-.f64 (*.f64 y (+.f64 x z)) (*.f64 y (*.f64 z 1/2))) (neg.f64 (*.f64 3 (*.f64 y (*.f64 z 1/2)))))
(-.f64 (*.f64 y (+.f64 x z)) (+.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 3 (*.f64 y (*.f64 z 1/2)))))
(+.f64 (*.f64 y (-.f64 (+.f64 x z) (*.f64 z 1/2))) (neg.f64 (*.f64 (*.f64 y z) 3/2)))
(-.f64 (*.f64 y (+.f64 x z)) (*.f64 (*.f64 y (*.f64 z 1/2)) 4))
(+.f64 (/.f64 (-.f64 (*.f64 y (*.f64 z 1/2)) (*.f64 y x)) -1) (/.f64 (*.f64 y z) -2))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (+.f64 (*.f64 y z) (/.f64 (*.f64 y x) -2)) -1) (/.f64 (/.f64 (*.f64 y x) -2) -1))
(*.f64 y (-.f64 x z))
(+.f64 (/.f64 (*.f64 y (+.f64 x (-.f64 x z))) 4) (/.f64 (+.f64 (*.f64 z (neg.f64 y)) (*.f64 (-.f64 z x) (*.f64 -2 y))) 4))
(/.f64 (+.f64 (*.f64 y (+.f64 x (-.f64 x z))) (+.f64 (*.f64 z (neg.f64 y)) (*.f64 y (*.f64 -2 (-.f64 z x))))) 4)
(/.f64 (+.f64 (*.f64 y (neg.f64 z)) (+.f64 (*.f64 y (*.f64 -2 (-.f64 z x))) (*.f64 y (+.f64 x (-.f64 x z))))) 4)
(/.f64 (+.f64 (*.f64 y (neg.f64 z)) (*.f64 y (+.f64 (*.f64 -2 (-.f64 z x)) (+.f64 x (-.f64 x z))))) 4)
(/.f64 (+.f64 (*.f64 y (neg.f64 z)) (*.f64 y (+.f64 (+.f64 x (-.f64 x z)) (*.f64 -2 (-.f64 z x))))) 4)
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 y (-.f64 x z))
(*.f64 1 (*.f64 y (-.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y (-.f64 z x)) -1)
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) y)
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 x z) (-.f64 0 (neg.f64 y)))
(*.f64 y (-.f64 x z))
(*.f64 2 (*.f64 (-.f64 x z) (*.f64 y 1/2)))
(*.f64 y (-.f64 x z))
(*.f64 2 (*.f64 (*.f64 y (-.f64 x z)) 1/2))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (-.f64 z x) (*.f64 -2 y)) 1/2)
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 y y) (/.f64 (-.f64 x z) 2))
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 y y) (*.f64 1/2 (-.f64 x z)))
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 y y) (*.f64 (-.f64 x z) 1/2))
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 y y) (*.f64 1 (/.f64 (-.f64 x z) 2)))
(*.f64 y (-.f64 x z))
(*.f64 (+.f64 y y) (*.f64 -1 (/.f64 (-.f64 z x) 2)))
(*.f64 y (-.f64 x z))
(*.f64 -1 (*.f64 y (-.f64 z x)))
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 z x) (neg.f64 y))
(*.f64 y (-.f64 x z))
(*.f64 1/2 (*.f64 (-.f64 z x) (*.f64 -2 y)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y 1/2) (*.f64 (-.f64 x z) 2))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y 1/2) (-.f64 (*.f64 x 4) (*.f64 2 (+.f64 x z))))
(*.f64 (*.f64 y 1/2) (-.f64 (*.f64 x 4) (*.f64 (+.f64 x z) 2)))
(*.f64 y (*.f64 1/2 (-.f64 (*.f64 x 4) (*.f64 (+.f64 x z) 2))))
(*.f64 (neg.f64 y) (-.f64 z x))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 1/4)
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y 4) (/.f64 (-.f64 x z) 4))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 y 4) (*.f64 1/2 (/.f64 (-.f64 x z) 2)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (-.f64 x z) (*.f64 y 1/2)) 2)
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (-.f64 x z) 2) (*.f64 y 1/2))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 2 (-.f64 z x)) (/.f64 y -2))
(*.f64 y (-.f64 x z))
(*.f64 1/4 (*.f64 (*.f64 y (-.f64 x z)) 4))
(*.f64 y (-.f64 x z))
(*.f64 (/.f64 (-.f64 x z) 4) (*.f64 y 4))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (+.f64 y y) 4) (/.f64 (-.f64 x z) 8))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (+.f64 y y) 4) (*.f64 1/4 (/.f64 (-.f64 x z) 2)))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 (*.f64 (-.f64 z x) (*.f64 -2 y)) 4) 1/8)
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (/.f64 y 4))
(*.f64 y (-.f64 x z))
(*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (*.f64 y 1/4))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 -2 y) (*.f64 (-.f64 z x) 1/2))
(*.f64 y (-.f64 x z))
(*.f64 (*.f64 -2 y) (*.f64 1 (/.f64 (-.f64 z x) 2)))
(*.f64 y (-.f64 x z))
(*.f64 (/.f64 (-.f64 x z) 2) (+.f64 y y))
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 y (-.f64 z x)) -1)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 z x) (*.f64 -2 y)) 2)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (*.f64 y (-.f64 x z)) 4) 4)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (+.f64 y y) (-.f64 z x)) -2)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (*.f64 (-.f64 z x) (*.f64 -2 y)) 4) 8)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 2 (*.f64 (+.f64 y y) (-.f64 z x))) -4)
(*.f64 y (-.f64 x z))
(/.f64 (/.f64 (*.f64 2 (*.f64 (+.f64 y y) (-.f64 z x))) -1) 4)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 z x) (*.f64 y 4)) -4)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 z x) (*.f64 (+.f64 y y) 4)) -8)
(*.f64 y (-.f64 x z))
(/.f64 (+.f64 (neg.f64 (*.f64 y (*.f64 z 4))) (*.f64 y (*.f64 x 4))) 4)
(*.f64 y (-.f64 x z))
(/.f64 (-.f64 (*.f64 x (*.f64 (+.f64 y y) 4)) (*.f64 y (*.f64 2 (*.f64 z 4)))) 8)
(*.f64 y (-.f64 x z))
(/.f64 (-.f64 (*.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 (*.f64 z 4) (*.f64 y 4))) 16)
(*.f64 y (-.f64 x z))
(/.f64 (-.f64 (*.f64 x (*.f64 (+.f64 y y) 4)) (*.f64 y (+.f64 (*.f64 x 4) (*.f64 z 4)))) 4)
(/.f64 (-.f64 (*.f64 x (*.f64 4 (+.f64 y y))) (*.f64 y (*.f64 4 (+.f64 x z)))) 4)
(/.f64 (-.f64 (*.f64 x (*.f64 4 (+.f64 y y))) (*.f64 y (*.f64 (+.f64 x z) 4))) 4)
(/.f64 (-.f64 (*.f64 x (*.f64 y 8)) (*.f64 y (*.f64 (+.f64 x z) 4))) 4)
(/.f64 (*.f64 (*.f64 y 4) (-.f64 (+.f64 x x) (+.f64 x z))) 4)
(/.f64 (-.f64 (*.f64 y (*.f64 2 (+.f64 x z))) (*.f64 y (*.f64 z 4))) 2)
(+.f64 (*.f64 y (+.f64 x z)) (*.f64 (*.f64 y z) -2))
(+.f64 (*.f64 y (+.f64 x z)) (*.f64 y (*.f64 z -2)))
(/.f64 (-.f64 (*.f64 y (+.f64 (*.f64 x 4) (*.f64 z 4))) (*.f64 y (*.f64 2 (*.f64 z 4)))) 4)
(/.f64 (-.f64 (*.f64 y (*.f64 4 (+.f64 x z))) (*.f64 y (*.f64 4 (*.f64 z 2)))) 4)
(/.f64 (*.f64 y (-.f64 (*.f64 (+.f64 x z) 4) (*.f64 z 8))) 4)
(/.f64 (*.f64 y (-.f64 (*.f64 z -4) (/.f64 x -1/4))) 4)
(/.f64 (*.f64 (*.f64 y 4) (-.f64 (*.f64 x 4) (*.f64 z 4))) 16)
(*.f64 y (-.f64 x z))
(/.f64 (*.f64 (-.f64 (*.f64 x 4) (*.f64 z 4)) (*.f64 y 4)) 16)
(*.f64 y (-.f64 x z))
(pow.f64 (*.f64 y (-.f64 x z)) 1)
(*.f64 y (-.f64 x z))
(neg.f64 (*.f64 y (-.f64 z x)))
(*.f64 y (-.f64 x z))

eval171.0ms (0.9%)

Compiler

Compiled 1486 to 699 computations (53% saved)

prune72.0ms (0.4%)

Pruning

5 alts after pruning (0 fresh and 5 done)

PrunedKeptTotal
New1210121
Fresh000
Picked011
Done044
Total1215126
Error
0b
Counts
126 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(-.f64 (*.f64 y (-.f64 x (-.f64 z x))) (*.f64 y x))
0.0b
(-.f64 (*.f64 y x) (*.f64 z y))
29.7b
(*.f64 z (neg.f64 y))
0.0b
(*.f64 y (-.f64 x z))
28.9b
(*.f64 y x)
Compiler

Compiled 45 to 28 computations (37.8% saved)

regimes144.0ms (0.7%)

Counts
8 → 1
Calls
Call 1
Inputs
(*.f64 y x)
(*.f64 z (neg.f64 y))
(*.f64 y (-.f64 x z))
(-.f64 (*.f64 y x) (*.f64 z y))
(+.f64 (*.f64 z (neg.f64 y)) (*.f64 y x))
(-.f64 (-.f64 (*.f64 x y) 0) (*.f64 y z))
(-.f64 (*.f64 y (-.f64 x (-.f64 z x))) (*.f64 y x))
(-.f64 (-.f64 (+.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y z)) (*.f64 y y))
Outputs
(*.f64 y (-.f64 x z))
Calls

4 calls:

37.0ms
(-.f64 (-.f64 (+.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y z)) (*.f64 y y))
37.0ms
y
34.0ms
x
34.0ms
z
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1(-.f64 (-.f64 (+.f64 (*.f64 x y) (*.f64 y y)) (*.f64 y z)) (*.f64 y y))
Compiler

Compiled 95 to 42 computations (55.8% saved)

regimes312.0ms (1.6%)

Accuracy

Total -45.6b remaining (-380.1%)

Threshold costs -45.6b (-380.1%)

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

3 calls:

167.0ms
y
81.0ms
z
63.0ms
x
Results
ErrorSegmentsBranch
12.0b3x
19.6b13y
13.7b5z
Compiler

Compiled 22 to 15 computations (31.8% saved)

bsearch84.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
73.0ms
3.5212186856387005e-7
1.381649104746919e-5
11.0ms
-1.9229046941317742e-16
-1.5969127258384936e-16
Results
46.0ms129×body256valid
20.0ms19×body1024valid
15.0ms11×body512valid
0.0msbody2048valid
Compiler

Compiled 174 to 124 computations (28.7% saved)

simplify4.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02063
Stop Event
done
saturated
Calls
Call 1
Inputs
(*.f64 y (-.f64 x z))
(if (<=.f64 x -7301667457314601/40564819207303340847894502572032) (*.f64 y x) (if (<=.f64 x 2597301565578305/4722366482869645213696) (*.f64 z (neg.f64 y)) (*.f64 y x)))
(*.f64 y x)
Outputs
(*.f64 y (-.f64 x z))
(if (<=.f64 x -7301667457314601/40564819207303340847894502572032) (*.f64 y x) (if (<=.f64 x 2597301565578305/4722366482869645213696) (*.f64 z (neg.f64 y)) (*.f64 y x)))
(*.f64 y x)
Compiler

Compiled 35 to 21 computations (40% saved)

soundness616.0ms (3.2%)

Algorithm
egg-herbie
Rules
1140×rational_best-simplify-1
1022×rational_best-simplify-76
1018×rational_best-simplify-75
678×rational_best-simplify-83
590×rational_best-simplify-62
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01137
12431
26025
316413
438613
5171513
6751813
Stop Event
node limit
Compiler

Compiled 114 to 25 computations (78.1% saved)

end88.0ms (0.5%)

Compiler

Compiled 29 to 14 computations (51.7% saved)

Profiling

Loading profile data...