Details

Time bar (total: 17.8s)

analyze285.0ms (1.6%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
25%25%74.9%0.1%0%0%0%5
28.6%25%62.4%0.1%12.5%0%0%6
42.9%37.5%50%0.1%12.5%0%0%7
55.6%46.8%37.5%0.1%15.6%0%0%8
63.6%53.1%30.4%0.1%16.4%0%0%9
73.9%58.5%20.7%0.1%20.7%0%0%10
79.3%62%16.2%0.1%21.7%0%0%11
85.7%65%10.8%0.1%24.1%0%0%12
Compiler

Compiled 12 to 8 computations (33.3% saved)

sample5.2s (29.1%)

Results
5.0s8256×body256valid
151.0ms458×body256infinite
Bogosity

preprocess12.0ms (0.1%)

Algorithm
egg-herbie
Rules
30×rational_best-simplify-1
rational_best-simplify-50
rational_best-simplify-102
rational_best-simplify-62
rational_best-simplify-34
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01338
12338
23338
34338
45538
55538
022
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f64 2 (-.f64 (*.f64 x x) (*.f64 x y)))
(*.f64 2 (-.f64 (*.f64 y y) (*.f64 y x)))
Outputs
(*.f64 2 (-.f64 (*.f64 x x) (*.f64 x y)))
(*.f64 2 (*.f64 x (-.f64 x y)))
(*.f64 (-.f64 x y) (*.f64 x 2))
(*.f64 x (*.f64 (-.f64 x y) 2))
(*.f64 x (*.f64 2 (-.f64 x y)))
(*.f64 2 (-.f64 (*.f64 y y) (*.f64 y x)))
(*.f64 2 (*.f64 y (-.f64 y x)))
(*.f64 (-.f64 y x) (*.f64 y 2))
(*.f64 (-.f64 y x) (*.f64 2 y))
Compiler

Compiled 13 to 9 computations (30.8% saved)

simplify57.0ms (0.3%)

Algorithm
egg-herbie
Rules
16×rational_best-simplify-1
rational_best-simplify-50
rational_best-simplify-102
rational_best-simplify-62
rational_best-simplify-34
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
11519
22019
32519
43119
53119
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(*.f64 2 (-.f64 (*.f64 x x) (*.f64 x y)))
Outputs
(*.f64 2 (-.f64 (*.f64 x x) (*.f64 x y)))
(*.f64 2 (*.f64 x (-.f64 x y)))

eval1.0ms (0%)

Compiler

Compiled 18 to 11 computations (38.9% saved)

prune26.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.0b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(*.f64 2 (-.f64 (*.f64 x x) (*.f64 x y)))
0.0b
(*.f64 2 (*.f64 x (-.f64 x y)))
Compiler

Compiled 20 to 13 computations (35% saved)

localize224.0ms (1.3%)

Local error

Found 2 expressions with local error:

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

Compiled 20 to 7 computations (65% saved)

series35.0ms (0.2%)

Counts
2 → 48
Calls

12 calls:

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

rewrite560.0ms (3.1%)

Algorithm
batch-egg-rewrite
Rules
836×rational_best-simplify-1
706×rational_best-simplify-61
618×rational_best-simplify-83
596×rational_best-simplify-47
528×rational_best-simplify-51
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0832
15432
211132
329732
4106032
5721332
Stop Event
node limit
Counts
2 → 159
Calls
Call 1
Inputs
(*.f64 2 (*.f64 x (-.f64 x y)))
(*.f64 x (-.f64 x y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 2 (-.f64 x y))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (*.f64 2 (-.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (*.f64 -3/2 (*.f64 x (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2))) (*.f64 x (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -3/2 (*.f64 x (-.f64 y x))) (*.f64 x (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (*.f64 2 (-.f64 x y))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (*.f64 2 (-.f64 x y))) (+.f64 (*.f64 x (-.f64 y x)) (*.f64 x (-.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 x (*.f64 (-.f64 x y) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (+.f64 (*.f64 x (-.f64 y x)) (*.f64 (-.f64 y x) (*.f64 x 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (*.f64 -3 (*.f64 x (*.f64 (-.f64 x y) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (neg.f64 (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (/.f64 (*.f64 3 (*.f64 x (-.f64 y x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2))) (*.f64 (-.f64 y x) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -3/2 (*.f64 x (-.f64 y x))) (*.f64 (-.f64 y x) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 x y)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 2 (-.f64 x y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 y x)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 (-.f64 x y) -2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (/.f64 x -1/4)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y x) (*.f64 x 1/2)) -1/4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (*.f64 x (-.f64 x y)) 8)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 x y) (/.f64 x -1/4)) (*.f64 (-.f64 x y) (/.f64 x -1/4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8)) (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x y) 4) (*.f64 -2 (/.f64 x -1/4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x 4) (*.f64 2 (*.f64 (-.f64 x y) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x 4) (*.f64 (-.f64 y x) 4)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (*.f64 (-.f64 x y) 4)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (*.f64 2 (*.f64 (-.f64 x y) 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (+.f64 (*.f64 2 (*.f64 (-.f64 x y) 4)) (*.f64 2 (*.f64 (-.f64 x y) 4)))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 (+.f64 x (-.f64 x y)) 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (+.f64 (+.f64 (/.f64 y -1/2) (*.f64 x 4)) (/.f64 y -1/2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (+.f64 (*.f64 (+.f64 x (-.f64 x y)) 4) (neg.f64 (*.f64 y 4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 (+.f64 y y) 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 (+.f64 x (-.f64 x y)) 4) (*.f64 y 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y x) (+.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 -2 (/.f64 x -1/4)))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (*.f64 2 (-.f64 x y))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (*.f64 (-.f64 x y) 4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (*.f64 2 (*.f64 (-.f64 x y) 4))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (+.f64 (*.f64 2 (*.f64 (-.f64 x y) 4)) (*.f64 2 (*.f64 (-.f64 x y) 4)))) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 x 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (-.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 (+.f64 y y) 4))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (-.f64 (*.f64 -2 (/.f64 x -1/4)) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (-.f64 (neg.f64 (*.f64 y 4)) (/.f64 x -1/4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (-.f64 (*.f64 2 (+.f64 x y)) (*.f64 y 4))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (-.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 (+.f64 y y) 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (neg.f64 (*.f64 -2 (/.f64 x -1/4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (+.f64 (/.f64 x -1/4) (/.f64 x -1/4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (*.f64 -2 (*.f64 x 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 (*.f64 (+.f64 y y) 4) (*.f64 -2 (/.f64 x -1/4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 (*.f64 (-.f64 x y) 4) -2)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x y) -2) (+.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 -2 (/.f64 x -1/4)))) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x y) -2) (+.f64 (*.f64 2 (+.f64 x y)) (/.f64 y -1/2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x y) -2) (+.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (neg.f64 (*.f64 y 4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (-.f64 x y) -2) (+.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 -2 (/.f64 x -1/4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (-.f64 x y)) (*.f64 x -2)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (-.f64 x y)) (/.f64 x -1/4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (-.f64 x y)) (neg.f64 (*.f64 -2 (/.f64 x -1/4)))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (-.f64 x y)) (+.f64 y (-.f64 x y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (-.f64 x y)) (-.f64 (+.f64 y y) (*.f64 2 (+.f64 x y)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (-.f64 x y)) (+.f64 (/.f64 y -1/2) (*.f64 (-.f64 x y) -2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (-.f64 x y)) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 (-.f64 y x) 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (-.f64 x y)) (+.f64 (/.f64 x -1/4) (/.f64 x -1/4))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (-.f64 x y)) (-.f64 (*.f64 y 4) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x x) (neg.f64 (*.f64 2 (*.f64 (-.f64 x y) 4)))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x x) (+.f64 (/.f64 x -1/4) (*.f64 y 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x x) (+.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) 4))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x x) (-.f64 (*.f64 (+.f64 y y) 4) (*.f64 -2 (/.f64 x -1/4)))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x x) (-.f64 (/.f64 x -1/4) (neg.f64 (*.f64 y 4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x x) (-.f64 (*.f64 (+.f64 y y) 4) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x x) (-.f64 (*.f64 2 (+.f64 x y)) (*.f64 x 4))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x x) (-.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 -2 (/.f64 x -1/4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x 1/2) (+.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) 4))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x 1/2) (-.f64 (*.f64 (+.f64 y y) 4) (*.f64 -2 (/.f64 x -1/4)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (*.f64 2 (-.f64 x y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 x (*.f64 (-.f64 x y) -2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 x y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (-.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (*.f64 x (*.f64 (-.f64 x y) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (*.f64 x (*.f64 (-.f64 x y) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 8))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (-.f64 x y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 x (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (*.f64 (-.f64 y x) (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 3 (*.f64 x (-.f64 y x))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (*.f64 x (*.f64 (-.f64 x y) 1/2))) (/.f64 (*.f64 x (-.f64 x y)) -4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2))) 2) (/.f64 (*.f64 (-.f64 y x) (*.f64 x 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 4) (/.f64 (*.f64 x (-.f64 x y)) -4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 8) (/.f64 (*.f64 x (*.f64 (-.f64 x y) -2)) 8))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 2 (-.f64 x y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 y x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 (-.f64 x y) -2)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (/.f64 x -1/4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y x) (*.f64 x 1/2)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (*.f64 x (-.f64 x y)) 8)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 x y) (/.f64 x -1/4)) (*.f64 (-.f64 x y) (/.f64 x -1/4))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8)) (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8))) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 2 (*.f64 (-.f64 x y) 4))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 x -1/4) (*.f64 (-.f64 y x) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (*.f64 (-.f64 x y) 4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (*.f64 2 (*.f64 (-.f64 x y) 4))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (+.f64 (*.f64 2 (*.f64 (-.f64 x y) 4)) (*.f64 2 (*.f64 (-.f64 x y) 4)))) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 (+.f64 y y) 4))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y x) (+.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 -2 (/.f64 x -1/4)))) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (*.f64 2 (-.f64 x y))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (*.f64 (-.f64 x y) 4)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (*.f64 2 (*.f64 (-.f64 x y) 4))) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (neg.f64 (*.f64 -2 (/.f64 x -1/4)))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (+.f64 (/.f64 x -1/4) (/.f64 x -1/4))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) 4))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 (*.f64 (+.f64 y y) 4) (*.f64 -2 (/.f64 x -1/4)))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (-.f64 x y) -2) (+.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 -2 (/.f64 x -1/4)))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (-.f64 x y)) (*.f64 x -2)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (-.f64 x y)) (/.f64 x -1/4)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x 1/2) (+.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x 1/2) (-.f64 (*.f64 (+.f64 y y) 4) (*.f64 -2 (/.f64 x -1/4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (*.f64 (-.f64 x y) 1/2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 x 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 -2 (/.f64 x -1/4)) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (-.f64 (neg.f64 (*.f64 y 4)) (/.f64 x -1/4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 2 (+.f64 x y)) (*.f64 y 4))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (-.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 (+.f64 y y) 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y x) (+.f64 (*.f64 2 (+.f64 x y)) (/.f64 y -1/2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y x) (+.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (neg.f64 (*.f64 y 4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (+.f64 y (-.f64 x y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (-.f64 (+.f64 y y) (*.f64 2 (+.f64 x y)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (+.f64 (/.f64 y -1/2) (*.f64 (-.f64 x y) -2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 (-.f64 y x) 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (-.f64 (*.f64 y 4) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (neg.f64 (*.f64 2 (*.f64 (-.f64 x y) 4)))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (+.f64 (/.f64 x -1/4) (*.f64 y 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 (/.f64 x -1/4) (neg.f64 (*.f64 y 4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 (*.f64 (+.f64 y y) 4) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 (*.f64 2 (+.f64 x y)) (*.f64 x 4))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 -2 (/.f64 x -1/4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x 1/2) (*.f64 (*.f64 (-.f64 x y) 4) -2)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (*.f64 x -2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (/.f64 x -1/4)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (neg.f64 (*.f64 -2 (/.f64 x -1/4)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (+.f64 (/.f64 x -1/4) (/.f64 x -1/4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (*.f64 -2 (*.f64 x 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (-.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 x (-.f64 y x)))))))

simplify1.7s (9.4%)

Algorithm
egg-herbie
Rules
1298×rational_best-simplify-1
1252×rational_best-simplify-63
1122×rational_best-simplify-56
922×rational_best-simplify-108
738×rational_best-simplify-3
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
03634591
18934507
224524459
368364413
Stop Event
node limit
Counts
207 → 218
Calls
Call 1
Inputs
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(pow.f64 x 2)
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(pow.f64 x 2)
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(pow.f64 x 2)
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 x y)))
(+.f64 (*.f64 x (*.f64 2 (-.f64 x y))) 0)
(+.f64 0 (*.f64 x (*.f64 2 (-.f64 x y))))
(+.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2))))
(+.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (*.f64 -3/2 (*.f64 x (-.f64 y x))))
(+.f64 (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2))) (*.f64 x (*.f64 (-.f64 x y) 1/2)))
(+.f64 (*.f64 -3/2 (*.f64 x (-.f64 y x))) (*.f64 x (*.f64 (-.f64 x y) 1/2)))
(-.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 y x)))
(-.f64 (*.f64 x (*.f64 2 (-.f64 x y))) 0)
(-.f64 (*.f64 x (*.f64 2 (-.f64 x y))) (+.f64 (*.f64 x (-.f64 y x)) (*.f64 x (-.f64 x y))))
(-.f64 0 (*.f64 x (*.f64 (-.f64 x y) -2)))
(-.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (+.f64 (*.f64 x (-.f64 y x)) (*.f64 (-.f64 y x) (*.f64 x 1/2))))
(-.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (*.f64 -3 (*.f64 x (*.f64 (-.f64 x y) 1/2))))
(-.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (neg.f64 (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2)))))
(-.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (/.f64 (*.f64 3 (*.f64 x (-.f64 y x))) 2))
(-.f64 (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2))) (*.f64 (-.f64 y x) (*.f64 x 1/2)))
(-.f64 (*.f64 -3/2 (*.f64 x (-.f64 y x))) (*.f64 (-.f64 y x) (*.f64 x 1/2)))
(/.f64 (*.f64 x (-.f64 x y)) 1/2)
(/.f64 (*.f64 x (*.f64 2 (-.f64 x y))) 1)
(/.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 2)
(/.f64 (*.f64 x (-.f64 y x)) -1/2)
(/.f64 (*.f64 x (*.f64 (-.f64 x y) -2)) -1)
(/.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 4)
(/.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) 1/4)
(/.f64 (*.f64 (-.f64 x y) (/.f64 x -1/4)) -2)
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 1/2)) -1/4)
(/.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8)) 8)
(/.f64 (neg.f64 (*.f64 (*.f64 x (-.f64 x y)) 8)) -4)
(/.f64 (+.f64 (*.f64 (-.f64 x y) (/.f64 x -1/4)) (*.f64 (-.f64 x y) (/.f64 x -1/4))) -4)
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8)) (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8))) 16)
(/.f64 (neg.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8))) -8)
(/.f64 (*.f64 (*.f64 (-.f64 x y) 4) (*.f64 -2 (/.f64 x -1/4))) 16)
(/.f64 (*.f64 (*.f64 x 4) (*.f64 2 (*.f64 (-.f64 x y) 4))) 16)
(/.f64 (*.f64 (*.f64 x 4) (*.f64 (-.f64 y x) 4)) -8)
(/.f64 (*.f64 (neg.f64 x) (*.f64 (-.f64 x y) 4)) -2)
(/.f64 (*.f64 (neg.f64 x) (*.f64 2 (*.f64 (-.f64 x y) 4))) -4)
(/.f64 (*.f64 (neg.f64 x) (+.f64 (*.f64 2 (*.f64 (-.f64 x y) 4)) (*.f64 2 (*.f64 (-.f64 x y) 4)))) -8)
(/.f64 (*.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 (+.f64 x (-.f64 x y)) 4))) -4)
(/.f64 (*.f64 (neg.f64 x) (+.f64 (+.f64 (/.f64 y -1/2) (*.f64 x 4)) (/.f64 y -1/2))) -2)
(/.f64 (*.f64 (neg.f64 x) (+.f64 (*.f64 (+.f64 x (-.f64 x y)) 4) (neg.f64 (*.f64 y 4)))) -4)
(/.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 (+.f64 y y) 4))) -4)
(/.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 (+.f64 x (-.f64 x y)) 4) (*.f64 y 4))) -4)
(/.f64 (*.f64 (-.f64 y x) (+.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 -2 (/.f64 x -1/4)))) -8)
(/.f64 (*.f64 (*.f64 x -2) (*.f64 2 (-.f64 x y))) -2)
(/.f64 (*.f64 (*.f64 x -2) (*.f64 (-.f64 x y) 4)) -4)
(/.f64 (*.f64 (*.f64 x -2) (*.f64 2 (*.f64 (-.f64 x y) 4))) -8)
(/.f64 (*.f64 (*.f64 x -2) (+.f64 (*.f64 2 (*.f64 (-.f64 x y) 4)) (*.f64 2 (*.f64 (-.f64 x y) 4)))) -16)
(/.f64 (*.f64 (*.f64 x -2) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 x 4))) -4)
(/.f64 (*.f64 (*.f64 x -2) (-.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 (+.f64 y y) 4))) -8)
(/.f64 (*.f64 (*.f64 x -2) (-.f64 (*.f64 -2 (/.f64 x -1/4)) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)
(/.f64 (*.f64 (*.f64 x -2) (-.f64 (neg.f64 (*.f64 y 4)) (/.f64 x -1/4))) -4)
(/.f64 (*.f64 (*.f64 x -2) (-.f64 (*.f64 2 (+.f64 x y)) (*.f64 y 4))) -2)
(/.f64 (*.f64 (*.f64 x -2) (-.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 (+.f64 y y) 4))) -4)
(/.f64 (*.f64 (-.f64 x y) (neg.f64 (*.f64 -2 (/.f64 x -1/4)))) -4)
(/.f64 (*.f64 (-.f64 x y) (+.f64 (/.f64 x -1/4) (/.f64 x -1/4))) -4)
(/.f64 (*.f64 (-.f64 x y) (*.f64 -2 (*.f64 x 4))) -4)
(/.f64 (*.f64 x (+.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) 4))) -4)
(/.f64 (*.f64 x (-.f64 (*.f64 (+.f64 y y) 4) (*.f64 -2 (/.f64 x -1/4)))) -4)
(/.f64 (*.f64 x (*.f64 (*.f64 (-.f64 x y) 4) -2)) -4)
(/.f64 (*.f64 (*.f64 (-.f64 x y) -2) (+.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 -2 (/.f64 x -1/4)))) -16)
(/.f64 (*.f64 (*.f64 (-.f64 x y) -2) (+.f64 (*.f64 2 (+.f64 x y)) (/.f64 y -1/2))) -2)
(/.f64 (*.f64 (*.f64 (-.f64 x y) -2) (+.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (neg.f64 (*.f64 y 4)))) -4)
(/.f64 (*.f64 (/.f64 (-.f64 x y) -2) (+.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 -2 (/.f64 x -1/4)))) -4)
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (*.f64 x -2)) -2)
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (/.f64 x -1/4)) -4)
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (neg.f64 (*.f64 -2 (/.f64 x -1/4)))) -8)
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (+.f64 y (-.f64 x y))) 1)
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (-.f64 (+.f64 y y) (*.f64 2 (+.f64 x y)))) -2)
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (+.f64 (/.f64 y -1/2) (*.f64 (-.f64 x y) -2))) -2)
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 (-.f64 y x) 4))) -4)
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (+.f64 (/.f64 x -1/4) (/.f64 x -1/4))) -8)
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (-.f64 (*.f64 y 4) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)
(/.f64 (*.f64 (+.f64 x x) (neg.f64 (*.f64 2 (*.f64 (-.f64 x y) 4)))) -8)
(/.f64 (*.f64 (+.f64 x x) (+.f64 (/.f64 x -1/4) (*.f64 y 4))) -4)
(/.f64 (*.f64 (+.f64 x x) (+.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) 4))) -8)
(/.f64 (*.f64 (+.f64 x x) (-.f64 (*.f64 (+.f64 y y) 4) (*.f64 -2 (/.f64 x -1/4)))) -8)
(/.f64 (*.f64 (+.f64 x x) (-.f64 (/.f64 x -1/4) (neg.f64 (*.f64 y 4)))) -4)
(/.f64 (*.f64 (+.f64 x x) (-.f64 (*.f64 (+.f64 y y) 4) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)
(/.f64 (*.f64 (+.f64 x x) (-.f64 (*.f64 2 (+.f64 x y)) (*.f64 x 4))) -2)
(/.f64 (*.f64 (+.f64 x x) (-.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 -2 (/.f64 x -1/4)))) -4)
(/.f64 (*.f64 (*.f64 x 1/2) (+.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) 4))) -2)
(/.f64 (*.f64 (*.f64 x 1/2) (-.f64 (*.f64 (+.f64 y y) 4) (*.f64 -2 (/.f64 x -1/4)))) -2)
(pow.f64 (*.f64 x (*.f64 2 (-.f64 x y))) 1)
(neg.f64 (*.f64 x (*.f64 (-.f64 x y) -2)))
(+.f64 (*.f64 x (-.f64 x y)) 0)
(+.f64 0 (*.f64 x (-.f64 x y)))
(+.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (*.f64 x (*.f64 (-.f64 x y) 1/2)))
(+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (*.f64 x (*.f64 (-.f64 x y) 1/2))))
(+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2))) 2))
(+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 4))
(+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 8))
(-.f64 (*.f64 x (-.f64 x y)) 0)
(-.f64 0 (*.f64 x (-.f64 y x)))
(-.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (*.f64 (-.f64 y x) (*.f64 x 1/2)))
(-.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 3 (*.f64 x (-.f64 y x))) 4))
(-.f64 (+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (*.f64 x (*.f64 (-.f64 x y) 1/2))) (/.f64 (*.f64 x (-.f64 x y)) -4))
(-.f64 (/.f64 (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2))) 2) (/.f64 (*.f64 (-.f64 y x) (*.f64 x 1/2)) 2))
(-.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 4) (/.f64 (*.f64 x (-.f64 x y)) -4))
(-.f64 (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 8) (/.f64 (*.f64 x (*.f64 (-.f64 x y) -2)) 8))
(/.f64 (*.f64 x (-.f64 x y)) 1)
(/.f64 (*.f64 x (*.f64 2 (-.f64 x y))) 2)
(/.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 4)
(/.f64 (*.f64 x (-.f64 y x)) -1)
(/.f64 (*.f64 x (*.f64 (-.f64 x y) -2)) -2)
(/.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 8)
(/.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) 1/2)
(/.f64 (*.f64 (-.f64 x y) (/.f64 x -1/4)) -4)
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 1/2)) -1/2)
(/.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8)) 16)
(/.f64 (neg.f64 (*.f64 (*.f64 x (-.f64 x y)) 8)) -8)
(/.f64 (+.f64 (*.f64 (-.f64 x y) (/.f64 x -1/4)) (*.f64 (-.f64 x y) (/.f64 x -1/4))) -8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8)) (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8))) 32)
(/.f64 (neg.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8))) -16)
(/.f64 (*.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 2 (*.f64 (-.f64 x y) 4))) 64)
(/.f64 (*.f64 (/.f64 x -1/4) (*.f64 (-.f64 y x) 4)) 16)
(/.f64 (*.f64 (neg.f64 x) (*.f64 (-.f64 x y) 4)) -4)
(/.f64 (*.f64 (neg.f64 x) (*.f64 2 (*.f64 (-.f64 x y) 4))) -8)
(/.f64 (*.f64 (neg.f64 x) (+.f64 (*.f64 2 (*.f64 (-.f64 x y) 4)) (*.f64 2 (*.f64 (-.f64 x y) 4)))) -16)
(/.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 (+.f64 y y) 4))) -8)
(/.f64 (*.f64 (-.f64 y x) (+.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 -2 (/.f64 x -1/4)))) -16)
(/.f64 (*.f64 (*.f64 x -2) (*.f64 2 (-.f64 x y))) -4)
(/.f64 (*.f64 (*.f64 x -2) (*.f64 (-.f64 x y) 4)) -8)
(/.f64 (*.f64 (*.f64 x -2) (*.f64 2 (*.f64 (-.f64 x y) 4))) -16)
(/.f64 (*.f64 (-.f64 x y) (neg.f64 (*.f64 -2 (/.f64 x -1/4)))) -8)
(/.f64 (*.f64 (-.f64 x y) (+.f64 (/.f64 x -1/4) (/.f64 x -1/4))) -8)
(/.f64 (*.f64 x (+.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) 4))) -8)
(/.f64 (*.f64 x (-.f64 (*.f64 (+.f64 y y) 4) (*.f64 -2 (/.f64 x -1/4)))) -8)
(/.f64 (*.f64 (/.f64 (-.f64 x y) -2) (+.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 -2 (/.f64 x -1/4)))) -8)
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (*.f64 x -2)) -4)
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (/.f64 x -1/4)) -8)
(/.f64 (*.f64 (*.f64 x 1/2) (+.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) 4))) -4)
(/.f64 (*.f64 (*.f64 x 1/2) (-.f64 (*.f64 (+.f64 y y) 4) (*.f64 -2 (/.f64 x -1/4)))) -4)
(/.f64 (*.f64 (*.f64 x -2) (*.f64 (-.f64 x y) 1/2)) -1)
(/.f64 (*.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 x 4))) -4)
(/.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 -2 (/.f64 x -1/4)) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)
(/.f64 (*.f64 (neg.f64 x) (-.f64 (neg.f64 (*.f64 y 4)) (/.f64 x -1/4))) -4)
(/.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 2 (+.f64 x y)) (*.f64 y 4))) -2)
(/.f64 (*.f64 (neg.f64 x) (-.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 (+.f64 y y) 4))) -4)
(/.f64 (*.f64 (-.f64 y x) (+.f64 (*.f64 2 (+.f64 x y)) (/.f64 y -1/2))) -2)
(/.f64 (*.f64 (-.f64 y x) (+.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (neg.f64 (*.f64 y 4)))) -4)
(/.f64 (*.f64 (-.f64 x y) (+.f64 y (-.f64 x y))) 1)
(/.f64 (*.f64 (-.f64 x y) (-.f64 (+.f64 y y) (*.f64 2 (+.f64 x y)))) -2)
(/.f64 (*.f64 (-.f64 x y) (+.f64 (/.f64 y -1/2) (*.f64 (-.f64 x y) -2))) -2)
(/.f64 (*.f64 (-.f64 x y) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 (-.f64 y x) 4))) -4)
(/.f64 (*.f64 (-.f64 x y) (-.f64 (*.f64 y 4) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)
(/.f64 (*.f64 x (neg.f64 (*.f64 2 (*.f64 (-.f64 x y) 4)))) -8)
(/.f64 (*.f64 x (+.f64 (/.f64 x -1/4) (*.f64 y 4))) -4)
(/.f64 (*.f64 x (-.f64 (/.f64 x -1/4) (neg.f64 (*.f64 y 4)))) -4)
(/.f64 (*.f64 x (-.f64 (*.f64 (+.f64 y y) 4) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)
(/.f64 (*.f64 x (-.f64 (*.f64 2 (+.f64 x y)) (*.f64 x 4))) -2)
(/.f64 (*.f64 x (-.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 -2 (/.f64 x -1/4)))) -4)
(/.f64 (*.f64 (*.f64 x 1/2) (*.f64 (*.f64 (-.f64 x y) 4) -2)) -4)
(/.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (*.f64 x -2)) -1)
(/.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (/.f64 x -1/4)) -2)
(/.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (neg.f64 (*.f64 -2 (/.f64 x -1/4)))) -4)
(/.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (+.f64 (/.f64 x -1/4) (/.f64 x -1/4))) -4)
(/.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (*.f64 -2 (*.f64 x 4))) -4)
(pow.f64 (*.f64 x (-.f64 x y)) 1)
(neg.f64 (*.f64 x (-.f64 y x)))
Outputs
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(*.f64 -1 (*.f64 y x))
(*.f64 x (*.f64 y -1))
(*.f64 y (neg.f64 x))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(pow.f64 x 2)
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(pow.f64 x 2)
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(pow.f64 x 2)
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(*.f64 -1 (*.f64 y x))
(*.f64 x (*.f64 y -1))
(*.f64 y (neg.f64 x))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(*.f64 -1 (*.f64 y x))
(*.f64 x (*.f64 y -1))
(*.f64 y (neg.f64 x))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (*.f64 y -1)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 x y)))
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(+.f64 (*.f64 x (*.f64 2 (-.f64 x y))) 0)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(+.f64 0 (*.f64 x (*.f64 2 (-.f64 x y))))
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(+.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2))))
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(+.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (*.f64 -3/2 (*.f64 x (-.f64 y x))))
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(+.f64 (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2))) (*.f64 x (*.f64 (-.f64 x y) 1/2)))
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(+.f64 (*.f64 -3/2 (*.f64 x (-.f64 y x))) (*.f64 x (*.f64 (-.f64 x y) 1/2)))
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(-.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 y x)))
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(-.f64 (*.f64 x (*.f64 2 (-.f64 x y))) 0)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(-.f64 (*.f64 x (*.f64 2 (-.f64 x y))) (+.f64 (*.f64 x (-.f64 y x)) (*.f64 x (-.f64 x y))))
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(-.f64 0 (*.f64 x (*.f64 (-.f64 x y) -2)))
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(-.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (+.f64 (*.f64 x (-.f64 y x)) (*.f64 (-.f64 y x) (*.f64 x 1/2))))
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(-.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (*.f64 -3 (*.f64 x (*.f64 (-.f64 x y) 1/2))))
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(-.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (neg.f64 (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2)))))
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(-.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (/.f64 (*.f64 3 (*.f64 x (-.f64 y x))) 2))
(-.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (/.f64 (*.f64 (-.f64 y x) (*.f64 x 3)) 2))
(-.f64 (*.f64 (-.f64 x y) (*.f64 x 1/2)) (/.f64 (*.f64 (-.f64 y x) (*.f64 x 3)) 2))
(-.f64 (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2))) (*.f64 (-.f64 y x) (*.f64 x 1/2)))
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(-.f64 (*.f64 -3/2 (*.f64 x (-.f64 y x))) (*.f64 (-.f64 y x) (*.f64 x 1/2)))
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 x (-.f64 x y)) 1/2)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 x (*.f64 2 (-.f64 x y))) 1)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 2)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 x (-.f64 y x)) -1/2)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 x (*.f64 (-.f64 x y) -2)) -1)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) 1/4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (-.f64 x y) (/.f64 x -1/4)) -2)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 1/2)) -1/4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8)) 8)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (neg.f64 (*.f64 (*.f64 x (-.f64 x y)) 8)) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (+.f64 (*.f64 (-.f64 x y) (/.f64 x -1/4)) (*.f64 (-.f64 x y) (/.f64 x -1/4))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8)) (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8))) 16)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (neg.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8))) -8)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 (-.f64 x y) 4) (*.f64 -2 (/.f64 x -1/4))) 16)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 x 4) (*.f64 2 (*.f64 (-.f64 x y) 4))) 16)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 x 4) (*.f64 (-.f64 y x) 4)) -8)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (neg.f64 x) (*.f64 (-.f64 x y) 4)) -2)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (neg.f64 x) (*.f64 2 (*.f64 (-.f64 x y) 4))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (neg.f64 x) (+.f64 (*.f64 2 (*.f64 (-.f64 x y) 4)) (*.f64 2 (*.f64 (-.f64 x y) 4)))) -8)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 (+.f64 x (-.f64 x y)) 4))) -4)
(/.f64 (*.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 4 (+.f64 x (-.f64 x y))))) -4)
(/.f64 (*.f64 x (neg.f64 (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 4 (+.f64 x (-.f64 x y)))))) -4)
(/.f64 (*.f64 x (neg.f64 (*.f64 4 (-.f64 (+.f64 x (-.f64 x y)) y)))) -4)
(/.f64 (*.f64 (neg.f64 x) (+.f64 (+.f64 (/.f64 y -1/2) (*.f64 x 4)) (/.f64 y -1/2))) -2)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (neg.f64 x) (+.f64 (*.f64 (+.f64 x (-.f64 x y)) 4) (neg.f64 (*.f64 y 4)))) -4)
(/.f64 (*.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 4 (+.f64 x (-.f64 x y))))) -4)
(/.f64 (*.f64 x (neg.f64 (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 4 (+.f64 x (-.f64 x y)))))) -4)
(/.f64 (*.f64 x (neg.f64 (*.f64 4 (-.f64 (+.f64 x (-.f64 x y)) y)))) -4)
(/.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 (+.f64 y y) 4))) -4)
(/.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 x 8) (*.f64 4 (+.f64 y y)))) -4)
(/.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 x 8) (*.f64 y 8))) -4)
(/.f64 (*.f64 x (neg.f64 (-.f64 (*.f64 x 8) (*.f64 y 8)))) -4)
(/.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 (+.f64 x (-.f64 x y)) 4) (*.f64 y 4))) -4)
(/.f64 (*.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 4 (+.f64 x (-.f64 x y))))) -4)
(/.f64 (*.f64 x (neg.f64 (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 4 (+.f64 x (-.f64 x y)))))) -4)
(/.f64 (*.f64 x (neg.f64 (*.f64 4 (-.f64 (+.f64 x (-.f64 x y)) y)))) -4)
(/.f64 (*.f64 (-.f64 y x) (+.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 -2 (/.f64 x -1/4)))) -8)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 x -2) (*.f64 2 (-.f64 x y))) -2)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 x -2) (*.f64 (-.f64 x y) 4)) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 x -2) (*.f64 2 (*.f64 (-.f64 x y) 4))) -8)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 x -2) (+.f64 (*.f64 2 (*.f64 (-.f64 x y) 4)) (*.f64 2 (*.f64 (-.f64 x y) 4)))) -16)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 x -2) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 x 4))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 x -2) (-.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 (+.f64 y y) 4))) -8)
(/.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 x 8) (*.f64 4 (+.f64 y y)))) -4)
(/.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 x 8) (*.f64 y 8))) -4)
(/.f64 (*.f64 x (neg.f64 (-.f64 (*.f64 x 8) (*.f64 y 8)))) -4)
(/.f64 (*.f64 (*.f64 x -2) (-.f64 (*.f64 -2 (/.f64 x -1/4)) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 x -2) (-.f64 (neg.f64 (*.f64 y 4)) (/.f64 x -1/4))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 x -2) (-.f64 (*.f64 2 (+.f64 x y)) (*.f64 y 4))) -2)
(/.f64 (*.f64 (*.f64 -2 x) (-.f64 (*.f64 2 (+.f64 y x)) (*.f64 y 4))) -2)
(/.f64 (*.f64 -2 (*.f64 x (-.f64 (*.f64 2 (+.f64 y x)) (*.f64 y 4)))) -2)
(/.f64 (*.f64 (*.f64 x -4) (-.f64 (*.f64 2 (+.f64 y x)) (*.f64 y 4))) -4)
(/.f64 (*.f64 (*.f64 x -2) (-.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 (+.f64 y y) 4))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (-.f64 x y) (neg.f64 (*.f64 -2 (/.f64 x -1/4)))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (-.f64 x y) (+.f64 (/.f64 x -1/4) (/.f64 x -1/4))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (-.f64 x y) (*.f64 -2 (*.f64 x 4))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 x (+.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) 4))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 x (-.f64 (*.f64 (+.f64 y y) 4) (*.f64 -2 (/.f64 x -1/4)))) -4)
(/.f64 (*.f64 x (-.f64 (*.f64 4 (+.f64 y y)) (*.f64 x 8))) -4)
(/.f64 (*.f64 x (-.f64 (*.f64 y 8) (*.f64 x 8))) -4)
(/.f64 (*.f64 x (*.f64 (*.f64 (-.f64 x y) 4) -2)) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 (-.f64 x y) -2) (+.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 -2 (/.f64 x -1/4)))) -16)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 (-.f64 x y) -2) (+.f64 (*.f64 2 (+.f64 x y)) (/.f64 y -1/2))) -2)
(/.f64 (*.f64 (*.f64 -2 (-.f64 x y)) (+.f64 (/.f64 y -1/2) (*.f64 2 (+.f64 y x)))) -2)
(/.f64 (*.f64 (-.f64 x y) (*.f64 -2 (+.f64 (/.f64 y -1/2) (*.f64 2 (+.f64 y x))))) -2)
(/.f64 (*.f64 (*.f64 (-.f64 x y) -2) (+.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (neg.f64 (*.f64 y 4)))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (/.f64 (-.f64 x y) -2) (+.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 -2 (/.f64 x -1/4)))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (*.f64 x -2)) -2)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (/.f64 x -1/4)) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (neg.f64 (*.f64 -2 (/.f64 x -1/4)))) -8)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (+.f64 y (-.f64 x y))) 1)
(*.f64 (*.f64 2 (-.f64 x y)) (+.f64 y (-.f64 x y)))
(*.f64 2 (*.f64 (-.f64 x y) (+.f64 y (-.f64 x y))))
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (-.f64 (+.f64 y y) (*.f64 2 (+.f64 x y)))) -2)
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (-.f64 (+.f64 y y) (*.f64 2 (+.f64 y x)))) -2)
(/.f64 (*.f64 (-.f64 x y) (*.f64 2 (-.f64 (+.f64 y y) (*.f64 2 (+.f64 y x))))) -2)
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (+.f64 (/.f64 y -1/2) (*.f64 (-.f64 x y) -2))) -2)
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (+.f64 (*.f64 -2 (-.f64 x y)) (/.f64 y -1/2))) -2)
(/.f64 (*.f64 2 (*.f64 (-.f64 x y) (+.f64 (*.f64 -2 (-.f64 x y)) (/.f64 y -1/2)))) -2)
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 (-.f64 y x) 4))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (+.f64 (/.f64 x -1/4) (/.f64 x -1/4))) -8)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (-.f64 (*.f64 y 4) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (+.f64 x x) (neg.f64 (*.f64 2 (*.f64 (-.f64 x y) 4)))) -8)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (+.f64 x x) (+.f64 (/.f64 x -1/4) (*.f64 y 4))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (+.f64 x x) (+.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) 4))) -8)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (+.f64 x x) (-.f64 (*.f64 (+.f64 y y) 4) (*.f64 -2 (/.f64 x -1/4)))) -8)
(/.f64 (*.f64 x (-.f64 (*.f64 4 (+.f64 y y)) (*.f64 x 8))) -4)
(/.f64 (*.f64 x (-.f64 (*.f64 y 8) (*.f64 x 8))) -4)
(/.f64 (*.f64 (+.f64 x x) (-.f64 (/.f64 x -1/4) (neg.f64 (*.f64 y 4)))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (+.f64 x x) (-.f64 (*.f64 (+.f64 y y) 4) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (+.f64 x x) (-.f64 (*.f64 2 (+.f64 x y)) (*.f64 x 4))) -2)
(/.f64 (*.f64 (+.f64 x x) (-.f64 (*.f64 2 (+.f64 y x)) (*.f64 x 4))) -2)
(/.f64 (*.f64 (+.f64 x x) (-.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 -2 (/.f64 x -1/4)))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 x 1/2) (+.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) 4))) -2)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (*.f64 (*.f64 x 1/2) (-.f64 (*.f64 (+.f64 y y) 4) (*.f64 -2 (/.f64 x -1/4)))) -2)
(/.f64 (*.f64 x (-.f64 (*.f64 4 (+.f64 y y)) (*.f64 x 8))) -4)
(/.f64 (*.f64 x (-.f64 (*.f64 y 8) (*.f64 x 8))) -4)
(pow.f64 (*.f64 x (*.f64 2 (-.f64 x y))) 1)
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(neg.f64 (*.f64 x (*.f64 (-.f64 x y) -2)))
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 -2 (*.f64 x (-.f64 y x)))
(+.f64 (*.f64 x (-.f64 x y)) 0)
(*.f64 x (-.f64 x y))
(+.f64 0 (*.f64 x (-.f64 x y)))
(*.f64 x (-.f64 x y))
(+.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (*.f64 x (*.f64 (-.f64 x y) 1/2)))
(*.f64 x (-.f64 x y))
(+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (*.f64 x (*.f64 (-.f64 x y) 1/2))))
(+.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (*.f64 x (/.f64 (-.f64 x y) 4))))
(+.f64 (*.f64 (-.f64 x y) (*.f64 x 1/2)) (*.f64 (/.f64 (-.f64 x y) 4) (+.f64 x x)))
(+.f64 (*.f64 (+.f64 x x) (/.f64 (-.f64 x y) 4)) (*.f64 (-.f64 x y) (*.f64 x 1/2)))
(+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2))) 2))
(+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 x (*.f64 (-.f64 y x) -3/2)) 2))
(+.f64 (*.f64 (-.f64 x y) (/.f64 x 4)) (/.f64 (*.f64 (-.f64 x y) (*.f64 x 6)) 8))
(+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 4))
(+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2))) 2))
(+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 x (*.f64 (-.f64 y x) -3/2)) 2))
(+.f64 (*.f64 (-.f64 x y) (/.f64 x 4)) (/.f64 (*.f64 (-.f64 x y) (*.f64 x 6)) 8))
(+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 8))
(+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2))) 2))
(+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 x (*.f64 (-.f64 y x) -3/2)) 2))
(+.f64 (*.f64 (-.f64 x y) (/.f64 x 4)) (/.f64 (*.f64 (-.f64 x y) (*.f64 x 6)) 8))
(-.f64 (*.f64 x (-.f64 x y)) 0)
(*.f64 x (-.f64 x y))
(-.f64 0 (*.f64 x (-.f64 y x)))
(*.f64 x (-.f64 x y))
(-.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (*.f64 (-.f64 y x) (*.f64 x 1/2)))
(*.f64 x (-.f64 x y))
(-.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 3 (*.f64 x (-.f64 y x))) 4))
(-.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (/.f64 (*.f64 (-.f64 y x) (*.f64 x 3)) 4))
(-.f64 (*.f64 (-.f64 x y) (/.f64 x 4)) (/.f64 (*.f64 (-.f64 y x) (*.f64 x 3)) 4))
(-.f64 (+.f64 (*.f64 x (/.f64 (-.f64 x y) 4)) (*.f64 x (*.f64 (-.f64 x y) 1/2))) (/.f64 (*.f64 x (-.f64 x y)) -4))
(-.f64 (+.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) (*.f64 x (/.f64 (-.f64 x y) 4))) (/.f64 (*.f64 x (-.f64 x y)) -4))
(-.f64 (*.f64 x (+.f64 (*.f64 (-.f64 x y) 1/2) (/.f64 (-.f64 x y) 4))) (/.f64 (*.f64 x (-.f64 x y)) -4))
(-.f64 (*.f64 (-.f64 x y) (/.f64 x 4)) (*.f64 3 (/.f64 (*.f64 x (-.f64 x y)) -4)))
(-.f64 (/.f64 (*.f64 -3 (*.f64 (-.f64 y x) (*.f64 x 1/2))) 2) (/.f64 (*.f64 (-.f64 y x) (*.f64 x 1/2)) 2))
(*.f64 x (-.f64 x y))
(-.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 4) (/.f64 (*.f64 x (-.f64 x y)) -4))
(*.f64 x (-.f64 x y))
(-.f64 (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 8) (/.f64 (*.f64 x (*.f64 (-.f64 x y) -2)) 8))
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (-.f64 x y)) 1)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (*.f64 2 (-.f64 x y))) 2)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (-.f64 y x)) -1)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (*.f64 (-.f64 x y) -2)) -2)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 8)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (*.f64 (-.f64 x y) 1/2)) 1/2)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (-.f64 x y) (/.f64 x -1/4)) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 1/2)) -1/2)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8)) 16)
(*.f64 x (-.f64 x y))
(/.f64 (neg.f64 (*.f64 (*.f64 x (-.f64 x y)) 8)) -8)
(*.f64 x (-.f64 x y))
(/.f64 (+.f64 (*.f64 (-.f64 x y) (/.f64 x -1/4)) (*.f64 (-.f64 x y) (/.f64 x -1/4))) -8)
(*.f64 x (-.f64 x y))
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8)) (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8))) 32)
(*.f64 x (-.f64 x y))
(/.f64 (neg.f64 (*.f64 2 (*.f64 (*.f64 x (-.f64 x y)) 8))) -16)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 2 (*.f64 (-.f64 x y) 4))) 64)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (/.f64 x -1/4) (*.f64 (-.f64 y x) 4)) 16)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (neg.f64 x) (*.f64 (-.f64 x y) 4)) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (neg.f64 x) (*.f64 2 (*.f64 (-.f64 x y) 4))) -8)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (neg.f64 x) (+.f64 (*.f64 2 (*.f64 (-.f64 x y) 4)) (*.f64 2 (*.f64 (-.f64 x y) 4)))) -16)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 (+.f64 y y) 4))) -8)
(/.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 x 8) (*.f64 4 (+.f64 y y)))) -8)
(/.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 x 8) (*.f64 y 8))) -8)
(/.f64 (*.f64 x (neg.f64 (-.f64 (*.f64 x 8) (*.f64 y 8)))) -8)
(/.f64 (*.f64 (-.f64 y x) (+.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 -2 (/.f64 x -1/4)))) -16)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (*.f64 x -2) (*.f64 2 (-.f64 x y))) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (*.f64 x -2) (*.f64 (-.f64 x y) 4)) -8)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (*.f64 x -2) (*.f64 2 (*.f64 (-.f64 x y) 4))) -16)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (-.f64 x y) (neg.f64 (*.f64 -2 (/.f64 x -1/4)))) -8)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (-.f64 x y) (+.f64 (/.f64 x -1/4) (/.f64 x -1/4))) -8)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (+.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) 4))) -8)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (-.f64 (*.f64 (+.f64 y y) 4) (*.f64 -2 (/.f64 x -1/4)))) -8)
(/.f64 (*.f64 x (-.f64 (*.f64 4 (+.f64 y y)) (*.f64 x 8))) -8)
(/.f64 (*.f64 x (-.f64 (*.f64 y 8) (*.f64 x 8))) -8)
(/.f64 (*.f64 (/.f64 (-.f64 x y) -2) (+.f64 (*.f64 -2 (/.f64 x -1/4)) (*.f64 -2 (/.f64 x -1/4)))) -8)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (*.f64 x -2)) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (*.f64 2 (-.f64 x y)) (/.f64 x -1/4)) -8)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (*.f64 x 1/2) (+.f64 (*.f64 (-.f64 y x) 4) (*.f64 (-.f64 y x) 4))) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (*.f64 x 1/2) (-.f64 (*.f64 (+.f64 y y) 4) (*.f64 -2 (/.f64 x -1/4)))) -4)
(/.f64 (*.f64 x (-.f64 (*.f64 4 (+.f64 y y)) (*.f64 x 8))) -8)
(/.f64 (*.f64 x (-.f64 (*.f64 y 8) (*.f64 x 8))) -8)
(/.f64 (*.f64 (*.f64 x -2) (*.f64 (-.f64 x y) 1/2)) -1)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (neg.f64 x) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 x 4))) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 -2 (/.f64 x -1/4)) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (neg.f64 x) (-.f64 (neg.f64 (*.f64 y 4)) (/.f64 x -1/4))) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 2 (+.f64 x y)) (*.f64 y 4))) -2)
(/.f64 (*.f64 (neg.f64 x) (-.f64 (*.f64 2 (+.f64 y x)) (*.f64 y 4))) -2)
(/.f64 (*.f64 x (neg.f64 (-.f64 (*.f64 2 (+.f64 y x)) (*.f64 y 4)))) -2)
(/.f64 (*.f64 x (-.f64 (/.f64 (+.f64 y x) -1/2) (/.f64 y -1/4))) -2)
(/.f64 (*.f64 (neg.f64 x) (-.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 (+.f64 y y) 4))) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (-.f64 y x) (+.f64 (*.f64 2 (+.f64 x y)) (/.f64 y -1/2))) -2)
(/.f64 (*.f64 (-.f64 y x) (+.f64 (/.f64 y -1/2) (*.f64 2 (+.f64 y x)))) -2)
(/.f64 (*.f64 (-.f64 y x) (+.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (neg.f64 (*.f64 y 4)))) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (-.f64 x y) (+.f64 y (-.f64 x y))) 1)
(*.f64 (-.f64 x y) (+.f64 y (-.f64 x y)))
(/.f64 (*.f64 (-.f64 x y) (-.f64 (+.f64 y y) (*.f64 2 (+.f64 x y)))) -2)
(/.f64 (*.f64 (-.f64 x y) (-.f64 (+.f64 y y) (*.f64 2 (+.f64 y x)))) -2)
(/.f64 (*.f64 (-.f64 x y) (+.f64 (/.f64 y -1/2) (*.f64 (-.f64 x y) -2))) -2)
(/.f64 (*.f64 (-.f64 x y) (+.f64 (*.f64 -2 (-.f64 x y)) (/.f64 y -1/2))) -2)
(/.f64 (*.f64 (-.f64 x y) (+.f64 (neg.f64 (*.f64 y 4)) (*.f64 (-.f64 y x) 4))) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (-.f64 x y) (-.f64 (*.f64 y 4) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (neg.f64 (*.f64 2 (*.f64 (-.f64 x y) 4)))) -8)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (+.f64 (/.f64 x -1/4) (*.f64 y 4))) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (-.f64 (/.f64 x -1/4) (neg.f64 (*.f64 y 4)))) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (-.f64 (*.f64 (+.f64 y y) 4) (+.f64 (*.f64 x 4) (*.f64 y 4)))) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (-.f64 (*.f64 2 (+.f64 x y)) (*.f64 x 4))) -2)
(/.f64 (*.f64 x (-.f64 (*.f64 2 (+.f64 y x)) (*.f64 x 4))) -2)
(/.f64 (*.f64 x (-.f64 (+.f64 (*.f64 x 4) (*.f64 y 4)) (*.f64 -2 (/.f64 x -1/4)))) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (*.f64 x 1/2) (*.f64 (*.f64 (-.f64 x y) 4) -2)) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (*.f64 x -2)) -1)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (/.f64 x -1/4)) -2)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (neg.f64 (*.f64 -2 (/.f64 x -1/4)))) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (+.f64 (/.f64 x -1/4) (/.f64 x -1/4))) -4)
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (*.f64 (-.f64 x y) 1/2) (*.f64 -2 (*.f64 x 4))) -4)
(*.f64 x (-.f64 x y))
(pow.f64 (*.f64 x (-.f64 x y)) 1)
(*.f64 x (-.f64 x y))
(neg.f64 (*.f64 x (-.f64 y x)))
(*.f64 x (-.f64 x y))

localize59.0ms (0.3%)

Local error

Found 2 expressions with local error:

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

Compiled 27 to 8 computations (70.4% saved)

series5.0ms (0%)

Counts
2 → 48
Calls

12 calls:

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

rewrite585.0ms (3.3%)

Algorithm
batch-egg-rewrite
Rules
888×rational_best-simplify-51
886×rational_best-simplify-48
876×rational_best-simplify-52
802×rational_best-simplify-57
680×rational_best-simplify-63
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0932
16232
213832
340032
4161232
Stop Event
node limit
Counts
2 → 204
Calls
Call 1
Inputs
(*.f64 2 (-.f64 (*.f64 x x) (*.f64 x y)))
(-.f64 (*.f64 x x) (*.f64 x y))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (*.f64 x (-.f64 y x)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 y x)) (*.f64 (-.f64 x y) (*.f64 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (neg.f64 y)) (*.f64 x (+.f64 x (-.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 x (+.f64 y (*.f64 x -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (*.f64 x x)) (*.f64 (*.f64 x y) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (+.f64 x (-.f64 x y))) (*.f64 x (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2) (*.f64 x (/.f64 (-.f64 y x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (neg.f64 (*.f64 x (+.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (+.f64 x (*.f64 y -2))) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) (*.f64 x (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 x y) -2) (*.f64 2 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) -2)) (/.f64 (+.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) (*.f64 x (neg.f64 y))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (-.f64 x y)) (*.f64 x y)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x y) 2)) (neg.f64 (/.f64 (*.f64 x (*.f64 y 3)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (-.f64 x y)) (*.f64 x (+.f64 y (-.f64 y x)))) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (-.f64 x y)) (/.f64 (*.f64 x y) 2)) (neg.f64 (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (-.f64 x y)) (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2))) (neg.f64 (/.f64 (*.f64 x x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (-.f64 x y)) (*.f64 x (/.f64 (-.f64 y x) 2))) (*.f64 x (/.f64 (-.f64 y x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (-.f64 x y)) (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x))) (/.f64 (*.f64 x y) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x (*.f64 y 3)) 2)) (/.f64 (*.f64 x y) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (+.f64 x (-.f64 x y))) (/.f64 (*.f64 x y) 2)) (/.f64 (*.f64 x y) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (*.f64 x x)) (*.f64 x (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (*.f64 x y)) (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (/.f64 (*.f64 x x) 2)) (neg.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (/.f64 (*.f64 x y) 2)) (neg.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (+.f64 x (*.f64 y -2))) (/.f64 (*.f64 x x) -2)) (neg.f64 (/.f64 (*.f64 x x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x x) (*.f64 x (+.f64 y (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x x) (+.f64 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))) (*.f64 x (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x x) (+.f64 (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2))) (/.f64 (*.f64 x (+.f64 x y)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 2 (*.f64 x (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (+.f64 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))) (*.f64 -2 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (neg.f64 y)) (*.f64 x (+.f64 y (*.f64 x -2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (neg.f64 y)) (-.f64 (*.f64 x x) (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (neg.f64 y)) (+.f64 (*.f64 x (neg.f64 x)) (*.f64 x (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (neg.f64 x)) (-.f64 (*.f64 x y) (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 2 (*.f64 x x)) (*.f64 x (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 2 (*.f64 x x)) (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 2 (*.f64 x x)) (+.f64 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (+.f64 x (-.f64 x y))) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) (+.f64 (*.f64 x (/.f64 (-.f64 y x) 2)) (*.f64 x (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 x (+.f64 y (-.f64 y x))) (/.f64 (*.f64 x x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 x (-.f64 y x)) (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 x (+.f64 y y)) (*.f64 -3 (/.f64 (*.f64 x x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) 2) (+.f64 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))) (*.f64 -3 (/.f64 (*.f64 x x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 x y) (+.f64 (*.f64 x (-.f64 y x)) (/.f64 (*.f64 x x) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2))) (/.f64 (*.f64 x y) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) 2) (+.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2)) (*.f64 x (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 -3 (/.f64 (*.f64 x x) 2)) (*.f64 x (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) 2) (+.f64 (+.f64 (*.f64 x (-.f64 y x)) (/.f64 (*.f64 x x) -2)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (+.f64 x y)) (-.f64 (*.f64 x (+.f64 y y)) (*.f64 x (-.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (+.f64 x y)) (+.f64 (*.f64 x (-.f64 y x)) (*.f64 x (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (+.f64 x y)) (+.f64 (*.f64 x (+.f64 y y)) (*.f64 x (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (+.f64 (*.f64 x (+.f64 y y)) (/.f64 (*.f64 x x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (+.f64 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))) (/.f64 (*.f64 x x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (+.f64 (*.f64 x y) (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (+.f64 (/.f64 (*.f64 x x) -2) (*.f64 x (+.f64 y y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (+.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x x) (*.f64 x (/.f64 (-.f64 y x) -2))) (+.f64 (*.f64 x y) (*.f64 x (/.f64 (-.f64 y x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2) (*.f64 x (/.f64 (-.f64 y x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (*.f64 x (+.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (+.f64 x (*.f64 y -2))) (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (*.f64 x y) -2) (*.f64 -2 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) -2) (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) 2)) (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x y) -2) (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x (+.f64 x (-.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x y) -2) (-.f64 (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x)) (*.f64 x (-.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x y) -2) (-.f64 (/.f64 (*.f64 x (*.f64 y 3)) 2) (*.f64 2 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x y) -2) (-.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) 2)) (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) -2)) (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x (-.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -3 (/.f64 (*.f64 x y) 2)) (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 2 (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2) (+.f64 (*.f64 x (-.f64 y x)) (/.f64 (*.f64 x x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2) (+.f64 (/.f64 (*.f64 x x) -2) (*.f64 x (-.f64 y x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x (-.f64 x y)) (/.f64 (*.f64 x x) 2)) (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 x (-.f64 x y)) (/.f64 (*.f64 x x) 2)) (+.f64 (/.f64 (*.f64 x x) -2) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x x) 2)) (+.f64 (*.f64 x y) (+.f64 (*.f64 x (+.f64 x y)) (/.f64 (*.f64 x x) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x x) 2)) (+.f64 (+.f64 (*.f64 x (+.f64 x y)) (/.f64 (*.f64 x x) -2)) (*.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 2 (*.f64 x x)) (*.f64 x (/.f64 (-.f64 y x) -2))) (-.f64 (/.f64 (*.f64 x (+.f64 x y)) 2) (*.f64 x (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (*.f64 x y)) (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 x x) 2) (*.f64 x (+.f64 y (-.f64 y x)))) (/.f64 (*.f64 x x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x (+.f64 x y)) (*.f64 x (-.f64 y x))) (*.f64 x (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2) (*.f64 x (-.f64 y x))) (/.f64 (*.f64 x x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 x x) 2) (*.f64 x (+.f64 y y))) (*.f64 -3 (/.f64 (*.f64 x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (*.f64 x (+.f64 y y))) (/.f64 (*.f64 x x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x x) (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2))))) (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2))))) (*.f64 -2 (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 x x) 2) (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2))))) (*.f64 -3 (/.f64 (*.f64 x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2))))) (/.f64 (*.f64 x x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x (-.f64 x y)) (*.f64 x y)) (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (+.f64 (*.f64 x (-.f64 x y)) (/.f64 (*.f64 x x) 2)) (*.f64 x y)) (/.f64 (*.f64 x x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (+.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x x) 2)) (*.f64 x y)) (+.f64 (*.f64 x (+.f64 x y)) (/.f64 (*.f64 x x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x x) (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2)))) (/.f64 (*.f64 x (+.f64 x y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2)))) (*.f64 x (/.f64 (-.f64 y x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 x x) 2) (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2)))) (/.f64 (*.f64 x y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 x (-.f64 y x))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y x) (*.f64 x 4)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y x) (*.f64 2 (*.f64 x 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 y x) (*.f64 x 4)) (*.f64 (-.f64 y x) (*.f64 x 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (*.f64 x y) -2) (*.f64 (+.f64 x x) (+.f64 x (-.f64 x y)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 x (*.f64 y 4))) (*.f64 (*.f64 x 4) (+.f64 x (-.f64 x y)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (+.f64 x x) (+.f64 x (-.f64 x y))) (*.f64 (*.f64 x y) -2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (*.f64 x 4) (+.f64 x (-.f64 x y))) (neg.f64 (*.f64 x (*.f64 y 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 x x) 8) (*.f64 (*.f64 x y) 8)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 x x) (+.f64 x (-.f64 x y))) (*.f64 x (+.f64 y y))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 x 4) (+.f64 x (-.f64 x y))) (*.f64 x (*.f64 y 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 2 (*.f64 x (-.f64 y x))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 x y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 x (-.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (neg.f64 y)) (*.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (neg.f64 x)) (*.f64 x (+.f64 x (-.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (*.f64 x x)) (neg.f64 (*.f64 x (+.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (+.f64 x (-.f64 x y))) (*.f64 x (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) (*.f64 x (/.f64 (-.f64 y x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x x) 2) (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (+.f64 x y)) (*.f64 (*.f64 x y) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2) (*.f64 x (/.f64 (-.f64 y x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (+.f64 x (*.f64 y -2))) (*.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x y) -2) (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x y) -2) (neg.f64 (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x y) -2) (/.f64 (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) -2)) (/.f64 (*.f64 x y) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x (-.f64 x y)) 4) (/.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x (-.f64 x y)) 4) (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x (-.f64 x y)) 4) (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 8))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2) (/.f64 (*.f64 x x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2) (neg.f64 (/.f64 (*.f64 x x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (neg.f64 y)) (/.f64 (*.f64 x x) -2)) (neg.f64 (/.f64 (*.f64 x x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 2 (*.f64 x x)) (*.f64 x x)) (*.f64 x (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x x) 2)) (neg.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x y) 2)) (neg.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (+.f64 x y)) (/.f64 (*.f64 x y) 2)) (neg.f64 (/.f64 (*.f64 x (*.f64 y 3)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x (+.f64 x y)) (/.f64 (*.f64 x (*.f64 y 3)) 2)) (/.f64 (*.f64 x y) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x)) -1) (/.f64 (*.f64 x y) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2)) -1) (/.f64 (*.f64 x x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 x (+.f64 x (-.f64 x y))) 4) (/.f64 (+.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) (*.f64 x (neg.f64 y))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 x (/.f64 (-.f64 y x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 x (-.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 x (-.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x y) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (-.f64 y x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 y x) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 x) (-.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 x x) (/.f64 (-.f64 y x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 x (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (*.f64 x (-.f64 y x)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (-.f64 (*.f64 x (*.f64 x 4)) (*.f64 x (*.f64 2 (+.f64 x y)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 y x) -2) (+.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/2) (*.f64 2 (-.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 1/2) (-.f64 (*.f64 x 4) (*.f64 2 (+.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (-.f64 x y)) (*.f64 x 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x -2) (/.f64 (-.f64 y x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x 4) (/.f64 (-.f64 y x) -4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (-.f64 y x)) (/.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 x (-.f64 y x))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (*.f64 x 4)) (/.f64 (-.f64 y x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 x (*.f64 (-.f64 x y) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 y x) -4) (*.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x -2) (*.f64 2 (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 x 4)) (/.f64 (-.f64 x y) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (*.f64 x 4)) (/.f64 (/.f64 (-.f64 y x) -2) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 8) 1/16)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 x y) 4) (/.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 y 4) (*.f64 x 4)) (/.f64 (neg.f64 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 y x) (*.f64 x 4)) -1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 y x) 4) (/.f64 (neg.f64 x) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 y x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 x (-.f64 y x))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (/.f64 (-.f64 y x) 2)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 8) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y x) (*.f64 x 4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y x) (*.f64 2 (*.f64 x 4))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (neg.f64 (*.f64 x 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 (-.f64 y x) 4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x (*.f64 x 4)) (*.f64 x (*.f64 2 (+.f64 x y)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (neg.f64 (*.f64 x (*.f64 y 4))) (*.f64 x (*.f64 x 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 x x) 8) (*.f64 (*.f64 x y) 8)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 x 4) (*.f64 x 4)) (*.f64 (*.f64 x 4) (*.f64 y 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (neg.f64 (*.f64 x (*.f64 y 4))) (neg.f64 (*.f64 x (*.f64 x 4)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 x x) 8) (*.f64 2 (*.f64 x (*.f64 2 (+.f64 x y))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x (*.f64 2 (+.f64 x y))) (*.f64 x (*.f64 y 4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 2 (*.f64 x (*.f64 2 (+.f64 x y)))) (*.f64 (*.f64 x y) 8)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 x (-.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 x (-.f64 y x)))))))

simplify1.0s (5.8%)

Algorithm
egg-herbie
Rules
1124×rational_best-simplify-50
850×rational_best-simplify-1
792×rational_best-simplify-63
694×rational_best-simplify-52
672×rational_best-simplify-47
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04418094
111047040
226595950
Stop Event
node limit
Counts
252 → 301
Calls
Call 1
Inputs
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(pow.f64 x 2)
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(pow.f64 x 2)
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(pow.f64 x 2)
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2))))
(+.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 x y)))
(+.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 0)
(+.f64 0 (*.f64 (*.f64 x (-.f64 y x)) -2))
(+.f64 (*.f64 x (-.f64 y x)) (*.f64 (-.f64 x y) (*.f64 x 3)))
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 x (+.f64 x (-.f64 x y))))
(+.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 x (+.f64 y (*.f64 x -2)))))
(+.f64 (*.f64 2 (*.f64 x x)) (*.f64 (*.f64 x y) -2))
(+.f64 (*.f64 x (+.f64 x (-.f64 x y))) (*.f64 x (neg.f64 y)))
(+.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2))
(+.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2) (*.f64 x (/.f64 (-.f64 y x) -2)))
(+.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (neg.f64 (*.f64 x (+.f64 x y))))
(+.f64 (*.f64 x (+.f64 x (*.f64 y -2))) (*.f64 x x))
(+.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) (*.f64 x (-.f64 y x)))
(+.f64 (*.f64 (*.f64 x y) -2) (*.f64 2 (*.f64 x x)))
(+.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) -2)) (/.f64 (+.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) (*.f64 x (neg.f64 y))) 2))
(+.f64 (-.f64 (*.f64 x (-.f64 x y)) (*.f64 x y)) (*.f64 x x))
(+.f64 (-.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x y) 2)) (neg.f64 (/.f64 (*.f64 x (*.f64 y 3)) 2)))
(+.f64 (-.f64 (*.f64 x (-.f64 x y)) (*.f64 x (+.f64 y (-.f64 y x)))) (*.f64 x y))
(+.f64 (-.f64 (*.f64 x (-.f64 x y)) (/.f64 (*.f64 x y) 2)) (neg.f64 (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x))))
(+.f64 (-.f64 (*.f64 x (-.f64 x y)) (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2))) (neg.f64 (/.f64 (*.f64 x x) -2)))
(+.f64 (-.f64 (*.f64 x (-.f64 x y)) (*.f64 x (/.f64 (-.f64 y x) 2))) (*.f64 x (/.f64 (-.f64 y x) -2)))
(+.f64 (-.f64 (*.f64 x (-.f64 x y)) (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x))) (/.f64 (*.f64 x y) -2))
(+.f64 (-.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x (*.f64 y 3)) 2)) (/.f64 (*.f64 x y) -2))
(+.f64 (-.f64 (*.f64 x (+.f64 x (-.f64 x y))) (/.f64 (*.f64 x y) 2)) (/.f64 (*.f64 x y) -2))
(+.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (*.f64 x x)) (*.f64 x (neg.f64 y)))
(+.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (*.f64 x y)) (*.f64 x (neg.f64 x)))
(+.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (/.f64 (*.f64 x x) 2)) (neg.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) 2))))
(+.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (/.f64 (*.f64 x y) 2)) (neg.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) 2))))
(+.f64 (-.f64 (*.f64 x (+.f64 x (*.f64 y -2))) (/.f64 (*.f64 x x) -2)) (neg.f64 (/.f64 (*.f64 x x) -2)))
(-.f64 (*.f64 x x) (*.f64 x (+.f64 y (-.f64 y x))))
(-.f64 (*.f64 x x) (+.f64 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))) (*.f64 x (neg.f64 x))))
(-.f64 (*.f64 x x) (+.f64 (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2))) (/.f64 (*.f64 x (+.f64 x y)) 2)))
(-.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 y x)))
(-.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 0)
(-.f64 0 (*.f64 2 (*.f64 x (-.f64 y x))))
(-.f64 0 (+.f64 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))) (*.f64 -2 (*.f64 x x))))
(-.f64 (*.f64 x (neg.f64 y)) (*.f64 x (+.f64 y (*.f64 x -2))))
(-.f64 (*.f64 x (neg.f64 y)) (-.f64 (*.f64 x x) (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x)))))
(-.f64 (*.f64 x (neg.f64 y)) (+.f64 (*.f64 x (neg.f64 x)) (*.f64 x (-.f64 y x))))
(-.f64 (*.f64 x (neg.f64 x)) (-.f64 (*.f64 x y) (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x)))))
(-.f64 (*.f64 2 (*.f64 x x)) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 2 (*.f64 x x)) (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))))
(-.f64 (*.f64 2 (*.f64 x x)) (+.f64 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))) 0))
(-.f64 (*.f64 x (+.f64 x (-.f64 x y))) (*.f64 x y))
(-.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2))))
(-.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) (+.f64 (*.f64 x (/.f64 (-.f64 y x) 2)) (*.f64 x (-.f64 y x))))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 x (+.f64 y (-.f64 y x))) (/.f64 (*.f64 x x) -2)))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 x (-.f64 y x)) (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2))))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 x (+.f64 y y)) (*.f64 -3 (/.f64 (*.f64 x x) 2))))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))) (*.f64 -3 (/.f64 (*.f64 x x) 2))))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 x y) (+.f64 (*.f64 x (-.f64 y x)) (/.f64 (*.f64 x x) -2))))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2))) (/.f64 (*.f64 x y) 2)))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2)) (*.f64 x (-.f64 y x))))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 -3 (/.f64 (*.f64 x x) 2)) (*.f64 x (+.f64 y y))))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (+.f64 (*.f64 x (-.f64 y x)) (/.f64 (*.f64 x x) -2)) (*.f64 x y)))
(-.f64 (*.f64 x (+.f64 x y)) (-.f64 (*.f64 x (+.f64 y y)) (*.f64 x (-.f64 x y))))
(-.f64 (*.f64 x (+.f64 x y)) (+.f64 (*.f64 x (-.f64 y x)) (*.f64 x (+.f64 y y))))
(-.f64 (*.f64 x (+.f64 x y)) (+.f64 (*.f64 x (+.f64 y y)) (*.f64 x (-.f64 y x))))
(-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (+.f64 (*.f64 x (+.f64 y y)) (/.f64 (*.f64 x x) -2)))
(-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (+.f64 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))) (/.f64 (*.f64 x x) -2)))
(-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (+.f64 (*.f64 x y) (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2))))
(-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (+.f64 (/.f64 (*.f64 x x) -2) (*.f64 x (+.f64 y y))))
(-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (+.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2)) (*.f64 x y)))
(-.f64 (+.f64 (*.f64 x x) (*.f64 x (/.f64 (-.f64 y x) -2))) (+.f64 (*.f64 x y) (*.f64 x (/.f64 (-.f64 y x) 2))))
(-.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2) (*.f64 x (/.f64 (-.f64 y x) 2)))
(-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (*.f64 x (+.f64 x y)))
(-.f64 (*.f64 x (+.f64 x (*.f64 y -2))) (*.f64 x (neg.f64 x)))
(-.f64 (*.f64 (*.f64 x y) -2) (*.f64 -2 (*.f64 x x)))
(-.f64 (/.f64 (*.f64 x x) -2) (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) 2)) (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x)))))
(-.f64 (/.f64 (*.f64 x y) -2) (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x (+.f64 x (-.f64 x y)))))
(-.f64 (/.f64 (*.f64 x y) -2) (-.f64 (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x)) (*.f64 x (-.f64 x y))))
(-.f64 (/.f64 (*.f64 x y) -2) (-.f64 (/.f64 (*.f64 x (*.f64 y 3)) 2) (*.f64 2 (*.f64 x x))))
(-.f64 (/.f64 (*.f64 x y) -2) (-.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) 2)) (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x)))))
(-.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) -2)) (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x (-.f64 x y))))
(-.f64 (*.f64 -3 (/.f64 (*.f64 x y) 2)) (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 2 (*.f64 x x))))
(-.f64 (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2) (+.f64 (*.f64 x (-.f64 y x)) (/.f64 (*.f64 x x) -2)))
(-.f64 (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2) (+.f64 (/.f64 (*.f64 x x) -2) (*.f64 x (-.f64 y x))))
(-.f64 (+.f64 (*.f64 x (-.f64 x y)) (/.f64 (*.f64 x x) 2)) (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2)))
(-.f64 (+.f64 (*.f64 x (-.f64 x y)) (/.f64 (*.f64 x x) 2)) (+.f64 (/.f64 (*.f64 x x) -2) (*.f64 x y)))
(-.f64 (+.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x x) 2)) (+.f64 (*.f64 x y) (+.f64 (*.f64 x (+.f64 x y)) (/.f64 (*.f64 x x) -2))))
(-.f64 (+.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x x) 2)) (+.f64 (+.f64 (*.f64 x (+.f64 x y)) (/.f64 (*.f64 x x) -2)) (*.f64 x y)))
(-.f64 (+.f64 (*.f64 2 (*.f64 x x)) (*.f64 x (/.f64 (-.f64 y x) -2))) (-.f64 (/.f64 (*.f64 x (+.f64 x y)) 2) (*.f64 x (neg.f64 y))))
(-.f64 (-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (*.f64 x y)) (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2)))
(-.f64 (-.f64 (/.f64 (*.f64 x x) 2) (*.f64 x (+.f64 y (-.f64 y x)))) (/.f64 (*.f64 x x) -2))
(-.f64 (-.f64 (*.f64 x (+.f64 x y)) (*.f64 x (-.f64 y x))) (*.f64 x (+.f64 y y)))
(-.f64 (-.f64 (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2) (*.f64 x (-.f64 y x))) (/.f64 (*.f64 x x) -2))
(-.f64 (-.f64 (/.f64 (*.f64 x x) 2) (*.f64 x (+.f64 y y))) (*.f64 -3 (/.f64 (*.f64 x x) 2)))
(-.f64 (-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (*.f64 x (+.f64 y y))) (/.f64 (*.f64 x x) -2))
(-.f64 (-.f64 (*.f64 x x) (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2))))) (*.f64 x (neg.f64 x)))
(-.f64 (-.f64 0 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2))))) (*.f64 -2 (*.f64 x x)))
(-.f64 (-.f64 (/.f64 (*.f64 x x) 2) (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2))))) (*.f64 -3 (/.f64 (*.f64 x x) 2)))
(-.f64 (-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2))))) (/.f64 (*.f64 x x) -2))
(-.f64 (-.f64 (*.f64 x (-.f64 x y)) (*.f64 x y)) (*.f64 x (neg.f64 x)))
(-.f64 (-.f64 (+.f64 (*.f64 x (-.f64 x y)) (/.f64 (*.f64 x x) 2)) (*.f64 x y)) (/.f64 (*.f64 x x) -2))
(-.f64 (-.f64 (+.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x x) 2)) (*.f64 x y)) (+.f64 (*.f64 x (+.f64 x y)) (/.f64 (*.f64 x x) -2)))
(-.f64 (-.f64 (*.f64 x x) (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2)))) (/.f64 (*.f64 x (+.f64 x y)) 2))
(-.f64 (-.f64 0 (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2)))) (*.f64 x (/.f64 (-.f64 y x) 2)))
(-.f64 (-.f64 (/.f64 (*.f64 x x) 2) (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2)))) (/.f64 (*.f64 x y) 2))
(/.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 1)
(/.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 2)
(/.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 4)
(/.f64 (*.f64 2 (*.f64 x (-.f64 y x))) -1)
(/.f64 (*.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 8) 8)
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 4)) -2)
(/.f64 (*.f64 (-.f64 y x) (*.f64 2 (*.f64 x 4))) -4)
(/.f64 (+.f64 (*.f64 (-.f64 y x) (*.f64 x 4)) (*.f64 (-.f64 y x) (*.f64 x 4))) -4)
(/.f64 (+.f64 (*.f64 (*.f64 x y) -2) (*.f64 (+.f64 x x) (+.f64 x (-.f64 x y)))) 2)
(/.f64 (+.f64 (neg.f64 (*.f64 x (*.f64 y 4))) (*.f64 (*.f64 x 4) (+.f64 x (-.f64 x y)))) 4)
(/.f64 (+.f64 (*.f64 (+.f64 x x) (+.f64 x (-.f64 x y))) (*.f64 (*.f64 x y) -2)) 2)
(/.f64 (+.f64 (*.f64 (*.f64 x 4) (+.f64 x (-.f64 x y))) (neg.f64 (*.f64 x (*.f64 y 4)))) 4)
(/.f64 (-.f64 (*.f64 (*.f64 x x) 8) (*.f64 (*.f64 x y) 8)) 4)
(/.f64 (-.f64 (*.f64 (+.f64 x x) (+.f64 x (-.f64 x y))) (*.f64 x (+.f64 y y))) 2)
(/.f64 (-.f64 (*.f64 (*.f64 x 4) (+.f64 x (-.f64 x y))) (*.f64 x (*.f64 y 4))) 4)
(pow.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 1)
(neg.f64 (*.f64 2 (*.f64 x (-.f64 y x))))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(+.f64 (*.f64 x (-.f64 x y)) 0)
(+.f64 0 (*.f64 x (-.f64 x y)))
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 x x))
(+.f64 (*.f64 x (neg.f64 x)) (*.f64 x (+.f64 x (-.f64 x y))))
(+.f64 (*.f64 2 (*.f64 x x)) (neg.f64 (*.f64 x (+.f64 x y))))
(+.f64 (*.f64 x (+.f64 x (-.f64 x y))) (*.f64 x (neg.f64 x)))
(+.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) (*.f64 x (/.f64 (-.f64 y x) -2)))
(+.f64 (/.f64 (*.f64 x x) 2) (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2))
(+.f64 (*.f64 x (+.f64 x y)) (*.f64 (*.f64 x y) -2))
(+.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2) (*.f64 x (/.f64 (-.f64 y x) 2)))
(+.f64 (*.f64 x (+.f64 x (*.f64 y -2))) (*.f64 x y))
(+.f64 (/.f64 (*.f64 x y) -2) (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) -2)))
(+.f64 (/.f64 (*.f64 x y) -2) (neg.f64 (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x))))
(+.f64 (/.f64 (*.f64 x y) -2) (/.f64 (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x)) -1))
(+.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) -2)) (/.f64 (*.f64 x y) -2))
(+.f64 (/.f64 (*.f64 x (-.f64 x y)) 4) (/.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2) 2))
(+.f64 (/.f64 (*.f64 x (-.f64 x y)) 4) (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 4))
(+.f64 (/.f64 (*.f64 x (-.f64 x y)) 4) (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 8))
(+.f64 (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2) (/.f64 (*.f64 x x) 2))
(+.f64 (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2) (neg.f64 (/.f64 (*.f64 x x) -2)))
(+.f64 (-.f64 (*.f64 x (neg.f64 y)) (/.f64 (*.f64 x x) -2)) (neg.f64 (/.f64 (*.f64 x x) -2)))
(+.f64 (-.f64 (*.f64 2 (*.f64 x x)) (*.f64 x x)) (*.f64 x (neg.f64 y)))
(+.f64 (-.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x x) 2)) (neg.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) 2))))
(+.f64 (-.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x y) 2)) (neg.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) 2))))
(+.f64 (-.f64 (*.f64 x (+.f64 x y)) (/.f64 (*.f64 x y) 2)) (neg.f64 (/.f64 (*.f64 x (*.f64 y 3)) 2)))
(+.f64 (-.f64 (*.f64 x (+.f64 x y)) (/.f64 (*.f64 x (*.f64 y 3)) 2)) (/.f64 (*.f64 x y) -2))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x)) -1) (/.f64 (*.f64 x y) -2))
(+.f64 (/.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2)) -1) (/.f64 (*.f64 x x) 2))
(+.f64 (/.f64 (*.f64 x (+.f64 x (-.f64 x y))) 4) (/.f64 (+.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) (*.f64 x (neg.f64 y))) 4))
(*.f64 2 (*.f64 x (/.f64 (-.f64 y x) -2)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 x (-.f64 x y)) 1)
(*.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 1/2)
(*.f64 1 (*.f64 x (-.f64 x y)))
(*.f64 (-.f64 x y) x)
(*.f64 (*.f64 x (-.f64 y x)) -1)
(*.f64 (-.f64 y x) (neg.f64 x))
(*.f64 (neg.f64 x) (-.f64 y x))
(*.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 1/4)
(*.f64 (+.f64 x x) (/.f64 (-.f64 y x) -2))
(*.f64 -1 (*.f64 x (-.f64 y x)))
(*.f64 1/2 (*.f64 (*.f64 x (-.f64 y x)) -2))
(*.f64 1/2 (-.f64 (*.f64 x (*.f64 x 4)) (*.f64 x (*.f64 2 (+.f64 x y)))))
(*.f64 (/.f64 (-.f64 y x) -2) (+.f64 x x))
(*.f64 (*.f64 x 1/2) (*.f64 2 (-.f64 x y)))
(*.f64 (*.f64 x 1/2) (-.f64 (*.f64 x 4) (*.f64 2 (+.f64 x y))))
(*.f64 (*.f64 2 (-.f64 x y)) (*.f64 x 1/2))
(*.f64 (*.f64 x -2) (/.f64 (-.f64 y x) 2))
(*.f64 (*.f64 x 4) (/.f64 (-.f64 y x) -4))
(*.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 1/8)
(*.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) 2)
(*.f64 (*.f64 2 (-.f64 y x)) (/.f64 x -2))
(*.f64 (*.f64 2 (*.f64 x (-.f64 y x))) -1/2)
(*.f64 (neg.f64 (*.f64 x 4)) (/.f64 (-.f64 y x) 4))
(*.f64 1/4 (*.f64 x (*.f64 (-.f64 x y) 4)))
(*.f64 (/.f64 (-.f64 y x) -4) (*.f64 x 4))
(*.f64 (/.f64 x -2) (*.f64 2 (-.f64 y x)))
(*.f64 (*.f64 2 (*.f64 x 4)) (/.f64 (-.f64 x y) 8))
(*.f64 (*.f64 2 (*.f64 x 4)) (/.f64 (/.f64 (-.f64 y x) -2) 4))
(*.f64 (*.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 8) 1/16)
(*.f64 (*.f64 (-.f64 x y) 4) (/.f64 x 4))
(*.f64 (-.f64 (*.f64 y 4) (*.f64 x 4)) (/.f64 (neg.f64 x) 4))
(*.f64 (*.f64 (-.f64 y x) (*.f64 x 4)) -1/4)
(*.f64 (*.f64 (-.f64 y x) 4) (/.f64 (neg.f64 x) 4))
(/.f64 (*.f64 x (-.f64 x y)) 1)
(/.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 2)
(/.f64 (*.f64 x (-.f64 y x)) -1)
(/.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 4)
(/.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 8)
(/.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) 1/2)
(/.f64 (*.f64 2 (*.f64 x (-.f64 y x))) -2)
(/.f64 (*.f64 x (/.f64 (-.f64 y x) 2)) -1/2)
(/.f64 (*.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 8) 16)
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 4)) -4)
(/.f64 (*.f64 (-.f64 y x) (*.f64 2 (*.f64 x 4))) -8)
(/.f64 (*.f64 (-.f64 x y) (neg.f64 (*.f64 x 4))) -4)
(/.f64 (*.f64 x (*.f64 (-.f64 y x) 4)) -4)
(/.f64 (-.f64 (*.f64 x (*.f64 x 4)) (*.f64 x (*.f64 2 (+.f64 x y)))) 2)
(/.f64 (+.f64 (neg.f64 (*.f64 x (*.f64 y 4))) (*.f64 x (*.f64 x 4))) 4)
(/.f64 (-.f64 (*.f64 (*.f64 x x) 8) (*.f64 (*.f64 x y) 8)) 8)
(/.f64 (-.f64 (*.f64 (*.f64 x 4) (*.f64 x 4)) (*.f64 (*.f64 x 4) (*.f64 y 4))) 16)
(/.f64 (-.f64 (neg.f64 (*.f64 x (*.f64 y 4))) (neg.f64 (*.f64 x (*.f64 x 4)))) 4)
(/.f64 (-.f64 (*.f64 (*.f64 x x) 8) (*.f64 2 (*.f64 x (*.f64 2 (+.f64 x y))))) 4)
(/.f64 (-.f64 (*.f64 x (*.f64 2 (+.f64 x y))) (*.f64 x (*.f64 y 4))) 2)
(/.f64 (-.f64 (*.f64 2 (*.f64 x (*.f64 2 (+.f64 x y)))) (*.f64 (*.f64 x y) 8)) 4)
(pow.f64 (*.f64 x (-.f64 x y)) 1)
(neg.f64 (*.f64 x (-.f64 y x)))
Outputs
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(*.f64 x (neg.f64 y))
(*.f64 y (neg.f64 x))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(pow.f64 x 2)
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(pow.f64 x 2)
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(pow.f64 x 2)
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(*.f64 -1 (*.f64 y x))
(*.f64 x (neg.f64 y))
(*.f64 y (neg.f64 x))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(*.f64 -1 (*.f64 y x))
(*.f64 x (neg.f64 y))
(*.f64 y (neg.f64 x))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (pow.f64 x 2) (*.f64 -1 (*.f64 y x)))
(+.f64 (pow.f64 x 2) (*.f64 x (neg.f64 y)))
(+.f64 (pow.f64 x 2) (*.f64 y (neg.f64 x)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(+.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 x y)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(+.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 0)
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(+.f64 0 (*.f64 (*.f64 x (-.f64 y x)) -2))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(+.f64 (*.f64 x (-.f64 y x)) (*.f64 (-.f64 x y) (*.f64 x 3)))
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 x (+.f64 x (-.f64 x y))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(+.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 x (+.f64 y (*.f64 x -2)))))
(+.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 x (+.f64 y (*.f64 -2 x)))))
(*.f64 -1 (+.f64 (*.f64 y x) (*.f64 x (+.f64 y (*.f64 -2 x)))))
(*.f64 x (-.f64 (neg.f64 y) (+.f64 y (*.f64 -2 x))))
(+.f64 (*.f64 2 (*.f64 x x)) (*.f64 (*.f64 x y) -2))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(+.f64 (*.f64 x (+.f64 x (-.f64 x y))) (*.f64 x (neg.f64 y)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(+.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2))
(+.f64 (*.f64 (-.f64 y x) (/.f64 x -2)) (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2))
(+.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2) (*.f64 x (/.f64 (-.f64 y x) -2)))
(+.f64 (*.f64 (-.f64 y x) (/.f64 x -2)) (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2))
(+.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2))
(+.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (neg.f64 (*.f64 x (+.f64 x y))))
(+.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (neg.f64 (*.f64 x (+.f64 y x))))
(+.f64 (*.f64 x (-.f64 x (-.f64 y (+.f64 x x)))) (*.f64 (+.f64 y x) (neg.f64 x)))
(+.f64 (*.f64 x (+.f64 x (*.f64 y -2))) (*.f64 x x))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(+.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) (*.f64 x (-.f64 y x)))
(+.f64 (*.f64 x (-.f64 y x)) (*.f64 (-.f64 x y) (*.f64 x 3)))
(+.f64 (*.f64 (*.f64 x y) -2) (*.f64 2 (*.f64 x x)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(+.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) -2)) (/.f64 (+.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) (*.f64 x (neg.f64 y))) 2))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(+.f64 (-.f64 (*.f64 x (-.f64 x y)) (*.f64 x y)) (*.f64 x x))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(+.f64 (-.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x y) 2)) (neg.f64 (/.f64 (*.f64 x (*.f64 y 3)) 2)))
(-.f64 (*.f64 x (*.f64 x 2)) (+.f64 (/.f64 (*.f64 y x) 2) (/.f64 (*.f64 x (*.f64 y 3)) 2)))
(-.f64 (*.f64 x (*.f64 x 2)) (/.f64 (+.f64 (*.f64 y x) (*.f64 y (*.f64 x 3))) 2))
(-.f64 (*.f64 x (+.f64 x x)) (/.f64 (*.f64 x (+.f64 y (*.f64 y 3))) 2))
(+.f64 (-.f64 (*.f64 x (-.f64 x y)) (*.f64 x (+.f64 y (-.f64 y x)))) (*.f64 x y))
(+.f64 (*.f64 y x) (-.f64 (*.f64 x (-.f64 x y)) (*.f64 x (+.f64 y (-.f64 y x)))))
(+.f64 (*.f64 y x) (*.f64 x (-.f64 (-.f64 x y) (+.f64 y (-.f64 y x)))))
(-.f64 (*.f64 y x) (*.f64 x (-.f64 y (*.f64 2 (-.f64 x y)))))
(+.f64 (-.f64 (*.f64 x (-.f64 x y)) (/.f64 (*.f64 x y) 2)) (neg.f64 (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(+.f64 (-.f64 (*.f64 x (-.f64 x y)) (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2))) (neg.f64 (/.f64 (*.f64 x x) -2)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(+.f64 (-.f64 (*.f64 x (-.f64 x y)) (*.f64 x (/.f64 (-.f64 y x) 2))) (*.f64 x (/.f64 (-.f64 y x) -2)))
(+.f64 (*.f64 (-.f64 y x) (/.f64 x -2)) (-.f64 (*.f64 x (-.f64 x y)) (*.f64 (-.f64 y x) (/.f64 x 2))))
(+.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) (*.f64 x (-.f64 (-.f64 x y) (/.f64 (-.f64 y x) 2))))
(+.f64 (*.f64 x (-.f64 x y)) (*.f64 (-.f64 y x) (-.f64 (/.f64 x -2) (/.f64 x 2))))
(+.f64 (-.f64 (*.f64 x (-.f64 x y)) (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x))) (/.f64 (*.f64 x y) -2))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(+.f64 (-.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x (*.f64 y 3)) 2)) (/.f64 (*.f64 x y) -2))
(-.f64 (*.f64 x (*.f64 x 2)) (+.f64 (/.f64 (*.f64 y x) 2) (/.f64 (*.f64 x (*.f64 y 3)) 2)))
(-.f64 (*.f64 x (*.f64 x 2)) (/.f64 (+.f64 (*.f64 y x) (*.f64 y (*.f64 x 3))) 2))
(-.f64 (*.f64 x (+.f64 x x)) (/.f64 (*.f64 x (+.f64 y (*.f64 y 3))) 2))
(+.f64 (-.f64 (*.f64 x (+.f64 x (-.f64 x y))) (/.f64 (*.f64 x y) 2)) (/.f64 (*.f64 x y) -2))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(+.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (*.f64 x x)) (*.f64 x (neg.f64 y)))
(+.f64 (*.f64 x (neg.f64 y)) (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (*.f64 x x)))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 x (-.f64 (-.f64 (+.f64 x x) (-.f64 y x)) x)))
(+.f64 (*.f64 y (neg.f64 x)) (*.f64 x (-.f64 0 (-.f64 y (+.f64 x x)))))
(+.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (*.f64 x y)) (*.f64 x (neg.f64 x)))
(+.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (*.f64 y x)) (*.f64 x (neg.f64 x)))
(+.f64 (*.f64 x (-.f64 (-.f64 (+.f64 x x) (-.f64 y x)) y)) (*.f64 x (neg.f64 x)))
(*.f64 x (-.f64 (neg.f64 y) (-.f64 y (+.f64 0 (+.f64 x x)))))
(+.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (/.f64 (*.f64 x x) 2)) (neg.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) 2))))
(+.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (*.f64 y x)) (*.f64 x (neg.f64 x)))
(+.f64 (*.f64 x (-.f64 (-.f64 (+.f64 x x) (-.f64 y x)) y)) (*.f64 x (neg.f64 x)))
(*.f64 x (-.f64 (neg.f64 y) (-.f64 y (+.f64 0 (+.f64 x x)))))
(+.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (/.f64 (*.f64 x y) 2)) (neg.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) 2))))
(-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (+.f64 (/.f64 (*.f64 y x) 2) (+.f64 (*.f64 x x) (/.f64 (*.f64 y x) 2))))
(-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (+.f64 (*.f64 x x) (+.f64 (/.f64 (*.f64 y x) 2) (/.f64 (*.f64 y x) 2))))
(+.f64 (*.f64 x (-.f64 0 (-.f64 y (+.f64 x x)))) (neg.f64 (-.f64 (*.f64 y x) 0)))
(+.f64 (-.f64 (*.f64 x (+.f64 x (*.f64 y -2))) (/.f64 (*.f64 x x) -2)) (neg.f64 (/.f64 (*.f64 x x) -2)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 x x) (*.f64 x (+.f64 y (-.f64 y x))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 x x) (+.f64 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))) (*.f64 x (neg.f64 x))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 x x) (+.f64 (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2))) (/.f64 (*.f64 x (+.f64 x y)) 2)))
(-.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 (-.f64 y x) (/.f64 x -2)) -3)) (/.f64 (*.f64 x (+.f64 y x)) 2))
(-.f64 (*.f64 x x) (+.f64 (*.f64 (/.f64 (-.f64 y x) -2) (*.f64 x -3)) (/.f64 (*.f64 x (+.f64 y x)) 2)))
(+.f64 (*.f64 x (-.f64 x (*.f64 (/.f64 (-.f64 y x) -2) -3))) (/.f64 (*.f64 x (+.f64 y x)) -2))
(-.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 y x)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 0)
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 0 (*.f64 2 (*.f64 x (-.f64 y x))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 0 (+.f64 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))) (*.f64 -2 (*.f64 x x))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 x (neg.f64 y)) (*.f64 x (+.f64 y (*.f64 x -2))))
(+.f64 (*.f64 x (neg.f64 y)) (neg.f64 (*.f64 x (+.f64 y (*.f64 -2 x)))))
(*.f64 -1 (+.f64 (*.f64 y x) (*.f64 x (+.f64 y (*.f64 -2 x)))))
(*.f64 x (-.f64 (neg.f64 y) (+.f64 y (*.f64 -2 x))))
(-.f64 (*.f64 x (neg.f64 y)) (-.f64 (*.f64 x x) (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x)))))
(+.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (*.f64 y x)) (*.f64 x (neg.f64 x)))
(+.f64 (*.f64 x (-.f64 (-.f64 (+.f64 x x) (-.f64 y x)) y)) (*.f64 x (neg.f64 x)))
(*.f64 x (-.f64 (neg.f64 y) (-.f64 y (+.f64 0 (+.f64 x x)))))
(-.f64 (*.f64 x (neg.f64 y)) (+.f64 (*.f64 x (neg.f64 x)) (*.f64 x (-.f64 y x))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 x (neg.f64 x)) (-.f64 (*.f64 x y) (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x)))))
(+.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (*.f64 y x)) (*.f64 x (neg.f64 x)))
(+.f64 (*.f64 x (-.f64 (-.f64 (+.f64 x x) (-.f64 y x)) y)) (*.f64 x (neg.f64 x)))
(*.f64 x (-.f64 (neg.f64 y) (-.f64 y (+.f64 0 (+.f64 x x)))))
(-.f64 (*.f64 2 (*.f64 x x)) (*.f64 x (+.f64 y y)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 2 (*.f64 x x)) (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 2 (*.f64 x x)) (+.f64 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))) 0))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 x (+.f64 x (-.f64 x y))) (*.f64 x y))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) (+.f64 (*.f64 x (/.f64 (-.f64 y x) 2)) (*.f64 x (-.f64 y x))))
(+.f64 (*.f64 (-.f64 y x) (/.f64 x -2)) (-.f64 (*.f64 x (-.f64 x y)) (*.f64 (-.f64 y x) (/.f64 x 2))))
(+.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) (*.f64 x (-.f64 (-.f64 x y) (/.f64 (-.f64 y x) 2))))
(+.f64 (*.f64 x (-.f64 x y)) (*.f64 (-.f64 y x) (-.f64 (/.f64 x -2) (/.f64 x 2))))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 x (+.f64 y (-.f64 y x))) (/.f64 (*.f64 x x) -2)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 x (-.f64 y x)) (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 x (+.f64 y y)) (*.f64 -3 (/.f64 (*.f64 x x) 2))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))) (*.f64 -3 (/.f64 (*.f64 x x) 2))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 x y) (+.f64 (*.f64 x (-.f64 y x)) (/.f64 (*.f64 x x) -2))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2))) (/.f64 (*.f64 x y) 2)))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (/.f64 (*.f64 y x) 2) (*.f64 (*.f64 (-.f64 y x) (/.f64 x -2)) -3)))
(-.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y x)) 2) (*.f64 (/.f64 (-.f64 y x) -2) (*.f64 x -3)))
(-.f64 (/.f64 (*.f64 x (-.f64 x y)) 2) (*.f64 (-.f64 y x) (*.f64 (/.f64 x -2) -3)))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2)) (*.f64 x (-.f64 y x))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 -3 (/.f64 (*.f64 x x) 2)) (*.f64 x (+.f64 y y))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (+.f64 (*.f64 x (-.f64 y x)) (/.f64 (*.f64 x x) -2)) (*.f64 x y)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 x (+.f64 x y)) (-.f64 (*.f64 x (+.f64 y y)) (*.f64 x (-.f64 x y))))
(-.f64 (*.f64 x (-.f64 x y)) (-.f64 (*.f64 x (+.f64 y y)) (*.f64 x (+.f64 y x))))
(-.f64 (*.f64 x (+.f64 y x)) (*.f64 x (-.f64 (+.f64 y y) (-.f64 x y))))
(*.f64 x (-.f64 (-.f64 x y) (-.f64 (+.f64 y y) (+.f64 y x))))
(-.f64 (*.f64 x (+.f64 x y)) (+.f64 (*.f64 x (-.f64 y x)) (*.f64 x (+.f64 y y))))
(-.f64 (*.f64 x (-.f64 x y)) (-.f64 (*.f64 x (+.f64 y y)) (*.f64 x (+.f64 y x))))
(-.f64 (*.f64 x (+.f64 y x)) (*.f64 x (-.f64 (+.f64 y y) (-.f64 x y))))
(*.f64 x (-.f64 (-.f64 x y) (-.f64 (+.f64 y y) (+.f64 y x))))
(-.f64 (*.f64 x (+.f64 x y)) (+.f64 (*.f64 x (+.f64 y y)) (*.f64 x (-.f64 y x))))
(-.f64 (*.f64 x (-.f64 x y)) (-.f64 (*.f64 x (+.f64 y y)) (*.f64 x (+.f64 y x))))
(-.f64 (*.f64 x (+.f64 y x)) (*.f64 x (-.f64 (+.f64 y y) (-.f64 x y))))
(*.f64 x (-.f64 (-.f64 x y) (-.f64 (+.f64 y y) (+.f64 y x))))
(-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (+.f64 (*.f64 x (+.f64 y y)) (/.f64 (*.f64 x x) -2)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (+.f64 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2)))) (/.f64 (*.f64 x x) -2)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (+.f64 (*.f64 x y) (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (+.f64 (/.f64 (*.f64 x x) -2) (*.f64 x (+.f64 y y))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (+.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2)) (*.f64 x y)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (+.f64 (*.f64 x x) (*.f64 x (/.f64 (-.f64 y x) -2))) (+.f64 (*.f64 x y) (*.f64 x (/.f64 (-.f64 y x) 2))))
(+.f64 (*.f64 (-.f64 y x) (/.f64 x -2)) (-.f64 (*.f64 x (-.f64 x y)) (*.f64 (-.f64 y x) (/.f64 x 2))))
(+.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) (*.f64 x (-.f64 (-.f64 x y) (/.f64 (-.f64 y x) 2))))
(+.f64 (*.f64 x (-.f64 x y)) (*.f64 (-.f64 y x) (-.f64 (/.f64 x -2) (/.f64 x 2))))
(-.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2) (*.f64 x (/.f64 (-.f64 y x) 2)))
(-.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2) (*.f64 (-.f64 y x) (/.f64 x 2)))
(-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (*.f64 x (+.f64 x y)))
(-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (*.f64 x (+.f64 y x)))
(*.f64 x (-.f64 (-.f64 (+.f64 x x) (-.f64 y x)) (+.f64 y x)))
(*.f64 x (+.f64 (-.f64 0 (-.f64 y (+.f64 x x))) (neg.f64 y)))
(-.f64 (*.f64 x (+.f64 x (*.f64 y -2))) (*.f64 x (neg.f64 x)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 (*.f64 x y) -2) (*.f64 -2 (*.f64 x x)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (/.f64 (*.f64 x x) -2) (-.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) 2)) (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x)))))
(+.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (*.f64 y x)) (*.f64 x (neg.f64 x)))
(+.f64 (*.f64 x (-.f64 (-.f64 (+.f64 x x) (-.f64 y x)) y)) (*.f64 x (neg.f64 x)))
(*.f64 x (-.f64 (neg.f64 y) (-.f64 y (+.f64 0 (+.f64 x x)))))
(-.f64 (/.f64 (*.f64 x y) -2) (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x (+.f64 x (-.f64 x y)))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (/.f64 (*.f64 x y) -2) (-.f64 (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x)) (*.f64 x (-.f64 x y))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (/.f64 (*.f64 x y) -2) (-.f64 (/.f64 (*.f64 x (*.f64 y 3)) 2) (*.f64 2 (*.f64 x x))))
(-.f64 (*.f64 x (*.f64 x 2)) (-.f64 (/.f64 (*.f64 x (*.f64 y 3)) 2) (/.f64 (*.f64 y x) -2)))
(-.f64 (*.f64 x (*.f64 x 2)) (-.f64 (/.f64 (*.f64 y (*.f64 x 3)) 2) (/.f64 (*.f64 y x) -2)))
(-.f64 (*.f64 x (+.f64 x x)) (/.f64 (-.f64 (*.f64 y (*.f64 x 3)) (*.f64 y (neg.f64 x))) 2))
(-.f64 (/.f64 (*.f64 x y) -2) (-.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) 2)) (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x)))))
(+.f64 (-.f64 (*.f64 x (-.f64 (+.f64 x x) (-.f64 y x))) (*.f64 y x)) (*.f64 x (neg.f64 x)))
(+.f64 (*.f64 x (-.f64 (-.f64 (+.f64 x x) (-.f64 y x)) y)) (*.f64 x (neg.f64 x)))
(*.f64 x (-.f64 (neg.f64 y) (-.f64 y (+.f64 0 (+.f64 x x)))))
(-.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) -2)) (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x (-.f64 x y))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (*.f64 -3 (/.f64 (*.f64 x y) 2)) (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 2 (*.f64 x x))))
(-.f64 (*.f64 x (*.f64 x 2)) (-.f64 (/.f64 (*.f64 y x) 2) (*.f64 (*.f64 y x) -3/2)))
(-.f64 (*.f64 x (+.f64 x x)) (-.f64 (/.f64 (*.f64 y x) 2) (*.f64 (*.f64 y x) -3/2)))
(-.f64 (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2) (+.f64 (*.f64 x (-.f64 y x)) (/.f64 (*.f64 x x) -2)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2) (+.f64 (/.f64 (*.f64 x x) -2) (*.f64 x (-.f64 y x))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (+.f64 (*.f64 x (-.f64 x y)) (/.f64 (*.f64 x x) 2)) (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (+.f64 (*.f64 x (-.f64 x y)) (/.f64 (*.f64 x x) 2)) (+.f64 (/.f64 (*.f64 x x) -2) (*.f64 x y)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (+.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x x) 2)) (+.f64 (*.f64 x y) (+.f64 (*.f64 x (+.f64 x y)) (/.f64 (*.f64 x x) -2))))
(-.f64 (+.f64 (*.f64 x (*.f64 x 2)) (/.f64 (*.f64 x x) 2)) (+.f64 (/.f64 (*.f64 x x) -2) (+.f64 (*.f64 x (+.f64 y x)) (*.f64 y x))))
(+.f64 (/.f64 (*.f64 x x) 2) (-.f64 (+.f64 (*.f64 x (*.f64 x 2)) (/.f64 (*.f64 x x) 2)) (*.f64 x (+.f64 (+.f64 y x) y))))
(+.f64 (-.f64 (*.f64 x (+.f64 x x)) (*.f64 x (neg.f64 x))) (neg.f64 (*.f64 x (+.f64 y (+.f64 y x)))))
(-.f64 (+.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x x) 2)) (+.f64 (+.f64 (*.f64 x (+.f64 x y)) (/.f64 (*.f64 x x) -2)) (*.f64 x y)))
(-.f64 (+.f64 (*.f64 x (*.f64 x 2)) (/.f64 (*.f64 x x) 2)) (+.f64 (/.f64 (*.f64 x x) -2) (+.f64 (*.f64 x (+.f64 y x)) (*.f64 y x))))
(+.f64 (/.f64 (*.f64 x x) 2) (-.f64 (+.f64 (*.f64 x (*.f64 x 2)) (/.f64 (*.f64 x x) 2)) (*.f64 x (+.f64 (+.f64 y x) y))))
(+.f64 (-.f64 (*.f64 x (+.f64 x x)) (*.f64 x (neg.f64 x))) (neg.f64 (*.f64 x (+.f64 y (+.f64 y x)))))
(-.f64 (+.f64 (*.f64 2 (*.f64 x x)) (*.f64 x (/.f64 (-.f64 y x) -2))) (-.f64 (/.f64 (*.f64 x (+.f64 x y)) 2) (*.f64 x (neg.f64 y))))
(-.f64 (*.f64 x (neg.f64 y)) (-.f64 (/.f64 (*.f64 x (+.f64 y x)) 2) (+.f64 (*.f64 x (*.f64 x 2)) (*.f64 (-.f64 y x) (/.f64 x -2)))))
(-.f64 (*.f64 y (neg.f64 x)) (-.f64 (/.f64 (*.f64 x (+.f64 y x)) 2) (+.f64 (*.f64 x (*.f64 x 2)) (*.f64 x (/.f64 (-.f64 y x) -2)))))
(-.f64 (*.f64 x (+.f64 (+.f64 x x) (/.f64 (-.f64 y x) -2))) (-.f64 (*.f64 y x) (/.f64 (*.f64 x (+.f64 y x)) -2)))
(-.f64 (-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (*.f64 x y)) (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (-.f64 (/.f64 (*.f64 x x) 2) (*.f64 x (+.f64 y (-.f64 y x)))) (/.f64 (*.f64 x x) -2))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (-.f64 (*.f64 x (+.f64 x y)) (*.f64 x (-.f64 y x))) (*.f64 x (+.f64 y y)))
(-.f64 (*.f64 x (-.f64 x y)) (-.f64 (*.f64 x (+.f64 y y)) (*.f64 x (+.f64 y x))))
(-.f64 (*.f64 x (+.f64 y x)) (*.f64 x (-.f64 (+.f64 y y) (-.f64 x y))))
(*.f64 x (-.f64 (-.f64 x y) (-.f64 (+.f64 y y) (+.f64 y x))))
(-.f64 (-.f64 (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2) (*.f64 x (-.f64 y x))) (/.f64 (*.f64 x x) -2))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (-.f64 (/.f64 (*.f64 x x) 2) (*.f64 x (+.f64 y y))) (*.f64 -3 (/.f64 (*.f64 x x) 2)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (*.f64 x (+.f64 y y))) (/.f64 (*.f64 x x) -2))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (-.f64 (*.f64 x x) (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2))))) (*.f64 x (neg.f64 x)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (-.f64 0 (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2))))) (*.f64 -2 (*.f64 x x)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (-.f64 (/.f64 (*.f64 x x) 2) (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2))))) (*.f64 -3 (/.f64 (*.f64 x x) 2)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (-.f64 (*.f64 3 (/.f64 (*.f64 x x) 2)) (-.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 y -2))))) (/.f64 (*.f64 x x) -2))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (-.f64 (*.f64 x (-.f64 x y)) (*.f64 x y)) (*.f64 x (neg.f64 x)))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (-.f64 (+.f64 (*.f64 x (-.f64 x y)) (/.f64 (*.f64 x x) 2)) (*.f64 x y)) (/.f64 (*.f64 x x) -2))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(-.f64 (-.f64 (+.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x x) 2)) (*.f64 x y)) (+.f64 (*.f64 x (+.f64 x y)) (/.f64 (*.f64 x x) -2)))
(-.f64 (+.f64 (*.f64 x (*.f64 x 2)) (/.f64 (*.f64 x x) 2)) (+.f64 (/.f64 (*.f64 x x) -2) (+.f64 (*.f64 x (+.f64 y x)) (*.f64 y x))))
(+.f64 (/.f64 (*.f64 x x) 2) (-.f64 (+.f64 (*.f64 x (*.f64 x 2)) (/.f64 (*.f64 x x) 2)) (*.f64 x (+.f64 (+.f64 y x) y))))
(+.f64 (-.f64 (*.f64 x (+.f64 x x)) (*.f64 x (neg.f64 x))) (neg.f64 (*.f64 x (+.f64 y (+.f64 y x)))))
(-.f64 (-.f64 (*.f64 x x) (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2)))) (/.f64 (*.f64 x (+.f64 x y)) 2))
(-.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 (-.f64 y x) (/.f64 x -2)) -3)) (/.f64 (*.f64 x (+.f64 y x)) 2))
(-.f64 (*.f64 x x) (+.f64 (*.f64 (/.f64 (-.f64 y x) -2) (*.f64 x -3)) (/.f64 (*.f64 x (+.f64 y x)) 2)))
(+.f64 (*.f64 x (-.f64 x (*.f64 (/.f64 (-.f64 y x) -2) -3))) (/.f64 (*.f64 x (+.f64 y x)) -2))
(-.f64 (-.f64 0 (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2)))) (*.f64 x (/.f64 (-.f64 y x) 2)))
(-.f64 (neg.f64 (*.f64 (*.f64 (-.f64 y x) (/.f64 x -2)) -3)) (*.f64 (-.f64 y x) (/.f64 x 2)))
(-.f64 (neg.f64 (*.f64 (/.f64 (-.f64 y x) -2) (*.f64 x -3))) (*.f64 (-.f64 y x) (/.f64 x 2)))
(-.f64 (neg.f64 (*.f64 (-.f64 y x) (*.f64 (/.f64 x -2) -3))) (*.f64 (-.f64 y x) (/.f64 x 2)))
(-.f64 (-.f64 (/.f64 (*.f64 x x) 2) (*.f64 -3 (*.f64 x (/.f64 (-.f64 y x) -2)))) (/.f64 (*.f64 x y) 2))
(-.f64 (/.f64 (*.f64 x x) 2) (+.f64 (/.f64 (*.f64 y x) 2) (*.f64 (*.f64 (-.f64 y x) (/.f64 x -2)) -3)))
(-.f64 (/.f64 (-.f64 (*.f64 x x) (*.f64 y x)) 2) (*.f64 (/.f64 (-.f64 y x) -2) (*.f64 x -3)))
(-.f64 (/.f64 (*.f64 x (-.f64 x y)) 2) (*.f64 (-.f64 y x) (*.f64 (/.f64 x -2) -3)))
(/.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 1)
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(/.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 2)
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(/.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 4)
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(/.f64 (*.f64 2 (*.f64 x (-.f64 y x))) -1)
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(/.f64 (*.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 8) 8)
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 4)) -2)
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(/.f64 (*.f64 (-.f64 y x) (*.f64 2 (*.f64 x 4))) -4)
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(/.f64 (+.f64 (*.f64 (-.f64 y x) (*.f64 x 4)) (*.f64 (-.f64 y x) (*.f64 x 4))) -4)
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(/.f64 (+.f64 (*.f64 (*.f64 x y) -2) (*.f64 (+.f64 x x) (+.f64 x (-.f64 x y)))) 2)
(/.f64 (+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 (+.f64 x (-.f64 x y)) (+.f64 x x))) 2)
(+.f64 (*.f64 y (neg.f64 x)) (/.f64 (*.f64 -2 (*.f64 x (-.f64 y (+.f64 x x)))) 2))
(/.f64 (+.f64 (neg.f64 (*.f64 x (*.f64 y 4))) (*.f64 (*.f64 x 4) (+.f64 x (-.f64 x y)))) 4)
(/.f64 (+.f64 (neg.f64 (*.f64 x (*.f64 y 4))) (*.f64 (+.f64 x (-.f64 x y)) (*.f64 x 4))) 4)
(/.f64 (+.f64 (neg.f64 (*.f64 y (*.f64 x 4))) (*.f64 (+.f64 x (-.f64 x y)) (*.f64 x 4))) 4)
(+.f64 (*.f64 y (neg.f64 x)) (/.f64 (*.f64 (*.f64 x (-.f64 (+.f64 x x) y)) 4) 4))
(/.f64 (+.f64 (*.f64 (+.f64 x x) (+.f64 x (-.f64 x y))) (*.f64 (*.f64 x y) -2)) 2)
(/.f64 (+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 (+.f64 x (-.f64 x y)) (+.f64 x x))) 2)
(+.f64 (*.f64 y (neg.f64 x)) (/.f64 (*.f64 -2 (*.f64 x (-.f64 y (+.f64 x x)))) 2))
(/.f64 (+.f64 (*.f64 (*.f64 x 4) (+.f64 x (-.f64 x y))) (neg.f64 (*.f64 x (*.f64 y 4)))) 4)
(/.f64 (+.f64 (neg.f64 (*.f64 x (*.f64 y 4))) (*.f64 (+.f64 x (-.f64 x y)) (*.f64 x 4))) 4)
(/.f64 (+.f64 (neg.f64 (*.f64 y (*.f64 x 4))) (*.f64 (+.f64 x (-.f64 x y)) (*.f64 x 4))) 4)
(+.f64 (*.f64 y (neg.f64 x)) (/.f64 (*.f64 (*.f64 x (-.f64 (+.f64 x x) y)) 4) 4))
(/.f64 (-.f64 (*.f64 (*.f64 x x) 8) (*.f64 (*.f64 x y) 8)) 4)
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(/.f64 (-.f64 (*.f64 (+.f64 x x) (+.f64 x (-.f64 x y))) (*.f64 x (+.f64 y y))) 2)
(/.f64 (+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 (+.f64 x (-.f64 x y)) (+.f64 x x))) 2)
(+.f64 (*.f64 y (neg.f64 x)) (/.f64 (*.f64 -2 (*.f64 x (-.f64 y (+.f64 x x)))) 2))
(/.f64 (-.f64 (*.f64 (*.f64 x 4) (+.f64 x (-.f64 x y))) (*.f64 x (*.f64 y 4))) 4)
(/.f64 (-.f64 (*.f64 (+.f64 x (-.f64 x y)) (*.f64 x 4)) (*.f64 x (*.f64 y 4))) 4)
(/.f64 (-.f64 (*.f64 (+.f64 x (-.f64 x y)) (*.f64 x 4)) (*.f64 y (*.f64 x 4))) 4)
(/.f64 (*.f64 (*.f64 x 4) (-.f64 (+.f64 x (-.f64 x y)) y)) 4)
(pow.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 1)
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(neg.f64 (*.f64 2 (*.f64 x (-.f64 y x))))
(+.f64 (*.f64 x x) (*.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
(*.f64 x (*.f64 2 (-.f64 x y)))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (*.f64 x (-.f64 x y)) 0)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 0 (*.f64 x (-.f64 x y)))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 x x))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (*.f64 x (neg.f64 x)) (*.f64 x (+.f64 x (-.f64 x y))))
(+.f64 (*.f64 x (+.f64 x (-.f64 x y))) (*.f64 x (neg.f64 x)))
(*.f64 x (+.f64 (+.f64 x (-.f64 x y)) (neg.f64 x)))
(*.f64 x (+.f64 x (+.f64 (-.f64 x y) (neg.f64 x))))
(+.f64 (*.f64 2 (*.f64 x x)) (neg.f64 (*.f64 x (+.f64 x y))))
(+.f64 (*.f64 x (*.f64 x 2)) (neg.f64 (*.f64 x (+.f64 y x))))
(-.f64 (/.f64 (*.f64 x x) 1/2) (*.f64 x (+.f64 y x)))
(+.f64 (*.f64 x (+.f64 x (-.f64 x y))) (*.f64 x (neg.f64 x)))
(*.f64 x (+.f64 (+.f64 x (-.f64 x y)) (neg.f64 x)))
(*.f64 x (+.f64 x (+.f64 (-.f64 x y) (neg.f64 x))))
(+.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) (*.f64 x (/.f64 (-.f64 y x) -2)))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (/.f64 (*.f64 x x) 2) (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (*.f64 x (+.f64 x y)) (*.f64 (*.f64 x y) -2))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 x (+.f64 y x)))
(*.f64 x (+.f64 (*.f64 -2 y) (+.f64 y x)))
(+.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2) (*.f64 x (/.f64 (-.f64 y x) 2)))
(+.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2) (*.f64 (-.f64 y x) (/.f64 x 2)))
(+.f64 (*.f64 x (+.f64 x (*.f64 y -2))) (*.f64 x y))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 x (+.f64 y x)))
(*.f64 x (+.f64 (*.f64 -2 y) (+.f64 y x)))
(+.f64 (/.f64 (*.f64 x y) -2) (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) -2)))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (/.f64 (*.f64 x y) -2) (neg.f64 (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x))))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (/.f64 (*.f64 x y) -2) (/.f64 (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x)) -1))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) -2)) (/.f64 (*.f64 x y) -2))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (/.f64 (*.f64 x (-.f64 x y)) 4) (/.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 2) 2))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (/.f64 (*.f64 x (-.f64 x y)) 4) (/.f64 (*.f64 (-.f64 x y) (*.f64 x 3)) 4))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (/.f64 (*.f64 x (-.f64 x y)) 4) (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 8))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2) (/.f64 (*.f64 x x) 2))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (/.f64 (*.f64 x (+.f64 x (*.f64 y -2))) 2) (neg.f64 (/.f64 (*.f64 x x) -2)))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (-.f64 (*.f64 x (neg.f64 y)) (/.f64 (*.f64 x x) -2)) (neg.f64 (/.f64 (*.f64 x x) -2)))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (-.f64 (*.f64 2 (*.f64 x x)) (*.f64 x x)) (*.f64 x (neg.f64 y)))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (-.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x x) 2)) (neg.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) 2))))
(-.f64 (*.f64 x (*.f64 x 2)) (+.f64 (/.f64 (*.f64 x x) 2) (+.f64 (*.f64 y x) (/.f64 (*.f64 x x) 2))))
(-.f64 (*.f64 x (*.f64 x 2)) (+.f64 (*.f64 y x) (+.f64 (/.f64 (*.f64 x x) 2) (/.f64 (*.f64 x x) 2))))
(-.f64 (*.f64 x (+.f64 x x)) (*.f64 x (-.f64 y (neg.f64 x))))
(+.f64 (-.f64 (*.f64 2 (*.f64 x x)) (/.f64 (*.f64 x y) 2)) (neg.f64 (+.f64 (*.f64 x x) (/.f64 (*.f64 x y) 2))))
(-.f64 (*.f64 x (*.f64 x 2)) (+.f64 (/.f64 (*.f64 y x) 2) (+.f64 (*.f64 x x) (/.f64 (*.f64 y x) 2))))
(-.f64 (*.f64 x (*.f64 x 2)) (+.f64 (*.f64 x x) (+.f64 (/.f64 (*.f64 y x) 2) (/.f64 (*.f64 y x) 2))))
(+.f64 (neg.f64 (*.f64 x (neg.f64 x))) (neg.f64 (-.f64 (*.f64 y x) 0)))
(+.f64 (-.f64 (*.f64 x (+.f64 x y)) (/.f64 (*.f64 x y) 2)) (neg.f64 (/.f64 (*.f64 x (*.f64 y 3)) 2)))
(-.f64 (*.f64 x (+.f64 y x)) (+.f64 (/.f64 (*.f64 y x) 2) (/.f64 (*.f64 x (*.f64 y 3)) 2)))
(-.f64 (*.f64 x (+.f64 y x)) (/.f64 (+.f64 (*.f64 y x) (*.f64 y (*.f64 x 3))) 2))
(-.f64 (*.f64 x (+.f64 y x)) (/.f64 (*.f64 x (+.f64 y (*.f64 y 3))) 2))
(+.f64 (-.f64 (*.f64 x (+.f64 x y)) (/.f64 (*.f64 x (*.f64 y 3)) 2)) (/.f64 (*.f64 x y) -2))
(-.f64 (*.f64 x (+.f64 y x)) (+.f64 (/.f64 (*.f64 y x) 2) (/.f64 (*.f64 x (*.f64 y 3)) 2)))
(-.f64 (*.f64 x (+.f64 y x)) (/.f64 (+.f64 (*.f64 y x) (*.f64 y (*.f64 x 3))) 2))
(-.f64 (*.f64 x (+.f64 y x)) (/.f64 (*.f64 x (+.f64 y (*.f64 y 3))) 2))
(+.f64 (/.f64 (-.f64 (/.f64 (*.f64 x y) 2) (*.f64 x x)) -1) (/.f64 (*.f64 x y) -2))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (/.f64 (+.f64 (*.f64 x y) (/.f64 (*.f64 x x) -2)) -1) (/.f64 (*.f64 x x) 2))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(+.f64 (/.f64 (*.f64 x (+.f64 x (-.f64 x y))) 4) (/.f64 (+.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) (*.f64 x (neg.f64 y))) 4))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 2 (*.f64 x (/.f64 (-.f64 y x) -2)))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 x (-.f64 x y))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 (*.f64 x (-.f64 x y)) 1)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 1/2)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 1 (*.f64 x (-.f64 x y)))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (-.f64 x y) x)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 x (-.f64 y x)) -1)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (-.f64 y x) (neg.f64 x))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (neg.f64 x) (-.f64 y x))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 1/4)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (+.f64 x x) (/.f64 (-.f64 y x) -2))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 -1 (*.f64 x (-.f64 y x)))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 1/2 (*.f64 (*.f64 x (-.f64 y x)) -2))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 1/2 (-.f64 (*.f64 x (*.f64 x 4)) (*.f64 x (*.f64 2 (+.f64 x y)))))
(*.f64 1/2 (-.f64 (*.f64 4 (*.f64 x x)) (*.f64 (+.f64 y x) (*.f64 2 x))))
(*.f64 x (*.f64 1/2 (-.f64 (*.f64 x 4) (*.f64 2 (+.f64 y x)))))
(*.f64 (/.f64 (-.f64 y x) -2) (+.f64 x x))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 x 1/2) (*.f64 2 (-.f64 x y)))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 x 1/2) (-.f64 (*.f64 x 4) (*.f64 2 (+.f64 x y))))
(*.f64 1/2 (-.f64 (*.f64 4 (*.f64 x x)) (*.f64 (+.f64 y x) (*.f64 2 x))))
(*.f64 x (*.f64 1/2 (-.f64 (*.f64 x 4) (*.f64 2 (+.f64 y x)))))
(*.f64 (*.f64 2 (-.f64 x y)) (*.f64 x 1/2))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 x -2) (/.f64 (-.f64 y x) 2))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 x 4) (/.f64 (-.f64 y x) -4))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 1/8)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) 2)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 2 (-.f64 y x)) (/.f64 x -2))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 2 (*.f64 x (-.f64 y x))) -1/2)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (neg.f64 (*.f64 x 4)) (/.f64 (-.f64 y x) 4))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 1/4 (*.f64 x (*.f64 (-.f64 x y) 4)))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (/.f64 (-.f64 y x) -4) (*.f64 x 4))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (/.f64 x -2) (*.f64 2 (-.f64 y x)))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 2 (*.f64 x 4)) (/.f64 (-.f64 x y) 8))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 2 (*.f64 x 4)) (/.f64 (/.f64 (-.f64 y x) -2) 4))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 8) 1/16)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 (-.f64 x y) 4) (/.f64 x 4))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (-.f64 (*.f64 y 4) (*.f64 x 4)) (/.f64 (neg.f64 x) 4))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 (-.f64 y x) (*.f64 x 4)) -1/4)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(*.f64 (*.f64 (-.f64 y x) 4) (/.f64 (neg.f64 x) 4))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (-.f64 x y)) 1)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 2)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (-.f64 y x)) -1)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 4)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 8)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (/.f64 (-.f64 y x) -2)) 1/2)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 2 (*.f64 x (-.f64 y x))) -2)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 x (/.f64 (-.f64 y x) 2)) -1/2)
(/.f64 (*.f64 (-.f64 y x) (/.f64 x 2)) -1/2)
(/.f64 (*.f64 (*.f64 (*.f64 x (-.f64 y x)) -2) 8) 16)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 4)) -4)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (-.f64 y x) (*.f64 2 (*.f64 x 4))) -8)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(/.f64 (*.f64 (-.f64 x y) (neg.f64 (*.f64 x 4))) -4)
(/.f64 (*.f64 (-.f64 x y) (*.f64 x -4)) -4)
(/.f64 (*.f64 x (*.f64 (-.f64 y x) 4)) -4)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(/.f64 (-.f64 (*.f64 x (*.f64 x 4)) (*.f64 x (*.f64 2 (+.f64 x y)))) 2)
(/.f64 (-.f64 (*.f64 4 (*.f64 x x)) (*.f64 (+.f64 y x) (*.f64 2 x))) 2)
(/.f64 (*.f64 x (-.f64 (*.f64 x 4) (*.f64 2 (+.f64 y x)))) 2)
(/.f64 (+.f64 (neg.f64 (*.f64 x (*.f64 y 4))) (*.f64 x (*.f64 x 4))) 4)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(/.f64 (-.f64 (*.f64 (*.f64 x x) 8) (*.f64 (*.f64 x y) 8)) 8)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(/.f64 (-.f64 (*.f64 (*.f64 x 4) (*.f64 x 4)) (*.f64 (*.f64 x 4) (*.f64 y 4))) 16)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(/.f64 (-.f64 (neg.f64 (*.f64 x (*.f64 y 4))) (neg.f64 (*.f64 x (*.f64 x 4)))) 4)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(/.f64 (-.f64 (*.f64 (*.f64 x x) 8) (*.f64 2 (*.f64 x (*.f64 2 (+.f64 x y))))) 4)
(/.f64 (-.f64 (*.f64 4 (*.f64 x x)) (*.f64 (+.f64 y x) (*.f64 2 x))) 2)
(/.f64 (*.f64 x (-.f64 (*.f64 x 4) (*.f64 2 (+.f64 y x)))) 2)
(/.f64 (-.f64 (*.f64 x (*.f64 2 (+.f64 x y))) (*.f64 x (*.f64 y 4))) 2)
(/.f64 (-.f64 (*.f64 (+.f64 y x) (*.f64 2 x)) (*.f64 x (*.f64 y 4))) 2)
(/.f64 (*.f64 x (-.f64 (*.f64 2 (+.f64 y x)) (*.f64 y 4))) 2)
(/.f64 (-.f64 (*.f64 2 (*.f64 x (*.f64 2 (+.f64 x y)))) (*.f64 (*.f64 x y) 8)) 4)
(/.f64 (-.f64 (*.f64 (+.f64 y x) (*.f64 2 x)) (*.f64 x (*.f64 y 4))) 2)
(/.f64 (*.f64 x (-.f64 (*.f64 2 (+.f64 y x)) (*.f64 y 4))) 2)
(pow.f64 (*.f64 x (-.f64 x y)) 1)
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))
(neg.f64 (*.f64 x (-.f64 y x)))
(+.f64 (*.f64 x x) (*.f64 x (neg.f64 y)))
(*.f64 x (+.f64 x (neg.f64 y)))
(*.f64 x (-.f64 x y))

eval1.3s (7.4%)

Compiler

Compiled 7966 to 4023 computations (49.5% saved)

prune1.4s (8%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New5163519
Fresh000
Picked011
Done101
Total5174521
Error
0b
Counts
521 → 4
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(*.f64 (-.f64 x y) (+.f64 x x))
0.0b
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
0.0b
(*.f64 2 (-.f64 (*.f64 x x) (*.f64 x y)))
23.5b
(*.f64 -2 (*.f64 y x))
Compiler

Compiled 38 to 24 computations (36.8% saved)

localize17.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 13 to 6 computations (53.8% saved)

series5.0ms (0%)

Counts
1 → 0
Calls

6 calls:

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

rewrite392.0ms (2.2%)

Algorithm
batch-egg-rewrite
Rules
1402×rational_best-simplify-83
906×rational_best-4
906×rational_best-2
906×rational_best-3
906×rational_best-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
14813
29513
323313
472013
5297313
Stop Event
node limit
Counts
1 → 61
Calls
Call 1
Inputs
(*.f64 -2 (*.f64 y x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -2 (*.f64 y x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 -2 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (neg.f64 y)) (*.f64 x (neg.f64 y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 y (*.f64 x 3)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 y (*.f64 x 3)) -2) (/.f64 (*.f64 y x) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (+.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y (/.f64 x 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 -3/2 (*.f64 x (neg.f64 y))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 y (*.f64 x 3)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (*.f64 y x)) (-.f64 1 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (*.f64 y x)) (-.f64 -1 (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -2 (*.f64 y x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 y (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (neg.f64 y)) (*.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (neg.f64 y)) (-.f64 (neg.f64 (/.f64 (*.f64 y x) -2)) (/.f64 (*.f64 y x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 y x) -2) (*.f64 -3/2 (*.f64 x (neg.f64 y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 y x) -2) (+.f64 (neg.f64 (/.f64 (*.f64 y x) -2)) (*.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 y (*.f64 x 3)) -2) (*.f64 y (*.f64 x 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 y (*.f64 x 3)) -2) (neg.f64 (/.f64 (*.f64 y x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (+.f64 (*.f64 y x) (*.f64 y (/.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 y x) -2) (+.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y (/.f64 x 4)))) (-.f64 (*.f64 y (/.f64 x 4)) (/.f64 (*.f64 y x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 -3/2 (*.f64 x (neg.f64 y))) 2)) (-.f64 (*.f64 y (/.f64 x 4)) (/.f64 (*.f64 y x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 y (*.f64 x 3)) 4)) (-.f64 (*.f64 y (/.f64 x 4)) (/.f64 (*.f64 y x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (/.f64 (*.f64 y x) -2) (*.f64 -3 (*.f64 y (/.f64 x 4)))) (-.f64 (*.f64 y (/.f64 x 4)) (/.f64 (*.f64 y x) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y x) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -2 (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (+.f64 x x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 x -4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 y -8)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 x 1/2)) -1/4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (neg.f64 y)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 y (*.f64 x 4)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (+.f64 x x)) -8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 y x) -2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y (+.f64 x x)) 8) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y x) 8) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (*.f64 y (+.f64 x x)) -8) (*.f64 (*.f64 y (+.f64 x x)) -8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x 4) (*.f64 y -8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -2 y) (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 y y) (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4)))) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x x) (*.f64 (*.f64 y 4) 4)) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -2 y) (neg.f64 (*.f64 2 (*.f64 x 4)))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 y -8) (*.f64 y -8)) (*.f64 2 (*.f64 x 4))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 2 (*.f64 x 4)) (+.f64 (*.f64 y -8) (*.f64 y -8))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x x) (+.f64 (*.f64 y -8) (*.f64 y -8))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y -8) (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -4) (*.f64 (+.f64 y y) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 y 4) (*.f64 -2 (*.f64 x 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -2 x) (*.f64 (*.f64 y 4) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 y y) 4) (*.f64 x -4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4))) (*.f64 y -8)) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -2 (*.f64 x 4)) (*.f64 y 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4))) (*.f64 -2 y)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 y -8) (*.f64 y -8)) (+.f64 x x)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4))) (neg.f64 (*.f64 (+.f64 y y) 4))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 y 4) 4) (neg.f64 (*.f64 2 (*.f64 x 4)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (*.f64 (+.f64 y y) 4)) (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (*.f64 2 (*.f64 x 4))) (*.f64 (*.f64 y 4) 4)) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 y 4) 4) (*.f64 -2 x)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 y -8) (*.f64 y -8)) (*.f64 x 1/2)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -2 (*.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 y (+.f64 x x)))))))

simplify414.0ms (2.3%)

Algorithm
egg-herbie
Rules
1260×rational_best-simplify-1
988×rational_best-simplify-48
900×rational_best-simplify-52
756×rational_best-simplify-50
744×rational_best-simplify-55
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01601313
13951289
210471111
330821085
Stop Event
node limit
Counts
61 → 76
Calls
Call 1
Inputs
(+.f64 (*.f64 -2 (*.f64 y x)) 0)
(+.f64 0 (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 x (neg.f64 y)))
(+.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 y (*.f64 x 3)) -2))
(+.f64 (/.f64 (*.f64 y (*.f64 x 3)) -2) (/.f64 (*.f64 y x) -2))
(+.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (+.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y (/.f64 x 4)))))
(+.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 -3/2 (*.f64 x (neg.f64 y))) 2)))
(+.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 y (*.f64 x 3)) 4)))
(+.f64 (-.f64 -1 (*.f64 y x)) (-.f64 1 (*.f64 y x)))
(+.f64 (-.f64 1 (*.f64 y x)) (-.f64 -1 (*.f64 y x)))
(-.f64 (*.f64 -2 (*.f64 y x)) 0)
(-.f64 0 (*.f64 y (+.f64 x x)))
(-.f64 (*.f64 x (neg.f64 y)) (*.f64 y x))
(-.f64 (*.f64 x (neg.f64 y)) (-.f64 (neg.f64 (/.f64 (*.f64 y x) -2)) (/.f64 (*.f64 y x) -2)))
(-.f64 (/.f64 (*.f64 y x) -2) (*.f64 -3/2 (*.f64 x (neg.f64 y))))
(-.f64 (/.f64 (*.f64 y x) -2) (+.f64 (neg.f64 (/.f64 (*.f64 y x) -2)) (*.f64 y x)))
(-.f64 (/.f64 (*.f64 y (*.f64 x 3)) -2) (*.f64 y (*.f64 x 1/2)))
(-.f64 (/.f64 (*.f64 y (*.f64 x 3)) -2) (neg.f64 (/.f64 (*.f64 y x) -2)))
(-.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (+.f64 (*.f64 y x) (*.f64 y (/.f64 x 4))))
(-.f64 (-.f64 (/.f64 (*.f64 y x) -2) (+.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y (/.f64 x 4)))) (-.f64 (*.f64 y (/.f64 x 4)) (/.f64 (*.f64 y x) -2)))
(-.f64 (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 -3/2 (*.f64 x (neg.f64 y))) 2)) (-.f64 (*.f64 y (/.f64 x 4)) (/.f64 (*.f64 y x) -2)))
(-.f64 (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 y (*.f64 x 3)) 4)) (-.f64 (*.f64 y (/.f64 x 4)) (/.f64 (*.f64 y x) -2)))
(-.f64 (+.f64 (/.f64 (*.f64 y x) -2) (*.f64 -3 (*.f64 y (/.f64 x 4)))) (-.f64 (*.f64 y (/.f64 x 4)) (/.f64 (*.f64 y x) -2)))
(/.f64 (*.f64 y x) -1/2)
(/.f64 (*.f64 -2 (*.f64 y x)) 1)
(/.f64 (*.f64 y (+.f64 x x)) -1)
(/.f64 (*.f64 y (*.f64 x -4)) 2)
(/.f64 (*.f64 x (*.f64 y -8)) 4)
(/.f64 (*.f64 y (*.f64 x 1/2)) -1/4)
(/.f64 (*.f64 x (neg.f64 y)) 1/2)
(/.f64 (*.f64 y (*.f64 x 4)) -2)
(/.f64 (*.f64 (*.f64 y (+.f64 x x)) -8) 8)
(/.f64 (/.f64 (*.f64 y x) -2) 1/4)
(/.f64 (*.f64 (*.f64 y (+.f64 x x)) 8) -8)
(/.f64 (*.f64 (*.f64 y x) 8) -4)
(/.f64 (+.f64 (*.f64 (*.f64 y (+.f64 x x)) -8) (*.f64 (*.f64 y (+.f64 x x)) -8)) 16)
(/.f64 (*.f64 (*.f64 x 4) (*.f64 y -8)) 16)
(/.f64 (*.f64 (*.f64 -2 y) (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4)))) 16)
(/.f64 (*.f64 (+.f64 y y) (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4)))) -16)
(/.f64 (*.f64 (+.f64 x x) (*.f64 (*.f64 y 4) 4)) -16)
(/.f64 (*.f64 (*.f64 -2 y) (neg.f64 (*.f64 2 (*.f64 x 4)))) -8)
(/.f64 (*.f64 (+.f64 (*.f64 y -8) (*.f64 y -8)) (*.f64 2 (*.f64 x 4))) 64)
(/.f64 (*.f64 (*.f64 2 (*.f64 x 4)) (+.f64 (*.f64 y -8) (*.f64 y -8))) 64)
(/.f64 (*.f64 (+.f64 x x) (+.f64 (*.f64 y -8) (*.f64 y -8))) 16)
(/.f64 (*.f64 (*.f64 y -8) (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4)))) 64)
(/.f64 (*.f64 (*.f64 x -4) (*.f64 (+.f64 y y) 4)) 16)
(/.f64 (*.f64 (*.f64 y 4) (*.f64 -2 (*.f64 x 4))) 16)
(/.f64 (*.f64 (*.f64 -2 x) (*.f64 (*.f64 y 4) 4)) 16)
(/.f64 (*.f64 (*.f64 (+.f64 y y) 4) (*.f64 x -4)) 16)
(/.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4))) (*.f64 y -8)) 64)
(/.f64 (*.f64 (*.f64 -2 (*.f64 x 4)) (*.f64 y 4)) 16)
(/.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4))) (*.f64 -2 y)) 16)
(/.f64 (*.f64 (+.f64 (*.f64 y -8) (*.f64 y -8)) (+.f64 x x)) 16)
(/.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4))) (neg.f64 (*.f64 (+.f64 y y) 4))) 64)
(/.f64 (*.f64 (*.f64 (*.f64 y 4) 4) (neg.f64 (*.f64 2 (*.f64 x 4)))) 64)
(/.f64 (*.f64 (neg.f64 (*.f64 (+.f64 y y) 4)) (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4)))) 64)
(/.f64 (*.f64 (neg.f64 (*.f64 2 (*.f64 x 4))) (*.f64 (*.f64 y 4) 4)) 64)
(/.f64 (*.f64 (*.f64 (*.f64 y 4) 4) (*.f64 -2 x)) 16)
(/.f64 (*.f64 (+.f64 (*.f64 y -8) (*.f64 y -8)) (*.f64 x 1/2)) 4)
(pow.f64 (*.f64 -2 (*.f64 y x)) 1)
(neg.f64 (*.f64 y (+.f64 x x)))
Outputs
(+.f64 (*.f64 -2 (*.f64 y x)) 0)
(*.f64 -2 (*.f64 y x))
(+.f64 0 (*.f64 -2 (*.f64 y x)))
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 x (neg.f64 y)) (*.f64 x (neg.f64 y)))
(*.f64 -2 (*.f64 y x))
(+.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 y (*.f64 x 3)) -2))
(*.f64 -2 (*.f64 y x))
(+.f64 (/.f64 (*.f64 y (*.f64 x 3)) -2) (/.f64 (*.f64 y x) -2))
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (+.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y (/.f64 x 4)))))
(+.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (+.f64 (*.f64 y (/.f64 x 4)) (*.f64 y (*.f64 x 1/2)))))
(+.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (*.f64 y (+.f64 (/.f64 x 4) (*.f64 x 1/2)))))
(-.f64 (*.f64 (/.f64 x 4) (-.f64 (*.f64 y -3) y)) (*.f64 y x))
(-.f64 (*.f64 y (*.f64 x -3/4)) (*.f64 x (+.f64 y (/.f64 y 4))))
(+.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 -3/2 (*.f64 x (neg.f64 y))) 2)))
(+.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 (neg.f64 y) (*.f64 x -3/2)) 2)))
(+.f64 (*.f64 y (*.f64 -3 (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 (*.f64 y x) 3/2) 2)))
(+.f64 (*.f64 y (*.f64 x -3/4)) (-.f64 (*.f64 (*.f64 y x) -1/2) (/.f64 (*.f64 x (*.f64 y 3)) 4)))
(+.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 y (*.f64 x 3)) 4)))
(+.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 (neg.f64 y) (*.f64 x -3/2)) 2)))
(+.f64 (*.f64 y (*.f64 -3 (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 (*.f64 y x) 3/2) 2)))
(+.f64 (*.f64 y (*.f64 x -3/4)) (-.f64 (*.f64 (*.f64 y x) -1/2) (/.f64 (*.f64 x (*.f64 y 3)) 4)))
(+.f64 (-.f64 -1 (*.f64 y x)) (-.f64 1 (*.f64 y x)))
(+.f64 (-.f64 1 (*.f64 y x)) (-.f64 -1 (*.f64 y x)))
(+.f64 (-.f64 -1 (*.f64 y x)) (-.f64 1 (*.f64 y x)))
(-.f64 (*.f64 -2 (*.f64 y x)) 0)
(*.f64 -2 (*.f64 y x))
(-.f64 0 (*.f64 y (+.f64 x x)))
(*.f64 -2 (*.f64 y x))
(-.f64 (*.f64 x (neg.f64 y)) (*.f64 y x))
(*.f64 -2 (*.f64 y x))
(-.f64 (*.f64 x (neg.f64 y)) (-.f64 (neg.f64 (/.f64 (*.f64 y x) -2)) (/.f64 (*.f64 y x) -2)))
(*.f64 -2 (*.f64 y x))
(-.f64 (/.f64 (*.f64 y x) -2) (*.f64 -3/2 (*.f64 x (neg.f64 y))))
(*.f64 -2 (*.f64 y x))
(-.f64 (/.f64 (*.f64 y x) -2) (+.f64 (neg.f64 (/.f64 (*.f64 y x) -2)) (*.f64 y x)))
(*.f64 -2 (*.f64 y x))
(-.f64 (/.f64 (*.f64 y (*.f64 x 3)) -2) (*.f64 y (*.f64 x 1/2)))
(*.f64 -2 (*.f64 y x))
(-.f64 (/.f64 (*.f64 y (*.f64 x 3)) -2) (neg.f64 (/.f64 (*.f64 y x) -2)))
(*.f64 -2 (*.f64 y x))
(-.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (+.f64 (*.f64 y x) (*.f64 y (/.f64 x 4))))
(+.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (+.f64 (*.f64 y (/.f64 x 4)) (*.f64 y (*.f64 x 1/2)))))
(+.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (*.f64 y (+.f64 (/.f64 x 4) (*.f64 x 1/2)))))
(-.f64 (*.f64 (/.f64 x 4) (-.f64 (*.f64 y -3) y)) (*.f64 y x))
(-.f64 (*.f64 y (*.f64 x -3/4)) (*.f64 x (+.f64 y (/.f64 y 4))))
(-.f64 (-.f64 (/.f64 (*.f64 y x) -2) (+.f64 (*.f64 y (*.f64 x 1/2)) (*.f64 y (/.f64 x 4)))) (-.f64 (*.f64 y (/.f64 x 4)) (/.f64 (*.f64 y x) -2)))
(-.f64 (/.f64 (*.f64 y x) -2) (-.f64 (*.f64 y (/.f64 x 4)) (-.f64 (/.f64 (*.f64 y x) -2) (+.f64 (*.f64 y (/.f64 x 4)) (*.f64 y (*.f64 x 1/2))))))
(-.f64 (/.f64 (*.f64 y x) -2) (-.f64 (*.f64 y (/.f64 x 4)) (-.f64 (/.f64 (*.f64 y x) -2) (*.f64 y (+.f64 (/.f64 x 4) (*.f64 x 1/2))))))
(-.f64 (/.f64 (*.f64 y x) -2) (+.f64 (*.f64 y (/.f64 x 4)) (*.f64 y (+.f64 x (/.f64 x 4)))))
(-.f64 (*.f64 (*.f64 y x) -1/2) (+.f64 (*.f64 y x) (*.f64 -2 (neg.f64 (*.f64 y (/.f64 x 4))))))
(-.f64 (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 -3/2 (*.f64 x (neg.f64 y))) 2)) (-.f64 (*.f64 y (/.f64 x 4)) (/.f64 (*.f64 y x) -2)))
(-.f64 (/.f64 (*.f64 y x) -2) (-.f64 (*.f64 y (/.f64 x 4)) (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 (neg.f64 y) (*.f64 x -3/2)) 2))))
(-.f64 (-.f64 0 (*.f64 y (+.f64 x (/.f64 x 4)))) (/.f64 (*.f64 (*.f64 y x) 3/2) 2))
(-.f64 (/.f64 (*.f64 x (*.f64 y 3)) -4) (*.f64 x (+.f64 y (/.f64 y 4))))
(-.f64 (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 y (*.f64 x 3)) 4)) (-.f64 (*.f64 y (/.f64 x 4)) (/.f64 (*.f64 y x) -2)))
(-.f64 (/.f64 (*.f64 y x) -2) (-.f64 (*.f64 y (/.f64 x 4)) (-.f64 (/.f64 (*.f64 y x) -2) (/.f64 (*.f64 (neg.f64 y) (*.f64 x -3/2)) 2))))
(-.f64 (-.f64 0 (*.f64 y (+.f64 x (/.f64 x 4)))) (/.f64 (*.f64 (*.f64 y x) 3/2) 2))
(-.f64 (/.f64 (*.f64 x (*.f64 y 3)) -4) (*.f64 x (+.f64 y (/.f64 y 4))))
(-.f64 (+.f64 (/.f64 (*.f64 y x) -2) (*.f64 -3 (*.f64 y (/.f64 x 4)))) (-.f64 (*.f64 y (/.f64 x 4)) (/.f64 (*.f64 y x) -2)))
(+.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (+.f64 (*.f64 y (/.f64 x 4)) (*.f64 y (*.f64 x 1/2)))))
(+.f64 (*.f64 -3 (*.f64 y (/.f64 x 4))) (-.f64 (/.f64 (*.f64 y x) -2) (*.f64 y (+.f64 (/.f64 x 4) (*.f64 x 1/2)))))
(-.f64 (*.f64 (/.f64 x 4) (-.f64 (*.f64 y -3) y)) (*.f64 y x))
(-.f64 (*.f64 y (*.f64 x -3/4)) (*.f64 x (+.f64 y (/.f64 y 4))))
(/.f64 (*.f64 y x) -1/2)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 -2 (*.f64 y x)) 1)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 y (+.f64 x x)) -1)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 y (*.f64 x -4)) 2)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 x (*.f64 y -8)) 4)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 y (*.f64 x 1/2)) -1/4)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 x (neg.f64 y)) 1/2)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 y (*.f64 x 4)) -2)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (*.f64 y (+.f64 x x)) -8) 8)
(*.f64 -2 (*.f64 y x))
(/.f64 (/.f64 (*.f64 y x) -2) 1/4)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (*.f64 y (+.f64 x x)) 8) -8)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (*.f64 y x) 8) -4)
(*.f64 -2 (*.f64 y x))
(/.f64 (+.f64 (*.f64 (*.f64 y (+.f64 x x)) -8) (*.f64 (*.f64 y (+.f64 x x)) -8)) 16)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (*.f64 x 4) (*.f64 y -8)) 16)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (*.f64 -2 y) (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4)))) 16)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (+.f64 y y) (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4)))) -16)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (+.f64 x x) (*.f64 (*.f64 y 4) 4)) -16)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (*.f64 -2 y) (neg.f64 (*.f64 2 (*.f64 x 4)))) -8)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (+.f64 (*.f64 y -8) (*.f64 y -8)) (*.f64 2 (*.f64 x 4))) 64)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (*.f64 2 (*.f64 x 4)) (+.f64 (*.f64 y -8) (*.f64 y -8))) 64)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (+.f64 x x) (+.f64 (*.f64 y -8) (*.f64 y -8))) 16)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (*.f64 y -8) (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4)))) 64)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (*.f64 x -4) (*.f64 (+.f64 y y) 4)) 16)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (*.f64 y 4) (*.f64 -2 (*.f64 x 4))) 16)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (*.f64 -2 x) (*.f64 (*.f64 y 4) 4)) 16)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (*.f64 (+.f64 y y) 4) (*.f64 x -4)) 16)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4))) (*.f64 y -8)) 64)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (*.f64 -2 (*.f64 x 4)) (*.f64 y 4)) 16)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4))) (*.f64 -2 y)) 16)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (+.f64 (*.f64 y -8) (*.f64 y -8)) (+.f64 x x)) 16)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4))) (neg.f64 (*.f64 (+.f64 y y) 4))) 64)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (*.f64 (*.f64 y 4) 4) (neg.f64 (*.f64 2 (*.f64 x 4)))) 64)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (neg.f64 (*.f64 (+.f64 y y) 4)) (+.f64 (*.f64 2 (*.f64 x 4)) (*.f64 2 (*.f64 x 4)))) 64)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (neg.f64 (*.f64 2 (*.f64 x 4))) (*.f64 (*.f64 y 4) 4)) 64)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (*.f64 (*.f64 y 4) 4) (*.f64 -2 x)) 16)
(*.f64 -2 (*.f64 y x))
(/.f64 (*.f64 (+.f64 (*.f64 y -8) (*.f64 y -8)) (*.f64 x 1/2)) 4)
(*.f64 -2 (*.f64 y x))
(pow.f64 (*.f64 -2 (*.f64 y x)) 1)
(*.f64 -2 (*.f64 y x))
(neg.f64 (*.f64 y (+.f64 x x)))
(*.f64 -2 (*.f64 y x))

localize47.0ms (0.3%)

Local error

Found 2 expressions with local error:

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

Compiled 29 to 17 computations (41.4% saved)

series4.0ms (0%)

Counts
2 → 48
Calls

12 calls:

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

rewrite278.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
1208×rational_best-simplify-51
984×rational_best-simplify-57
932×rational_best-simplify-56
794×rational_best-simplify-67
676×rational_best-simplify-64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0944
16544
213844
336544
4156832
Stop Event
node limit
Counts
2 → 110
Calls
Call 1
Inputs
(+.f64 x (+.f64 x (*.f64 -2 y)))
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 x (+.f64 (-.f64 y x) y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 x (-.f64 (*.f64 -2 y) (+.f64 x (*.f64 -4 y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -2 y) (*.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -2 y) (+.f64 (+.f64 (+.f64 y y) (-.f64 (*.f64 -2 y) x)) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (*.f64 -2 y)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -2 (-.f64 y x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -2 (-.f64 y x)) (-.f64 x x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 -2 (-.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x x) (+.f64 y y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x x) (+.f64 x (+.f64 (-.f64 y x) y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x x) (+.f64 (+.f64 x (+.f64 y y)) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x x) (+.f64 (-.f64 x x) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -4 y) (-.f64 (*.f64 -2 y) (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -4 y) (*.f64 -2 (+.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (+.f64 x (*.f64 -4 y))) (-.f64 (*.f64 -2 y) (-.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (*.f64 -4 y)) (-.f64 (*.f64 -2 y) x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x 1/2) (+.f64 (+.f64 (-.f64 y x) y) (/.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x 1/2) (-.f64 (/.f64 x -2) (+.f64 x (*.f64 -2 y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x 1/2) (-.f64 (neg.f64 x) (+.f64 (*.f64 -2 y) (*.f64 x 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x 1/2) (-.f64 (-.f64 (*.f64 -2 y) x) (+.f64 (*.f64 -4 y) (*.f64 x 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x 1/2) (+.f64 (+.f64 (+.f64 y y) (/.f64 x -2)) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x 1/2) (+.f64 (-.f64 (/.f64 x -2) x) (+.f64 y y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x 1/2) (-.f64 (+.f64 y y) (+.f64 x (*.f64 x 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x 1/2) (/.f64 (-.f64 (neg.f64 x) (+.f64 x (+.f64 x (*.f64 -4 y)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 x y) (-.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 y) (+.f64 (*.f64 x -2) y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 y) (+.f64 y (*.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (neg.f64 y) (/.f64 (-.f64 (+.f64 y y) (*.f64 x 4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x 1/2) y) (+.f64 (-.f64 y x) (/.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 x 1/2) y) (+.f64 (+.f64 (/.f64 x -2) y) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 -2 y) x) (*.f64 x -3))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (-.f64 (*.f64 x 1/2) y)) (+.f64 (/.f64 x -2) y))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 x (-.f64 y x)) y)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (+.f64 x (*.f64 x 1/2)) (*.f64 -2 y)) (/.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (*.f64 x 1/2)) (+.f64 (+.f64 y y) (/.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (*.f64 x 1/2)) (-.f64 (/.f64 x -2) (*.f64 -2 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 -2 y) (*.f64 x 1/2)) (-.f64 (/.f64 x -2) x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 x y) 2) (/.f64 (*.f64 -3 (-.f64 x y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (+.f64 y y)) (-.f64 (neg.f64 x) (*.f64 -4 y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x (+.f64 y y)) (-.f64 (*.f64 y 4) x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 -4 y) (*.f64 x 1/2)) (+.f64 (-.f64 (*.f64 -2 y) x) (/.f64 x -2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 (*.f64 -2 y) (-.f64 x x)) (*.f64 x -2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 x x) (*.f64 -2 (-.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 x (-.f64 y x)) 2) (/.f64 (+.f64 (*.f64 -2 (-.f64 x y)) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (+.f64 (*.f64 -2 (-.f64 y x)) (-.f64 x y)) 2) (/.f64 (-.f64 y x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (*.f64 -2 (-.f64 y x)) 3) 4) (/.f64 (*.f64 -2 (-.f64 x y)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (+.f64 (*.f64 -2 (-.f64 y x)) (neg.f64 y)) 2) (/.f64 (+.f64 (*.f64 x -2) y) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (+.f64 (+.f64 x x) (-.f64 x y)) 2) (/.f64 (+.f64 (*.f64 y 3) (neg.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (-.f64 x (*.f64 y 3)) 2) (/.f64 (-.f64 y (*.f64 x 3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (-.f64 y x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (-.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 -2 (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (*.f64 -2 (-.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (-.f64 x y))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -4 (-.f64 y x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (-.f64 x y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 -4 (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 x y) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 -2 (-.f64 y x)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (*.f64 -4 (-.f64 y x))) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (*.f64 -2 (-.f64 y x)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 -4 (-.f64 y x)) 4) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -2 (-.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -4 (-.f64 y x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -2 (-.f64 x y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -2 (-.f64 y x)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 -4 (-.f64 y x))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -4 (-.f64 y x)) 4) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (neg.f64 (*.f64 -4 (-.f64 y x))) -1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (+.f64 (*.f64 x 4) (*.f64 y -8)))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 y -8) (*.f64 (+.f64 x x) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 x 4) (*.f64 y -8))) (*.f64 (+.f64 x x) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (+.f64 x x) 4) (*.f64 y -8)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x 4) (neg.f64 (+.f64 (*.f64 x 4) (*.f64 y -8)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 x 4) (*.f64 y -8)) (*.f64 x -4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x 4) (*.f64 y 4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 x x) 4) (neg.f64 (*.f64 y -8))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -2 (-.f64 y x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 -2 (-.f64 x y)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 x x) (-.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 2) (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 4) (/.f64 (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 4) (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 2) (*.f64 (neg.f64 x) (-.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 2) (/.f64 (neg.f64 (*.f64 (-.f64 y x) (*.f64 x -4))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 2) 2) (/.f64 (*.f64 (neg.f64 x) (-.f64 x y)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 4) (/.f64 (*.f64 x (*.f64 -2 (-.f64 x y))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y x) (*.f64 x -4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 -2 (-.f64 x y))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (*.f64 (*.f64 x (-.f64 x y)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (*.f64 -4 (-.f64 y x))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (*.f64 -2 (-.f64 y x))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x x) (*.f64 -2 (-.f64 x y))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (-.f64 x y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (*.f64 -4 (-.f64 y x))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (*.f64 (*.f64 -2 (-.f64 y x)) 4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 x) (*.f64 (*.f64 -4 (-.f64 y x)) 4)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -2 (-.f64 x y)) (+.f64 x x)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -2 (-.f64 x y)) (*.f64 x 4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -2 (-.f64 x y)) (*.f64 (+.f64 x x) 4)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 x -2) (*.f64 (*.f64 -2 (-.f64 y x)) 4)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -2 (-.f64 y x)) (*.f64 x -2)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 -2 (-.f64 y x)) (*.f64 x -4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (neg.f64 (*.f64 -4 (-.f64 y x)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 1)))))

simplify781.0ms (4.4%)

Algorithm
egg-herbie
Rules
970×rational_best-simplify-50
648×rational_best-simplify-57
648×rational_best-simplify-52
604×rational_best-simplify-48
580×rational_best-simplify-108
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02773558
17453548
220852964
378902964
Stop Event
node limit
Counts
158 → 144
Calls
Call 1
Inputs
(*.f64 -2 y)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 2 x)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 2 x)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 2 x)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 y)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 y)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(-.f64 x (+.f64 (-.f64 y x) y))
(-.f64 x (-.f64 (*.f64 -2 y) (+.f64 x (*.f64 -4 y))))
(-.f64 (*.f64 -2 y) (*.f64 x -2))
(-.f64 (*.f64 -2 y) (+.f64 (+.f64 (+.f64 y y) (-.f64 (*.f64 -2 y) x)) (neg.f64 x)))
(-.f64 (+.f64 x (*.f64 -2 y)) (neg.f64 x))
(-.f64 (*.f64 -2 (-.f64 y x)) 0)
(-.f64 (*.f64 -2 (-.f64 y x)) (-.f64 x x))
(-.f64 0 (*.f64 -2 (-.f64 x y)))
(-.f64 (+.f64 x x) (+.f64 y y))
(-.f64 (+.f64 x x) (+.f64 x (+.f64 (-.f64 y x) y)))
(-.f64 (+.f64 x x) (+.f64 (+.f64 x (+.f64 y y)) (neg.f64 x)))
(-.f64 (+.f64 x x) (+.f64 (-.f64 x x) (+.f64 y y)))
(-.f64 (*.f64 -4 y) (-.f64 (*.f64 -2 y) (+.f64 x x)))
(-.f64 (*.f64 -4 y) (*.f64 -2 (+.f64 x y)))
(-.f64 (+.f64 x (+.f64 x (*.f64 -4 y))) (-.f64 (*.f64 -2 y) (-.f64 x x)))
(-.f64 (+.f64 x (*.f64 -4 y)) (-.f64 (*.f64 -2 y) x))
(-.f64 (*.f64 x 1/2) (+.f64 (+.f64 (-.f64 y x) y) (/.f64 x -2)))
(-.f64 (*.f64 x 1/2) (-.f64 (/.f64 x -2) (+.f64 x (*.f64 -2 y))))
(-.f64 (*.f64 x 1/2) (-.f64 (neg.f64 x) (+.f64 (*.f64 -2 y) (*.f64 x 1/2))))
(-.f64 (*.f64 x 1/2) (-.f64 (-.f64 (*.f64 -2 y) x) (+.f64 (*.f64 -4 y) (*.f64 x 1/2))))
(-.f64 (*.f64 x 1/2) (+.f64 (+.f64 (+.f64 y y) (/.f64 x -2)) (neg.f64 x)))
(-.f64 (*.f64 x 1/2) (+.f64 (-.f64 (/.f64 x -2) x) (+.f64 y y)))
(-.f64 (*.f64 x 1/2) (-.f64 (+.f64 y y) (+.f64 x (*.f64 x 1/2))))
(-.f64 (*.f64 x 1/2) (/.f64 (-.f64 (neg.f64 x) (+.f64 x (+.f64 x (*.f64 -4 y)))) 2))
(-.f64 (-.f64 x y) (-.f64 y x))
(-.f64 (neg.f64 y) (+.f64 (*.f64 x -2) y))
(-.f64 (neg.f64 y) (+.f64 y (*.f64 x -2)))
(-.f64 (neg.f64 y) (/.f64 (-.f64 (+.f64 y y) (*.f64 x 4)) 2))
(-.f64 (-.f64 (*.f64 x 1/2) y) (+.f64 (-.f64 y x) (/.f64 x -2)))
(-.f64 (-.f64 (*.f64 x 1/2) y) (+.f64 (+.f64 (/.f64 x -2) y) (neg.f64 x)))
(-.f64 (-.f64 (*.f64 -2 y) x) (*.f64 x -3))
(-.f64 (+.f64 x (-.f64 (*.f64 x 1/2) y)) (+.f64 (/.f64 x -2) y))
(-.f64 (-.f64 x (-.f64 y x)) y)
(-.f64 (+.f64 (+.f64 x (*.f64 x 1/2)) (*.f64 -2 y)) (/.f64 x -2))
(-.f64 (+.f64 x (*.f64 x 1/2)) (+.f64 (+.f64 y y) (/.f64 x -2)))
(-.f64 (+.f64 x (*.f64 x 1/2)) (-.f64 (/.f64 x -2) (*.f64 -2 y)))
(-.f64 (+.f64 (*.f64 -2 y) (*.f64 x 1/2)) (-.f64 (/.f64 x -2) x))
(-.f64 (/.f64 (-.f64 x y) 2) (/.f64 (*.f64 -3 (-.f64 x y)) 2))
(-.f64 (+.f64 x (+.f64 y y)) (-.f64 (neg.f64 x) (*.f64 -4 y)))
(-.f64 (+.f64 x (+.f64 y y)) (-.f64 (*.f64 y 4) x))
(-.f64 (+.f64 (*.f64 -4 y) (*.f64 x 1/2)) (+.f64 (-.f64 (*.f64 -2 y) x) (/.f64 x -2)))
(-.f64 (-.f64 (*.f64 -2 y) (-.f64 x x)) (*.f64 x -2))
(-.f64 (-.f64 x x) (*.f64 -2 (-.f64 x y)))
(-.f64 (/.f64 (-.f64 x (-.f64 y x)) 2) (/.f64 (+.f64 (*.f64 -2 (-.f64 x y)) y) 2))
(-.f64 (/.f64 (+.f64 (*.f64 -2 (-.f64 y x)) (-.f64 x y)) 2) (/.f64 (-.f64 y x) 2))
(-.f64 (/.f64 (*.f64 (*.f64 -2 (-.f64 y x)) 3) 4) (/.f64 (*.f64 -2 (-.f64 x y)) 4))
(-.f64 (/.f64 (+.f64 (*.f64 -2 (-.f64 y x)) (neg.f64 y)) 2) (/.f64 (+.f64 (*.f64 x -2) y) 2))
(-.f64 (/.f64 (+.f64 (+.f64 x x) (-.f64 x y)) 2) (/.f64 (+.f64 (*.f64 y 3) (neg.f64 x)) 2))
(-.f64 (/.f64 (-.f64 x (*.f64 y 3)) 2) (/.f64 (-.f64 y (*.f64 x 3)) 2))
(*.f64 -2 (-.f64 y x))
(*.f64 (*.f64 -2 (-.f64 y x)) 1)
(*.f64 1 (*.f64 -2 (-.f64 y x)))
(*.f64 -1 (*.f64 -2 (-.f64 x y)))
(*.f64 2 (-.f64 x y))
(*.f64 (*.f64 -4 (-.f64 y x)) 1/2)
(*.f64 (*.f64 -2 (-.f64 x y)) -1)
(*.f64 1/2 (*.f64 -4 (-.f64 y x)))
(*.f64 (-.f64 x y) 2)
(*.f64 (*.f64 (*.f64 -2 (-.f64 y x)) 4) 1/4)
(*.f64 (neg.f64 (*.f64 -4 (-.f64 y x))) -1/2)
(*.f64 1/4 (*.f64 (*.f64 -2 (-.f64 y x)) 4))
(*.f64 (*.f64 (*.f64 -4 (-.f64 y x)) 4) 1/8)
(/.f64 (*.f64 -2 (-.f64 y x)) 1)
(/.f64 (*.f64 -4 (-.f64 y x)) 2)
(/.f64 (*.f64 -2 (-.f64 x y)) -1)
(/.f64 (*.f64 (*.f64 -2 (-.f64 y x)) 4) 4)
(/.f64 (neg.f64 (*.f64 -4 (-.f64 y x))) -2)
(/.f64 (*.f64 (*.f64 -4 (-.f64 y x)) 4) 8)
(/.f64 (/.f64 (neg.f64 (*.f64 -4 (-.f64 y x))) -1) 2)
(/.f64 (+.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (+.f64 (*.f64 x 4) (*.f64 y -8)))) 8)
(/.f64 (+.f64 (*.f64 y -8) (*.f64 (+.f64 x x) 4)) 4)
(/.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 x 4) (*.f64 y -8))) (*.f64 (+.f64 x x) 4)) 8)
(/.f64 (+.f64 (*.f64 (+.f64 x x) 4) (*.f64 y -8)) 4)
(/.f64 (-.f64 (*.f64 x 4) (neg.f64 (+.f64 (*.f64 x 4) (*.f64 y -8)))) 4)
(/.f64 (-.f64 (+.f64 (*.f64 x 4) (*.f64 y -8)) (*.f64 x -4)) 4)
(/.f64 (-.f64 (*.f64 x 4) (*.f64 y 4)) 2)
(/.f64 (-.f64 (*.f64 (+.f64 x x) 4) (neg.f64 (*.f64 y -8))) 4)
(pow.f64 (*.f64 -2 (-.f64 y x)) 1)
(neg.f64 (*.f64 -2 (-.f64 x y)))
(+.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 0)
(+.f64 0 (*.f64 (+.f64 x x) (-.f64 x y)))
(+.f64 (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 2) (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 2))
(+.f64 (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 4) (/.f64 (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 2) 2))
(+.f64 (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 4) (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 4))
(-.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 0)
(-.f64 (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 2) (*.f64 (neg.f64 x) (-.f64 x y)))
(-.f64 (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 2) (/.f64 (neg.f64 (*.f64 (-.f64 y x) (*.f64 x -4))) 4))
(-.f64 (/.f64 (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 2) 2) (/.f64 (*.f64 (neg.f64 x) (-.f64 x y)) 2))
(-.f64 (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 4) (/.f64 (*.f64 x (*.f64 -2 (-.f64 x y))) 4))
(/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 1)
(/.f64 (*.f64 (-.f64 y x) (*.f64 x -4)) 2)
(/.f64 (*.f64 x (*.f64 -2 (-.f64 x y))) -1)
(/.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 4)
(/.f64 (*.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 8) 8)
(/.f64 (*.f64 4 (*.f64 (*.f64 x (-.f64 x y)) 8)) 16)
(/.f64 (*.f64 (neg.f64 x) (*.f64 -4 (-.f64 y x))) -2)
(/.f64 (*.f64 (*.f64 x -2) (*.f64 -2 (-.f64 y x))) -2)
(/.f64 (*.f64 (+.f64 x x) (*.f64 -2 (-.f64 x y))) -2)
(/.f64 (*.f64 (*.f64 x -2) (-.f64 x y)) -1)
(/.f64 (*.f64 (*.f64 x -2) (*.f64 -4 (-.f64 y x))) -4)
(/.f64 (*.f64 (neg.f64 x) (*.f64 (*.f64 -2 (-.f64 y x)) 4)) -4)
(/.f64 (*.f64 (neg.f64 x) (*.f64 (*.f64 -4 (-.f64 y x)) 4)) -8)
(/.f64 (*.f64 (*.f64 -2 (-.f64 x y)) (+.f64 x x)) -2)
(/.f64 (*.f64 (*.f64 -2 (-.f64 x y)) (*.f64 x 4)) -4)
(/.f64 (*.f64 (*.f64 -2 (-.f64 x y)) (*.f64 (+.f64 x x) 4)) -8)
(/.f64 (*.f64 (*.f64 x -2) (*.f64 (*.f64 -2 (-.f64 y x)) 4)) -8)
(/.f64 (*.f64 (*.f64 -2 (-.f64 y x)) (*.f64 x -2)) -2)
(/.f64 (*.f64 (*.f64 -2 (-.f64 y x)) (*.f64 x -4)) -4)
(/.f64 (*.f64 x (neg.f64 (*.f64 -4 (-.f64 y x)))) -2)
(pow.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 1)
Outputs
(*.f64 -2 y)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(*.f64 2 x)
(+.f64 x x)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(*.f64 2 x)
(+.f64 x x)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(*.f64 2 x)
(+.f64 x x)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(*.f64 -2 y)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(*.f64 -2 y)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(*.f64 -2 (*.f64 y x))
(*.f64 y (*.f64 -2 x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(*.f64 -2 (*.f64 y x))
(*.f64 y (*.f64 -2 x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(*.f64 -2 (*.f64 y x))
(*.f64 y (*.f64 -2 x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 y (*.f64 -2 x)) (*.f64 2 (pow.f64 x 2)))
(-.f64 x (+.f64 (-.f64 y x) y))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 x (-.f64 (*.f64 -2 y) (+.f64 x (*.f64 -4 y))))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (*.f64 -2 y) (*.f64 x -2))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (*.f64 -2 y) (+.f64 (+.f64 (+.f64 y y) (-.f64 (*.f64 -2 y) x)) (neg.f64 x)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (+.f64 x (*.f64 -2 y)) (neg.f64 x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (*.f64 -2 (-.f64 y x)) 0)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (*.f64 -2 (-.f64 y x)) (-.f64 x x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 0 (*.f64 -2 (-.f64 x y)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (+.f64 x x) (+.f64 y y))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (+.f64 x x) (+.f64 x (+.f64 (-.f64 y x) y)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (+.f64 x x) (+.f64 (+.f64 x (+.f64 y y)) (neg.f64 x)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (+.f64 x x) (+.f64 (-.f64 x x) (+.f64 y y)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (*.f64 -4 y) (-.f64 (*.f64 -2 y) (+.f64 x x)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (*.f64 -4 y) (*.f64 -2 (+.f64 x y)))
(-.f64 (*.f64 y -4) (*.f64 -2 (+.f64 y x)))
(-.f64 (+.f64 x (+.f64 x (*.f64 -4 y))) (-.f64 (*.f64 -2 y) (-.f64 x x)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (+.f64 x (*.f64 -4 y)) (-.f64 (*.f64 -2 y) x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (*.f64 x 1/2) (+.f64 (+.f64 (-.f64 y x) y) (/.f64 x -2)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (*.f64 x 1/2) (-.f64 (/.f64 x -2) (+.f64 x (*.f64 -2 y))))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (*.f64 x 1/2) (-.f64 (neg.f64 x) (+.f64 (*.f64 -2 y) (*.f64 x 1/2))))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (*.f64 x 1/2) (-.f64 (-.f64 (*.f64 -2 y) x) (+.f64 (*.f64 -4 y) (*.f64 x 1/2))))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (*.f64 x 1/2) (+.f64 (+.f64 (+.f64 y y) (/.f64 x -2)) (neg.f64 x)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (*.f64 x 1/2) (+.f64 (-.f64 (/.f64 x -2) x) (+.f64 y y)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (*.f64 x 1/2) (-.f64 (+.f64 y y) (+.f64 x (*.f64 x 1/2))))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (*.f64 x 1/2) (/.f64 (-.f64 (neg.f64 x) (+.f64 x (+.f64 x (*.f64 -4 y)))) 2))
(-.f64 (*.f64 x 1/2) (/.f64 (-.f64 (neg.f64 x) (+.f64 x (+.f64 x (*.f64 y -4)))) 2))
(+.f64 (*.f64 x 3/2) (neg.f64 (/.f64 (+.f64 x (*.f64 y -4)) -2)))
(-.f64 (-.f64 x y) (-.f64 y x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (neg.f64 y) (+.f64 (*.f64 x -2) y))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (neg.f64 y) (+.f64 y (*.f64 x -2)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (neg.f64 y) (/.f64 (-.f64 (+.f64 y y) (*.f64 x 4)) 2))
(-.f64 (-.f64 (*.f64 x 1/2) y) (+.f64 (-.f64 y x) (/.f64 x -2)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (-.f64 (*.f64 x 1/2) y) (+.f64 (+.f64 (/.f64 x -2) y) (neg.f64 x)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (-.f64 (*.f64 -2 y) x) (*.f64 x -3))
(-.f64 (*.f64 -2 y) (+.f64 (*.f64 x -3) x))
(-.f64 (*.f64 -2 y) (+.f64 x (*.f64 x -3)))
(-.f64 (+.f64 x (-.f64 (*.f64 x 1/2) y)) (+.f64 (/.f64 x -2) y))
(-.f64 (+.f64 x (-.f64 (*.f64 x 1/2) y)) (+.f64 y (/.f64 x -2)))
(-.f64 (-.f64 x (-.f64 y x)) y)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (+.f64 (+.f64 x (*.f64 x 1/2)) (*.f64 -2 y)) (/.f64 x -2))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (+.f64 x (*.f64 x 1/2)) (+.f64 (+.f64 y y) (/.f64 x -2)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (+.f64 x (*.f64 x 1/2)) (-.f64 (/.f64 x -2) (*.f64 -2 y)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (+.f64 (*.f64 -2 y) (*.f64 x 1/2)) (-.f64 (/.f64 x -2) x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (/.f64 (-.f64 x y) 2) (/.f64 (*.f64 -3 (-.f64 x y)) 2))
(/.f64 (-.f64 (-.f64 x y) (*.f64 (-.f64 x y) -3)) 2)
(-.f64 (+.f64 x (+.f64 y y)) (-.f64 (neg.f64 x) (*.f64 -4 y)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (+.f64 x (+.f64 y y)) (-.f64 (*.f64 y 4) x))
(-.f64 x (-.f64 (*.f64 y 4) (+.f64 y (+.f64 y x))))
(+.f64 (-.f64 x (-.f64 (*.f64 y 4) (+.f64 y y))) x)
(+.f64 (-.f64 x (+.f64 (*.f64 y 4) (*.f64 -2 y))) x)
(-.f64 (+.f64 (*.f64 -4 y) (*.f64 x 1/2)) (+.f64 (-.f64 (*.f64 -2 y) x) (/.f64 x -2)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (-.f64 (*.f64 -2 y) (-.f64 x x)) (*.f64 x -2))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (-.f64 x x) (*.f64 -2 (-.f64 x y)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (/.f64 (-.f64 x (-.f64 y x)) 2) (/.f64 (+.f64 (*.f64 -2 (-.f64 x y)) y) 2))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (/.f64 (+.f64 (*.f64 -2 (-.f64 y x)) (-.f64 x y)) 2) (/.f64 (-.f64 y x) 2))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (/.f64 (*.f64 (*.f64 -2 (-.f64 y x)) 3) 4) (/.f64 (*.f64 -2 (-.f64 x y)) 4))
(/.f64 (-.f64 (*.f64 (*.f64 -2 (-.f64 y x)) 3) (*.f64 -2 (-.f64 x y))) 4)
(/.f64 (-.f64 (*.f64 (-.f64 y x) -6) (*.f64 -2 (-.f64 x y))) 4)
(-.f64 (/.f64 (*.f64 (-.f64 y x) -6) 4) (/.f64 (-.f64 y x) 2))
(-.f64 (/.f64 (+.f64 (*.f64 -2 (-.f64 y x)) (neg.f64 y)) 2) (/.f64 (+.f64 (*.f64 x -2) y) 2))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(-.f64 (/.f64 (+.f64 (+.f64 x x) (-.f64 x y)) 2) (/.f64 (+.f64 (*.f64 y 3) (neg.f64 x)) 2))
(/.f64 (-.f64 (+.f64 (-.f64 x y) (+.f64 x x)) (+.f64 (neg.f64 x) (*.f64 y 3))) 2)
(-.f64 x (/.f64 (+.f64 (-.f64 y x) (-.f64 (*.f64 y 3) x)) 2))
(-.f64 (/.f64 (-.f64 x (*.f64 y 3)) 2) (/.f64 (-.f64 y (*.f64 x 3)) 2))
(/.f64 (-.f64 (-.f64 x (*.f64 y 3)) (-.f64 y (*.f64 x 3))) 2)
(/.f64 (-.f64 x (+.f64 (-.f64 y (*.f64 x 3)) (*.f64 y 3))) 2)
(*.f64 -2 (-.f64 y x))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 (*.f64 -2 (-.f64 y x)) 1)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(*.f64 1 (*.f64 -2 (-.f64 y x)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(*.f64 -1 (*.f64 -2 (-.f64 x y)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(*.f64 2 (-.f64 x y))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(*.f64 (*.f64 -4 (-.f64 y x)) 1/2)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(*.f64 (*.f64 -2 (-.f64 x y)) -1)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(*.f64 1/2 (*.f64 -4 (-.f64 y x)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(*.f64 (-.f64 x y) 2)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(*.f64 (*.f64 (*.f64 -2 (-.f64 y x)) 4) 1/4)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(*.f64 (neg.f64 (*.f64 -4 (-.f64 y x))) -1/2)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(*.f64 1/4 (*.f64 (*.f64 -2 (-.f64 y x)) 4))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(*.f64 (*.f64 (*.f64 -4 (-.f64 y x)) 4) 1/8)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(/.f64 (*.f64 -2 (-.f64 y x)) 1)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(/.f64 (*.f64 -4 (-.f64 y x)) 2)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(/.f64 (*.f64 -2 (-.f64 x y)) -1)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(/.f64 (*.f64 (*.f64 -2 (-.f64 y x)) 4) 4)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(/.f64 (neg.f64 (*.f64 -4 (-.f64 y x))) -2)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(/.f64 (*.f64 (*.f64 -4 (-.f64 y x)) 4) 8)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(/.f64 (/.f64 (neg.f64 (*.f64 -4 (-.f64 y x))) -1) 2)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(/.f64 (+.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (+.f64 (*.f64 x 4) (*.f64 y -8)))) 8)
(-.f64 (/.f64 (*.f64 2 (+.f64 (*.f64 x 4) (*.f64 y -8))) 8) (neg.f64 x))
(/.f64 (+.f64 (*.f64 y -8) (*.f64 (+.f64 x x) 4)) 4)
(/.f64 (+.f64 (*.f64 (+.f64 x x) 4) (*.f64 y -8)) 4)
(/.f64 (*.f64 (-.f64 x y) 4) 2)
(/.f64 (+.f64 (*.f64 2 (+.f64 (*.f64 x 4) (*.f64 y -8))) (*.f64 (+.f64 x x) 4)) 8)
(/.f64 (+.f64 (*.f64 (+.f64 x x) 4) (*.f64 2 (+.f64 (*.f64 x 4) (*.f64 y -8)))) 8)
(-.f64 (/.f64 (*.f64 2 (+.f64 (*.f64 x 4) (*.f64 y -8))) 8) (neg.f64 x))
(/.f64 (+.f64 (*.f64 (+.f64 x x) 4) (*.f64 y -8)) 4)
(/.f64 (*.f64 (-.f64 x y) 4) 2)
(/.f64 (-.f64 (*.f64 x 4) (neg.f64 (+.f64 (*.f64 x 4) (*.f64 y -8)))) 4)
(/.f64 (+.f64 (*.f64 (+.f64 x x) 4) (*.f64 y -8)) 4)
(/.f64 (*.f64 (-.f64 x y) 4) 2)
(/.f64 (-.f64 (+.f64 (*.f64 x 4) (*.f64 y -8)) (*.f64 x -4)) 4)
(/.f64 (+.f64 (*.f64 (+.f64 x x) 4) (*.f64 y -8)) 4)
(/.f64 (*.f64 (-.f64 x y) 4) 2)
(/.f64 (-.f64 (*.f64 x 4) (*.f64 y 4)) 2)
(/.f64 (+.f64 (*.f64 (+.f64 x x) 4) (*.f64 y -8)) 4)
(/.f64 (*.f64 (-.f64 x y) 4) 2)
(/.f64 (-.f64 (*.f64 (+.f64 x x) 4) (neg.f64 (*.f64 y -8))) 4)
(/.f64 (+.f64 (*.f64 (+.f64 x x) 4) (*.f64 y -8)) 4)
(/.f64 (*.f64 (-.f64 x y) 4) 2)
(pow.f64 (*.f64 -2 (-.f64 y x)) 1)
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(neg.f64 (*.f64 -2 (-.f64 x y)))
(+.f64 (*.f64 -2 y) (*.f64 2 x))
(*.f64 -2 (-.f64 y x))
(+.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 0)
(*.f64 (-.f64 x y) (+.f64 x x))
(+.f64 0 (*.f64 (+.f64 x x) (-.f64 x y)))
(*.f64 (-.f64 x y) (+.f64 x x))
(+.f64 (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 2) (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 2))
(*.f64 (-.f64 x y) (+.f64 x x))
(+.f64 (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 4) (/.f64 (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 2) 2))
(/.f64 (+.f64 (*.f64 (-.f64 x y) (+.f64 x x)) (*.f64 (*.f64 x (-.f64 x y)) 6)) 4)
(/.f64 (+.f64 (*.f64 (-.f64 x y) (+.f64 x x)) (*.f64 (-.f64 x y) (*.f64 x 6))) 4)
(+.f64 (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 4) (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 4))
(/.f64 (+.f64 (*.f64 (-.f64 x y) (+.f64 x x)) (*.f64 (*.f64 x (-.f64 x y)) 6)) 4)
(/.f64 (+.f64 (*.f64 (-.f64 x y) (+.f64 x x)) (*.f64 (-.f64 x y) (*.f64 x 6))) 4)
(-.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 0)
(*.f64 (-.f64 x y) (+.f64 x x))
(-.f64 (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 2) (*.f64 (neg.f64 x) (-.f64 x y)))
(-.f64 (/.f64 (*.f64 (-.f64 x y) (+.f64 x x)) 2) (*.f64 (neg.f64 x) (-.f64 x y)))
(-.f64 (/.f64 (*.f64 (-.f64 x y) (+.f64 x x)) 2) (*.f64 x (-.f64 y x)))
(-.f64 (/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 2) (/.f64 (neg.f64 (*.f64 (-.f64 y x) (*.f64 x -4))) 4))
(*.f64 (-.f64 x y) (+.f64 x x))
(-.f64 (/.f64 (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 2) 2) (/.f64 (*.f64 (neg.f64 x) (-.f64 x y)) 2))
(/.f64 (+.f64 (*.f64 (-.f64 x y) (+.f64 x x)) (*.f64 (*.f64 x (-.f64 x y)) 6)) 4)
(/.f64 (+.f64 (*.f64 (-.f64 x y) (+.f64 x x)) (*.f64 (-.f64 x y) (*.f64 x 6))) 4)
(-.f64 (/.f64 (*.f64 (*.f64 x (-.f64 x y)) 6) 4) (/.f64 (*.f64 x (*.f64 -2 (-.f64 x y))) 4))
(/.f64 (+.f64 (*.f64 (-.f64 x y) (+.f64 x x)) (*.f64 (*.f64 x (-.f64 x y)) 6)) 4)
(/.f64 (+.f64 (*.f64 (-.f64 x y) (+.f64 x x)) (*.f64 (-.f64 x y) (*.f64 x 6))) 4)
(/.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 1)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (-.f64 y x) (*.f64 x -4)) 2)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 x (*.f64 -2 (-.f64 x y))) -1)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (*.f64 x (-.f64 x y)) 8) 4)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 8) 8)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 4 (*.f64 (*.f64 x (-.f64 x y)) 8)) 16)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (neg.f64 x) (*.f64 -4 (-.f64 y x))) -2)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (*.f64 x -2) (*.f64 -2 (-.f64 y x))) -2)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (+.f64 x x) (*.f64 -2 (-.f64 x y))) -2)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (*.f64 x -2) (-.f64 x y)) -1)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (*.f64 x -2) (*.f64 -4 (-.f64 y x))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (neg.f64 x) (*.f64 (*.f64 -2 (-.f64 y x)) 4)) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (neg.f64 x) (*.f64 (*.f64 -4 (-.f64 y x)) 4)) -8)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (*.f64 -2 (-.f64 x y)) (+.f64 x x)) -2)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (*.f64 -2 (-.f64 x y)) (*.f64 x 4)) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (*.f64 -2 (-.f64 x y)) (*.f64 (+.f64 x x) 4)) -8)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (*.f64 x -2) (*.f64 (*.f64 -2 (-.f64 y x)) 4)) -8)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (*.f64 -2 (-.f64 y x)) (*.f64 x -2)) -2)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (*.f64 -2 (-.f64 y x)) (*.f64 x -4)) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 x (neg.f64 (*.f64 -4 (-.f64 y x)))) -2)
(*.f64 (-.f64 x y) (+.f64 x x))
(pow.f64 (*.f64 (+.f64 x x) (-.f64 x y)) 1)
(*.f64 (-.f64 x y) (+.f64 x x))

localize10.0ms (0.1%)

Local error

Found 1 expressions with local error:

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

Compiled 17 to 5 computations (70.6% saved)

series1.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite220.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
680×rational_best-simplify-47
680×rational_best-simplify-83
658×rational_best-simplify-48
652×rational_best-simplify-51
624×rational_best-simplify-52
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0719
14519
29319
327019
4113719
Stop Event
node limit
Counts
1 → 33
Calls
Call 1
Inputs
(*.f64 (-.f64 x y) (+.f64 x x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x y) (+.f64 x x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 x y) (+.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 x y)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x y) (*.f64 x 1/2)) (/.f64 (*.f64 x (*.f64 (-.f64 x y) 3)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x y) (*.f64 x 1/2)) (/.f64 (*.f64 (-.f64 x y) (*.f64 (+.f64 x x) 3)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 x y) (*.f64 x 1/2)) (+.f64 (*.f64 (-.f64 x y) (*.f64 x 1/2)) (*.f64 x (-.f64 x y))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (-.f64 x y) (+.f64 x x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 y x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x (*.f64 (-.f64 x y) 3)) 2) (/.f64 (*.f64 x (-.f64 y x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 (+.f64 x x) 3)) 4) (/.f64 (*.f64 (-.f64 x y) (*.f64 x -2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (-.f64 x y) (*.f64 x 1/2)) (*.f64 x (-.f64 x y))) (-.f64 0 (*.f64 (-.f64 x y) (*.f64 x 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (+.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (*.f64 x -2)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (*.f64 (+.f64 x x) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 x y)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (*.f64 x -4)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y x) (*.f64 (+.f64 x x) 4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 x y) 2) (*.f64 (*.f64 x 4) 4)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 x y) (*.f64 (*.f64 x 4) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 x (-.f64 y x)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (-.f64 y x) (*.f64 (+.f64 x x) 4)) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 y x) (*.f64 (*.f64 x 4) 4)) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 x x) (*.f64 (-.f64 y x) 4)) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 x y) (*.f64 (*.f64 x 4) 4)) (*.f64 (-.f64 x y) (*.f64 (*.f64 x 4) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (*.f64 (-.f64 x y) 2) (*.f64 (*.f64 x 4) 4)) (*.f64 (*.f64 (-.f64 x y) 2) (*.f64 (*.f64 x 4) 4))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 x y) (*.f64 x -4)) (*.f64 (-.f64 x y) (*.f64 x -4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 y x) (*.f64 (+.f64 x x) 4)) (*.f64 (-.f64 y x) (*.f64 (+.f64 x x) 4))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 (-.f64 x y) 2) 4) (*.f64 (*.f64 x 4) 4)) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (*.f64 x 4) 4) (*.f64 (*.f64 (-.f64 x y) 2) 4)) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (-.f64 y x) 4) (*.f64 x -2)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 x y) (+.f64 x x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (-.f64 x y) (*.f64 x -2)))))))

simplify649.0ms (3.6%)

Algorithm
egg-herbie
Rules
1094×rational_best-simplify-3
1076×rational_best-simplify-63
654×rational_best-simplify-48
588×rational_best-simplify-1
542×rational_best-simplify-52
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01021371
12591323
26401323
316501323
470951323
Stop Event
node limit
Counts
57 → 49
Calls
Call 1
Inputs
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 (-.f64 x y) (+.f64 x x)) 0)
(+.f64 0 (*.f64 (-.f64 x y) (+.f64 x x)))
(+.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 x y)))
(+.f64 (*.f64 (-.f64 x y) (*.f64 x 1/2)) (/.f64 (*.f64 x (*.f64 (-.f64 x y) 3)) 2))
(+.f64 (*.f64 (-.f64 x y) (*.f64 x 1/2)) (/.f64 (*.f64 (-.f64 x y) (*.f64 (+.f64 x x) 3)) 4))
(+.f64 (*.f64 (-.f64 x y) (*.f64 x 1/2)) (+.f64 (*.f64 (-.f64 x y) (*.f64 x 1/2)) (*.f64 x (-.f64 x y))))
(-.f64 (*.f64 (-.f64 x y) (+.f64 x x)) 0)
(-.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 y x)))
(-.f64 (/.f64 (*.f64 x (*.f64 (-.f64 x y) 3)) 2) (/.f64 (*.f64 x (-.f64 y x)) 2))
(-.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 (+.f64 x x) 3)) 4) (/.f64 (*.f64 (-.f64 x y) (*.f64 x -2)) 4))
(-.f64 (+.f64 (*.f64 (-.f64 x y) (*.f64 x 1/2)) (*.f64 x (-.f64 x y))) (-.f64 0 (*.f64 (-.f64 x y) (*.f64 x 1/2))))
(/.f64 (*.f64 (-.f64 x y) (+.f64 x x)) 1)
(/.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 2)
(/.f64 (*.f64 (-.f64 x y) (*.f64 x -2)) -1)
(/.f64 (*.f64 (-.f64 x y) (*.f64 (+.f64 x x) 4)) 4)
(/.f64 (*.f64 x (-.f64 x y)) 1/2)
(/.f64 (*.f64 (-.f64 x y) (*.f64 x -4)) -2)
(/.f64 (*.f64 (-.f64 y x) (*.f64 (+.f64 x x) 4)) -4)
(/.f64 (*.f64 (*.f64 (-.f64 x y) 2) (*.f64 (*.f64 x 4) 4)) 16)
(/.f64 (*.f64 (-.f64 x y) (*.f64 (*.f64 x 4) 4)) 8)
(/.f64 (*.f64 x (-.f64 y x)) -1/2)
(/.f64 (/.f64 (*.f64 (-.f64 y x) (*.f64 (+.f64 x x) 4)) 2) -2)
(/.f64 (*.f64 (-.f64 y x) (*.f64 (*.f64 x 4) 4)) -8)
(/.f64 (*.f64 (+.f64 x x) (*.f64 (-.f64 y x) 4)) -4)
(/.f64 (+.f64 (*.f64 (-.f64 x y) (*.f64 (*.f64 x 4) 4)) (*.f64 (-.f64 x y) (*.f64 (*.f64 x 4) 4))) 16)
(/.f64 (+.f64 (*.f64 (*.f64 (-.f64 x y) 2) (*.f64 (*.f64 x 4) 4)) (*.f64 (*.f64 (-.f64 x y) 2) (*.f64 (*.f64 x 4) 4))) 32)
(/.f64 (+.f64 (*.f64 (-.f64 x y) (*.f64 x -4)) (*.f64 (-.f64 x y) (*.f64 x -4))) -4)
(/.f64 (+.f64 (*.f64 (-.f64 y x) (*.f64 (+.f64 x x) 4)) (*.f64 (-.f64 y x) (*.f64 (+.f64 x x) 4))) -8)
(/.f64 (*.f64 (*.f64 (*.f64 (-.f64 x y) 2) 4) (*.f64 (*.f64 x 4) 4)) 64)
(/.f64 (*.f64 (*.f64 (*.f64 x 4) 4) (*.f64 (*.f64 (-.f64 x y) 2) 4)) 64)
(/.f64 (*.f64 (*.f64 (-.f64 y x) 4) (*.f64 x -2)) 4)
(pow.f64 (*.f64 (-.f64 x y) (+.f64 x x)) 1)
(neg.f64 (*.f64 (-.f64 x y) (*.f64 x -2)))
Outputs
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(*.f64 2 (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(*.f64 -2 (*.f64 y x))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 -2 (*.f64 y x)))
(+.f64 (*.f64 -2 (*.f64 y x)) (*.f64 2 (pow.f64 x 2)))
(+.f64 (*.f64 (-.f64 x y) (+.f64 x x)) 0)
(*.f64 (-.f64 x y) (+.f64 x x))
(+.f64 0 (*.f64 (-.f64 x y) (+.f64 x x)))
(*.f64 (-.f64 x y) (+.f64 x x))
(+.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 x y)))
(*.f64 (-.f64 x y) (+.f64 x x))
(+.f64 (*.f64 (-.f64 x y) (*.f64 x 1/2)) (/.f64 (*.f64 x (*.f64 (-.f64 x y) 3)) 2))
(*.f64 (-.f64 x y) (+.f64 x x))
(+.f64 (*.f64 (-.f64 x y) (*.f64 x 1/2)) (/.f64 (*.f64 (-.f64 x y) (*.f64 (+.f64 x x) 3)) 4))
(*.f64 (-.f64 x y) (+.f64 x x))
(+.f64 (*.f64 (-.f64 x y) (*.f64 x 1/2)) (+.f64 (*.f64 (-.f64 x y) (*.f64 x 1/2)) (*.f64 x (-.f64 x y))))
(*.f64 (-.f64 x y) (+.f64 x x))
(-.f64 (*.f64 (-.f64 x y) (+.f64 x x)) 0)
(*.f64 (-.f64 x y) (+.f64 x x))
(-.f64 (*.f64 x (-.f64 x y)) (*.f64 x (-.f64 y x)))
(*.f64 x (-.f64 (-.f64 x y) (-.f64 y x)))
(*.f64 x (-.f64 x (-.f64 y (-.f64 x y))))
(*.f64 x (-.f64 x (+.f64 y (-.f64 y x))))
(-.f64 (/.f64 (*.f64 x (*.f64 (-.f64 x y) 3)) 2) (/.f64 (*.f64 x (-.f64 y x)) 2))
(/.f64 (-.f64 (*.f64 3 (*.f64 x (-.f64 x y))) (*.f64 x (-.f64 y x))) 2)
(/.f64 (*.f64 x (-.f64 (*.f64 (-.f64 x y) 3) (-.f64 y x))) 2)
(/.f64 (*.f64 x (-.f64 x (-.f64 y (*.f64 (-.f64 x y) 3)))) 2)
(-.f64 (/.f64 (*.f64 (-.f64 x y) (*.f64 (+.f64 x x) 3)) 4) (/.f64 (*.f64 (-.f64 x y) (*.f64 x -2)) 4))
(*.f64 (-.f64 x y) (+.f64 x x))
(-.f64 (+.f64 (*.f64 (-.f64 x y) (*.f64 x 1/2)) (*.f64 x (-.f64 x y))) (-.f64 0 (*.f64 (-.f64 x y) (*.f64 x 1/2))))
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (-.f64 x y) (+.f64 x x)) 1)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 x (*.f64 (-.f64 x y) 4)) 2)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (-.f64 x y) (*.f64 x -2)) -1)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (-.f64 x y) (*.f64 (+.f64 x x) 4)) 4)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 x (-.f64 x y)) 1/2)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (-.f64 x y) (*.f64 x -4)) -2)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (-.f64 y x) (*.f64 (+.f64 x x) 4)) -4)
(/.f64 (*.f64 4 (*.f64 (+.f64 x x) (-.f64 y x))) -4)
(/.f64 (*.f64 8 (*.f64 x (-.f64 y x))) -4)
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 8)) -4)
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 32)) -16)
(/.f64 (*.f64 (*.f64 (-.f64 x y) 2) (*.f64 (*.f64 x 4) 4)) 16)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (-.f64 x y) (*.f64 (*.f64 x 4) 4)) 8)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 x (-.f64 y x)) -1/2)
(*.f64 -2 (*.f64 x (-.f64 y x)))
(/.f64 (/.f64 (*.f64 (-.f64 y x) (*.f64 (+.f64 x x) 4)) 2) -2)
(/.f64 (*.f64 4 (*.f64 (+.f64 x x) (-.f64 y x))) -4)
(/.f64 (*.f64 8 (*.f64 x (-.f64 y x))) -4)
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 8)) -4)
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 32)) -16)
(/.f64 (*.f64 (-.f64 y x) (*.f64 (*.f64 x 4) 4)) -8)
(/.f64 (*.f64 4 (*.f64 (+.f64 x x) (-.f64 y x))) -4)
(/.f64 (*.f64 8 (*.f64 x (-.f64 y x))) -4)
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 8)) -4)
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 32)) -16)
(/.f64 (*.f64 (+.f64 x x) (*.f64 (-.f64 y x) 4)) -4)
(/.f64 (*.f64 4 (*.f64 (+.f64 x x) (-.f64 y x))) -4)
(/.f64 (*.f64 8 (*.f64 x (-.f64 y x))) -4)
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 8)) -4)
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 32)) -16)
(/.f64 (+.f64 (*.f64 (-.f64 x y) (*.f64 (*.f64 x 4) 4)) (*.f64 (-.f64 x y) (*.f64 (*.f64 x 4) 4))) 16)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (+.f64 (*.f64 (*.f64 (-.f64 x y) 2) (*.f64 (*.f64 x 4) 4)) (*.f64 (*.f64 (-.f64 x y) 2) (*.f64 (*.f64 x 4) 4))) 32)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (+.f64 (*.f64 (-.f64 x y) (*.f64 x -4)) (*.f64 (-.f64 x y) (*.f64 x -4))) -4)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (+.f64 (*.f64 (-.f64 y x) (*.f64 (+.f64 x x) 4)) (*.f64 (-.f64 y x) (*.f64 (+.f64 x x) 4))) -8)
(/.f64 (*.f64 4 (*.f64 (+.f64 x x) (-.f64 y x))) -4)
(/.f64 (*.f64 8 (*.f64 x (-.f64 y x))) -4)
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 8)) -4)
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 32)) -16)
(/.f64 (*.f64 (*.f64 (*.f64 (-.f64 x y) 2) 4) (*.f64 (*.f64 x 4) 4)) 64)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (*.f64 (*.f64 x 4) 4) (*.f64 (*.f64 (-.f64 x y) 2) 4)) 64)
(*.f64 (-.f64 x y) (+.f64 x x))
(/.f64 (*.f64 (*.f64 (-.f64 y x) 4) (*.f64 x -2)) 4)
(/.f64 (*.f64 4 (*.f64 (+.f64 x x) (-.f64 y x))) -4)
(/.f64 (*.f64 8 (*.f64 x (-.f64 y x))) -4)
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 8)) -4)
(/.f64 (*.f64 (-.f64 y x) (*.f64 x 32)) -16)
(pow.f64 (*.f64 (-.f64 x y) (+.f64 x x)) 1)
(*.f64 (-.f64 x y) (+.f64 x x))
(neg.f64 (*.f64 (-.f64 x y) (*.f64 x -2)))
(*.f64 (-.f64 x y) (+.f64 x x))

eval522.0ms (2.9%)

Compiler

Compiled 3485 to 1923 computations (44.8% saved)

prune381.0ms (2.1%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New2672269
Fresh000
Picked011
Done123
Total2685273
Error
0b
Counts
273 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(*.f64 (-.f64 x y) (+.f64 x x))
23.5b
(*.f64 y (*.f64 -2 x))
0.0b
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
29.6b
(*.f64 x (+.f64 x x))
0.0b
(*.f64 2 (-.f64 (*.f64 x x) (*.f64 x y)))
Compiler

Compiled 45 to 28 computations (37.8% saved)

localize27.0ms (0.2%)

Compiler

Compiled 11 to 4 computations (63.6% saved)

localize24.0ms (0.1%)

Compiler

Compiled 13 to 8 computations (38.5% saved)

eval0.0ms (0%)

Compiler

Compiled 2 to 2 computations (0% saved)

prune3.0ms (0%)

Pruning

5 alts after pruning (0 fresh and 5 done)

PrunedKeptTotal
New000
Fresh000
Picked011
Done044
Total055
Error
0b
Counts
5 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(*.f64 (-.f64 x y) (+.f64 x x))
23.5b
(*.f64 y (*.f64 -2 x))
0.0b
(*.f64 x (+.f64 x (+.f64 x (*.f64 -2 y))))
29.6b
(*.f64 x (+.f64 x x))
0.0b
(*.f64 2 (-.f64 (*.f64 x x) (*.f64 x y)))
Compiler

Compiled 45 to 28 computations (37.8% saved)

regimes110.0ms (0.6%)

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

4 calls:

33.0ms
y
27.0ms
(-.f64 (*.f64 x x) (*.f64 x y))
26.0ms
x
21.0ms
(*.f64 2 (-.f64 (*.f64 x x) (*.f64 x y)))
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1(*.f64 2 (-.f64 (*.f64 x x) (*.f64 x y)))
0.0b1(-.f64 (*.f64 x x) (*.f64 x y))
Compiler

Compiled 75 to 41 computations (45.3% saved)

regimes29.0ms (0.2%)

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

2 calls:

20.0ms
y
8.0ms
x
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
Compiler

Compiled 30 to 18 computations (40% saved)

regimes181.0ms (1%)

Accuracy

Total -45.4b remaining (-686.4%)

Threshold costs -45.4b (-686.4%)

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

2 calls:

108.0ms
y
71.0ms
x
Results
ErrorSegmentsBranch
10.9b3x
6.6b3y
Compiler

Compiled 23 to 14 computations (39.1% saved)

bsearch72.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
35.0ms
3.8457946201549513e-79
8.19559534798057e-64
37.0ms
-1.938882606707469e-42
-5.833938163762041e-43
Results
67.0ms240×body256valid
Compiler

Compiled 256 to 176 computations (31.3% saved)

simplify21.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
023108
Stop Event
done
saturated
Calls
Call 1
Inputs
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 2 (*.f64 x (-.f64 x y)))
(if (<=.f64 y -6904811908925349/6277101735386680763835789423207666416102355444464034512896) (*.f64 -2 (*.f64 y x)) (if (<=.f64 y 493255773416689/15177100720513508366558296147058741458143803430094840009779784451085189728165691392) (*.f64 x (+.f64 x x)) (*.f64 -2 (*.f64 y x))))
(*.f64 -2 (*.f64 y x))
Outputs
(*.f64 (-.f64 x y) (+.f64 x x))
(*.f64 2 (*.f64 x (-.f64 x y)))
(if (<=.f64 y -6904811908925349/6277101735386680763835789423207666416102355444464034512896) (*.f64 -2 (*.f64 y x)) (if (<=.f64 y 493255773416689/15177100720513508366558296147058741458143803430094840009779784451085189728165691392) (*.f64 x (+.f64 x x)) (*.f64 -2 (*.f64 y x))))
(*.f64 -2 (*.f64 y x))
Compiler

Compiled 50 to 31 computations (38% saved)

soundness762.0ms (4.3%)

Algorithm
egg-herbie
Rules
1298×rational_best-simplify-1
1252×rational_best-simplify-63
1122×rational_best-simplify-56
922×rational_best-simplify-108
738×rational_best-simplify-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
11519
22019
32519
43119
53119
03634591
18934507
224524459
368364413
Stop Event
node limit
saturated
Compiler

Compiled 38 to 18 computations (52.6% saved)

end381.0ms (2.1%)

Compiler

Compiled 44 to 22 computations (50% saved)

Profiling

Loading profile data...